Sumário Contexto, Problemas e Objetivos Estudo de caso Conceitos, técnicas e ferramentas Considerações e Referências Ferramentas Java para Recuperação e Mineração de Informações Fabrı́cio J. Barth1,2 1 Fundação 2 Centro Atech Tecnologias Crı́ticas ([email protected]) Universitário SENAC ([email protected]) 9 de setembro de 2008 Fabrı́cio J. Barth - Just Java 2008 Ferramentas para Recuperação e Mineração de Informações Sumário Contexto, Problemas e Objetivos Estudo de caso Conceitos, técnicas e ferramentas Considerações e Referências 1 Contexto, Problemas e Objetivos Problema 1: recuperar a informação Problema 2: tratar a informação recuperada 2 Estudo de caso 3 Conceitos, técnicas e ferramentas Agrupamento de documentos Classificação de documentos Recuperação de Informação 4 Considerações e Referências Considerações Referências Fabrı́cio J. Barth - Just Java 2008 Ferramentas para Recuperação e Mineração de Informações Sumário Contexto, Problemas e Objetivos Estudo de caso Conceitos, técnicas e ferramentas Considerações e Referências Contexto: Enorme quantidade de dados que precisa ser processada Fabrı́cio J. Barth - Just Java 2008 Ferramentas para Recuperação e Mineração de Informações Sumário Contexto, Problemas e Objetivos Estudo de caso Conceitos, técnicas e ferramentas Considerações e Referências Problema 1: recuperar a informação Problema 1: recuperar a informação Fabrı́cio J. Barth - Just Java 2008 Ferramentas para Recuperação e Mineração de Informações Sumário Contexto, Problemas e Objetivos Estudo de caso Conceitos, técnicas e ferramentas Considerações e Referências Problema 2: tratar a informação recuperada Problema 2: tratar a informação recuperada Fabrı́cio J. Barth - Just Java 2008 Ferramentas para Recuperação e Mineração de Informações Sumário Contexto, Problemas e Objetivos Estudo de caso Conceitos, técnicas e ferramentas Considerações e Referências Quantidade de notı́cias produzidas na Web? Notícias publicadas na Internet 160000 Estadão Folha G1 Globo Online Terra Último Segundo Total 140000 Quantidade (Notícias) 120000 100000 80000 60000 40000 20000 0 0 5 10 15 20 25 30 35 40 45 50 55 60 65 70 75 80 85 Tempo (Dias) Fabrı́cio J. Barth - Just Java 2008 Ferramentas para Recuperação e Mineração de Informações Sumário Contexto, Problemas e Objetivos Estudo de caso Conceitos, técnicas e ferramentas Considerações e Referências Quantidade de notı́cias produzidas na Web? Relação Horário x Dia x Quantidade de Notícias Produzidas 500 450 400 350 300 250 200 150 100 50 0 500 400 Notícias 300 200 100 0 0 2 4 6 8 Horário 10 12 30 14 16 20 10 18 20 22 0 Fabrı́cio J. Barth - Just Java 2008 40 50 60 70 80 90 Dia Ferramentas para Recuperação e Mineração de Informações Sumário Contexto, Problemas e Objetivos Estudo de caso Conceitos, técnicas e ferramentas Considerações e Referências Problema e Sugestões Problema: Para tirar proveito desta informação é necessário organizá-la de alguma forma... Fabrı́cio J. Barth - Just Java 2008 Ferramentas para Recuperação e Mineração de Informações Sumário Contexto, Problemas e Objetivos Estudo de caso Conceitos, técnicas e ferramentas Considerações e Referências Problema e Sugestões Problema: Para tirar proveito desta informação é necessário organizá-la de alguma forma... Sugestões: Agrupamento de Notı́cias. Classificação, Recomendação e Filtragem de Notı́cias. Fabrı́cio J. Barth - Just Java 2008 Ferramentas para Recuperação e Mineração de Informações Sumário Contexto, Problemas e Objetivos Estudo de caso Conceitos, técnicas e ferramentas Considerações e Referências Agrupamento de documentos Por que agrupar notı́cias? Como agrupá-las? Fabrı́cio J. Barth - Just Java 2008 Ferramentas para Recuperação e Mineração de Informações Sumário Contexto, Problemas e Objetivos Estudo de caso Conceitos, técnicas e ferramentas Considerações e Referências Agrupamento de documentos Definições de Algoritmos de Agrupamento O objetivo dos algoritmos de agrupamento é colocar os objetos similares em um mesmo grupo e objetos não similares em grupos diferentes. Normalmente, objetos são descritos e agrupados usando um conjunto de atributos e valores. Não existe nenhuma informação sobre a classe ou categoria dos objetos. Fabrı́cio J. Barth - Just Java 2008 Ferramentas para Recuperação e Mineração de Informações Sumário Contexto, Problemas e Objetivos Estudo de caso Conceitos, técnicas e ferramentas Considerações e Referências Agrupamento de documentos Formato de um documento ... Esta disciplina tem como objetivo apresentar os principais conceitos da área de Inteligência Artificial, caracterizar as principais técnicas e métodos, e implementar alguns problemas clássicos desta área sob um ponto de vista introdutório. A estratégia de trabalho, o conteúdo ministrado e a forma dependerão dos projetos selecionados pelos alunos. Inicialmente, os alunos deverão trazer os seus Projetos de Conclusão de Curso, identificar intersecções entre o projeto e a disciplina, e propor atividades para a disciplina. ... Fabrı́cio J. Barth - Just Java 2008 Ferramentas para Recuperação e Mineração de Informações Sumário Contexto, Problemas e Objetivos Estudo de caso Conceitos, técnicas e ferramentas Considerações e Referências Agrupamento de documentos Atributo/Valor usando vetores Como representar os documentos? Fabrı́cio J. Barth - Just Java 2008 Ferramentas para Recuperação e Mineração de Informações Sumário Contexto, Problemas e Objetivos Estudo de caso Conceitos, técnicas e ferramentas Considerações e Referências Agrupamento de documentos Atributo/Valor usando vetores Como representar os documentos? − → di = (pi1 , pi2 , · · · , pin) (1) Os atributos são as palavras que aparecem nos documentos. Fabrı́cio J. Barth - Just Java 2008 Ferramentas para Recuperação e Mineração de Informações Sumário Contexto, Problemas e Objetivos Estudo de caso Conceitos, técnicas e ferramentas Considerações e Referências Agrupamento de documentos Atributo/Valor usando vetores Como representar os documentos? − → di = (pi1 , pi2 , · · · , pin) (1) Os atributos são as palavras que aparecem nos documentos. Se todas as palavras que aparecem nos documentos forem utilizadas, o vetor não ficará muito grande? Fabrı́cio J. Barth - Just Java 2008 Ferramentas para Recuperação e Mineração de Informações Sumário Contexto, Problemas e Objetivos Estudo de caso Conceitos, técnicas e ferramentas Considerações e Referências Agrupamento de documentos Diminuindo a dimensionalidade do vetor Como filtrar as palavras que devem ser usadas como atributos? Em todos os idiomas existem átomos (palavras) que não significam muito. Stop-words Esta disciplina tem como objetivo apresentar os principais conceitos da área de Inteligência Artificial, caracterizar as principais técnicas e métodos, e implementar alguns problemas clássicos desta área sob um ponto de vista introdutório. ··· Fabrı́cio J. Barth - Just Java 2008 Ferramentas para Recuperação e Mineração de Informações Sumário Contexto, Problemas e Objetivos Estudo de caso Conceitos, técnicas e ferramentas Considerações e Referências Agrupamento de documentos Diminuindo ainda mais a dimensionalidade do vetor Algumas palavras podem aparecer no texto de diversas maneiras: técnica, técnicas, implementar, implementação... Stemming - encontrar o radical da palavra e usar apenas o radical. Fabrı́cio J. Barth - Just Java 2008 Ferramentas para Recuperação e Mineração de Informações Sumário Contexto, Problemas e Objetivos Estudo de caso Conceitos, técnicas e ferramentas Considerações e Referências Agrupamento de documentos Atributo/Valor usando vetores Já conhecemos os atributos. E os valores? Fabrı́cio J. Barth - Just Java 2008 Ferramentas para Recuperação e Mineração de Informações Sumário Contexto, Problemas e Objetivos Estudo de caso Conceitos, técnicas e ferramentas Considerações e Referências Agrupamento de documentos Atributo/Valor usando vetores Já conhecemos os atributos. E os valores? Booleana - se a palavra aparece ou não no documento (1 ou 0) Por freqüência do termo - a freqüência com que a palavra aparece no documento (normalizada ou não) Ponderação tf-idf - o peso é proporcional ao número de ocorrências do termo no documento e inversamente proporcional ao número de documentos onde o termo aparece. Fabrı́cio J. Barth - Just Java 2008 Ferramentas para Recuperação e Mineração de Informações Sumário Contexto, Problemas e Objetivos Estudo de caso Conceitos, técnicas e ferramentas Considerações e Referências Agrupamento de documentos Por freqüência do termo (apresent,0.33) (form,0.33) (tecnic,0.33) (caracteriz,0.33) (projet,1.0) (introdutori,0.33) (objet,0.33) (inteligente,0.33) (conclusa,0.33) (selecion,0.33) (intersecco,0.33) (classic,0.33) (identific,0.33) (conceit,0.33) (trabalh,0.33) (disciplin,1.0) (traz,0.33) Fabrı́cio J. Barth - Just Java 2008 Ferramentas para Recuperação e Mineração de Informações Sumário Contexto, Problemas e Objetivos Estudo de caso Conceitos, técnicas e ferramentas Considerações e Referências Agrupamento de documentos Conjunto de Exemplos - Atributo/Valor Doc. apresent form tecnic caracteriz ··· d1 d2 d3 d4 d5 dn 0.33 0 1 0.4 1 ··· 0.33 0.5 0.6 0.3 0.4 ··· 0.33 0.2 0 0.33 0.1 ··· 0.33 0.33 0 0.4 0.1 ··· ··· ··· ··· ··· ··· ··· Fabrı́cio J. Barth - Just Java 2008 Ferramentas para Recuperação e Mineração de Informações Sumário Contexto, Problemas e Objetivos Estudo de caso Conceitos, técnicas e ferramentas Considerações e Referências Agrupamento de documentos Componentes da Solução Fabrı́cio J. Barth - Just Java 2008 Ferramentas para Recuperação e Mineração de Informações Sumário Contexto, Problemas e Objetivos Estudo de caso Conceitos, técnicas e ferramentas Considerações e Referências Agrupamento de documentos Coletor de RSS e Pré-Processamento function coletorRSS(Lista de RSS): tabela i ← 0; for cada rssi em RSS do for cada noticiaj em rssi do di ← di + rssi .noticiaj .TITLE; di ← di + rssi .noticiaj .DESCRIPTION; di ← eliminaStopWords(di ); di ← stemming(di ); i ← i + 1; end for end for return criaTabelaExemplos(d,TF-IDF); Fabrı́cio J. Barth - Just Java 2008 Ferramentas para Recuperação e Mineração de Informações Sumário Contexto, Problemas e Objetivos Estudo de caso Conceitos, técnicas e ferramentas Considerações e Referências Agrupamento de documentos Pré-processamento dos documentos - RapidMiner Fabrı́cio J. Barth - Just Java 2008 Ferramentas para Recuperação e Mineração de Informações Sumário Contexto, Problemas e Objetivos Estudo de caso Conceitos, técnicas e ferramentas Considerações e Referências Agrupamento de documentos Caracterı́sticas e Funcionalidades do RapidMiner O usuário define um processo de tratamento dos dados. Os operadores podem ser divididos nas seguintes categorias: IO Learner (Supervised / Unsupervised) OLAP (On-line Analytical Processing) Postprocessing Preprocessing Validation Visualization Cada operador pode ser devidamente configurado. Existem ambientes para: definição do processo e execução do processo. Fabrı́cio J. Barth - Just Java 2008 Ferramentas para Recuperação e Mineração de Informações Sumário Contexto, Problemas e Objetivos Estudo de caso Conceitos, técnicas e ferramentas Considerações e Referências Agrupamento de documentos Pré-processamento dos documentos - RapidMiner Fabrı́cio J. Barth - Just Java 2008 Ferramentas para Recuperação e Mineração de Informações Sumário Contexto, Problemas e Objetivos Estudo de caso Conceitos, técnicas e ferramentas Considerações e Referências Agrupamento de documentos Pré-processamento dos documentos - Código i m p o r t edu . udo . c s . w v t o o l . g e n e r i c . stemmer . P o r t e r S t e m m e r W r a p p e r ; i m p o r t edu . udo . c s . w v t o o l . g e n e r i c . t o k e n i z e r . S i m p l e T o k e n i z e r ; i m p o r t edu . udo . c s . w v t o o l . g e n e r i c . w o r d f i l t e r . StopWordsWrapper ; ... p u b l i c S t r i n g manipulaTextoComStemming ( S t r i n g nomeArquivo ){ try{ WVTDocumentInfo d o c u m e n t I n f o = new WVTDocumentInfo ( n u l l , ” html ” , n u l l , ” e n g l i s h ” ) ; S i m p l e T o k e n i z e r t o k e n i z e r = new S i m p l e T o k e n i z e r ( ) ; TokenEnumeration t o k e n s = t o k e n i z e r . t o k e n i z e ( new I n p u t S t r e a m R e a d e r ( new F i l e I n p u t S t r e a m ( nomeArquivo ) ) , d o c u m e n t I n f o ) ; P o r t e r S t e m m e r W r a p p e r stemmer = new P o r t e r S t e m m e r W r a p p e r ( ) ; StopWordsWrapper s t o p W o r d s = new StopWordsWrapper ( ) ; T o k e n E n u m e r a t i o n tokenSemStopWord = s t o p W o r d s . f i l t e r ( tokens , documentInfo ) ; S t r i n g r e t o r n o = ”” ; w h i l e ( tokenSemStopWord . hasMoreTokens ( ) ) retorno = retorno + stemmer . g e t B a s e ( tokenSemStopWord . n e x t T o k e n ())+ ” ” ; return retorno ; ... Fabrı́cio J. Barth - Just Java 2008 Ferramentas para Recuperação e Mineração de Informações Sumário Contexto, Problemas e Objetivos Estudo de caso Conceitos, técnicas e ferramentas Considerações e Referências Agrupamento de documentos Conjunto de treinamento - Arquivo Arff @RELATION R a p i d M i n e r D a t a @ATTRIBUTE @ATTRIBUTE @ATTRIBUTE @ATTRIBUTE ... ... ’ network ’ r e a l ’ februari ’ real ’ member ’ r e a l ’ wait ’ r e a l @DATA 0.1313298612447743 ,0.004041576682790196 ,0.01774727854659112 ,0.003549455709318225 0.1313298612447743 ,0.004041576682790196 ,0.01774727854659112 ,0.003549455709318 ,0 0.0 ,0.0 ,0.0 ,0.0 0.0 ,0.0 ,0.0 ,0.0 0.0 ,0.014857582309589007 ,0.0 ,0.0024848992203904758 ... ... Fabrı́cio J. Barth - Just Java 2008 Ferramentas para Recuperação e Mineração de Informações Sumário Contexto, Problemas e Objetivos Estudo de caso Conceitos, técnicas e ferramentas Considerações e Referências Agrupamento de documentos Que algoritmo de agrupamento utilizar? Fabrı́cio J. Barth - Just Java 2008 Ferramentas para Recuperação e Mineração de Informações Sumário Contexto, Problemas e Objetivos Estudo de caso Conceitos, técnicas e ferramentas Considerações e Referências Agrupamento de documentos Algoritmos para Agrupamento - K-means K significa o número de agrupamentos (que deve ser informado à priori). Sequência de ações iterativas. A parada é baseada em algum critério de qualidade dos agrupamentos (por exemplo, similaridade média). Fabrı́cio J. Barth - Just Java 2008 Ferramentas para Recuperação e Mineração de Informações Sumário Contexto, Problemas e Objetivos Estudo de caso Conceitos, técnicas e ferramentas Considerações e Referências Agrupamento de documentos Algoritmo para Agrupamento - K-means 5 5 4 4 3 3 2 2 1 1 0 0 1 2 3 4 5 6 7 1 8 2 3 4 5 6 7 8 (2) Sorteio dos pontos centrais dos agrupamentos (1) Objetos que devem ser agrupados 5 5 4 4 3 3 2 2 1 1 0 0 1 2 3 4 5 6 7 8 (3) Atribuição dos objetos aos agrupamentos Fabrı́cio J. Barth - Just Java 2008 1 2 3 4 5 6 7 8 (4) Definição do centro do agrupamento Ferramentas para Recuperação e Mineração de Informações Sumário Contexto, Problemas e Objetivos Estudo de caso Conceitos, técnicas e ferramentas Considerações e Referências Agrupamento de documentos Algoritmo para agrupamento dos documentos - Weka Fabrı́cio J. Barth - Just Java 2008 Ferramentas para Recuperação e Mineração de Informações Sumário Contexto, Problemas e Objetivos Estudo de caso Conceitos, técnicas e ferramentas Considerações e Referências Agrupamento de documentos Caracterı́sticas e Funcionalidades do Weka Mais simples que o RapidMiner. Com menos funcionalidades. Os operadores podem ser divididos nas seguintes categorias: Entrada e pré-processamento. Classificação. Agrupamento. Associação. Visualização. Fabrı́cio J. Barth - Just Java 2008 Ferramentas para Recuperação e Mineração de Informações Sumário Contexto, Problemas e Objetivos Estudo de caso Conceitos, técnicas e ferramentas Considerações e Referências Agrupamento de documentos Algoritmo para agrupamento dos documentos - Weka Fabrı́cio J. Barth - Just Java 2008 Ferramentas para Recuperação e Mineração de Informações Sumário Contexto, Problemas e Objetivos Estudo de caso Conceitos, técnicas e ferramentas Considerações e Referências Agrupamento de documentos Algoritmo para agrupamento dos documentos - Código p u b l i c AgrupamentoComKMeans ( S t r i n g a r q u i v o ){ try{ I n s t a n c e s i n s t a n c e s = new I n s t a n c e s ( new F i l e R e a d e r ( a r q u i v o ) ) ; /∗ ∗ Para v i s u a l i z a r o s d a d o s do a r q u i v o a r f f ∗/ System . o u t . p r i n t l n ( ” D a t a s e t : ” ) ; System . o u t . p r i n t l n ( i n s t a n c e s ) ; /∗ ∗ U t i l i z a ç ã o do KMeans ∗/ SimpleKMeans kmeans = new SimpleKMeans ( ) ; kmeans . b u i l d C l u s t e r e r ( i n s t a n c e s ) ; /∗ ∗ I m p r i m i n d o i n f o r m a ç ã o s o b r e i n s t â n c i a − a g r u p a m e n t o ∗/ f o r ( i n t i =0; i<i n s t a n c e s . n u m I n s t a n c e s ( ) ; i ++){ System . o u t . p r i n t l n ( ”A i n s t â n c i a ”+ i n s t a n c e s . i n s t a n c e ( i ) . t o S t r i n g ()+ ” e s t a h no c l u s t e r ”+ kmeans . c l u s t e r I n s t a n c e ( i n s t a n c e s . i n s t a n c e ( i ) ) ) ; } } c a t c h ( E x c e p t i o n e ){ System . o u t . p r i n t l n ( e ) ; } } Fabrı́cio J. Barth - Just Java 2008 Ferramentas para Recuperação e Mineração de Informações Sumário Contexto, Problemas e Objetivos Estudo de caso Conceitos, técnicas e ferramentas Considerações e Referências Agrupamento de documentos Algoritmo para agrupamento dos documentos - Resultados A A A A A A A A A A A A A A i n s t â n c i a i n s t â n c i a i n s t â n c i a i n s t â n c i a i n s t â n c i a i n s t â n c i a i n s t â n c i a i n s t â n c i a i n s t â n c i a i n s t â n c i a i n s t â n c i a i n s t â n c i a i n s t â n c i a i n s t â n c i a 0.1 0.1 0.3 0.3 0.3 0.8 0.1 0.1 0.1 0.6 0.6 0.1 0.2 0.1 ,0.1 ,0.2 ,0.4 ,0.1 ,0.1 ,0.7 ,0.1 ,0.1 ,0.1 ,0.5 ,0.5 ,0.1 ,0.8 ,0.1 ,0.1 ,0.3 ,0.5 ,0.1 ,0.1 ,0.8 ,0.1 ,0.1 ,0.1 ,0.6 ,0.6 ,0.1 ,0.8 ,0.1 ,0.1 ,0.1 ,0.8 ,0.1 ,0.1 ,0.8 ,0.1 ,0.1 ,0.1 ,0.6 ,0.6 ,0.1 ,0.7 ,0.1 ,0.1 ,0.8 ,0.9 ,0.1 ,0.1 ,0.8 ,0.1 ,0.1 ,0.1 ,0.6 ,0.6 ,0.1 ,0.9 ,0.1 e s t á e s t á e s t á e s t á e s t á e s t á e s t á e s t á e s t á e s t á e s t á e s t á e s t á e s t á no no no no no no no no no no no no no no Fabrı́cio J. Barth - Just Java 2008 cluster cluster cluster cluster cluster cluster cluster cluster cluster cluster cluster cluster cluster cluster 1 1 0 1 1 0 1 1 1 0 0 1 0 1 Ferramentas para Recuperação e Mineração de Informações Sumário Contexto, Problemas e Objetivos Estudo de caso Conceitos, técnicas e ferramentas Considerações e Referências Classificação de documentos Classificação e Filtragem de Notı́cias Fabrı́cio J. Barth - Just Java 2008 Ferramentas para Recuperação e Mineração de Informações Sumário Contexto, Problemas e Objetivos Estudo de caso Conceitos, técnicas e ferramentas Considerações e Referências Classificação de documentos Classificação e Filtragem de Notı́cias Fabrı́cio J. Barth - Just Java 2008 Ferramentas para Recuperação e Mineração de Informações Sumário Contexto, Problemas e Objetivos Estudo de caso Conceitos, técnicas e ferramentas Considerações e Referências Classificação de documentos Conjunto de Exemplos - Atributo/Valor e Classe Doc. apresent form tecnic caracteriz ··· Relevante d1 d2 d3 d4 d5 dn 0.33 0 1 0.4 1 ··· 0.33 0.5 0.6 0.3 0.4 ··· 0.33 0.2 0 0.33 0.1 ··· 0.33 0.33 0 0.4 0.1 ··· ··· ··· ··· ··· ··· ··· 1 0 1 1 1 ··· Fabrı́cio J. Barth - Just Java 2008 Ferramentas para Recuperação e Mineração de Informações Sumário Contexto, Problemas e Objetivos Estudo de caso Conceitos, técnicas e ferramentas Considerações e Referências Classificação de documentos Qual é o problema? Fabrı́cio J. Barth - Just Java 2008 Ferramentas para Recuperação e Mineração de Informações Sumário Contexto, Problemas e Objetivos Estudo de caso Conceitos, técnicas e ferramentas Considerações e Referências Classificação de documentos Uma solução... Fabrı́cio J. Barth - Just Java 2008 Ferramentas para Recuperação e Mineração de Informações Sumário Contexto, Problemas e Objetivos Estudo de caso Conceitos, técnicas e ferramentas Considerações e Referências Classificação de documentos Processo de trabalho Fabrı́cio J. Barth - Just Java 2008 Ferramentas para Recuperação e Mineração de Informações Sumário Contexto, Problemas e Objetivos Estudo de caso Conceitos, técnicas e ferramentas Considerações e Referências Recuperação de Informação Recuperação de Informação Como construir sistemas de “busca” sob medida? Fabrı́cio J. Barth - Just Java 2008 Ferramentas para Recuperação e Mineração de Informações Sumário Contexto, Problemas e Objetivos Estudo de caso Conceitos, técnicas e ferramentas Considerações e Referências Recuperação de Informação Recuperação de Informação Como construir sistemas de “busca” sob medida? Lucene: biblioteca para Recuperação de Informação escrita em Java e código aberto. Possui: indexador e search engine. Outras funcionalidades (web crawler e parsing de páginas HTML) são implementados por outras ferramentas baseadas no Lucene, i.e, Nutch. Mantido pela Apache Software Foundation. Fabrı́cio J. Barth - Just Java 2008 Ferramentas para Recuperação e Mineração de Informações Sumário Contexto, Problemas e Objetivos Estudo de caso Conceitos, técnicas e ferramentas Considerações e Referências Recuperação de Informação Recuperação de Informação Utilizando o Lucene, o desenvolvedor pode alterar a search engine para ter um mecanismo de busca apropriado para o domı́nio da sua aplicação. Exemplos de alterações possı́veis: Expansão da consulta usando uma taxonomia da empresa. Alteração da função de ordenação (PageRank, BM25, Booleano). Reordenação dos resultados utilizando informações do perfil do usuário. Fabrı́cio J. Barth - Just Java 2008 Ferramentas para Recuperação e Mineração de Informações Sumário Contexto, Problemas e Objetivos Estudo de caso Conceitos, técnicas e ferramentas Considerações e Referências Considerações Considerações Todas as fases de um sistema ou componente para tratamento de informações podem ser implementadas com as ferramentas vistas nesta apresentação: Indexação. Recuperação. Mineração (determinação de padrões). Com o RapidMiner e Weka é possı́vel: Reutilizar diversos algoritmos necessários. Prototipar (criar e validar) uma solução rapidamente. Integrar a solução criada em outras aplicações. Com o Lucene é possı́vel: Desenvolver um mecanismo de “busca” sob medida. Fabrı́cio J. Barth - Just Java 2008 Ferramentas para Recuperação e Mineração de Informações Sumário Contexto, Problemas e Objetivos Estudo de caso Conceitos, técnicas e ferramentas Considerações e Referências Referências Referências (1/2) Ian H. Witten, Eibe Frank. Data Mining: Practical Machine Learning Tools and Techniques (Second Edition), 2005. Weka 3: Data Mining Software in Java (http://www.cs.waikato.ac.nz/m̃l/weka/index.html). RapidMiner Community Edition (http://rapid-i.com/). Christopher D. Manning, Prabhakar Raghavan and Hinrich Schütze, Introduction to Information Retrieval, Cambridge University Press. 2008. (http://wwwcsli.stanford.edu/h̃inrich/information-retrieval-book.html). Apache Lucene (http://lucene.apache.org/java/docs/). Fabrı́cio J. Barth - Just Java 2008 Ferramentas para Recuperação e Mineração de Informações Sumário Contexto, Problemas e Objetivos Estudo de caso Conceitos, técnicas e ferramentas Considerações e Referências Referências Referências (2/2) Extra: Processamento de Linguagem Natural GATE, A General Architecture for Text Engineering (http://gate.ac.uk/). UIMA - Unstructured Information Management Architecture (www.research.ibm.com/UIMA/). Fabrı́cio J. Barth - Just Java 2008 Ferramentas para Recuperação e Mineração de Informações