Introduction to Information Retrieval CS 276 Information Retrieval
- Slides: 39
Introduction to Information Retrieval CS 276 Information Retrieval and Web Search Christopher Manning and Prabhakar Raghavan Lecture 7: Scoring and results assembly
Introduction to Information Retrieval Ch. 7 Nesta aula § Aumentar velocidade da classificação espaço-vetor § Juntando um sistema de busca completo § Precisamos aprender uma miscelânea de tópicos e heurísticas
Introduction to Information Retrieval Sec. 6. 3. 3 Computando a pontuação de cossenos
Introduction to Information Retrieval Sec. 7. 1 Classificação eficiente de cossenos. § Encontrar os K documentos na coleção “aproximada” à consulta para K cossenos consulta-documento maiores. § Classificação eficiente: § Computando um único cosseno eficientemente § Escolhendo eficientemente os K maiores valores de cosseno § Podemos fazer isto sem computar todos os N cossenos?
Introduction to Information Retrieval Sec. 7. 1 Classificação eficiente de cossenos § O que estamos fazendo: resolvendo o problema dos vizinhos mais próximos a k, para um vetor consulta. § Em geral, não sabemos como fazer isto eficientemente para espaços super-dimensionados § Mas isto é resolvido por consultas pequenas, e índices padrões suportam isto bem.
Introduction to Information Retrieval Caso especial – consultas não ponderadas Sec. 7. 1 § Sem ponderação nos termos de consulta § Assumimos que cada termo da consulta ocorre somente uma vez § Assim para a classificação, não precisamos normalizar os vetores da consulta. § Ligeira simplificação do algoritmo do capítulo 6
Introduction to Information Retrieval Cosseno rápido: consulta não ponderada Sec. 7. 1
Introduction to Information Retrieval Sec. 7. 1 Computando os K cossenos maiores: seleção vs. ordenação § Tipicamente nós queremos recuperar os top K documentos (na classificação de cossenos para a consulta) § Não ordenar totalmente todos os documentos da coleção § Podemos escolher os documentos com os K maiores cossenos? § Seja J = número de documentos com cossenos diferentes de zero § Vamos buscar os K melhores destes J
Sec. 7. 1 Introduction to Information Retrieval Uso de pilha (heap) para selecionar os top K § Árvore binária em que cada valor de nó > os valores dos filhos § Seja 2 J operações para construir, então cada K “vencedor” é lido em 2 log J passos. § Para J=1 M, K=100, isto é em torno de 10% do custo para ordenação. 1 . 9. 3 . 3. 8. 1
Introduction to Information Retrieval Sec. 7. 1. 1 Gargalos § Gargalo computacional primário na pontuação: computação de cossenos § Podemos evitar toda esta computação? § Sim, mas as vezes podemos errar § Um documento que não está nos top K podem influenciar a lista dos K documentos de saída § Isto é uma coisa ruim?
Introduction to Information Retrieval Sec. 7. 1. 1 Similaridade de cosseno é apenas um proxy (representante, procurador) § Usuários possuem a tarefa da formulação da consulta § Cosseno corresponde documentos à consultas § Deste modo cosseno é apenas um proxy para a felicidade do usuário § Se nós recebemos a lista dos K documentos “próximos” aos top K por medida de cosseno, deve estar ok
Introduction to Information Retrieval Sec. 7. 1. 1 Abordagem genérica § Considere um conjunto A de candidatos, com K < |A| << N § A não necessariamente contém os top K, mas possui muitos documentos dentre os top K § Retorna os top K documentos em A § Imagine A como uma poda dos não-candidatos (pruning non-contenders) § A mesma abordagem é também utilizada para outras (não-cosseno) funções de pontuação § Vamos ver diversos esquemas a seguir desta abordagem
Introduction to Information Retrieval Sec. 7. 1. 2 Eliminação de índices § O algoritmo básico Fast. Cosine. Score da Fig 7. 1 apenas considera os documentos contendo pelo menos um termo da consulta § Além disso: § Apenas considera termos de consulta com alto idf § Apenas considera documentos que contém muitos termos de consulta
Introduction to Information Retrieval Termos de consulta com alto idf apenas Sec. 7. 1. 2 § Para uma consulta do tipo catcher in the rye § Apenas acumula a pontuação de catcher e rye § Intuição: in e the contribui muito pouco para a pontuação e então não altera muito a ordenação do rank § Benefício: § Postings de termos de baixo idf possuem muitos documentos estes (muitos) documentos são eliminados do conjunto A de candidatos
Introduction to Information Retrieval Sec. 7. 1. 2 Documentos contendo muitos termos de consulta § Qualquer documento com pelo menos um termo de consulta é um candidato para a lista de saída dos top K § Para consultas multi-termos, apenas é computada a pontuação para documentos contendo muitos dos termos da consulta § Digamos, ao menos 3 dos 4 § Estabelece uma “conjunção suave” nas consultas vistas em sistemas de busca web (Google) § Fácil de implementar percorrendo os postings
Sec. 7. 1. 2 Introduction to Information Retrieval 3 de 4 termos da consulta Antony 3 4 8 16 32 64 128 Brutus 2 4 8 16 32 64 128 Caesar 1 3 5 Calpurnia 2 8 13 21 34 13 16 32 Pontuação apenas computada para os docs 8, 16 e 32.
Introduction to Information Retrieval Sec. 7. 1. 3 Listas dos campeões § Pré computar para cada termo t do dicionário, os r documentos de maios peso dentre os t’s postings § Chamado de lista de campeões (champion list) para t § (aka fancy list ou top docs para t) § Note que r deve ser escolhido no tempo de construção do índice § Portanto, é possível que r < K § Ao tempo de consulta , apenas computa pontuação para documentos na lista de campeões de algum termo da consulta § Pegue os K documentos de maior pontuação dentre estes
Sec. 7. 1. 4 Introduction to Information Retrieval Pontuação de qualidade estática § Queremos os documentos do topo do ranking que sejam relevantes e autoritários § Relevância está sendo modelada pela pontuação de cossenos. § Autoridade é uma propriedade tipicamente independente de consulta de um documento. § Exemplos de sinais de autoridade § § § Wikipedia entre os sites Artigos em certos jornais Um paper com muitas citações Many diggs, Y!buzzes ou del. icio. us marks (Pagerank) Quantitativo
Introduction to Information Retrieval Sec. 7. 1. 4 Modelagem de autoridade § Atribui a cada documento uma pontuação de qualidade independente de consulta em [0, 1] para cada documento d § Denote isto por g(d) § Portanto, uma quantidade como o número de citações é dimensionado em [0, 1]
Introduction to Information Retrieval Sec. 7. 1. 4 Pontuação líquida § Considere uma pontuação total simples combinando relevância de cossenos e autoridade § net-score(q, d) = g(d) + cosseno(q, d) § Podemos usar alguma outra combinação do que ponderação de igualdade § De fato, qualquer função dos dois “sinais” da felicidade do usuário – mais a frente § Agora nós buscamos os top K documentos por pontuação líquida
Introduction to Information Retrieval Top K por pontuação líquida – métodos rápidos Sec. 7. 1. 4 § Primeira idéia: Ordene todos os postings por g(d) § Chave: este é uma ordenação comum para todos os postings § Portanto, simultaneamente podemos percorrer os postings dos termos da consulta para § Interseção de Postings § Computação de pontuação de cossenos
Introduction to Information Retrieval Sec. 7. 1. 4 Por que ordenar os postings por g(d)? § Sob ordenação-g(d), documentos com pontuação top são prováveis de aparecer antes percorrendo os postings § Em aplicações de limite de tempo (digamos, são retornados quaisquer resultados de busca possível em 50 ms), permitindo parar de percorrer os postings mais cedo § Redução de pontuação de computação para todos documentos nos postings
Introduction to Information Retrieval Sec. 7. 1. 4 Lista de Campeões em ordenação g(d) § Podemos combinar a lista de campeões com ordenação g(d) § Mantendo para cada termo uma lista de campeões dos r documentos com maior g(d) + tf-idftd § Buscar os top-K resultados de apenas os documentos que estão na lista de campeões
Introduction to Information Retrieval Sec. 7. 1. 4 Listas de altas e baixas § Para cada termo, mantemos duas listas de postings chamados altas e baixas § Pense como alta como a lista de campeões § Quando percorremos os postings de uma consulta, apenas atravessar a lista de altos primeiros § Se nós pegamos mais do que K documentos, selecionamos os top K e paramos § Do contrário procedemos pegando os documentos da lista de baixas § Podemos usar mesmo para pontuações simples de cossenos, sem a qualidade global g(d) § Um modo de segmentar o indice em dois níveis
Introduction to Information Retrieval Sec. 7. 1. 5 Posting Impacto-ordenado § Nós queremos apenas computar a pontuação para documentos para o qual o wft, d é alto o suficiente § Nós vamos ordenar a lista de postings wft, d § Agora: nem todos os postings em uma ordem comum! § Como computamos a pontuação a fim de recuperar os top K? § Duas idéias seguem
Introduction to Information Retrieval Sec. 7. 1. 5 1. Terminação mais cedo § Quando percorremos as listas dos postings dos termos, paramos mais cedo quando § Um número fixo r de documentos é atingido § wft, d cai para menos de um limite fixado § Seja a união dos conjuntos de resultados documentos § Um para os postings de cada termo da consulta § Computa apenas a pontuação dos documentos nesta união
Introduction to Information Retrieval Sec. 7. 1. 5 2. Termos idf-ordenados § Quando consideramos os postings dos termos da consulta § Imagine eles em ordem decrescente de idf § Termos com idf altos provavelmente contribui mais para a pontuação § A medida que atualizamos a pontuação de contribuição de cada termo da consulta § Paramos se a pontuação do documento não muda relativamente § Podemos aplicar para cosseno ou alguma outra pontuação líquida
Introduction to Information Retrieval Sec. 7. 1. 6 Poda de grupo: pré-processamento § Pegue N documentos randômicos: chame -os de líderes § Para cada outro documento, pré-compute proximidade com o líder § Documentos ligados a um líder: são os seguidores; § Provavelmente: cada líder tem ~ N seguidores.
Introduction to Information Retrieval Poda de grupo: processamento de consulta Sec. 7. 1. 6 § Processa uma consulta como segue: § Dado uma consulta Q, encontre o líder L mais similar. § Encontre os k documentos mais similares entre os seguidores de L.
Sec. 7. 1. 6 Introduction to Information Retrieval Visualização Consulta Líder Seguidor
Introduction to Information Retrieval Sec. 7. 1. 6 Porque utilizar amostragem aleatória § Rápido § Líderes refletem a distribuição de dados
Introduction to Information Retrieval Sec. 7. 1. 6 Variantes gerais § Tenha cada seguidor ligados a b 1=3 (digamos) líderes mais próximos. § Da consulta, encontre b 2=4 (digamos) líderes mais próximos e seus seguidores. § Pode reincindir na construção Líder/Seguidor.
Introduction to Information Retrieval Sec. 7. 2. 1 Índices diferenciados § Quebre postings em listas hierárquicas § Muito importante § … § Menos importante § Pode ser feito por g(d) ou outra medida § Índices invertidos quebrados em camadas de importâncias decremental § Na hora da consulta utilize as maiores camadas a não ser que não complete os K documentos § Se acontecer passe para a camada abaixo
Introduction to Information Retrieval Exemplo de índice de camadas Sec. 7. 2. 1
Introduction to Information Retrieval Sec. 7. 2. 2 Proximidade da Consulta e termo § Consulta de texto livre: apenas um conjunto de termos escrito em uma caixa de pesquisa – comum na web § Usuários preferem documentos em que os termos da consulta ocorrem com proximidade entre si § Seja w a menor janela em um documento que contém todos os termos da consulta, por exemplo, § Para a consulta strained mercy a menor janela no documento The quality of mercy is not strained é 4 (palavra) § Queremos uma função de pontuar que leve isto em conta – como?
Introduction to Information Retrieval Sec. 7. 2. 3 Analisadores de consultas § Consulta de texto livre de um usuário pode de fato resultar em uma ou mais consultas para indexar, por exemplo, a consulta rising interest rates § Execute a consulta como uma consulta de frase § Se <K documentos que contém a a frase rising interest rates, execute as duas consultas de frases rising interest e interest rates § Se ainda <K documentos, execute a consulta de espaço vetor rising interest rates § Classifique os documentos correspondentes à pontuação espaço vetor § Esta seqüência é um problema para um analisador de consulta
Introduction to Information Retrieval Sec. 7. 2. 3 Pontuação Global § Nós vimos que funções de pontuação podem combinar cosseno, qualidade estática, proximidade, etc. § Como sabemos a melhor combinação? § Algumas aplicações – expert-tuned (sintonia por expert) § Cada vez mais comum: aprendizado-máquina
Introduction to Information Retrieval Colocando tudo junto Sec. 7. 2. 4
Introduction to Information Retrieval Resources § IIR 7, 6. 1
- Introduction to information retrieval
- Bvf document
- Introduction to information retrieval
- Introduction to information retrieval manning
- Information retrieval
- Cs 276
- Relevance information retrieval
- Cs 276
- Cs 276
- Cs 276
- Fleas editing dictionary code
- Art 30 276 del 2003
- Cs 276
- Cs-276
- Cs-276
- Cs276 stanford
- Cs 276
- Psalm 276
- Pneumothorax
- Cs 276
- Introduction
- Cs 276
- Cs 276
- Cs 276
- Cs 276
- Cs 276
- Cs 276
- Cs 276
- Cbtis 276
- 276 + 80
- Ncbr limit 276 godzin
- Es 33 pag 276
- Cs 276
- Cs 276
- Cs 276
- Cs 276
- 276-194
- Cs 276
- Information retrieval
- Cs 276 stanford