CS276 Information Retrieval and Web Search

Slides:



Advertisements
Apresentações semelhantes
PubMed/MeSH - Medical Subject Headings (módulo 4.3)
Advertisements

Modelo Probabilístico
Deve ser selecionado o modo
Sistemas Realimentados
Análise do Lugar das Raízes Introdução. 6. 2
CINAHL Tutorial de Pesquisa Básica
FINANÇAS EM PROJETOS DE TI
Ciclos, Vectores e Gráficos Simulação da Queda de Corpos II
PERCEPTRON (CONTINUAÇÃO)
PageRank O algoritmo do Google
1 Complexidade de Algoritmos Complexidade de pior caso Complexidade de melhor caso de uso bem menos freqüente em algumas situações específicas Complexidade.
Árvores.
1 MergeSort Seja uma lista A de n elementos. O algoritmo consiste das seguintes fases Dividir A em 2 sub-listas de tamanho n/2 Conquistar: ordenar cada.
Estatística Básica Utilizando o Excel
GHHITS – Mining the Web Link Structure Universidade Federal de Pernambuco Centro de Informática Roberta Coelho Silvio Meira.
Medida do Tempo de Execução de um Programa
Medida do Tempo de Execução de um Programa
Introdução a Teoria da Classificação
Divisão de Biblioteca e Documentação FMUSP
Web of Science.
Base SCOPUS 2011 Divisão de Biblioteca e Documentação FMUSP.
Ambiente de simulação Os algoritmos previamente discutidos foram analisados usando um simulador de mobilidade. Ele modela uma cidade de 20 Km de raio,
O que é a Internet e o que podemos lá fazer
Classes e objetos Modelagem
OSA - Operação de Software e Aplicativos
Prof. Wellington D. Previero
Algoritmos em Grafos.
Análise do Lugar das Raízes
Aprendizado de Máquina Aula 13
Inteligência Artificial
Análise de Centralidade
Finding and Evaluating Community Structure in Networks
Aula prática 6 Vetores e Matrizes
Exercícios PAA- Grafos
CS276: Information Retrieval and Web Search
Introduction to Information Retrieval Introduction to Information Retrieval CS276 Information Retrieval and Web Search Christopher Manning and Prabhakar.
Treinamento do Microsoft® Word 2010
Treinamento do Microsoft® Access® 2010
Arquitetura de computadores
Layout.
TUTORIAL. Acervo de 47 jornais especialmente selecionados pela British Library para melhor representar o século XIX. Inclui jornais nacionais e regionais.
Aula 08 Medidas de posição - Prof. Diovani Milhorim
Sistema de equações lineares
Projeto de Banco de Dados
BCC 101 – Matemática Discreta I
Planear um Website Principais etapas.
Aula 6 Disciplina: Sistemas de Controle 1 - ET76H
Planilha Eletrônica - Excel
MÚLTIPLOS GRAUS DE LIBERDADE
Funções Caderno de Exercícios 2ª aula Nome
Sistemas de Recomendação – Filtragem Colaborativa
C LASSIFICAÇÃO DE N ÓS Ricardo Prudêncio. L INK M INING - T AREFAS Relacionadas a Objetos Relacionadas a Arestas Relacionadas a Grafos Ranking de Nós.
Padrões de Interação com o Usuário
Regressão e Previsão Numérica.
Tutorial Portal / Hotel de Hilbert Coordenadores de Iniciação Científica.
Modelagem e Avaliação de Desempenho
Computabilidade e Linguagens Formais
Metodologia da Pesquisa em Ensino de Ciências I
Links Relativos (X)HTML Professor Jolvani Aula 16.
Testes de Hipóteses.
Programação para Web I AULA 2 BANCO DE DADOS.
Tutorial DynaMed Plus support.ebsco.com.
Laboratório de Mídias Sociais
Computação Científica e Equações Diferenciais Geovan Tavares e Hélio Lopes PUC-Rio – Departamento de Matemática Laboratório Matmidia
Prof. João Ricardo Andrêo Programação p/ INTERNET - HTML 31/5/ :16 1 FRAMES Os Frames são divisões na tela do browser em diversas telas pequenas.
Prof. João Ricardo Andrêo Programação p/ INTERNET - HTML 31/5/ :32 1 LISTAS Listas de Definição Estas listas são chamadas também “Listas de Glossário”,
Web Design: algumas considerações IPCA / EST Abril 2013.
Aula 4 Bioestatística Probabilidade para variáveis aleatórias.
Professor: Gerson Leiria Nunes.  Introdução  Filtro IIR  Forma direta  Forma direta implementada.
Questionário (Básico) Autor: Skyup Informática. Atividade - Questionário O módulo permite criar uma série de questões, que deverão ser respondida pelos.
Transcrição da apresentação:

CS276 Information Retrieval and Web Search Christopher Manning and Prabhakar Raghavan Lecture 18: Link analysis

Aula de Hoje Texto âncora. Link análise para o ranking. Pagerank e variantes. HITS.

A Web como um Grafo direcionado Sec. 21.1 A Web como um Grafo direcionado Pag. A hyperlink Pag B âncora Hipótese 1: Um hyperlink entre as páginas mostra a relevância percebida pelo autor (qualidade do sinal). Hipótese 2: O texto âncora do hyperlink descreve o destino da página (contexto textual).

Texto âncora WWW Worm - McBryan [Mcbr94] Sec. 21.1.1 Texto âncora WWW Worm - McBryan [Mcbr94] Para ibm como a distinção entre: IBM’s home page (amostra grafica). IBM’s copyright page (alta frequencia de termo para ‘ibm’). Rival’s spam page (arbitrariamente alta freq. termo.) “IBM home page” “ibm.com” “ibm” Um milhão de partes para texto âncora para “ibm” mandando um sinal forte. www.ibm.com

Indexação do texto âncora Sec. 21.1.1 Indexação do texto âncora Ao indexar um documento D, incluir o texto âncora de links que apontam para D. Armonk, NY-based computer giant IBM announced today www.ibm.com Big Blue today announced record profits for the quarter Joe’s computer hardware links Sun HP IBM

Indexação de texto âncora Sec. 21.1.1 Indexação de texto âncora Pode as vezes ter efeitos colaterais inesperados- e.g., império do mal. Pode marcar o texto âncora com peso dependendo da entidade âncora da página do site. E.x., se fôssemos assumir que o conteúdo de cnn.com ou yahoo.com seja autoritário, e em seguida seja o texto âncora de confiança deles.

Texto âncora Outras aplicações: Sec. 21.1.1 Texto âncora Outras aplicações: Ponderação / links de filtragem no gráfico. Gerando a partir de descrições de página de texto âncora.

Análise de Citações Frequência da Citação. Co-citação de frequência de acoplamento. Cocitação com medidas de um determinado autor de “impacto”. Análise de Cocitação. Frequência Bibliographica de acoplamento. Artigos que fazem co-citação de artigos relacionados. Indexação de Citação. Quem é o autor sitado por? (Garfield 1972). Vizualizando Pagerank : Pinsker and Narin ’60s.

Consulta independente da ordenação Primeira Geração: através da contagem de link como medidas simples de popularidade. Duas sugestões básicas: Popularidade indireta: Cada página recebe uma pontuação = o número de in-links mais os números de ligações out-links (3+2=5). Direcionando a popularidade: Resultado de uma página = número de in-links (3).

Processamento de Consultas Primeiro recupera todas as páginas da reunião da consulta de texto (digamos capital de risco). Ordenar estes pela popularidade do link (qualquer variante do slide anterior). Mais sutil – a utilização do link conta como uma boa medida estática (Aula7), combinando com o resultado do texto.

Spamming popularidade simples Exercício: How do you spam each of the following heuristics so your page gets a high score? Cada página recebe uma pontuação fixa = ao número de in-links mais o número de out-links. Contagem fixa de uma página = aos números dos in-links.

Sec. 21.2 Pontuação Pagerank Imagine um navegador fazendo um passeio aleatório em páginas da Web: Estartar uma página randômicamente. Em cada etapa, saia da página atual ao longo de um dos links da página, equacionadamente. “Em um estado parado” cada página tem um long-term na taxa de visita – use isso como pontuação da página. 1/3

Não é o Bastante A web é cheia de becos sem saidas. Sec. 21.2 Não é o Bastante A web é cheia de becos sem saidas. Random walk podem ficar presos em becos sem saida. Não faz sentido falar de long-term para taxas de visitas. ??

Sec. 21.2 Teleporting Em um beco sem saida, salta aleatóriamente para uma pág. Web. Em todo final non-dead, com probabilidade de 10%, salta para uma página randomicamente. Com o restante da probabilidade (90%), sair para um link aleatório. 10% - um parâmetro.

Resultado do teleporting Sec. 21.2 Resultado do teleporting Agora não podem ficar presos no local. Existe uma taxa para long-term onde uma página é visitada (não é óbvio, mostrar isso). Como podemos calcular essa taxa de visita?

Sec. 21.2.1 Cadeias de Markov Uma cadeia de Markov consiste em n estados, mais nn probabilidade de transição da matriz P. A cada passo estamos em um dos estados. For 1  i,j  n, a entrada da matriz Pij temos a probalidade de j ser o próximo estado, dado que estão atualmente no estado i. Pii>0 is OK. i j Pij

Cadeias de Markov Evidente , para todo i, Sec. 21.2.1 Cadeias de Markov Evidente , para todo i, Cadeias de Markov são abastrações de passeios aleatórios. Exercise: represent the teleporting random walk from 3 slides ago as a Markov chain, for this case:

Cadeia de Markov Ergodic Sec. 21.2.1 Cadeia de Markov Ergodic Uma cadeia de Markov é ergodic se se você tem um caminho a partir de qualquer estado para qualquer outro. Para qualquer estado inicial , após um tempo finito T0, a probablidade de ser em qualquer estado em um tempo fixo T>T0 é diferente de zero. Not ergodic (even/ odd).

Cadeias de Markov Ergodic Sec. 21.2.1 Cadeias de Markov Ergodic Para qualquer cadeia de Markov ergótica existe uma taxa de visita long-term para cada estado. Probabilidade de distribuição Steady-state(estado-equilibrio). Durante um tempo, visitamos cada estado na proporção desta taxa. Não importa o ponto de partida.

Vetor de Probabilidade Sec. 21.2.1 Vetor de Probabilidade Uma probabilidade (linha) do vetor x = (x1, … xn) nos diz que o caminho é qualquer ponto. Ex.., (000…1…000) significa que estamos em estado i. 1 i n Mais genéricamenteo o vetor x = (x1, … xn) significa que o andar esta em estados de i com a probab. xi.

Mudança na probalidade de vetores Sec. 21.2.1 Mudança na probalidade de vetores Se a prob do vetor é x = (x1, … xn) nesta etapa , é a próxima? Lembre-se que a linha i da transição prob. Matriz P onde vamos ao próximo estado i. Apartir de x, o próximo estado é distribuido como xP.

Exemplo do estado estável Sec. 21.2.1 Exemplo do estado estável O estado estacionário parece um vetor de probabilidade a = (a1, … an): ai é a probabilidade de estarmos no estado i. 3/4 1/4 1 2 3/4 1/4 Para esse exemplo, a1=1/4 e a2=3/4.

Como calcular esse vetor? Sec. 21.2.2 Como calcular esse vetor? Dado a = (a1, … an) mostrar o vetor linha das probabilidades de estado estacionário. Se a posição atual é descrita por a, o próximo passo é distribuir aP. Mas a é o estado de equilíbrio , tal que a=aP. Resolvendo essa matriz de equação temos a. Assim a (esquerda) de autovetor para P. (Corresponde para o “principal” autovetor de P com o maior autovalor) Matrizes de transição de probalidade sempre tem o maior autovalor como 1.

Sec. 21.2.2 Uma forma de calcular a Lembre-se que independente de onde começar eventualmente pode atingir o estado fixo a. Comece com a distribuição (say x=(10…0)). Depois de um step estamos em xP; Depois de dois steps xP2 , em seguida xP3 e assim por diante. “Eventualmente” para “grande” de k, xPk = a. Algoritimo: multiplicar x pelo valor incrementado de P até que o produto seja estável.

Resumo Pagerank Pré-processamento: Processamento da Query: Sec. 21.2.2 Resumo Pagerank Pré-processamento: Dado o grafo de links, construir a matriz P. A partir dele calcular a. A entrada ai é um número entre 0 e 1: O pagerank da pagina i. Processamento da Query: Recuperar paginas da consulta. Classificar por pagerank. A ordenação é independente da consulta.

A Realidade Pagerank é usado no google, mas não é a história completa do ranking. Muitos recursos sofisticados são utilizados. Alguns endereços específicos para consulta de classes. Ranking de máquina ja aprendido (aula 15) é muito utilizado. Pagerank ainda é muito utilizado na politica de indexação.

Pagerank: Questões e Variantes Quão realista é modelo surfar (surfer model) randômico? (Isso é importante?). E se modelarmos o botão de voltar? O Comportamento de surfar constantemente desvia para trajetos curtos. Motores de busca, bookmarks & directories fazem saltos não aleatórios. Tendenciosos Surfer Models A probabilidade da passagem do peso da borda baseado na passagem do topic/query (borda selecionada não uniforme). Bias salta para páginas no tema (e.x., com base em pessoal bookmarks & categorias de interesse).

Tópico Específico Pagerank Sec. 21.2.3 Tópico Específico Pagerank Objetivo – Valores de pagerank que dependem da consulta do tema (topic). Conceitualmente, utilizamos um surfista que se teleporta aleatoriamente, com 10% de probabilidade, utilizando a seguinte regra: Seleciona um tema(uma das 16 categorias do nivel superior ODP) baseado na consulta & usuário específico distribuido sobre as categorias. Teleporte aleatório para uma página uniforme dentro do tema escolhido. Parece dificil de implementar: não é possivel calcular o PageRank no momento da consulta!

Tópico Específico Pagerank Sec. 21.2.3 Tópico Específico Pagerank Offline: Compute pagerank para tópicos individuais. Consulta independente como antes. Cada página tem várias contagens do PageRank – uma para cada categoria ODP, com teletransporte só para essa categoria. Online: Contexto de consultas classificados em (maior distribuição de pesos) tópicos. Gerar pagerank dinamicamente com a pontuação para cada página – soma ponderada de topic-specific para pageranks.

Influenciando PageRank (“Personalização”) Sec. 21.2.3 Influenciando PageRank (“Personalização”) Input: Grafo Web W Influência do vetor v sobre temas v : (página  grau de influência) Output: Rank do vetor r: (pagina  importancia da página wrt v) r = PR(W , v) Vector tem um Componente p/a Cada tópico basis web graph!!

Teletransporte Não Uniforme Sec. 21.2.3 Teletransporte Não Uniforme Esporte Teleport com 10% de probabilidade para uma página de esportes.

Interpretação da Composição de Score Sec. 21.2.3 Interpretação da Composição de Score Dado um conjunto de vetores de personalização {vj} j [wj · PR(W , vj)] = PR(W , j [wj · vj]) Considerando a preferência do usuário sobre o tema, expressa como a combinação de vetores “basis” vj.

Sec. 21.2.3 Interpretação Esporte 10% teletransporte Esporte.

Sec. 21.2.3 Interpretação Saúde 10% teletransporte saúde.

Interpretação Saúde Esporte pr = (0.9 PResporte + 0.1 PRsaúde) gera : Sec. 21.2.3 Interpretação Saúde Esporte pr = (0.9 PResporte + 0.1 PRsaúde) gera : 9% teletransporte esporte, 1% teletransporte saúde.

Hyperlink-Induced Topic Search (HITS) Sec. 21.3 Hyperlink-Induced Topic Search (HITS) Em resposta a uma consulta, ao invés de uma lista ordenada de cada consulta, encontra dois conjuntos de páginas inter-relacionadas: Páginas Hub são boas listas de links sobre o assunto. ex., “Bob’s listas de links relacionadas ao cancer.” Authority pages ocorrem recorrentemente em bons hubs para o assunto. Consultas mais adequadas para “termo amplo” do que consultas para encontrar a página. Obtém uma ampla parte da opinião comum.

Sec. 21.3 Hubs e Autoridades Assim, uma boa página hub para um tópico points para muitas páginas de autoridade para o tópico. Uma página de boa autoridade para um tópico é apontada por muitos outros bons hubs sobre esse assunto. Definição Circular – vai transformar isso em um cálculo interativo.

Empresas de telefonia Móvel Sec. 21.3 A Expectativa Authorities Hubs Empresas de telefonia Móvel

Sec. 21.3 High-level scheme Extrair da web um conjunto básico de páginas que poderiam ser bons hubs de autoridade. A partir destas, identificar um pequeno conjunto de hub e páginas de autoridade superior; Algoritimo interativo.

Sec. 21.3 Base set Atendendo a consulta de texto (say browser), utilização de um indice de texto para obter todas as páginas que contém o browser. Chame uma root set (conjunto raiz) das páginas. Adicionar em qualquer página que queira Aponta para uma página do conjunto raiz, ou É apontada por uma página na raiz do jogo. Chame essa base base set.

Sec. 21.3 Visualização Conj raiz Base set

Montagem do Conjunto Básico Sec. 21.3 Montagem do Conjunto Básico Conjunto raíz tipico 200-1000 nós. Base set pode ter milhares de nós. Tópicos dependentes. Como encontrar os nós na base set ? Seguir as ligações ao analisar a raiz do conjunto de páginas. Obter in-links (e out-links) da conectividade de servidores (Aula 17).

Distribuindo hubs and authorities Sec. 21.3 Distribuindo hubs and authorities Calcular, para cada página x do base set, um hub score h(x) e um authority score a(x). Inicializar : para todo x, h(x)1; a(x) 1; Atualizar iterativamente todos h(x), a(x); Depois das iterações. Pag. saída com valor alto h() score para top hubs. valor alto a() scores com top authorities. Key

Atualização Iterativa Sec. 21.3 Atualização Iterativa Repita as seguintes atualizações para x: x x

Sec. 21.3 Scaling Para evitar que os valores h() e a() fiquem muito grandes, pode-se diminuir o score a cada iteração. O Fator de dimencionamento não importa: Deve-se preocupar apenas com os valores relativos para o score.

Sec. 21.3 Quantas Iterações? Afirmação: Os valores relativos do scores irão convergir após algumas iterações: De fato, devidamente dimensionados os pontos, h() e a() estabelecer um score fixo! A prova disso vem depois. É requerida a ordem relativa para o score de h() e a() - não sendo valores absolutos. Na prática, ~5 iterações podem levar a estabilidade.

Escoloas Fundamentais do Japan Sec. 21.3 Escoloas Fundamentais do Japan Hubs Authorities schools LINK Page-13 “ú–{‚ÌŠwZ a‰„¬ŠwZƒz[ƒ€ƒy[ƒW 100 Schools Home Pages (English) K-12 from Japan 10/...rnet and Education ) http://www...iglobe.ne.jp/~IKESAN ‚l‚f‚j¬ŠwZ‚U”N‚P‘g•¨Œê ÒŠ—’¬—§ÒŠ—“Œ¬ŠwZ Koulutus ja oppilaitokset TOYODA HOMEPAGE Education Cay's Homepage(Japanese) –y“쏬ŠwZ‚̃z[ƒ€ƒy[ƒW UNIVERSITY ‰J—³¬ŠwZ DRAGON97-TOP ŽÂ‰ª¬ŠwZ‚T”N‚P‘gƒz[ƒ€ƒy[ƒW ¶µ°é¼ÂÁ© ¥á¥Ë¥å¡¼ ¥á¥Ë¥å¡¼ The American School in Japan The Link Page ‰ªèŽs—§ˆä“c¬ŠwZƒz[ƒ€ƒy[ƒW Kids' Space ˆÀéŽs—§ˆÀé¼•”¬ŠwZ ‹{é‹³ˆç‘åŠw•‘®¬ŠwZ KEIMEI GAKUEN Home Page ( Japanese ) Shiranuma Home Page fuzoku-es.fukui-u.ac.jp welcome to Miasa E&J school _“ސ쌧E‰¡•lŽs—§’†ì¼¬ŠwZ‚̃y http://www...p/~m_maru/index.html fukui haruyama-es HomePage Torisu primary school goo Yakumo Elementary,Hokkaido,Japan FUZOKU Home Page Kamishibun Elementary School...

Sec. 21.3 Pertence a nota Recupera páginas boas independente do idioma de conteúdo dessa página. Utilize o link depois de analisar a base set montada. A pontuação iterativa é independente da consulta. Cálculo iterativo depois de recuperar o texto do índice – significativa sobrecarga.

Prova da Convergência nn adjacency matrix A: Sec. 21.3 Prova da Convergência nn adjacency matrix A: Cada uma das n páginas na base set tem uma linha e coluna na matriz. Entry Aij = 1 if page i links to page j, else = 0. 1 2 3 1 2 1 2 3 0 1 0 1 1 1 3 1 0 0

Sec. 21.3 Vetor Hub/autoridade Ver o hub scores h() e a autoridade scores a() como vetores com n components. Recall as atualizações iterativas.

Reescreva na forma matriz Sec. 21.3 Reescreva na forma matriz h=Aa. a=Ath. Recall At is the transpose of A. Substituting, h=AAth and a=AtAa. portanto, h é um autovetor de AAt e a é um autovetor de AtA. Por outro lado, o algoritimo é um conhecido algoritimo para calcular autovetores: the power iteration method. Guaranteed to converge.

Questões Topic Drift. Reforçam Mutamente Afiliados. Sec. 21.3 Questões Topic Drift. Páginas Off-topic podem causar off-topic “autoridades” devolvidas. Ex., O gráfico de proximidade pode ser referente a um “super topic”. Reforçam Mutamente Afiliados. pages/sites afiliados podem retornar e aumentar scores uns dos outros. Linkage entre páginas afiliadas não é um sinal útil.

Recursos IIR Chap 21. http://www2004.org/proceedings/docs/1p309.pdf http://www2004.org/proceedings/docs/1p595.pdf http://www2003.org/cdrom/papers/refereed/p270/kamvar-270-xhtml/index.html http://www2003.org/cdrom/papers/refereed/p641/xhtml/p641-mccurley.html