Upload
others
View
11
Download
0
Embed Size (px)
Citation preview
1
Recuperação de Informações
Ana Carolina Salgado&
Fernando Fonseca
3/12/2002 © CIn/UFPE 2
Recuperação de Dado XInformação
Não estruturadosEstruturadosDados
IncompletaCompletaEsp da Consulta
NaturalArtificialLing ConsultaProbabilísticoDeterminísticoModeloInduçãoDeduçãoInferência
AproximadaExataComparação(matching)
Recuperação deInformação
Recuperação deDados
3/12/2002 © CIn/UFPE 3
Recuperação de Informação
F Área de pesquisa e desenvolvimento queinvestiga métodos e técnicas para arepresentação, a organização, oarmazenamento, a busca e a recuperação deitens de informação
F Objetivo principal: facilitar o acesso adocumentos (itens de informação) relevantesà necessidade de informação do usuário
3/12/2002 © CIn/UFPE 4
Histórico
1ª Fase: computadores – cartão perfuradoëDécada de 1950:
øAplicações: sistemas de recuperação dereferências bibliográficas e outros serviçospara bibliotecas.
øTécnicas: indexação manual/documentos indexados por termos de
um vocabulário restrito montadomanualmente (thesaurus = dicionáriode sinônimos).
3/12/2002 © CIn/UFPE 5
Histórico
1ª Fase: computadores – cartão perfurado
ëDécada de 1960:øAplicações: sistemas de recuperação de
documentos off-lineøSistemas DIALOG e MEDLARSøTécnicas: início da indexação automática
/título e abstractøAlgoritmos de busca
3/12/2002 © CIn/UFPE 6
Histórico
2ª Fase: Décadas de 1970 e 1980ëAumento do poder computacionalëAplicações:
øSistemas de Pergunta-Resposta/Técnicas: RI + Processamento de
Linguagem Natural/Evoluíram para interfaces em
Linguagem Natural para BDs
2
3/12/2002 © CIn/UFPE 7
Histórico
2ª Fase: Décadas de 1970 e 1980ëAplicações:
øSistemas de RI on-line/Técnicas: Estatística e Probabilidade,
Modelo de Espaço Vetorial (Salton71)
/SMART: 1º sistema de RI automáticopara o conteúdo usando EspaçoVetorial
/Avaliação do desempenho dosistema pelo usuário
3/12/2002 © CIn/UFPE 8
Histórico
3ª Fase: Web – Década de 1990 em dianteëTécnicas tradicionais de RI foram adaptadas
ao caso da WebøWeb: gigabytes de dados não
estruturadosëAlguns problemas:
øEscalabilidade das soluçõesøVelocidade de atualização da WebøVelocidade de acesso aos documentos
armazenadosëExplosão de serviços + agentes autônomos
3/12/2002 © CIn/UFPE 9
Engenhos de Busca
A primeira ferramenta usada para consultar aWebëbaseados na busca de índices de palavras
e frases que aparecem em documentosëposteriormente foi incluída a exploração da
estrutura de links para aumentar aqualidade das respostas
3/12/2002 © CIn/UFPE 10
Engenhos de Busca
F Web & engenhos de buscaëfacilidade de criação de novos documentosëdocumentos heterogêneos, semi-
estruturadosëgrande número de informações disponíveisëinformação dinâmicaëmaior número de pessoas interagindo com
o sistemaënecessidade definida através de consulta
Engenhos de Busca
documentos+ urls
inde
xaçã
o
bases de índices
busc
a
Crawlers3/12/2002 © CIn/UFPE 12
Engenhos de Busca
F Interação usuário-engenho de buscaëconsultas por palavra-chave, linguagem
naturalëdificuldade em formular consultas
adequadasëconsultas mal formuladas, resultados de
baixa precisão
3
3/12/2002 © CIn/UFPE 13
Recuperação de Informação
F Sistemas de Recuperação de Informação(SRI)
Um sistema para RI automático pode servisto como a parte do sistema deinformação responsável peloarmazenamento ordenado dosdocumentos em um BD, e sua posteriorrecuperação, para responder a consultasde usuários.
3/12/2002 © CIn/UFPE 14
Recuperação de Informação
F Avaliando SRIërelevânciaëprecisão (Ra/A)ëcobertura (Ra/R)
relevantes (R)
resposta (A)
relevantes na resposta (Ra)
200
100
40
3/12/2002 © CIn/UFPE 15
Engenho de Busca
Servidor de Consultas
Motor deI ndexação
Sistemas de RI na WebArquitetura
I ndexador
Representação dos Docs
Pré-Processador
Base deÍ ndices
2Consulta R ecuperador1
R esposta 4
Usuár io
BrowserOrdenador
3
WebWeb
Spider
AquisiçãoDocs
3/12/2002 © CIn/UFPE 16
Sistemas de Recuperação deInformação
F Etapas principais:ëAquisição (seleção) dos documentosëRepresentação (preparação) dos
documentosëIndexação dos documentosëBusca (casamento com a consulta)ëRecuperação
3/12/2002 © CIn/UFPE 17
Etapa 1: Aquisição (seleção) deDocumentos
F Manual, para sistemas gerais de RIëE.g., sistemas de bibliotecas
F Automática, para sistemas na WebëUso de crawlers (spiders)
øProgramas que navegam pela Web efazem download das páginas para umservidor
øPartem de um conjunto inicial de linksøExecutam busca em largura ou em
profundidade3/12/2002 © CIn/UFPE 18
Etapa 1: Aquisição (seleção) deDocumentos
F Automática (cont)
ëCrawler do GoogleøExecuta em várias máquinas em
paraleloøIndexou 26 Milhões de páginas em 8
dias
4
3/12/2002 © CIn/UFPE 19
Etapa 2: Pré-Processamento dosDocumentos
FObjetivoëCriar uma representação computacional do
documento seguindo algum modelo
FFasesëOperações sobre o textoëCriação da representação
3/12/2002 © CIn/UFPE 20
Etapa 2: Pré-Processamento dosDocumentos
“Se o desonesto soubesse avantagem de ser honesto,ele seria honesto ao menospor desonestidade.”Sócrates
Doc or iginal
desonesto / soubesse /vantagem / honesto /seria / honesto /menos/desonestidade/socrates
honesto 2desonesto 1soubesse 1vantagem 1seria 1menos 1desonestidade 1socrates 1
Operações de T extoR epresentação
Doc : www.filosofia.com Doc : www.filosofia.comDoc : www.filosofia.com
3/12/2002 © CIn/UFPE 21
Pré-Processamento:Operações sobre o texto
F Análise léxicaëConverte uma cadeia de caracteres em
uma cadeia de palavras/termosF Eliminação de stopwords
ëPalavras consideradas irrelevantesøEx.: artigos, pronomes, alguns verbos,
“WWW”...
3/12/2002 © CIn/UFPE 22
Pré-Processamento:Operações sobre o texto
F StemmingëRedução de uma palavra ao seu radical
øGeralmente, apenas eliminação desufixos
ëPossibilita casamento entre variações deuma mesma palavra
3/12/2002 © CIn/UFPE 23
Pré-Processamento:Operações sobre o texto
engineerengineerengineer
engineeringengineeredengineer
Termo Stem Regras de redução:
ing -> 0
ed -> 0
Stemming
3/12/2002 © CIn/UFPE 24
Pré-Processamento:Representação do Documento
F Texto CompletoëDifícil (caro) de manipular
computacionalmenteF Dado um documento, identificar os conceitos
que melhor descrevem o seu conteúdoF Representar o documento como um
CentróideëLista de termos com pesos associados ou
nãoëProblema: perda da semântica
5
3/12/2002 © CIn/UFPE 25
Pré-Processamento:Representação do Documento
Representação do documento como umCentróide
“Se o desonesto soubesse a vantagemde ser honesto, ele seria honestoao menos por desonestidade.”
Sócrates
honesto 2desonesto 1soubesse 1vantagem 1seria 1menos 1desonestidade 1socrates 1
CentróideCentróide
3/12/2002 © CIn/UFPE 26
Modelos de Representação deDocumentos
Mod
elos
Mod
elos
ClássicosClássicos
AlternativosAlternativos
Teoria dos conjuntosTeoria dos conjuntos
ÁlgebraÁlgebra
Teoria da ProbabilidadeTeoria da Probabilidade
FuzzyFuzzy
Booleano Booleano EstendidoEstendido
Semântica LatenteSemântica Latente
. . .. . .
3/12/2002 © CIn/UFPE 27
Modelo Booleano
F Baseado na Teoria dos ConjuntosF Documentos e consultas são representados
como conjuntos de termos de índicesF Centróide sem pesos associadosF A representação indica apenas se o termo
está ou não presente no documento
3/12/2002 © CIn/UFPE 28
Modelo Booleano:sem pesos associados
F Simples de implementar e usar, porém debaixo desempenho
F Documentos e consultas representadoscomo vetores binários de tamanho n (e.g., D= {1,0,1,1,1})ëCada posição corresponde a um termo
usado na indexação dos documentossendo considerados
ëConsulta: termos conectados por AND, ORe NOT
3/12/2002 © CIn/UFPE 29
Modelo Booleano:sem pesos associados
F Relevância “binária”:ëO documento é considerado relevante sse seu
“casamento” com a consulta é verdadeiroëNão é possível ordenar os documentos
recuperados
k1 ∧ k2 ∧ k3Consulta:Documentos apresentadosao usuário
k1
k3
Base de Documentos
k2
3/12/2002 © CIn/UFPE 30
Modelo Espaço Vetorial
F Modelo AlgébricoF Centróide com pesos associados
6
3/12/2002 © CIn/UFPE 31
Modelo Espaço Vetorial:com pesos associados
F Consultas (q) e Documentos (d) sãorepresentados como vetores em um espaçon-dimensionalëOnde n é o número total de termos usados
para indexar os documentos sendoconsiderados
F Relevância: co-seno do ângulo entre q e dëQuanto maior o co-seno, maior é a
relevância de d para q
3/12/2002 © CIn/UFPE 32
Modelo Espaço Vetorial:com pesos associados
F Ordenação: dada pelo co-seno do ânguloentre q e d
Olimpíadas
Brasil
Sidney
dq
Brasil Olimpíadas SidneyBrasil Olimpíadas SidneyConsulta q :
Documento d :Brasil em Sidney 2000 O Brasil não foi bem no quadrodas medalhas da Olimpíada deSidney 2000 ...
Brasil 0.4Olimpíadas 0.3Sidney 0.3
Brasil 0.5Olimpíadas 0.3Sidney 0.2
Representação de q
Representação de d
3/12/2002 © CIn/UFPE 33
Representação do Documentocom Pesos
F CentróideëPesos associadas aos termos como
indicação de relevância:øFreqüência de ocorrência do termo no
documentoøTF-IDF = Term Frequency x Inverse
Document Frequency
3/12/2002 © CIn/UFPE 34
Representação do Documentocom Pesos
F TF-IDF também considera palavras combaixa ocorrência na base de documentoscomo melhores discriminantes
⋅=
)(log)()(
ωωω
DF
DTFTFIDF
TF(w): freqüência da palavra w no doc.DF(w): freqüência de w em DD = total de documentos
3/12/2002 © CIn/UFPE 35
Representação do Documentocom Pesos
F CentróideëLimitar tamanho do centróide em 50
mantendo apenas termos com maior pesoøAumenta a eficiência do sistemaøEstudos mostram que isso não altera
muito o poder de representação docentróide
3/12/2002 © CIn/UFPE 36
Representação do Documentocom Pesos
F Enriquecendo a representação:ëConsiderar formatação do texto como
indicação da importância dos termosøtítulo, início, negrito,...
ëAdicionar informação sobre a localizaçãodo termo no documento
R epresentação de documentos usada pelo Google
word : z - hit hit hit hitword : y - hit hit hit ...word : w - hit
Doc :xxx1bit capitalization; 3bit font size; 12 bit positionhit:
7
3/12/2002 © CIn/UFPE 37
Etapa 3: Indexação dosDocumentos
F Objetivo:ëfacilitar busca dos documentos no
repositório digitalF Opção imediata: varrer o texto completo
ëBusca seqüencial on-lineëTextos pequenos ou muito voláteis
3/12/2002 © CIn/UFPE 38
Etapa 3: Indexação dosDocumentos
F Para bases maiores: indexar os documentosëÍndices invertidosëVetores e árvores de sufixosëArquivos de assinatura
3/12/2002 © CIn/UFPE 39
Índices Invertidos: Estrutura
F Composição: vocabulário (em ordemalfabética) e posição de ocorrência no texto
F Possibilita consulta/busca por proximidade epor termo composto
F Espaço requerido: pequeno para vocabulário,porém grande parte para ocorrências
3/12/2002 © CIn/UFPE 40
Índices Invertidos: Estrutura
F Exemplo
This is a text. A text has many words. Words are made from letters.1 6 9 11 17 19 24 28 33 40 46 50 55 60
lettersmademanytextwords
Vocabulário60502811, 1933, 40
Ocorrências
3/12/2002 © CIn/UFPE 41
Índices Invertidos:Técnicas para redução de espaço
F Stemming (reduz vocabulário)F Ocorrências dos termos endereçadas por:
ëblocos no textoëendereço do documento inteiro
øEngenhos de busca na WebëPoucos ponteiros, ponteiros menores e
menos ocorrências
3/12/2002 © CIn/UFPE 42
Índices Invertidos:Técnicas para redução de espaço
F Google: endereçamento “hierárquico” deblocosëBloco + posição relativa da palavra dentro
do bloco
This is a text. A text has many words. Words are made from letters.
Bloco 1 Bloco 2 Bloco 3 Bloco 4
8
3/12/2002 © CIn/UFPE 43
Busca em Índices Invertidos
F Algoritmos seguem 3 etapas:ëBusca as palavras da consulta no
vocabulário: Hashing, tries, B-treesëRecupera as ocorrências de todas as
palavras da consulta encontradas novocabulário
ëCombina as ocorrências recuperadas deacordo com a consulta:
øTermos compostosøProximidadeøOperações booleanas
3/12/2002 © CIn/UFPE 44
Índices Invertidos: Construção
F Baixo custo de buscaëO(número de caracteres)
F Palavras inseridas em uma árvore do tipoTrie letters: 60
many: 28
made: 50
text: 11, 19
words: 33, 40
l
m
t
w
ad
n
3/12/2002 © CIn/UFPE 45
Índices Invertidos: Construção
F Tries: muito espaço requeridoëPara bases grandes, usa-se paginação
øÍndices parciais persistentesøMerge dos índices
...
3/12/2002 © CIn/UFPE 46
Índices Invertidos: Construção
F Ao final do processo, tem-se:ëUm arquivo de ocorrências dos termosëOutro arquivo do vocabulário com ponteiro
para ocorrênciasøPode ser mantido na memória
3/12/2002 © CIn/UFPE 47
Índices Invertidos: Construção
F Relembrando o exemplo dado anteriormente:
lettersmademanytextwords
Vocabulário60502811, 1933, 40
Ocorrências
3/12/2002 © CIn/UFPE 48
Outras Estruturas de Índices
F Arquivos de assinaturaëMenos eficientes que Índices InvertidosëPouco espaço requerido
ø10% a 20% do originalëBaseados em hashingëBusca seqüencial
øaceitável para bases pequenas
9
3/12/2002 © CIn/UFPE 49
Outras Estruturas de Índices
F Árvores e vetores de sufixosëMais rápidos para buscar trechos do textoëMais difíceis de construir e manter
3/12/2002 © CIn/UFPE 50
Etapa 4: Recuperação
F Obtenção dos documentos que satisfazemuma consulta (query)
F Índices InvertidosëProcurar termos da consulta no
vocabulárioëCusto de busca e armazenamento é
sublinearøO (n0.85)
3/12/2002 © CIn/UFPE 51
Etapa 4: Recuperação
F Tabelas hash, tries, ...ë O(tamanho da palavra)
F Lista em ordem alfabéticaëO(log (tamanho do texto))ëMais barato em termos de espaço
3/12/2002 © CIn/UFPE 52
Etapa 4: Recuperação
F Consultas simplesëRecupera documentos onde a palavra
ocorre pelo menos uma vezF Consultas compostas (booleanas)
ëRecupera documentos onde cada palavrada consulta ocorre pelo menos uma vez
ëMerge de listasøCombina as listas de documentos recuperados
de acordo com o operador booleano daconsulta
3/12/2002 © CIn/UFPE 53
String Matching
F Método usado em vários sistemasëbusca por palavras, comparação entre
arquivosF Encontrar todas as ocorrências de uma
determinada string (padrão) em um textoF Várias soluções existentes
3/12/2002 © CIn/UFPE 54
String Matching Aproximado
F “Dado um padrão P de tamanho m, um textoT de tamanho n, onde m,n>0, um inteiro k>0e uma função de distância d, encontrar todasas substrings S de T tal que d(P,S)<=k”ëd - número de operações necessárias para
transformar S em Pë“Um texto qualquer”ë“Eu testo..” “texto” (d=1)
10
3/12/2002 © CIn/UFPE 55
String Matching Aproximado
F Várias Soluções existentesëForça bruta (BF)ëLandau-VishkenëBoyer-Moore (BM)ëShift-Or (SO)ë...
3/12/2002 © CIn/UFPE 56
String Matching Aproximado
F Implementação e adaptação dos algoritmos(BF,BM,SO)
F Número de erros permitidos baseia-se notamanho do termo a ser comparadoëMp3 – 1 erro é permitidoëDownload – 3 erros são permitidos
3/12/2002 © CIn/UFPE 57
Etapa 5: Ordenação
F Ordenar os documentos recuperados deacordo com sua relevância em relação àconsulta
F Relevância: difícil de medirë Mede-se a similaridade entre cada documento e a
consulta
F Modelo “Espaço Vetorial”ë Similaridade é proporcional ao co-seno do ângulo
entre o vetor que representa o documento e o vetor daconsulta
ë Tende a retornar documentos pequenos
3/12/2002 © CIn/UFPE 58
Etapa 5: Ordenação
F GoogleëProximidade das palavras da consulta no
documentoëTamanho da fonte, texto de links, ...ëPageRank
3/12/2002 © CIn/UFPE 59
Etapa 6: Medidas de Avaliação
Todos os Documentos
Documentos Relevantes
Documentos Retornados
Relevantes Retornados
3/12/2002 © CIn/UFPE 60
Etapa 6: Medidas de Avaliação
F Cobertura: total de documentosrelevantes retornados sobre onúmero total dos relevantesexistentes
F Precisão: documentos relevantesretornados sobre o número total deretornados
11
3/12/2002 © CIn/UFPE 61
Base de Í ndices
Usuár ioServidor de Consultas
R ecuperador
OrdenadorBrowser
desonesto -> doc1 peso 1;
socrates -> doc1 peso 1; doc 3 peso 2futebol -> doc3 peso 3; doc 2 peso 5
honesto -> doc1 peso 2; doc 3 peso 1
Servidor de consultas
2
resultados1 - doc12 - doc3
Resposta4 honesto 2
socrates 1
doc1honesto 1socrates 1
doc3
3
Relevancia (Consulta, doc3)= 2 Relevancia (Consulta,doc1) = 3
Consulta 1 (socrates AND honesto)
3/12/2002 © CIn/UFPE 62
Base deÍ ndicesI ndexadorMotor de
I ndexação
Pré-Processador
Motor de Indexação
Operações de T exto R epresentação
desonesto / soubesse /vantagem / honesto /seria / honesto /menos/desonestidade/socrates
Doc : www.filosofia.com honesto 2desonesto 1soubesse 1vantagem 1seria 1menos 1desonestidade 1socrates 1
Doc : www.filosofia.com
CentróideCentróide
Doc: www.filosofia.comPeso : 2
Word : honestoDoc: www.filosofia.comPeso : 1
Word : desonesto
Doc: www.filosofia.comPeso : 1
Word : socrates...
Se o desonestosoubesse a vantagemde ser honesto, eleseria honesto aomenos pordesonestidade.”Sócrates
Doc or iginalDoc : www.filosofia.com
R epresentação I nver t ida