Mineração da Web
Recuperação de Informação
Tipos de Consultas &
Operações sobre Consultas
Flávia Barros
1
Aulas passadas
Modelos de RI

Booleano, Espaço Vetorial, ...
Preparação dos documentos

Operações sobre o texto
 Criação da Visão Lógica do documento
Lista de termos usado para representar o
documento
Criação da representação do documento


 Com base em algum Modelo de RI
2
Roteiro – 1a parte
Tipos de Consultas
Consultas baseadas em Palavras-Chaves




Baseadas em palavras isoladas
Com contexto
Booleanas
Em Linguagem Natural
Com casamento de Padrão
Com estrutura
3
Tipos de Consultas
Existem diversos tipos de consultas que
podem ser submetidas aos sistemas de RI
Contudo...


Nem todos os tipos podem ser usados em todos
os sistemas
Isso vai depender do modelo de RI adotado pelo
sistema
4
Consultas baseadas em
Palavras-chave
Tipos




Baseadas em palavras isoladas
Com contexto
Booleanas
Em Linguagem Natural
Permitem ordenamento das respostas


segundo a função de relevância do modelo de RI
adotado
Segundo algum outro critério adicional
5
Consulta baseada em
Palavras-chave isoladas
Single Keyword query


Tipo mais simples de consulta a um sistema de RI
Consiste em uma lista de palavras
 Sem operadores booleanos explícitos
 Porém funciona como OR
Funcionamento geral


O sistema de RI recupera todos os documentos que
contêm pelo menos uma das palavras da consulta
Em seguida, os documentos recuperados são
ordenados de acordo com o modelo de RI
implementado pelo sistema
6
Consultas com Contexto
Posição das Palavras
Alguns sistemas de RI são capazes de buscar
palavras dentro de algum “contexto”

Documentos onde as palavras da consulta
aparecem próximas uma da outra podem ser mais
relevantes do que aqueles onde as palavras
aparecem distantes
 Ex.: “recuperação” e “informação” no contexto de
docs. 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
7
Consultas com Contexto
Busca pela Posição das Palavras
Como verificar essa proximidade?

Depende da implementação do sistema de RI
 E.g., Bases de índices invertidos que guardam a posição
onde cada palavra ocorre em cada documento
Palavra
Casa
Amarela
...
Documento
(Doc1, 12); (Doc2, 1); ....
(Doc1, 13); (Doc2, 20); ....
...
8
Consultas com Contexto
Grupos Nominais (GN)
Consultas baseadas em Grupos Nominais

recuperam documentos com um GN específico
 i.e., lista 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”,…
9
Consultas com Contexto
Grupos Nominais
A Base de índices do sistema de RI deve
armazenar as posições de cada palavra no
documento
Processo de recuperação

Recuperar os documentos que contêm todas as
palavras da consulta
 Registrando as posições de cada palavra nos docs

Fazer a intersecção entre documentos recuperados
 Para eliminar redundâncias

Verificar a ocorrência do GN (palavras contíguas)
10
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 consulta

Exemplo: “…corrida terminou com carro…”
Pode também levar em conta stemming e/ou
stopwords
12
Consultas com Contexto
Busca com Proximidade das Palavras
Semelhante à busca por grupos nominais


Recupera os documentos que contêm todas as
palavras da consulta
Em um contexto que satisfaz as restrições de
proximidade
13
Consultas com Contexto
Documentos que satisfazem uma consulta
com Contexto podem ser ordenados da
mesma forma que no caso das consultas
básicas

i.e., de acordo com o modelo de RI implementado
pelo sistema
Para consultas por proximidade, a distância
entre os termos também pode ser levada em
conta 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…”
15
Consultas Booleanas
Palavras combinadas com operadores booleanos:
 OR: (ki OR kj )
 AND: (ki AND kj )
 BUT: (ki BUT kj )
 Satisfaz ki but not kj
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 documentos
Problema

Usuários inexperientes têm dificuldades com lógica
booleana
16
Consultas Booleanas
Recuperação com índices invertidos
Palavra isolada

Recupera documentos contendo essa palavra
OR

Recupera docs. com ki e kj , e faz a união dos resultados
AND

Recupera docs. com ki e kj , e faz a interseção dos
resultados
BUT

Recupera docs. com ki e kj , e utiliza o conjunto
complementar dos resultados
17
Consultas em Linguagem Natural
Em geral, consultas de texto completo são
consideradas como strings arbitrárias pelos
sistemas de RI de propósito geral

Excluímos aqui os sistemas de Pergunta-Resposta,
e os sistema de RI com interface em Linguagem
Natural
No modelo Espaço Vetorial, essas consultas


São tratadas como um “bag” de palavras
São processadas usando métodos padrão de
recuperação com Espaço Vetorial
18
Casamento de Padrão
Alguns sistemas de RI permitem consultas
que “casam” com strings

em lugar de apenas palavras isoladas
Um padrão é descrito por um conjunto de
características sintáticas

Padrão simples
 ex., uma palavra, um prefixo, um sufixo, etc

Padrão complexo
 ex., expressões regulares
19
Casamento de Padrão
Estamos interessados em documentos que
contêm segmentos de texto que casam com o
padrão especificado
Isso requer estruturas de dados e algoritmos
mais sofisticados do que índices invertidos
para uma recuperação eficiente
20
Casamento de Padrão
Padrões Simples
Prefixos


Padrão que casa com o início 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.
21
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)
22
Casamento de Padrões Simples
Tratamento de Erros
Distância de edição - Levenstein distance

Número 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
23
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
24
Casamento de Padrões Complexos
Expressões Regulares
Linguagem 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
25
Casamento de Padrões Complexos
Expressões Regulares
Exemplos de Expressões Regulares

(u|e)nabl(e|ing) casa com





unable
unabling
enable
Enabling
(un|en)*able casa com




able
unable
unenable
enununenable
26
Consultas com Estrutura
Assumem que o documento possui uma
estrutura que pode ser explora na busca
A estrutura poderia ser:

Conjunto fixo de campos
 e.g. título, autor, resumo, etc.

Estruturas hierárquicas em forma de árvore
livro
capítulo
capítulo
título
seção
título
título
seção
subseção
27
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
28
Roteiro - 2a parte
Operações sobre as Consultas
Expansão de Consultas
Feedback de Relevância
29
Expansão de Consultas
Objetivo:

Adicionar novos termos à consulta
 Termos correlacionados
Motivação

Aumentar a quantidade de documentos
recuperados
 Cobertura do sistema de RI
30
Expansão de consultas usando
Tesauros
Tesauros contêm sinônimos e termos
semanticamente relacionados às suas entradas
(palavras)
Exemplo:
physician
syn: ||croaker, doc, doctor, MD, medical,
mediciner, medico, ||sawbones
rel: medic, general practitioner, surgeon,
31
Expansão de consultas usando
Tesauros
Para cada termo t da consulta, expande a
consulta com os sinônimos e palavras
relacionadas a t contidos no tesauro
Esse método geralmente aumenta a
cobertura da recuperação

Recupera mais documentos
Porém, pode diminuir significativamente a
precisão


Recuperar documentos irrelevantes
Particularmente para termos ambíguos
32
WordNet
O mais elaborado banco de dados de
relacionamentos semânticos de palavras em
inglês
Desenvolvido pelo famoso psicólogo cognitivo
George Miller e um grupo da universidade de
Princeton
Conté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.
33
Expansão com Tesauro Estatístico
Análise Automática Global
Tesauros 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
36
Análise Automática Global
Constrói matrizes que “quantificam”
associações entre termos

Matriz de associação
 Considera a co-ocorrência (ou freqüência comum) dos
termos em todos os documentos do corpus

Matriz de correlação métrica
 considera a distância entre os termos nos documentos
do corpus
 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
Expande consultas usando os termos mais
similares estatisticamente

i.e. com maior associação
37
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
(correlaçã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
43
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
44
Expansão da Consulta
Análise Automática Local
Após a consulta inicial, determina termos
correlacionados 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
consulta
Evita ambigüidade, uma vez que considera
apenas documentos relevantes em um contexto

“Apple computer” 
“Apple computer Powerbook laptop”
45
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ção
Análise local tem gerado melhores resultados
experimentais
46
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
48
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
49
Arquitetura para Feedback de
Relevância
Consulta
inicial
documentos
Consulta
revisada
Reformulação
da consulta
Feedback
1. Doc1 
2. Doc2 
3. Doc3 
.
.
Rankings
Documentos
reordenados
Sistemas de RI
Documentos
ordenados
1. Doc1
2. Doc2
3. Doc3
.
.
1. Doc2
2. Doc4
3. Doc5
.
.
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 com base em repesagem de pesos
51
Feedback de relevância
Repesagem de Termos
Reformulação de consulta para o Modelo
Vetorial

Nesse modelo, 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
52
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
53
Feedback de relevância
Repesagem de Termos
Métodos:



Método Rochio Padrão
Método Ide
Método Ide “Dec Hi”
Ocultei os slides pq era muita fórmula……..
54
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
60
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
61
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
62
Arquitetura de Pseudo-Feedback
Corpus de
Documentos
Consulta
inicial
Consulta
Reformulad
a
Rankings
Sistema
RI
Reformulação
da consulta
Pseudo
Feedback
1. Doc1 
2. Doc2 
3. Doc3 
.
.
Documentos
Ordenados
Documentos
reordenados
1. Doc1
2. Doc2
3. Doc3
.
.
1. Doc2
2. Doc4
3. Doc5
.
.
Próxima aula
Construção de bases de índices
Definição das equipes e dos projetos
64
Download

caps4-5