1 recuperação de informação consulta: linguagens e operações flavia barros
TRANSCRIPT
1
Recuperação de Informação
Consulta: Linguagens e Operações
Flavia Barros
2
Roteiro – 1a parte
Tipos de consultas Palavras-chaves Com contexto Booleanas Em Linguagem Natural Casamento de Padrão Com estrutura
3
Consultas baseadas em Palavras-chave
keyword query É o tipo de consulta mais simples que
pode ser feita em um sistema de RI Consiste em uma lista de palavrasFuncionamento geral O sistema de RI recupera todos os
documentos que contem pelo menos uma das palavras da consulta
Em seguida, modelos de RI são usados para ordenar os documentos recuperados
4
Consultas com ContextoPosição das palavras
Alguns sistemas de RI sao capazes de buscar palavras dentro de algum contexto
Palavras que aparecem próximas uma da outra podem ter maior relevância na recuperacao e ordenacao do que quando ocorrem separadas
Ex.: “recuperação” e “informação” dentro do contexto de documentos sobre o tema de Recuperação de Informação
A consulta também é formulada como uma lista de palavras
Contudo, a ordenação dos documentos depende da posição das palavras nesses documentos
5
Consultas com Contexto Grupos Nominais
Consultas baseadas em grupos nominais recuperam documentos com um grupo
nominal específico i.e. uma lista ordenada de palavras contíguas no
texto do documento ex., “inteligência artificial”
Pode levar em consideração stopwords e/ou stemming Exemplo - “venda carro” casa com
“venda de carros” “vendendo carro”,…
6
Consultas com Contexto Grupos Nominais
Para possibilitar consultas com GNs, os sistemas de RI devem ter um arquivo invertido que armazena as posições de cada palavra no documentoProcesso Recuperar documentos que contém as
palavras da consulta e as posições de cada palavra nos docs
fazer a intersecção dos documentos Para eliminar redundâncias
verificar a ocorrência de palavras contíguas E melhor iniciar a verificação de contigüidade
com a palavra menos comum no grupo
7
Consultas com Contexto Busca de Grupos Nominais
1. Encontre o conjunto de documentos D que contem todas as palavras-chave (k1…km) no grupo nominal (usando o operador AND)
2. Inicialize com zero o conjunto R de documentos recuperados 3. Para cada documenro d em D: Verifique o vetor Pi de posições de ocorrência de cada termo
ki em d Encontre o vetor mais curto Ps entre os Pi’s Para cada posição p da palavra ks em Ps
Para cada palavra ki exceto ks
Use binary search para encontrar a posição (p – s + i) no vetor Pi
Se a posição correta de cada palavra for encontrada, adicione d a R
4. Retorne R
8
Consultas com Contexto Proximidade das Palavras
Consulta Lista de palavras com uma distância máxima
permitida entre elas Exemplo: “carro” e “corrida” com 4 palavras
casa com “…carro que ganhou a corrida…”
As palavras não precisam estar na mesma ordem em que foram definidas na consutla Exemplo: “…corrida terminou com carro…”
Pode também levar em conta stemming e/ou stopwords
9
Consultas com Contexto Busca com Proximidade das
PalavrasUsa uma abordagem semelhante à busca com grupos nominais Encontra todos os documentos em que
todas as palavras da consulta ocorrem Em um contexto que satisfaz as restrições
de proximidadeDurante a busca pela posição das palavras restantes Encontra a posição mais próxima de ki a p E verifica se está dentro da distância
máxima permitida
10
Consultas com Contexto
Documentos que satisfazem uma consulta por grupos nominais e proximidade podem ser ordenados da mesma forma que a consulta básicaPara consultas por proximidade, a distância poderia ser levada em consideração para definir a relevância do documento Ex.: documento com o texto “…corrida de
carro…” seria mais relevante que documento com texto “…carro que ganhou a corrida…”
11
Consultas BooleanasPalavras combinadas com operadores booleanos:
OR: (e1 OR e2) AND: (e1 AND e2) BUT: (e1 BUT e2)
Satisfaz e1 but not e2
Em geral, sistemas de RI não usam o operador NOT
Uma vez que um número muito grande de documentos poderia ser recuperado
Operador BUT restringe o universo de documentosProblema
Usuários inexperientes têm dificuldades com lógica booleana
12
Consultas BooleanasRecuperação com índices
invertidosPalavra isolada Recupera documentos contendo essa palavra
OR Recursivamente recupera e1 e e2, e faz a
união dos resultadosAND Recursivamente recupera e1 e e2, e faz a
interseção dos resultadosBUT Recursivamente recupera e1 e e2, e utiliza o
conjunto complementar dos resultados
13
Consultas em Linguagem Natural
Consultas de texto completo consideradas com strings arbitrárias Tipicamente: São tratadas como um “bag” de palavras
pelo modelo Espaço Vetorial São processadas usando métodos padrão
de recuperação com Espaço Vetorial Ex.: Active Search pode ser considerado
consulta em linguagem natural
14
Casamento de PadrãoPermite consultas que casam com strings, em lugar de apenas palavras isoladasUm padrão é descrito por um conjunto de características sintáticas
Padrão simples: ex., uma palavra Padrão complexo: ex., expressões regulares
Estamos interessados em documentos que contêm segmentos de texto que casam com o padrão especificado Requer estruturas de dados e algoritmos mais sofisticados do que índices invertidos para uma recuperação eficiente
15
Casamento de PadrãoPadrões Simples
Prefixos Padrão que casa com o inicio da palavra “anti” casa com “antiguidade”, “anticorpos”, etc.
Sufixos Padrão que casa com o final da palavra “ções” casa com “canções”, “infecções”, etc.
Substrings Padrão que casa seqüências quaisquer de caracteres “cid” casa com “capacidade”, “genocídio” etc.
Intervalos Pares de strings que casam com qualquer palavra
alfabeticamente entre eles “tin” to “tix” casa com “tipo”, “tiro”, “tísico”, etc.
16
Casamento de Padrões Simples Tratamento de Erros
Permite a recuperação de documentos com palavras “similares” a uma dada palavra Caso de consulta ou documentos com erros
Erros de edição, erros de OCR, espaço no meio da palavra, dentre outros
Recupera documentos que são similares até um dado limite, medido por Distância de edição
Levenstein distance Subseqüência comum mais longa
Longest Common Subsequence (LCS)
17
Casamento de Padrões Simples Tratamento de Erros
Distância de edição - Levenstein distance Numero mínimo de caracteres deletados,
adicionados ou substituídos necessários para tornar os 2 strings equivalentes “casamento” para “casmento” tem distância = 1 “casamento” para “casammentto” tem distância = 2 “casamento” para “cazammeno” tem distância = 3
Pode ser eficientemente computado usando programação dinâmica
18
Casamento de Padrões Simples Tratamento de Erros
Subseqüência comum mais longa Computa o tamanho da subseqüência
de caracteres mais longa comum aos dois strings
Uma subseqüência de um string é obtida pela eliminação de zero ou mais caracteres
Exemplos: “casamento” e “asamento” = 8 “casamento” e “casammentto” = 5
19
Casamento de Padrões Complexos
Expressões RegularesLinguagem para compor padrões complexos a partir de padrões simples
Um caracter individual é uma expressão regular (ER) União
Se e1 e e2 são ERs, então (e1 | e2 ) é uma ER que casa com tudo que e1 ou e2 casam
Concatenação Se e1 e e2 são ERs, então e1 e2 é uma ER que casa com
um string que consiste em um substring que casa com e1 imediatamente seguido de um substring que casa e2
Repetição (Kleene closure): Se e1 é uma ER, então e1* é uma ER que casa com uma
seqüência de zero ou mais strings que casam com e1
20
Casamento de Padrões Complexos
Expressões RegularesExemplos de Expressões Regulares (u|e)nabl(e|ing) casa com
unable unabling enable enabling
(un|en)*able casa com able unable unenable enununenable
21
Consultas com EstruturaAssumem que o documento possui uma estrutura que pode ser explora na buscaA estrutura poderia ser: Conjunto fixo de campos
e.g. título, autor, resumo, etc. Estruturas hierárquicas em forma de árvore
capítulo
título seção título seção
título subseção
capítulo
livro
22
Consultas com Estrutura
Permitem consultas por textos que ocorrem em campos específicos: “inteligência artificial” aparecendo no título do
capítulo
SFQL: Relational database query language SQL aumentada com busca “full text” Select abstract from journal.papers where
author contains “Teller” and title contains “nuclear fusion” and date < 1/1/1950
23
Operações sobre as Consultas
Roteiro: Feedback de relevância Expansão de consultas
24
Feedback de relevância Após apresentar os resultados de uma consulta, o sistema de RI pode permitir ao usuário fornecer feedback sobre um ou mais documentos recuperados
Esse feedback pode ser usado para reformular a consulta inicial Novos resultados serão produzidos com
base na consulta reformulada Processo é interativo e iterativo
Arquitetura para Feedback de Relevância
RankingsSistemas de RI
documentos
Documentos ordenados
1. Doc1 2. Doc2 3. Doc3 . .
1. Doc1 2. Doc2 3. Doc3 . .
Feedback
Consultainicial
Consulta revisada
Documentos reordenados
1. Doc2 2. Doc4 3. Doc5 . .
Reformulação da consulta
26
Feedback de relevância Repesagem de Termos
Term reweighting Objetivo: Aumentar o peso dos termos que aparecem
em documentos relevantes e diminuir o peso de termos que aparecem em documentos irrelevantes
Existem diversos algoritmos para reformular consultas
27
Feedback de relevância Repesagem de Termos
Reformulação de Consulta para o Modelo Vetorial: No modelo vetorial, consultas e documentos
são representados como vetores de pesos Modelo vetorial recupera documentos que são
similares à consulta do usuário
Se soubéssemos a priori que documentos são relevantes, saberíamos quais consultas seriam as mais adequadas As consultas ideais seriam aquelas mais similares aos
documentos relevantes no espaço vetorial
28
Feedback de relevância Repesagem de Termos
Reformulação de Consulta para o Modelo Vetorial: Adicione à consulta inicial os vetores dos
documentos considerados com relevantes Subtraia da consulta inicial os vetores dos
documentos considerados com irrelevantes
Desta forma, os pesos da consulta são reformulados, aproximando-se dos documentos relevantes
29
Feedback de relevância Repesagem de Termos
Método Rochio Padrão Seja Dr o conjunto dos documentos
relevantes, Dn o conjunto dos documentos irrelevantes e q a consulta inicial.
njrj Ddj
nDdj
rm d
Dd
Dqq
: parâmetro associado à consulta inicial.: parâmetro associado aos documentos relevantes: parâmetro associado aos documentos irrelevantes
30
Método Rochio Padrão Exemplo
w1
w2
[2;3][3;2]
[1;1]
[6;2]
[7;4][5;3]
q1
• Consulta não é boa para recuperar documentos relevantes (obs.: documento irrelevante [3;2] é ordenado logo na 2a posição, ou seja, é o segundo mais similar à consulta q1) • Consulta mal formulada com peso pequeno para termo w1
= Documentos considerados relevantes após a consulta
= Documentos considerados irrelevantes após a consulta
= [6;3]
= Consulta inicial (q1)
31
Método Rochio Padrão Exemplo
w1
w2
[2;3][3;2]
[1;1]
[6;2]
[7;4][5;3]
q1
q2
• Usando Rochio com = = = 1 temos q2 = [6;3] + [5;6] – [2;2] = [9;7] • Consulta reformulada se distancia dos documentos irrelevantes
= Documentos considerados relevantes após a consulta
= Documentos considerados irrelevantes após a consulta= [6;3]
= [9;7]
= Consulta reformulada (q2)
32
Feedback de relevância Repesagem de Termos
Método Ide Aumenta o grau de reformulação
eliminando a divisão pelo número de documentos avaliados
njrj Ddj
Ddjm ddqq
: parâmetro associado à consulta inicial.: parâmetro associado aos documentos relevantes: parâmetro associado aos documentos irrelevantes
33
Feedback de relevância Repesagem de Termos
Método Ide “Dec Hi” Considera apenas o documento irrelevante
melhor ordenado pela consulta inicial
)(max jrelevantnonDd
jm ddqqrj
: parâmetro associado à consulta inicial.: parâmetro associado aos documentos relevantes: parâmetro associado aos documentos irrelevantes
34
Feedback de relevância Repesagem de Termos
Comparação dos Métodos Todos os métodos, de uma forma geral,
melhoram os resultados da RI Resultados experimentais não indicam uma
dominância clara de nenhum método Geralmente, parâmetros são definidos
como constantes iguais a 1 Alguns autores usam apenas o conjunto
dos documentos relevantes (ou seja = 0 ) Método de Feedback Positivo
35
Feedback de relevância
Porque Feedback não é largamente usado Usuários algumas vezes relutam em
fornecer feedback explícito Requer maior tempo de computação Às vezes, dificulta o entendimento de
porque um determinado documento foi recuperado
36
Pseudo-Feedback Usa feedback de relevância sem uma entrada explícita do usuário.
Apenas assume que os top m documentos recuperados são relevantes, e então reformulam a consulta É um método de feedback positivo
Melhorou o desempenho de RI no corpus do TREC
Arquitetura de Pseudo-Feedback
RankingsSistemaRI
Corpus de Documentos
DocumentosOrdenados
1. Doc1 2. Doc2 3. Doc3 . .
Consulta inicial
ConsultaReformulad
a Documentosreordenados
1. Doc2 2. Doc4 3. Doc5 . .
Reformulaçãoda consulta
1. Doc1 2. Doc2 3. Doc3 . .
PseudoFeedbac
k
38
Expansão de Consultas
Objetivo: Adicionar novos termos à consulta
Termos correlacionados
Motivação Aumentar a quantidade de
documentos recuperados
39
Expansão de consultas usando thesaurus
Um thesaurus fornece informação sobre sinônimos e termos semanticamente relacionados a uma palavra
Exemplo: physician syn: ||croaker, doc, doctor, MD, medical, mediciner, medico, ||sawbones
rel: medic, general practitioner, surgeon,
40
Para cada termo t da consulta, expande a consulta com os sinônimos e palavras relacionadas a t contidos no thesaurusEsse método geralmente aumenta cobertura da recuperação Recupera mais documentos
Porem, pode diminuir significativamente a precisão Recuperar documentos irrelevantes Particularmente para termos ambíguos
Expansão de consultas usando thesaurus
41
WordNetO mais elaborado banco de dados de relacionamentos semânticos de palavras em inglêsDesenvolvido pelo famoso psicólogo cognitivo George Miller e um grupo da universidade de PrincetonContém cerca de 144,000 palavras em inglês Substantivos, adjetivos, verbos, e advérbios
agrupados em cerca de 109,000 sinônimos chamados de synsets.
42
Synset no WordNetAntonym: front backAttribute: benevolence good (noun to adjective)Pertainym: alphabetical alphabet (adjective to noun)Similar: unquestioning absoluteCause: kill dieEntailment: breathe inhaleHolonym: wheel bicycle (part-of)Meronym: computer cpu (whole-of)Hyponym: plant tree (specialization)Hypernym: apple fruit (generalization)
43
Expansão de Consulta com WordNet
Adiciona sinônimos no mesmo synset Adiciona hipônimos para inserir termos
especializados Adiciona hiperônimos para generalizar uma
consulta Adiciona outros termos relacionados para
expandir a consulta
44
Expansão com Thesaurus Estatístico
Análise Automática GlobalThesaurus produzidos manualmente não são facilmente encontrados para todas as
línguas são limitados no tipo de relações semânticas
que representam
Termos semanticamente relacionados podem ser descobertos a partir de análises estatísticas em um corpus de documentos
45
Constrói matrizes que quantificam associações entre termos Matriz de associação
considera as freqüências dos termos nos documentos do corpus
Matriz de correlação métrica considera a distância entre os termos nos
documentos do corpusExpande consultas usando os termos mais similares estatisticamente i.e. com maior associação
Análise Automática Global
46
Análise Automática Global Matriz de Associação
w1 w2 w3 …………………..wn
w1
w2
w3
.
.wn
c11 c12 c13…………………c1n
c21
c31
.
.cn1
Cij : Correlação entre termo i e termo jfik : Freqüência do termo i no documento k
Dd
jkikijk
ffc
Obs.: Correlação quantifica a co-ocorrência ou freqüência comum dos termos em todos os documentos do corpus
47
Para evitar favorecimento de termos muito freqüentes em todos os documentos, a matriz de associação pode ser normalizada
Fator de associação normalizado:
Fator normalizado é 1 se dois termos têm a mesma freqüência em todos os documentos
Análise Automática Global Matriz de Associação
Normalizada
ijjjii
ijij ccc
cs
48
Análise Automática Global Matriz de Correlação Métrica
Matriz de associação não considera a proximidade dos termos nos documentos
Apenas a co-ocorrência (freqüência comum) dos termos
Correlação métrica considera a proximidade dos termos
49
Análise Automática Global Matriz de Correlação Métrica
iu jvVk Vk vu
ij kkrc
),(1
Vi : Conjunto de ocorrências do termo i em qualquer documentor(ku,kv): Distância em palavras entre as ocorrências ku e kv
Obs: as distâncias entre todas as ocorrências desses termos no mesmo documento são contadas, o que indiretamente quantifica a co-ocorrência dos termos
50
Análise Automática Global Matriz de Correlação MétricaPara evitar favorecimento de termos muito freqüentes em todos os documentos, a matriz pode ser normalizada
ji
ijij VV
cs
51
Análise Automática Global Expansão da Consulta
Regra Geral Para cada termo i da consulta, expanda a
consulta com os n termos j com maior valor de cij (ou sij – normalização)
Mais de um fator de correlação pode ser combinado para escolher os termos para a expansão Por exemplo, pegar os n maiores termos de
ambas as matrizes e fazer a interseção determinando que termos estão relacionados em
ambas as matrizes
52
Expansão da Consulta Problemas com a Análise Global
Ambigüidade pode introduzir termos estatisticamente
relacionados que, mesmo assim, são irrelevantes para a consulta “Apple computer” “Apple red fruit computer” apple e red fruit estão relacionados no corpus de docs. Porém, red fruit não é relevante para a consulta
original Redundância Uma vez que os termos adicionados são
correlacionados aos termos da consulta original, a expansão pode não recuperar muitos documentos adicionais
53
Após a consulta inicial, determina termos similares analisando os m primeiros documentos recuperados i.e. de melhor ranking
Esta análise se baseia apenas em um conjunto “local” de documentos específico para uma consultaEvita ambigüidade, uma vez que considera apenas documentos relevantes em um contexto
“Apple computer” “Apple computer Powerbook laptop”
Expansão da Consulta Análise Automática Local
54
Análise Global vs. Local
Análise Global requer computação intensiva off-line
durante a construção da matriz de correlações entre termos
Análise Local requer menos computação para cálculo das
correlações Entretanto, esse cálculo é refeito para cada
consulta em tempo de execuçãoAnálise local tem gerado melhores resultados experimentais
55
Refinamento da Análise Global
Expande apenas com os termos que são similares a todos os termos da consulta
O termo “fruit” não é adicionado a “Apple computer”, uma vez é pouco correlacionado a “computer”
“fruit” é adicionado a “apple pie”, uma vez que “fruit” tanto é correlacionado a “apple” como a “pie”
Qkiji
j
cQksim ),(
56
Expansão de Consultas Conclusões
Expansão de consultas com termos relacionados pode melhorar desempenho do sistema de RI particularmente a cobertura
Contudo, termos similares devem ser escolhidos com cuidado para evitar perda de precisão