Recuperação de Informações
Estéfane George M. de Lacerda
Agentes na Web
• Agentes tem surgido na web de várias maneiras
– Busca
– Filtram e recuperam Informações
– Agentes notificadores
– Suporte ao Comércio
– Chat
– Outros...
Agentes na Web
• Os mais populares Agentes na Web tem sido usado
em sistemas de recuperação de informações na
web
A Web
• Informação não estruturada
• 400 a 500 milhões de documentos (Jul, 1998,
IEEE internet computer).
• Duplica de tamanho a cada 4 meses
• Multilíngue
• Ambígua
Caos para se buscar
informações
Tipos de sistemas de Busca na Internet
• Sistemas que usam Diretórios (Yahoo e Magellan)
– Catalagos organizados hierarquicamente.
• Sistemas que automatizam a organização das
informações na Web. (Altavista, Lycos,
WebCrawler, HotBot, Excite).
– Robôs ou spiders que exploram a web em
busca de páginas.
– A principal tecnologia desses sistemas provém
da área de Recuperação de informação.
Introdução a Recuperação de Informação
•
•
•
•
•
•
Full text scanning (KMP, Boyer e Moore etc...)
Arquivos de assinatura
Inversão
Indexação
Modelo Booleano
Modelo do Espaço Vetorial
Inversão
Coleção de Documentos
ID doc1
Good tutorial
on Java
ID doc2
Java tutorial
ID doc3
Sun´s Java
Site
Índice invertido
good
tutorial
doc1
doc1,doc2
on
java
sun
doc1
doc1,doc2.doc3
doc3
site
doc3
Preparação do documento p/ Indexação
• Análise léxica
• Stop list : palavras que não são úteis para
recuperação de informações (e.g. palavras
comuns, preposição, artigos, etc..)
• Stemming: processo de remover prefixos e sufixos
das palavras do documento
Term
engineering
engineered
engineer
Stem
engineer
engineer
engineer
Modelo Booleano
• A query é uma expressão com AND, OR e NOT
• O documento é relevante se o resultado da query
é verdadeiro.
• Tem baixo desempenho e não é possivel ranking
de documentos relevantes.
Modelo do Espaço Vetorial
• Documentos e query são representados por um
vetor com n dimensões, onde n é o numero de
termos diferentes na coleção de documentos.
Achar documentos é comparar o vetor de
documentos com o vetor query do usuário
Modelo do Espaço Vetorial
termos
good
tutorial
on
java
sun
site
doc1
w11
w12
w13
w14
0
0
vetores
doc2
doc3
0
w22
0
0
0
0
w24
0
0
w34
w35
w36
0 : Indica ausência do termo
wit : Peso que indica a importância do termo
query
0
0
0
w4
0
0
Atribuição de pesos
• Term Frequency x Inverse Document Frequency
(TF x IDF)
wij = fd,t log(N/fi)
N é o número total de documentos
ft é o número de docs que contém o termo t
fd,t : número de ocorrências do termo t no doc i
• Esta função atribui altos pesos para palavras raras,
pois são melhores discriminantes.
Ranking de documentos
• Os documento mais relevantes são retornados ao
usuário de acordo com a similaridade entre vetor
query e vetor documento
• Medida de similaridade R é dado pelo produto
interno entre vetor query Q com vetor documento
D (cosine similarity):
R = Q•D
Medidas de desempenho
Recall: total de documentos relevantes retornados
dividido pelo número total dos relevantes.
Precision: documentos relevantes retornados
dividido pelo número total de retornados
Todos os Documentos
Documentos Relevantes
Documentos Retornados
Relevantes Retornados
Medidas de desempenho
• Note que maximizar apenas uma medida
isoladamente é fácil:
– retornando 1 doc tem-se máximo precision, mas
péssimo recall
– retornando todos docs tem-se máximo recall,
mas péssimo precision
• Portanto, o sistema deve maximizar ambos recall e
precision simultaneamente
Relevance Feedback
• Processo de refinar resultados de uma recuperação
de informações.
• O usuário indica quais dos documentos retornados
são os mais relevantes.
• O sistema busca novos documentos com base
naqueles documentos indicados pelo usuário.
• O processo é repetido conforme desejado.
Outras técnicas
•
•
•
•
Clusterização de documentos
Machine learning
Redes Neurais
Processamento de Linguagem natural
Estudo de caso: o WebCrawler
wwwlib
agents
Search
engine
Internet
Query
server
database
Componentes do software do Webcrawler
Estudo de caso: o WebCrawler
• Search engine
– Começa com um conjunto de HTML´s e usa
suas URL´s para recuperar novos documentos.
– Atravessa a web usando busca em largura no
grafo formado pelos links entre documentos
– Indexa no mínimo um documento por servidor
Estudo de caso: o WebCrawler
• Agents
– São eles que realmente recuperam as páginas da
web quando solicitados pelo sistema.
• Database
– Prepara documento (Análise léxica, stop-list,
stremming, determina pesos usando TF.IDF,
indexação)
– Os índices são atualizados semanalmente
Estudo de caso: o WebCrawler
• Query server
– Suporta operadores AND, OR e NOT e frases
– Usa o modelo do espaço vetorial
– Efetua o ranking dos documentos com base na
similaridade com o vetor query
– Apresenta os documentos mais relevantes com
um resumo e um score de relevância
Estudo de caso: o WebCrawler
Conclusão
• A necessidade crescente de organizar informações
na WEB.
• Usuários não sabem elaborar a “query”, acham
complicados, com muitas possibilidades e sem
nenhuma orientação.
• Tempo de resposta ainda é lento.
• Técnicas IA são cada vez mais necessárias na
Web.
Bibliografia
• Willian B. Frakes e Ricardo Baeza-Yates Information
Retrieval: Data Structures & Algorithms,, Prentice Hall,
1992.
• Gudivada, V. N. et al. Information retrieval on the world
wide web. IEEE Internet Computing, Oct, 1997.
• Etzioni, O; Weld, D. S. Intelligent Agents on the Internet:
Fact, Fiction, and Forecast, IEEE Expert, Aug., 1995.
• Pinkerton. B. Finding What people want. Experiences with
webcrawler. Proc. Second. Int´L www conf., 1994.
(http://www.ncsa.uiuc.edu/SDG/IT94/Proceedings/Searchi
ng/pinkerton/WebCrawler.html)
• Oard D. W. The State of the Art in Text Filtering,,
University of Maryland, 1997.
Referências - Links
• http://almond.srv.cs.cmu.edu/afs/cs/user/katia/ww
w/katia-home.html
• http://www.cs.umbc.edu/agents/
• http://wwwkr.org/~chitos/ir_and_robot/indexing.html
Download

recup-info