cin-ufpe1 recuperação de informação eduardo amaral - efas frederico fernandes - fbf2 juliano...

38
CIn-UFPE 1 Recuperação de Informação Eduardo Amaral - efas Frederico Fernandes - fbf2 Juliano Rabelo - jcbr Flávia Barros – fab (participação especial)

Upload: internet

Post on 21-Apr-2015

106 views

Category:

Documents


3 download

TRANSCRIPT

Page 1: CIn-UFPE1 Recuperação de Informação Eduardo Amaral - efas Frederico Fernandes - fbf2 Juliano Rabelo - jcbr Flávia Barros – fab (participação especial)

CIn-UFPE 1

Recuperação de Informação

Eduardo Amaral - efas

Frederico Fernandes - fbf2

Juliano Rabelo - jcbr

Flávia Barros – fab (participação especial)

Page 2: CIn-UFPE1 Recuperação de Informação Eduardo Amaral - efas Frederico Fernandes - fbf2 Juliano Rabelo - jcbr Flávia Barros – fab (participação especial)

CIn-UFPE

2

Roteiro

Introdução

Aquisição

Pré-Processamento

Indexação

Recuperação

Ordenação

Avaliação e Validação

Categorização

Page 3: CIn-UFPE1 Recuperação de Informação Eduardo Amaral - efas Frederico Fernandes - fbf2 Juliano Rabelo - jcbr Flávia Barros – fab (participação especial)

CIn-UFPE

3

“Morrendo ignorante num mar de informações”

- Dificuldade de localizar documentos relevantes !!

Como funciona?

Web Pages 1870 found.

Usuário

Necessidade deInformação

CasamentoCasamento

Documento

s

indexação

ConsultaCaracterização

formulação

Motivação

Introdução- Motivação- Definição- Histórico- Arquitetura

Page 4: CIn-UFPE1 Recuperação de Informação Eduardo Amaral - efas Frederico Fernandes - fbf2 Juliano Rabelo - jcbr Flávia Barros – fab (participação especial)

CIn-UFPE

4

Recuperação de Informação: Definição

Área de pesquisa e desenvolvimento que investiga métodos e técnicas para a representação, a organização, o armazenamento, a busca e a recuperação de itens de informação

Objetivo principal: facilitar o acesso a documentos (itens de informação) relevantes à necessidade de informação do usuário Geralmente representada através de consultas

baseadas em palavras-chaves

Introdução- Motivação- Definição- Histórico- Arquitetura

Page 5: CIn-UFPE1 Recuperação de Informação Eduardo Amaral - efas Frederico Fernandes - fbf2 Juliano Rabelo - jcbr Flávia Barros – fab (participação especial)

CIn-UFPE

5

Introdução- Motivação- Definição- Histórico- Arquitetura

Histórico

1ª Fase: computadores – cartão perfurado Dec. 50:

Aplicações: sistemas de recuperação de referências bibliográficas e outros serviços para bibliotecas.

Técnicas: indexação manual documentos indexados por termos de um vocabulário

restrito montado manualmente (tesaurus = dicionário de sinônimos).

Dec. 60: 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

Page 6: CIn-UFPE1 Recuperação de Informação Eduardo Amaral - efas Frederico Fernandes - fbf2 Juliano Rabelo - jcbr Flávia Barros – fab (participação especial)

CIn-UFPE

6

Introdução- Motivação- Definição- Histórico- Arquitetura

Histórico

2ª Fase: Decs. de 70 e 80 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 Sistemas de RI on-line

Técnicas: estatística e probabilidade, Modelo de Espaço Vetorial (Salton 71)

SMART: 1º sistema de RI automático para o conteúdo usando Espaço Vetorial

Avaliação do desempenho do sistema pelo usuário

Page 7: CIn-UFPE1 Recuperação de Informação Eduardo Amaral - efas Frederico Fernandes - fbf2 Juliano Rabelo - jcbr Flávia Barros – fab (participação especial)

CIn-UFPE

7

Introdução- Motivação- Definição- Histórico- Arquitetura

Histórico

3ª Fase: Web - Dec. 90 até ... 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 TREC (Text REtrieval Conference)

Page 8: CIn-UFPE1 Recuperação de Informação Eduardo Amaral - efas Frederico Fernandes - fbf2 Juliano Rabelo - jcbr Flávia Barros – fab (participação especial)

CIn-UFPE

8Etapas de processamento de Sistemas para RI

Um sistema para RI automático pode ser visto como a parte do sistema de informação responsável pelo armazenamento ordenado dos documentos em um BD, e sua posterior recuperação, para responder a consultas de usuários.

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

Introdução- Motivação- Definição- Histórico- Arquitetura

Page 9: CIn-UFPE1 Recuperação de Informação Eduardo Amaral - efas Frederico Fernandes - fbf2 Juliano Rabelo - jcbr Flávia Barros – fab (participação especial)

CIn-UFPE

9Sistemas de RI na Web Arquitetura

WebWeb

Consulta

Resposta

Base deÍndices

Engenho de Busca

Usuário

Spider

Indexador

Representação dos Docs

Servidor de Consultas

Aquisição

Pré-Processador

Docs

Recuperador

Ordenador

21

34

Motor deIndexação

Browser

Page 10: CIn-UFPE1 Recuperação de Informação Eduardo Amaral - efas Frederico Fernandes - fbf2 Juliano Rabelo - jcbr Flávia Barros – fab (participação especial)

CIn-UFPE

10

Aquisição de Documentos

Manual, para sistemas gerais de RI Ex., sistemas de bibliotecas

Automática, para sistemas na Web Uso de crawlers (spiders)

Programas que navegam pela Web e fazem download das páginas para um servidor

Partem de um conjunto inicial de links Executam busca em largura ou em profundidade

Crawler do Google Executa em várias máquinas em paralelo Indexou 26 Milhões de páginas em 8 dias

Aquisição

Page 11: CIn-UFPE1 Recuperação de Informação Eduardo Amaral - efas Frederico Fernandes - fbf2 Juliano Rabelo - jcbr Flávia Barros – fab (participação especial)

CIn-UFPE

11Pré-Processamento dos Documentos

Objetivo Criar uma representação computacional do

documento seguindo algum modelo

Fases Operações sobre o texto Criação da representação

“Se o desonesto soubesse a vantagem de ser honesto, ele seria honesto ao menos por desonestidade.”

Sócrates

Doc original

desonesto / soubesse /vantagem / honesto /seria / honesto /menos/desonestidade/socrates

honesto 2desonesto 1soubesse 1vantagem 1seria 1menos 1desonestidade 1socrates 1

Operações de TextoRepresentação

Doc : www.filosofia.com Doc : www.filosofia.comDoc : www.filosofia.com

Pré-Processamento

Page 12: CIn-UFPE1 Recuperação de Informação Eduardo Amaral - efas Frederico Fernandes - fbf2 Juliano Rabelo - jcbr Flávia Barros – fab (participação especial)

CIn-UFPE

12Pré-Processamento:Operações sobre o texto

Análise léxica Converte uma cadeia de caracteres em

uma cadeia de palavras/termos

Eliminação de stopwords Palavras consideradas irrelevantes

Ex.: artigos, pronomes, alguns verbos, “WWW”...

Pré-Processamento-

Page 13: CIn-UFPE1 Recuperação de Informação Eduardo Amaral - efas Frederico Fernandes - fbf2 Juliano Rabelo - jcbr Flávia Barros – fab (participação especial)

CIn-UFPE

13Pré-Processamento:Operações sobre o texto

Stemming Redução de uma palavra ao seu radical

Geralmente, apenas eliminação de sufixos Possibilita casamento entre variações de

uma mesma palavra

engineer engineer engineer

engineering engineered engineer

Term Stem Regras de redução:

ed -> 0

ing -> 0

Pré-Processamento-

Page 14: CIn-UFPE1 Recuperação de Informação Eduardo Amaral - efas Frederico Fernandes - fbf2 Juliano Rabelo - jcbr Flávia Barros – fab (participação especial)

CIn-UFPE

14

Pré-Processamento:Representação do

DocumentoTexto Completo Difícil (caro) de manipular computacionalmente

Dado um documento, identificar os conceitos que melhor descrevem o seu conteúdo

Representar o documento como um Centróide Lista de termos com pesos associados ou não Problema: perda da semântica

“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

Page 15: CIn-UFPE1 Recuperação de Informação Eduardo Amaral - efas Frederico Fernandes - fbf2 Juliano Rabelo - jcbr Flávia Barros – fab (participação especial)

CIn-UFPE

15Modelos de Representação de Documentos

Modelo Booleano Centróide sem pesos associados A representação indica apenas se o termo

está ou não presente no documento

Modelo Espaço Vetorial Centróide com pesos associados

Outros modelos: Booleano Estendido, Difuso, Semântica

Latente, Probabilístico, etc…

Page 16: CIn-UFPE1 Recuperação de Informação Eduardo Amaral - efas Frederico Fernandes - fbf2 Juliano Rabelo - jcbr Flávia Barros – fab (participação especial)

CIn-UFPE

16Modelo Booleano:sem pesos associados

Simples de implementar e usar, porém de baixo desempenho

Documentos e consultas representados como vetores binários de tamanho n (e.g., D = {1,0,1,1,1})

Cada posiçao corresponde a um termo usado na indexação dos documentos sendo considerados

Consulta: termos conectados por AND, OR e NOT

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 k3

k1 k2 k3Consulta:Documentos apresentados ao usuário

k1k2

k3

Base de Documentos

Page 17: CIn-UFPE1 Recuperação de Informação Eduardo Amaral - efas Frederico Fernandes - fbf2 Juliano Rabelo - jcbr Flávia Barros – fab (participação especial)

CIn-UFPE

17

Olimpíadas

Brasil

Sidney

d0.4

0.50.3

qBrasil Olimpíadas SidneyBrasil Olimpíadas SidneyConsulta q :

Documento d :Brasil em Sidney 2000 O Brasil não foi bem no quadra das medalhas da Olimpíada de Sidney 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

Modelo Espaço Vetorial:com pesos associados

Consultas (q) e Documentos (d) são representados como vetores em um espaço n-dimensional

Onde n é o número total de termos usados para indexar os documentos sendo considerados

Relevância: co-seno do ângulo entre q e d Quanto maior o co-seno, maior é a relevância de d para q

Ordenação: dada pelo co-seno do ângulo entre q e d

Page 18: CIn-UFPE1 Recuperação de Informação Eduardo Amaral - efas Frederico Fernandes - fbf2 Juliano Rabelo - jcbr Flávia Barros – fab (participação especial)

CIn-UFPE

18Representação do Documento com Pesos

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

TF-IDF também considera palavras com baixa ocorrência na base de documentos como 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

Pré-Processamento- Fases- Operações sobre o texto- Representação do documento

Page 19: CIn-UFPE1 Recuperação de Informação Eduardo Amaral - efas Frederico Fernandes - fbf2 Juliano Rabelo - jcbr Flávia Barros – fab (participação especial)

CIn-UFPE

19Representação do Documento com Pesos

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 seu poder de representação do centróide

Pré-Processamento- Fases- Operações sobre o texto- Representação do documento

Page 20: CIn-UFPE1 Recuperação de Informação Eduardo Amaral - efas Frederico Fernandes - fbf2 Juliano Rabelo - jcbr Flávia Barros – fab (participação especial)

CIn-UFPE

20Representação do Documento com Pesos

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ção do termo no documento

Pré-Processamento- Fases- Operações sobre o texto- Representação do documento

Representaçã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 position

hit:

Page 21: CIn-UFPE1 Recuperação de Informação Eduardo Amaral - efas Frederico Fernandes - fbf2 Juliano Rabelo - jcbr Flávia Barros – fab (participação especial)

CIn-UFPE

21

Indexação dos Documentos

Objetivo: facilitar busca dos documentos no

repositório digital

Opção imediata: varrer o texto completo Busca seqüencial on-line Textos pequenos ou muito voláteis

Para bases maiores: indexar os documentos Índices invertidos Vetores e árvores de sufixos Arquivos de assinatura

Indexação

Page 22: CIn-UFPE1 Recuperação de Informação Eduardo Amaral - efas Frederico Fernandes - fbf2 Juliano Rabelo - jcbr Flávia Barros – fab (participação especial)

CIn-UFPE

22

Índices Invertidos: Estrutura

Composição: vocabulário (em ordem alfabética) e posição de ocorrência no texto

Possibilita consulta/busca por proximidade e por termo composto

Espaço requerido: pequeno para vocabulário, porém grande parte para ocorrências

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

Indexação

Page 23: CIn-UFPE1 Recuperação de Informação Eduardo Amaral - efas Frederico Fernandes - fbf2 Juliano Rabelo - jcbr Flávia Barros – fab (participação especial)

CIn-UFPE

23

Índices Invertidos:Técnicas para redução de

espaçoStemming (reduz vocabulário)

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

Google: endereçamento “hierárquico” de blocos 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

Page 24: CIn-UFPE1 Recuperação de Informação Eduardo Amaral - efas Frederico Fernandes - fbf2 Juliano Rabelo - jcbr Flávia Barros – fab (participação especial)

CIn-UFPE

24

Busca em Índices Invertidos

Algoritmos de busca em índices invertidos 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 no vocabulário

Combina as ocorrências recuperadas de acordo com a consulta: Termos compostos Proximidade Operações booleanas

Page 25: CIn-UFPE1 Recuperação de Informação Eduardo Amaral - efas Frederico Fernandes - fbf2 Juliano Rabelo - jcbr Flávia Barros – fab (participação especial)

CIn-UFPE

25Índices Invertidos: Construção

Baixo de busca custo O(número de caracteres)

Palavras inseridas em uma árvore do tipo Trie

letters: 60

many: 28

made: 50

text: 11, 19

words: 33, 40

l

m

t

w

ad

n

Indexação

Page 26: CIn-UFPE1 Recuperação de Informação Eduardo Amaral - efas Frederico Fernandes - fbf2 Juliano Rabelo - jcbr Flávia Barros – fab (participação especial)

CIn-UFPE

26Índices Invertidos: Construção

Tries: muito espaço requerido Para bases grandes: paginação

Índices parciais persistentes Merge dos índices

...

Indexação

Page 27: CIn-UFPE1 Recuperação de Informação Eduardo Amaral - efas Frederico Fernandes - fbf2 Juliano Rabelo - jcbr Flávia Barros – fab (participação especial)

CIn-UFPE

27Índices Invertidos:

Construção

Ao final do processo: Um arquivo de ocorrências Outro do vocabulário com ponteiro para

ocorrências Pode ser mantido na memória

Indexação

Page 28: CIn-UFPE1 Recuperação de Informação Eduardo Amaral - efas Frederico Fernandes - fbf2 Juliano Rabelo - jcbr Flávia Barros – fab (participação especial)

CIn-UFPE

28

Outras Estruturas de Índices

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

Árvores e vetores de sufixos Mais rápidos para buscar trechos do texto Mais difíceis de construir e manter

Indexação

Page 29: CIn-UFPE1 Recuperação de Informação Eduardo Amaral - efas Frederico Fernandes - fbf2 Juliano Rabelo - jcbr Flávia Barros – fab (participação especial)

CIn-UFPE

29

Recuperação

Obtenção dos documentos que satisfazem uma consulta (query)

Índices Invertidos Custos de busca e armazenamento

sublinear O (n0.85)

Recuperação

Page 30: CIn-UFPE1 Recuperação de Informação Eduardo Amaral - efas Frederico Fernandes - fbf2 Juliano Rabelo - jcbr Flávia Barros – fab (participação especial)

CIn-UFPE

30

Recuperação

Procurar termos da Consulta no vocabulário

Tabelas hash, tries, ... O(tamanho da palavra)

Lista em ordem alfabética O(log (tamanho do texto)) Mais barato em espaço

Recuperação

Page 31: CIn-UFPE1 Recuperação de Informação Eduardo Amaral - efas Frederico Fernandes - fbf2 Juliano Rabelo - jcbr Flávia Barros – fab (participação especial)

CIn-UFPE

31

Recuperação

Consultas simples Recupera documentos onde a palavra ocorre

pelo menos uma vez

Consultas compostas (booleanas) Recupera documentos onde cada palavra da

Consulta ocorre pelo menos uma vez Merge de listas

Combina as listas de documentos recuperados de acordo com o operador booleano da consulta

Recuperação

Page 32: CIn-UFPE1 Recuperação de Informação Eduardo Amaral - efas Frederico Fernandes - fbf2 Juliano Rabelo - jcbr Flávia Barros – fab (participação especial)

CIn-UFPE

32

Ordenação

Ordenar os documentos de acordo com sua relevância em relação à Consulta

Relevância: difícil de medir Mede-se a similaridade entre cada documento e a

consulta

Modelo “Espaço Vetorial” Similaridade é proporcional ao co-seno do ângulo

formado Tende a retornar documentos pequenos

Google Proximidade das palavras da Consulta no documento Tamanho da fonte, texto de links, ... PageRank

Page 33: CIn-UFPE1 Recuperação de Informação Eduardo Amaral - efas Frederico Fernandes - fbf2 Juliano Rabelo - jcbr Flávia Barros – fab (participação especial)

CIn-UFPE

33

Avaliação

Cobertura: total de documentos relevantes retornados sobre o número total dos relevantes existentes

Precisão: documentos relevantes retornados sobre o número total de retornados

Todos os Documentos

Documentos Relevantes

Documentos Retornados

Relevantes Retornados

Avaliaçãoe Validação

Page 34: CIn-UFPE1 Recuperação de Informação Eduardo Amaral - efas Frederico Fernandes - fbf2 Juliano Rabelo - jcbr Flávia Barros – fab (participação especial)

CIn-UFPE

34

Validação

Teste do sistema num corpus conhecido e etiquetado manualmente Sabe-se a relevância de um documento em

relação a uma Consulta

TREC, Reuters, ...

Avaliaçãoe Validação

Page 35: CIn-UFPE1 Recuperação de Informação Eduardo Amaral - efas Frederico Fernandes - fbf2 Juliano Rabelo - jcbr Flávia Barros – fab (participação especial)

CIn-UFPE

35Sistemas de RI na Web Arquitetura

WebWeb

Consulta

Resposta

Base deÍndices

Engenho de Busca

Usuário

Spider

Indexador

Representação dos Docs

Servidor de Consultas

Aquisição

Pré-Processador

Docs

Recuperador

Ordenador

21

34

Motor deIndexação

Browser

Page 36: CIn-UFPE1 Recuperação de Informação Eduardo Amaral - efas Frederico Fernandes - fbf2 Juliano Rabelo - jcbr Flávia Barros – fab (participação especial)

CIn-UFPE

36

Base de Índices

Usuário

Servidor de Consultas

Recuperador

OrdenadorBrowser

desonesto -> doc1 peso 1;

socrates -> doc1 peso 1; doc 3 peso 2

futebol -> 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)

Page 37: CIn-UFPE1 Recuperação de Informação Eduardo Amaral - efas Frederico Fernandes - fbf2 Juliano Rabelo - jcbr Flávia Barros – fab (participação especial)

CIn-UFPE

37

Base deÍndicesIndexado

r

Motor deIndexação

Pré-Processador

Motor de Indexação

Operações de Texto Representaçã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 desonesto soubesse a vantagem de ser honesto, ele seria honesto ao menos por desonestidade.” Sócrates

Doc originalDoc : www.filosofia.com

Representação Invertida

Page 38: CIn-UFPE1 Recuperação de Informação Eduardo Amaral - efas Frederico Fernandes - fbf2 Juliano Rabelo - jcbr Flávia Barros – fab (participação especial)

CIn-UFPE

38

Bibliografia

Baeza-Yates & Ribeiro-Neto - Modern Information Retrielval

Sparck Jones & Petter Willett - Reading in Information Retrieval

Brin, Sergey & Page, Lawrence - Anatomy of a large Scale Search Engine

Ray Denenberg - Structuring and indexing the Web

Heydon and Najork - Mercator : A Scalable, Extensible Web Crawler