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

Preview:

Citation preview

Engenhos de Busca WebEquipe: 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.

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

estrutura definida.Como se comunicar ?

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

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

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

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

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.

DesafiosPessoas:Especificar Consulta.Interpretar a resposta.

Objetivo:

Respostas relevantes para cada consulta.

ArquiteturasSistemas RI padrão + WEBPrincipais arquiteturas

Arquitetura centralizadaArquitetura distribuída

Arquitetura Centralizada

Query Engine

IndexIndexer

Web

Arquitetura CentralizadaArquitetura CentralizadaPrincipais problemas:

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

Arquitetura Distribuida

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

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

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

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.

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.

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

Hubs Authorities

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.

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

Page Rank

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

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

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

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

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

Estratégias de Busca

26

Busca em Largura

Estratégias de Busca

27

Busca em Profundidade

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

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

Directed/Focused Spidering

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

30

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

degree de cada página encontrada.

31

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

Indexação

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

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

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

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

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

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

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

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

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

Recommended