42
Engenhos de Busca Web Equipe: Cássio Melo, Alexandre Barza, Manuela Nascimento e Rodrigo Freitas {cam2, ab, mcn, rqf} Jul/2007

Engenhos de Busca Web Equipe: Cássio Melo, Alexandre Barza, Manuela Nascimento e Rodrigo Freitas {cam2, ab, mcn, rqf} Jul/2007

Embed Size (px)

Citation preview

Page 1: Engenhos de Busca Web Equipe: Cássio Melo, Alexandre Barza, Manuela Nascimento e Rodrigo Freitas {cam2, ab, mcn, rqf} Jul/2007

Engenhos de Busca WebEquipe: Cássio Melo, Alexandre Barza, Manuela Nascimento e Rodrigo Freitas

{cam2, ab, mcn, rqf}

Jul/2007

Page 2: Engenhos de Busca Web Equipe: Cássio Melo, Alexandre Barza, Manuela Nascimento e Rodrigo Freitas {cam2, ab, mcn, rqf} Jul/2007

RoteiroEvolução e Desafios;Arquitetura;Rankeamento;

Authorities, Hubs, Hits, PageRank e Hilltop;Spiders; Estratégias de Busca;Indexação;Browsing;Metabuscas;Conclusão.

Page 3: Engenhos de Busca Web Equipe: Cássio Melo, Alexandre Barza, Manuela Nascimento e Rodrigo Freitas {cam2, ab, mcn, rqf} Jul/2007

Evolução WebGigantesco e ubíquo banco de dados, sem

estrutura definida.Como se comunicar ?

Page 4: Engenhos de Busca Web Equipe: Cássio Melo, Alexandre Barza, Manuela Nascimento e Rodrigo Freitas {cam2, ab, mcn, rqf} Jul/2007

Evolução Web1990 - Tim Berners-Lee do CERN(Conseil

Européen pour la Recherche Nucleaire) cria o WWW;

Libwww, Erwise, Voilawww, Mosaic(NCSA), etc...

Page 5: Engenhos de Busca Web Equipe: Cássio Melo, Alexandre Barza, Manuela Nascimento e Rodrigo Freitas {cam2, ab, mcn, rqf} Jul/2007

Evolução WebEm 1993, havia aproximadamente 50 sites;Netcraft Survey - 108,810,358 (fevereiro de

2007). Aumento de 2.000.000 % em 14 anos.

"The good thing about digital media is that you can save everything. The bad thing about digital media is that you can lose everything."- Brewster Kahle, fundador do The Internet Archive

Page 6: Engenhos de Busca Web Equipe: Cássio Melo, Alexandre Barza, Manuela Nascimento e Rodrigo Freitas {cam2, ab, mcn, rqf} Jul/2007

DesafiosDados:Descentralização;Volatilidade;Volume;Redundancia;Qualidade - The cult of the amateur is digital

utopianism’s most seductive delusion… It suggests, mistakenly, that everyone has something interesting to say.

Page 7: Engenhos de Busca Web Equipe: Cássio Melo, Alexandre Barza, Manuela Nascimento e Rodrigo Freitas {cam2, ab, mcn, rqf} Jul/2007

DesafiosPessoas:Especificar Consulta.Interpretar a resposta.

Objetivo:

Respostas relevantes para cada consulta.

Page 8: Engenhos de Busca Web Equipe: Cássio Melo, Alexandre Barza, Manuela Nascimento e Rodrigo Freitas {cam2, ab, mcn, rqf} Jul/2007

ArquiteturasSistemas RI padrão + WEBPrincipais arquiteturas

Arquitetura centralizadaArquitetura distribuída

Page 9: Engenhos de Busca Web Equipe: Cássio Melo, Alexandre Barza, Manuela Nascimento e Rodrigo Freitas {cam2, ab, mcn, rqf} Jul/2007

Arquitetura Centralizada

Query Engine

IndexIndexer

Web

Page 10: Engenhos de Busca Web Equipe: Cássio Melo, Alexandre Barza, Manuela Nascimento e Rodrigo Freitas {cam2, ab, mcn, rqf} Jul/2007

Arquitetura CentralizadaArquitetura CentralizadaPrincipais problemas:

Sobrecarga dos servidoresAumento de tráfego (spiders)Informação recolhida sem coordenação

Page 11: Engenhos de Busca Web Equipe: Cássio Melo, Alexandre Barza, Manuela Nascimento e Rodrigo Freitas {cam2, ab, mcn, rqf} Jul/2007

Arquitetura Distribuida

Page 12: Engenhos de Busca Web Equipe: Cássio Melo, Alexandre Barza, Manuela Nascimento e Rodrigo Freitas {cam2, ab, mcn, rqf} Jul/2007

AuthoritiesDefinição: são páginas que são reconhecidas

por proverem informações significantes, confiáveis e úteis sobre um determinado tópico

Busca informação desejada dentro dos sites

Page 13: Engenhos de Busca Web Equipe: Cássio Melo, Alexandre Barza, Manuela Nascimento e Rodrigo Freitas {cam2, ab, mcn, rqf} Jul/2007

AuthoritiesAuthorities for query: “Java”

java.sun.comcomp.lang.java FAQ

Authorities for query “search engine”Yahoo.comExcite.comLycos.comAltavista.com

Authorities for query “Gates”Microsoft.comroadahead.com

Page 14: Engenhos de Busca Web Equipe: Cássio Melo, Alexandre Barza, Manuela Nascimento e Rodrigo Freitas {cam2, ab, mcn, rqf} Jul/2007

HubsDefinição: termo para o grupo que une todos

os sites web que recebem grande quantidade de links e que por sua vez fazem laço com páginas web que consideram importantes.

Ou seja, são páginas de índices que provêem grande quantidade de links úteis para páginas de conteúdo relevante

Page 15: Engenhos de Busca Web Equipe: Cássio Melo, Alexandre Barza, Manuela Nascimento e Rodrigo Freitas {cam2, ab, mcn, rqf} Jul/2007

Authorities e HubsNa definição de Jon Kleinberg, de hubs e

autoridades: uma boa autoridade será uma página apontada por bons hubs e um bom hub será uma página que aponta para boasautoridades.

Page 16: Engenhos de Busca Web Equipe: Cássio Melo, Alexandre Barza, Manuela Nascimento e Rodrigo Freitas {cam2, ab, mcn, rqf} Jul/2007

HITS (Hyperlink Induced Topic Search)Tenta determinar hubs e autoridades em um

tópico particular através da análise de um grafo relevante da web

É baseado em fatos recursivos pois hubs apontam para autoridades e autoridades são apontadas por hubs.

O peso de cada link dependerá dos índices hub e authority da página em que se encontra. O processo de cálculo é recursivo e pode envolver bilhões de páginas. Quando de sua concepção, o algoritmo mostrou-se impraticável.

Page 17: Engenhos de Busca Web Equipe: Cássio Melo, Alexandre Barza, Manuela Nascimento e Rodrigo Freitas {cam2, ab, mcn, rqf} Jul/2007

Construindo um subgrafoHubs apontam para muitas autoridades.Autoridades são apontadas por muitos hubs.

Hubs Authorities

Page 18: Engenhos de Busca Web Equipe: Cássio Melo, Alexandre Barza, Manuela Nascimento e Rodrigo Freitas {cam2, ab, mcn, rqf} Jul/2007

PageRankAtribui um peso para cada elemento

“hiperlincado”. Os links são como votos.Quanto mais apontamentos a página tiver,

maior vai ser o page rank dela.

Page 19: Engenhos de Busca Web Equipe: Cássio Melo, Alexandre Barza, Manuela Nascimento e Rodrigo Freitas {cam2, ab, mcn, rqf} Jul/2007

PageRankMedida de importância de uma página para o Google.Download da barra de ferramentas do Google.

Page 20: Engenhos de Busca Web Equipe: Cássio Melo, Alexandre Barza, Manuela Nascimento e Rodrigo Freitas {cam2, ab, mcn, rqf} Jul/2007

Page Rank

Page 21: Engenhos de Busca Web Equipe: Cássio Melo, Alexandre Barza, Manuela Nascimento e Rodrigo Freitas {cam2, ab, mcn, rqf} Jul/2007

PageRankFalhas:

Qualquer página contida no índice, aumentava o PageRank da página que recebia o link.

Webmasters estavam comprando links, para aumentar seu pagenRank

E uma vez tendo contruído um site de alto pagerank, ficava fácil para os webmasters construírem outros sitese, de imediato, apontar links de suas próprias páginas e conseguir um bom posicionamento inicial.

Solução: Algoritmo Hilltop

Page 22: Engenhos de Busca Web Equipe: Cássio Melo, Alexandre Barza, Manuela Nascimento e Rodrigo Freitas {cam2, ab, mcn, rqf} Jul/2007

Algoritmo HilltopO Hilltop procura detectar hosts afiliados; se

um link apontar para uma página em um host afiliado, o valor do link é descontado.

Hosts afiliados = mesmos primeiros três octetos de endereço IPEx.: Hosts com IPs 200.109.112.132 e

200.109.112.132 (ou qualquer outro host de IP 200.109.112.xxx) são considerados afiliados

Page 23: Engenhos de Busca Web Equipe: Cássio Melo, Alexandre Barza, Manuela Nascimento e Rodrigo Freitas {cam2, ab, mcn, rqf} Jul/2007

Algoritmo HilltopO hilltop deixa claro que se eu quiser ter bom

posicionamento do meu site de filmes é muito melhor eu ter um link em mdb.com (um expert no tópico filmes) do que um link em nature.com

Page 24: Engenhos de Busca Web Equipe: Cássio Melo, Alexandre Barza, Manuela Nascimento e Rodrigo Freitas {cam2, ab, mcn, rqf} Jul/2007

Spiders (Robots/Bots/Crawlers)Procuram informações nos sitesEntram nas páginas e lêem o conteúdo assim

como os internautas.Não avaliam o site propriamente.Avaliam o código que o gera.O código deve estar em perfeita sintonia com

os critérios que esses programas utilizam.

24

Page 25: Engenhos de Busca Web Equipe: Cássio Melo, Alexandre Barza, Manuela Nascimento e Rodrigo Freitas {cam2, ab, mcn, rqf} Jul/2007

Spiders (Robots/Bots/Crawlers)Alguns desses critérios:

Indexação Banco de dados é criado para cada termo de busca e

são relacionadas as paginas Quando se faz a busca, a spider recorre a esse banco

de dados.

Html- as ferramentas de buscam entendem melhor.

Links- Quanto mais sites tiverem links para a página, mais relevante será essa página.

25

Page 26: Engenhos de Busca Web Equipe: Cássio Melo, Alexandre Barza, Manuela Nascimento e Rodrigo Freitas {cam2, ab, mcn, rqf} Jul/2007

Estratégias de Busca

26

Busca em Largura

Page 27: Engenhos de Busca Web Equipe: Cássio Melo, Alexandre Barza, Manuela Nascimento e Rodrigo Freitas {cam2, ab, mcn, rqf} Jul/2007

Estratégias de Busca

27

Busca em Profundidade

Page 28: Engenhos de Busca Web Equipe: Cássio Melo, Alexandre Barza, Manuela Nascimento e Rodrigo Freitas {cam2, ab, mcn, rqf} Jul/2007

Prós e Contras…Busca em largura requer muita memória para

guardar todos os nós do nível anteriorporém é o método padrão utilizado.

Busca em profundidade necessita de menos memóriaporém pode se “perder” em um único nó, dada

a alta conectividade da Web.

28

Page 29: Engenhos de Busca Web Equipe: Cássio Melo, Alexandre Barza, Manuela Nascimento e Rodrigo Freitas {cam2, ab, mcn, rqf} Jul/2007

Spider Multi-tarefaFazer o download de páginas é o

“Gargalo” dos engenhos de buscaMelhor ter múltiplas “threads” rodando

em hosts diferentesMaximizar a distribuição das URL’s para

aumentar o “through-put” e evitar sobrecarregar um servidor.

Primeiros spiders do Google tinham cerca de 300 threads cada, e juntos podiam fazer o download de cerca de 100 páginas por segundo

29

Page 30: Engenhos de Busca Web Equipe: Cássio Melo, Alexandre Barza, Manuela Nascimento e Rodrigo Freitas {cam2, ab, mcn, rqf} Jul/2007

Directed/Focused Spidering

Selecionam as páginas mais “interessantes” primeiro.Direcionado aos Links

30

Page 31: Engenhos de Busca Web Equipe: Cássio Melo, Alexandre Barza, Manuela Nascimento e Rodrigo Freitas {cam2, ab, mcn, rqf} Jul/2007

Spidering direcionado ao LinkMonitora links e verifica o in-degree e out-

degree de cada página encontrada.

31

Page 32: Engenhos de Busca Web Equipe: Cássio Melo, Alexandre Barza, Manuela Nascimento e Rodrigo Freitas {cam2, ab, mcn, rqf} Jul/2007

Spidering direcionado ao LinkBusca na fila primeiramente páginas

populares que são apontadas por muitos links (authorities).

Busca na fila primeiramente páginas “sumário”com muitos links (hubs).

32

Page 33: Engenhos de Busca Web Equipe: Cássio Melo, Alexandre Barza, Manuela Nascimento e Rodrigo Freitas {cam2, ab, mcn, rqf} Jul/2007

Indexação

Page 34: Engenhos de Busca Web Equipe: Cássio Melo, Alexandre Barza, Manuela Nascimento e Rodrigo Freitas {cam2, ab, mcn, rqf} Jul/2007

AnáliseAnálise do FormatoReconhecimento de LinguagemProcessamento de Linguagem Natural

Eliminação de stopwordsOperações de normalização

Pontuação, espaços, uppercase,...TokenizationReconhecimento da SeçãoIndexação de Meta Tag

34

Page 35: Engenhos de Busca Web Equipe: Cássio Melo, Alexandre Barza, Manuela Nascimento e Rodrigo Freitas {cam2, ab, mcn, rqf} Jul/2007

IndexaçãoA maioria dos sistemas web usam

variantes do arquivo invertidoLista de palavras ordenadas com um

conjunto de ponteiros para as páginas em que elas ocorrem

Armazenamento da descrição de cada webpage

35

Page 36: Engenhos de Busca Web Equipe: Cássio Melo, Alexandre Barza, Manuela Nascimento e Rodrigo Freitas {cam2, ab, mcn, rqf} Jul/2007

Busca no Arquivo de ÍndicesConsulta é respondida através de busca

binária no arquivo de índicesConsulta formada por várias palavras

o sistema recupera os índices para cada palavra isolada

os resultados da recuperação são combinados para gerar a resposta final

36

Page 37: Engenhos de Busca Web Equipe: Cássio Melo, Alexandre Barza, Manuela Nascimento e Rodrigo Freitas {cam2, ab, mcn, rqf} Jul/2007

Busca no Arquivo de ÍndicesArquivos de índices invertidos também

podem armazenar as ocorrências das palavras nos documentos (full inversion)Maior custo de armazenagemPossibilidade de consultas por frases e

expressões através da proximidade das palavras no documento

37

Page 38: Engenhos de Busca Web Equipe: Cássio Melo, Alexandre Barza, Manuela Nascimento e Rodrigo Freitas {cam2, ab, mcn, rqf} Jul/2007

Busca no Arquivo de ÍndicesPara encontrar palavras que iniciam com

um dado prefixo, é necessário fazer duas buscas binárias na lista de palavras ordenadasEx.: auto-análise

Buscas mais complexas, como palavras com erro, requerem um tempo considerável de processamento Por causa do tamanho do vocabulário

38

Page 39: Engenhos de Busca Web Equipe: Cássio Melo, Alexandre Barza, Manuela Nascimento e Rodrigo Freitas {cam2, ab, mcn, rqf} Jul/2007

BrowsingDiretórios Web

Pequena cobertura geralmente menos de 1% das páginas

Links geralmente possuem conteúdos mais relevantes

Alguns são focados em um domínio específicoMuitas ferramentas de busca são híbridas

Exemplo: Yahoo!

39

Page 40: Engenhos de Busca Web Equipe: Cássio Melo, Alexandre Barza, Manuela Nascimento e Rodrigo Freitas {cam2, ab, mcn, rqf} Jul/2007

BrowsingDiretórios Web

Vantagens Documentos mais relevantes Possibilidade de armazenar o conteúdo de todas

as páginas classificadas, por serem em menores quantidades

Desvantagens Nem todos os documentos são classificados Documentos mudam constantemente Tentativas de classificação automática não são

100% efetivas

40

Page 41: Engenhos de Busca Web Equipe: Cássio Melo, Alexandre Barza, Manuela Nascimento e Rodrigo Freitas {cam2, ab, mcn, rqf} Jul/2007

MetabuscasServidores Web que enviam uma consulta

a vários motores de busca, diretórios Web e outros bancos de dados

Coletam as respostas e unificam o resultado

VantagensHabilidade em unificar resultados de várias

origensUtilização de uma interface única

41

Page 42: Engenhos de Busca Web Equipe: Cássio Melo, Alexandre Barza, Manuela Nascimento e Rodrigo Freitas {cam2, ab, mcn, rqf} Jul/2007

ConclusãoA Internet cresce de forma rápida e não

estruturadaNecessidade de ferramentas de RI mais

eficientesAumento da demanda de armazenamento e

processamento de sistemas de RIApesar dos avanços, é muito difícil resolver

estes problemas de forma definitiva

42