A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Webgraph: algoritmos e métodos

Apresentações semelhantes


Apresentação em tema: "Webgraph: algoritmos e métodos"— Transcrição da apresentação:

1 Webgraph: algoritmos e métodos
Luciana Salete Buriol Instituto de Informática, Universidade Federal do Rio Grande do Sul (UFRGS) Slides de Luciana Buriol, Viviane Orengo e Leandro Wives Obrigada Felipe pela apresentacao carinhosa Antes de iniciar, eu gostaria de agradecer a Sobrapo por ter me convidado a proferir esta palestra. Eu fiquei muito feliz com o convite, muito obrigada. Ainda, aproveitando a oportunidade, eu gostaria de parabenizar a comissao organizadora pelo excelente trabalho de organizacao desse evento. Realmente cada componente do simposio esta de bom gosto, a comecar pela organizacao para apresentacao dos trabalhos, mas o tambem pela atencao que a gente tem pelos organizadores, pelos otimos vinhos, por promover a oportunidade das pessoas se encontrarem apos as secoes, pela arte visual de bom gosto, . Realmente o esforco de voces esta valendo a pena. Parabens! Eu vou falar sobre analise estatisitica e topologica do webgraph. Foi parte do meu trabalho de pos-doutorado na universidade de Roma La Sapienza, que eu fiz de fevereiro de 2004 a agosto de O intuito desta palestra nao e se deter em um ponto especifico, mas dar uma visao geral de que tipos de analises se faz neste grafo. Como nos trabalhavamos muito em parceria com a Universidade Estadual de Milano, a palestra e um resumo das areas de estudo destes dois grupos.

2 Webgraph O Webgraph é o grafo direcionado gerado a partir da estrutura de links das páginas web. cada página web é um vértice cada hyperlink entre páginas é um arco direcionado. É um grafo de grande dimensão, esparso e desconexo O webgrafo e’ o grafo extraido da estrutura de link das paginas web.

3 Sumário Motivação e objetivos Recuperação de Informações
Extração, armazenamento e compactação do webgraph Características topológicas e propriedades do webgraph Algoritmos de classificação Algoritmos de aproximação para cálculo de propriedades do webgraph Conclusões O objetivo e dar uma visao geral sobre do que se estuda neste grafo. Entao, inicialmente eu vou apresentar a motivacao deste trabalho. Em primeiro lugar vou falar da primeira fase que e’ a coleta de paginas e armazenamento dos dados. Tendo os dados, vou falar das caracterisiticas deste grafo e quais as propriedades geralmente calculadas. Apos, vou falar de algoritmos mais avancados, como os algoritmos de classificacao e data stream algorithms. E por fim as conclusoes.

4 Motivações Grande dimensão: atualmente possui mais de 24 bilhões de vértices e cerca de 500 bilhões de arcos 1998: 24 milhões de páginas 1999: 200 milhões 2003: 3.5 bilhões de páginas 2005: 11.5 bilhões de páginas 2006: 24 bilhões de páginas

5 Motivações É a fonte de dados utilizada por ferramentas de busca para organização e classificação das páginas web Não se assemelha a outras redes Diversidade de tópicos, estilos e línguas Insere uma série de desafios para a área de computação, possibilitando o surgimento de novas pesquisas e novas soluções

6 Web Crawling Coleta das páginas web

7 Coleta de páginas A coleta das páginas é realizada por uma máquina de busca (web crawler) Faz a busca a partir de um conjunto inicial de páginas Após extrair a página, identifica seus links Página web

8 Coleta das páginas É preciso possuir links entrantes para ser coletada
Uma máquina de busca de grande dimensão deve: Identificar eficientemente páginas já extraídas Processar em paralelo Usar banda de rede limitada Usar a política da “boa educação”

9 Estrutura de um crawler
bag  “seed” while bag  {} pick p  bag download p if p is seen continue parse p for each q  outlinks(p) do if q is new then bag  bag  {q} end if end for store p end while

10 Estrutura de um crawler
bag  “seed” while bag  {} pick p  bag download p if p is seen continue parse p for each q  outlinks(p) do if q is new then bag  bag  {q} end if end for store p end while

11 Coleta das páginas Problemas práticos:
Tempo x espaço. Ex: 42 milhões de páginas html do domínio italiano, tendo em média 10 KB por página. Espaço 400 GB: 1.33 discos de 300GB 24 bilhões de páginas: mais de 200 discos? Tempo Banda disponível: 2 Mbps 3 pontos de coleta 5.5 milhões de páginas por dia 8 dias executando

12 Coleta das páginas Algumas máquinas de busca:
WIRE: Universidade do Chile UbiCrawler: Universidade Estadual de Milão; Nutch (www.nutch.org): USA, implementado em Java, fácil instalação e utilização, opções para usuário Maiores detalhes em As máquinas de busca comerciais, como Google, Yahoo, Alta Vista, TodoBR, não são de domínio público

13 Armazenamento do dados
Armazenamento do webgrafo e/ou conteúdo das páginas? páginas de diversos formatos: html, txt, doc, pdf, ps, ppt, etc Uma página web sem figuras, tem tamanho médio de 10 a 14 Kb

14 Recuperação de Informações na Web
Trata da representação, armazenamento, organização e acesso à informação referente às páginas web R. Baeza-Yates e B. Ribeiro-Neto, Modern Information Retrieval, 1999, www2.dcc.ufmg.br/livros/irbook

15 Diferenças entre IR e Data Retrieval
Tabelas – dados estruturados Consultas claras e precisas expressas em uma linguagem (SQL) Consultas recuperam todas as tuplas relevantes e todas as tuplas recuperadas são relevantes Todas as tuplas recuperadas são igualmente relevantes à consulta IR Documentos – pouca estrutura Consultas vagas e ambíguas expressas por meio de palavras- chave Consultas não recuperam todos os itens relevantes e nem todos os recuperados são relevantes. Documentos apresentados em ordem decrescente de relevância

16 O processo de IR Exemplo:
O usuário tipicamente precisa traduzir sua necessidade de informações em forma de uma consulta (keywords). Exemplo: Necessidade de Informação: “Quais as vinícolas do RS que produzem vinho com a uva Melot?” Palavras-chave: vinícola RS merlot

17 Índice invertido t1 t2 t3 . tn Índice Lista de postings
(dicionário) Lista de postings t1 t2 t3 . tn Em memória, se possível Normalmente em disco 17 17

18 Dicionário de Termos: observações
Cerca de 100 milhões de palavras! Uma estimativa de Grossman e Frieder (2004), 2 milhões de termos ocupam menos de 32MB (sem compressão) Busca binária, com complexidade relativamente baixa: O (log n); ou Funções hash com lista de colisão Em coleções dinâmicas, usar outras estruturas (TRIE, PAT, PATRICIA, B-TREES) 18

19 Componentes de um sistema de IR
Query Results Document Collection Process Text Search Index File Retrieve Documents Produce ranked list of matches Tokenization, Stop Word Removal, Stemming & Term Weighting Inverted File Ranking Algorithm Tokenization, Stop Word Removal, Stemming & Term Weighting

20 Formato do Webgraph os nós recebem identificadores
Representação do grafo no formato IPS: lista de adjacência forward and backward Dividido em vários arquivos Tamanho para um conjunto de 200 milhões de páginas: 15 GB (21 arquivos)

21 Link Analysis Identificação da estrutura topológica do grafo
Cálculo de diversas propriedades do grafo classificação das páginas web

22 Medidas Elementares Distribuição do indegree e outdegree
É referente ao número de páginas que possuem grau di, para i=1,2…maxd; Em geral a distribuição para o webgraph se apresenta como uma power law: a probabilidade de um nó possuir degree d é proporcional a para algum >1

23 Distribuição do grau das páginas

24 Indegree Distribution

25 Outdegree Distribution

26 Pagerank Distribution

27 Estrutura Macroscópica do Webgraph
Graph structure in the Web, Broder et al, 2000

28 Identificando tentáculos e tubos

29 Ilhas: nós restantes

30 Medidas da estrutura bow-tie para wikigraphs

31 Biblioteca de Algoritmos para Análise de grafos de grande dimensão
Desenvolvida no Dipartimento di Informatica e Sistemistica della Universita’ La Sapienza, Roma, Itália. Disponível gratuitamente em: Tools.htm Documentação em: D13.pdf

32 Estrutura da Biblioteca
Generators Measures Search algorithms Bow-tie discovering File converters Miscellaneous

33 Pagerank As páginas web são apresentadas em ordem decrescente de seu pagerank PageRank (PR) é um valor numérico que representa o quão importante uma página é Simula o procedimento de um internauta! Selecione uma página ao acaso (aleatória) Repita até convergir: com probabilidade visita uma página vizinha com probabilidade 1-visita uma página vizinha Em geral 

34 PageRank algorithm [BP 97]
Um nível de propagação Boas paginas devem ser apontadas por boas paginas! 1/3 1/3 1/3

35 PageRank: propagação do ranking

36 Algoritmo HITS (Kleinberg)
Define: Autority: páginas com muitos links de entrada Hub: páginas com muitos links de saída Inicialize todos pesos com valor 1 Repita ate convergir Os hubs recebem os pesos dos authorities Os authorities recebem os pesos dos hubs Normalize os pesos 36

37 Pagerand and HITS Algorithms
ambos são algoritmos iterativos; cálculo através de um processo algébrico convergem para o principal autovetor da matriz de links da do webgraph (matriz de transição de uma cadeia de Markov) 37

38 Algoritmos de Classificação
Outros alg. de classificação: Salsa, ExpertRank, etc. Avaliação: Classificação adequada Cálculo rápido Estabilidade Menos susceptível a link spamming

39 Algoritmos de memória secundária
O grafo não pode ser carregado em memória principal, mas armazenado em memória secundária Algoritmos de memória secundária buscam minimizar o acesso a disco Tratando-se de grafos de grande dimensão, quase na totalidade os algoritmos não são executados em memória principal Algoritmos de memória principal, semi-externos e de memória secundária

40 Webgraph do domínio .br Um novo retrato da web brasileira, M. Modesto, A. Pereira, N. Ziviani, C. Castillos, R. Baeza-Yates, (Brasil + Chile) domínio .br 7.7 milhões de páginas e 126 milhões de links (média de 16 links por página)

41 Webgraph do domínio .br Média de 14,4 Kb por página. Anteriormente era de 9 Kb (Um retrato da web brasileira, Veloso et al, 2000) 6.4% das páginas são duplicadas 41.7% das páginas são dinâmicas

42 Webgraph do domínio .br Idioma: português 88,6% Extensão:
inglês 11,2% e espanhol 1,16% Domínio: 91.1% com.br 2.7% org.br 0,3% edu.br Extensão: html: 97.92% pdf: 0.88 % doc: 0.48%

43 Propriedades Avançadas
Cálculo do número de triângulos do grafo Cálculo do número de cliques bipartidos de pequena dimensão Cálculo do coeficiente de clustering

44 Comunidades Web emergentes
Identifique todos cliques bipartidos de dimensão 3 ≤ i ≤ 10

45 Bases de Dados Alternativas
Wikipedia maior enciclopédia online do mundo Cada artigo é um nó e cada hyperlink entre artigos é um arco do grafo Poucos links externos Um grafo pode ser gerado para cada língua Língua Inglesa: nós (15 arcos por nó) Possui informação temporal

46 Algoritmos de Data Stream
algoritmos de aproximação baseados em probabilidade usam memória limitada Originalmente: dados são lidos uma única vez em forma de stream Usam sketch (tipo e numero de funções hash) ou amostragem (amostra e tamanho da amostragem) Já propostos: triângulos, cliques bipartidos e coeficiente de clustering

47 Contando o Número de Triângulos de um Grafo
Dado um grafo G=(V,E), onde V e o conjunto de nós e E o conjunto de arcos, considere todas as triplas de três nós  V; T0 T1 T2 T3

48 Contando o Número de Triângulos de um Grafo
O que é uma amostra? ? a b v Seleciona-se um arco e=(a,b)  E e um no v  V \ {a,b}, e observa-se a ocorrência dos outros arcos.

49 Contando o Número de Triângulos de um Grafo
Quantas amostras deste tipo tem um grafo? A seguinte propriedade e verdadeira para qualquer grafo T1 + 2T2 + 3T3 = |E|(|V|-2) Triplas do tipo T0 nao fazem parte desta amostra

50 Contando o Número de Triângulos de um Grafo
Os algoritmos podem se beneficiar da estrutura dos dados Em geral são polinomiais de baixa ordem Motivação: necessidade de cálculos on the fly, cálculo de propriedades do webgraph, redes de sensores, etc.

51 Compressão Níveis de compressão:
Conteúdo da página URL da página Webgraph Usa técnicas especializadas que permitem grande compressão e rápido acesso aos dados.

52 Observações levadas em consideração para compressão
Consecutividade: muitos links num mesmo web site são similares lexicograficamente. Ex: Localidade: cerca de 80% dos links são locais, ou seja, apontam para páginas no mesmo domínio Similaridade: Páginas do mesmo domínio tendem a ter muitos links que apontam para as mesmas páginas

53 Proposto em 1997 pelo Alta Vista: obtém redução de 70%.
Compressão das URLs São ordenadas lexicograficamente e armazenadas com indicação de similaridade + diferença em relação à precedente. Proposto em 1997 pelo Alta Vista: obtém redução de 70%.

54 Lista de Adjacência em Código Delta
Lista Adj Vértices

55 Lista de Adjacência em Código Delta
Lista Adj Lista Adj Vértices Vértices -3 = (primeiro item)

56 Compressão do Webgraph
Melhor compressão = ( ) bits por arco: Universidade Estadual de Milão (http://webgraph.dsi.unimi.it) Compressão vs. tempo de acesso Acesso seqüencial e aleatório

57 Conclusões Tópico atual, com muitos trabalhos em aberto e muitas conferências na área Deve-se ter uma visão geral, mas especializar-se em poucos tópicos Reúne resultados de diversas áreas Equilíbrio entre teórico e pratico Os estudos são recentes, de interesse atual, e ainda carece de muita pesquisa Muitos problemas de dimensões diversas

58 Tópicos de Interesse GERAL: Algoritmos e Otimização
Algoritmos de memória secundária propor algoritmos de data stream para o cálculo de propriedades avançadas Geração de grafos sintéticos evolução temporal do grafo: geração de grafos, propriedades e classificação. determinar como tais propriedades podem aprimorar as ferramentas de busca Link spam takes advantage of link-based ranking algorithms, such as Google's PageRank algorithm, which gives a higher ranking to a website the more other highly-ranked websites link to it. These techniques also aim at influencing other link-based ranking techniques such as the HITS algorithm

59 Áreas Relacionadas Algoritmos Recuperação de informações
Mineração de dados Banco de dados Inteligência Artificial Processamento de Linguagem natural

60 Contato Luciana Salete Buriol buriol@inf.ufrgs.br


Carregar ppt "Webgraph: algoritmos e métodos"

Apresentações semelhantes


Anúncios Google