1 DI - UFPE
Projeto X-Finder Agents
Recuperação e indexação de páginas especializadas na Web
Introdução à Recuperação de informação
Detalhamento do projeto
2 DI - UFPE
Motivação: “morrendo ignorante em um mar de informação”
Objetivo: Encontrar (de forma eficiente) os melhores documentos que satisfaçam a consulta do usuário
Todos os Documentos
Documentos Relevantes
Documentos Retornados
Relevantes Retornados
Medidas: Recall e Precisão
Cobertura (Recall)• total de documentos relevantes retornados dividido
pelo número total dos relevantes.
Precisão: • documentos relevantes retornados dividido pelo
número total de retornados
4 DI - UFPE
Recuperação de informação
Sistemas de indexação por palavras-chave • consulta: palavras-chave e expressões booleanas
• retorna uma grande quantidade de documentos irrelevantes mas é robusto e abrangente
• Exemplos: AltaVista, Radix, HotBot, Lycos, ...
Sistemas de indexação manual por ontologias• consulta: palavras-chave e navegação
• classificação mais precisa porém estática e menos abrangente
• Exemplos: Yahoo!, Cadê, ...
5 DI - UFPE
Recuperação de informação
Solução intermediária: • automatização da classificação humana
• processamento de linguagem natural + conhecimento
Inviável, porque a Web é• Enorme
• Não-estruturada
• Conteúdo variado
• Ambígua
• Multilíngue
Doc. 1
Filtragem
...
Doc. N
Documentos “Interessantes”
Critérios do Usuário
IndexarBase de Dados
Estruturada
Estrutura Geral de um Sistema IR
Stop-List
Busca
7 DI - UFPE
BrowserConsulta
Resposta
Servidor de Consultas Base de
Índices
Search EngineUsuário
Busca
WebWeb)--(
Robô
Indexing Engine
Exemplos: Radix, AltaVista, Lycos, Excite, ...
Busca e Recuperação de Informação
Representação do Documento
Dado um documento, identificar os conceitos que descrevem o seu conteúdo e quão bem eles o descrevem.
Pesos das Palavras como indicação de relevância:
• Freqüência relativa da palavra no texto (centroide)
• Freqüência da palavra em relação a outros documentos (TFIDF)
• Colocação da palavra na estrutura do documento (título, início, negrito,...)
Palavras com maiores pesos são selecionadas formando um vetor de representação.
Exemplo de Representação
Brincadeira
O rato roeu a roupa do rei de Roma.
brincadeira, t, m, n, irato, 1roeu, 1roupa, 1rei, 2roma, 2, m
brincadeira, 90rato, 70roeu, 70roupa, 70rei, 60roma, 65
brincadeira, 90rato, 70roeu, 70roupa, 70roma, 65rei, 60
Representação Vetorial do Documento
centroide
Bem-vindo!
UFPE
http://www.ufpe.br
URL: http://www.ufpe.br
ID: 455227
Words: 543, 987
Arquivo Direto
WORD: Bem-vindo
ID: 543
URLs: 455227,...
WORD: UFPE
ID: 987
URLs: 455227,...
Arquivo Invertido
Estrutura de Arquivos p/ IR
Arquivos Invertidos
Arquivos de Assinatura
Árvores e arrays PAT
Indexing
Análise Léxica• Converter uma cadeia de caracteres em uma cadeia
de palavras/tokens. (/, -, 0-9,...)
Stop-list• Palavras comuns são retiradas da indexação.
String searching• String matching exato e aproximado (KMP, Boyer-
Moore,...), busca por sinônimos,...
Indexação Distribuída, Base compartilhada:• Divisão por: Localização Geográfica, Rede,
Conteúdo,..
engineering engineered engineer
engineer engineer engineer
Term Stem
Futebol
Campeonato Brasileiro
Palmeiras
CBF
Indexing
Stemming• possibilitar variações morfológicas dos termos durante
o casamento.
Ontologias • para aumentar precisão e cobertura.
Categorização de Documentos
Objetivos:• Facilitar a busca automática e browsing dos
documentos.
Técnicas podem ser divididas em:• Booleana
• Probabilística
• Vetorial
Utilizam:• Aprendizado de máquina (processos de inferência)
• Engenharia de conhecimento (definição de uma BC)
14 DI - UFPE
Detalhamento do Projeto
15 DI - UFPE
X-Finder Agents
Andamento• A cada novo assunto pertinente* apresentado, será
proposta 1 tarefa cujo resultado será posteriormente avaliado em uma aula de laboratório
• Teremos 3 tarefas ao todo (3 etapas do projeto), segundo o cronograma de aulas da página do curso
Grupos• 4 grupos de 4 alunos
* o que não é pertinente será cobrado em uma lista de exercícios
16 DI - UFPE
Páginas Especializadas
Páginas especializadas: estrutura na Web• apesar da aparência caótica, a Web pode ser vista como
um aglomerado de classes particulares de páginas
• estas páginas especializadas tem em comum características sintáticas e semânticas
Exemplos• chamadas de trabalho (cfp), faq, hotéis, pessoais, lista de
artigos, restaurantes, classificados, cinemas, ...
Contexto• estas páginas podem servir para contextualizar as
consultas– ex. “amplificador de áudio” .... cfp, faq, loja, artigo, ....
17 DI - UFPE
arquitetura: meta busca
WE
B Mec. Busca
Mec. Busca
palavra-chave
html
Agenteex. receita
ex. excite
KBparaclassificação
palavra-chave
html
Pós-filtragem
Índices
ex. sobremesa
18 DI - UFPE
Objetivo
Projeto básico (para todos)• Implementar um conjunto de agentes capazes de
recuperar e indexar páginas especializadas
Extensões eventuais (escolher uma se for o caso)
(a) prover extração de informação
(b) testar algoritmos de aprendizagem
(c) estender a busca com as palavras mais comuns (ex. bolo, carnes, ...)
(d) introduzir conectores lógicos e ontologias para consulta a posteriori
(e) notificação personalizada
19 DI - UFPE
Etapa 1
Fase Preliminar Manual• Identificação das palavras-chave a serem usadas nos
mecanismos gerais de busca– ex. “conference”, “symposium” e “call for papers” para
o caso das páginas de chamadas de trabalho– ex. “receitas”, “ingredientes” para o caso de receitas
culinárias
• Formação de um corpus etiquetado (à mão) de páginas para teste, (mínimo de 200 páginas!)
– ex. BD (ou equivalente): url, classe, arquivo html– tanto exemplo positivo quanto negativo
20 DI - UFPE
Etapa 2
Montar as base de regras• Identificar possíveis regras de classificação
– Se a palavra “paper” aparece no título e existem n parágrafos com .... Então é um “call for papers”
• Implementar as regras de classificação – Reutilizaruma classe manipuladora de arquivos html
(www.cin.ufpe.br/~compint/aulas-IAS/programas/PaginaWWW.java)– utilizar Jeops, Jess ou Clips
• Efetuar testes com o corpus medindo– precisão– cobertura– F-measure = (cobertura * precisão) / 2(cobertura + precisão)
21 DI - UFPE
Regras com fator de certeza
Regras com fator de certeza• Se xx e yy Então zz com n% de chances
É possível combinar evidências quando regras disparam com a mesma conclusão
• probab-atualizada = probab-nova * (1 - probab-antiga)– para o Jeops, implementa no objeto a evidência
acumulada...
22 DI - UFPE
Etapa 3
Fase de Automatização Indutiva (alternativa)• Representação dos exemplos de aprendizagem
– “enxugar” o texto (stop-list), inclusive tirando tags – escolher as palavras mais pertinentes (TFIDF)– compor o vetor de representação
• Escolher 1 ou 2 algoritmos de aprendizagem (ID3, RN, Bayes, etc.)
– codificar os exemplos– rodar os algoritmos e obter os resultados (matriz
binária de confusão)
Fase de avaliação dos métodos de classificação• dedutivo x indutivo: discutir resultados!
23 DI - UFPE
Categorização de Textos
Representação do texto
Construção indutiva de categorizadores
Categorização
Texto inicial
ConhecimentoAdicional
Representação Inicial
Redutor de Dimensão
ouSeleção de Características
Representação Final
Indução
24 DI - UFPE
Etapas
Fase de Implementação do Protótipo• Automatização consulta a mecanismos de busca
– Reutilizar/programar as classes para acesso aos mecanismos de busca
• Identificação da estrutura da página de resposta do mecanismo de busca para extração dos links
– ex. terceira linha, depois de um <LI>...
• Automatização extração de links das respostas– Reutilizar/programar uma classe manipuladora de
arquivos html
• Automatização da atualização e indexação periódica da base de índices
25 DI - UFPE
)(log)()(
DF
DTFTFIDF
D = número total de documentos.
Técnicas de IR
Centroide• freqüência das palavras no texto
Term Frequency-Inverse Document Frequency (TFIDF):
• atribui pesos às palavras de um documento.
• TF(w): freqüência da palavra w (número de vezes que w aparece no documento.
• DF(w): freqüência de documentos com a palavra w (número de documentos em que a palavra ocorre).
26 DI - UFPE
Etapa 4
Tendo feito o classificador• criar base de índices com as páginas pertencentes à
classe desejada (stop-list, arquivos invertidos, ...)– fazer inicialmente com as páginas do corpus
• prover interface par consulta (ex. bolo, carnes, ...)
• automatizar busca na Web de maneira alimentar a base de índices automática e periodicamente
27 DI - UFPE
Etapa 5 (opcional)
Se der tempo, dividir os grupos para estender o trabalho em umas das seguintes direções
(a) prover extração de informação
(b) testar algoritmos de aprendizagem
(c) estender a busca com as palavras mais comuns (ex. bolo, carnes, ...)
(d) introduzir conectores lógicos e ontologias para consulta a posteriori
(e) notificação personalizada
Referências
Internet Categorization and Search: A Self-Organizing Approach, Hsinchun Chen, University of Arizona, 1996.
Learning from Hotlists and Coldlists: Towards a WWW information filtering and seeking agent, Michael Pazzani, University of California.
The State of the Art in Text Filtering, Douglas W. Oard, University of Maryland, 1997.
BRight: a Distributed System for Web Information Indexing and Searching, Pedro Falcão & Silvio Meira, Universidade Federal de Pernambuco.
Na Architecture for Information Agents, Donald P McKay, University of Maryland.
Cooperating Agents for Information Retrieval, Craig A. Knoblock, University of Southern California
Referências
Ontologies for Enhancing Web Searches' Precision and Recall, Flávia A. Barros, Pedro F. Gonçalves, Universidade Federal de Pernambuco.
Information Retrieval: Data Structures & Algorithms, Willian B. Frakes e Ricardo Baeza-Yates, Prentice Hall, 1992. !!!!!
Filtragem e Recomendação de Documentos na Web. Uma Abordage Usando Java, José Abelardo Sánchez Cardoza, Universidade Federal de Pernambuco, 1998.
Referências - Links• Universidade de Maryland
http://www.cs.umbc.edu/abir/
http://www.cs.umbc.edu/agents/
• Intelligent Software Agentshttp://www.sics.se/ps/abc/survey.html
• MIT Media Lab
http://lcs.www.media.mit.edu/groups/agents/resources. • Sycara’s Page
http://almond.srv.cs.cmu.edu/afs/cs/user/katia/www/katia-home.html
• Sasdwedish Institute of Computer Sciencehttp://www.dsv.su.se/~fk/if_Doc/IntFilter.html
Top Related