1 / 20

Recuperação de Informação usando o Apache Lucene

Recuperação de Informação usando o Apache Lucene. Henrique Borges – Mestrando em Inteligência Artificial. Quem sou eu?. Henrique Borges Formado pelo Cin Mestrando com Flávia Barros em IA Sócio da FAST Aplicativos e Soluções Tecnológicas

elpida
Download Presentation

Recuperação de Informação usando o Apache Lucene

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Recuperação de Informação usando o Apache Lucene Henrique Borges – Mestrando em Inteligência Artificial

  2. Quem sou eu? • Henrique Borges • Formado pelo Cin • Mestrando com Flávia Barros em IA • Sócio da FAST Aplicativos e Soluções Tecnológicas • Já construí diversos crawlers e aplicações de busca, recuperação de informação e processamento de linguagem natural • Tanto academicamente quanto profissionalmente • Estágio docência • Estarei dando algumas aulas e fazendo acompanhamentos • Dúvidas no projeto da cadeira, vocês também vão poder falar comigo!

  3. Hoje, iremos aprender a fazer o: B ...e aplicações similares

  4. Como? • Fácil • Incluir um “.jar” que eu vou passar • Buscador boogle = new Buscador(); • Pronto! • Brincadeira... Mas nem tanto! • A API que vamos usar faz quase tudo: • Indexação e criação da base de dados • Busca • Ordenamento dos resultados • E de graça!

  5. Apache Lucene • Uma das mais conhecidas engines para busca de texto • Eficiente • Em Java • Open-source (Apache Software License) • Engine por trás da busca de: E mais de 274 sites, softwares e aplicações Fonte: http://wiki.apache.org/lucene-java/PoweredBy

  6. Lucene: Conceitos básicos As classes Document e Term

  7. Lucene – Conceitos básicos • Indexdir • Diretório onde ficam armazenados os arquivos que vão compor a base de documentos • Incluem tanto os dados quanto os índices invertidos • Document • Entidade básica a ser indexada • No caso do Boogle, um site • O conjunto de documentos formam a base de dados

  8. Lucene – Conceitos básicos • Field • “Atributo” de um documento • No caso do Boogle, um exemplo é o HTML do site • Podem ser: • Analysed (ex: o conteúdo do site) • Not_analysed (ex: URL) • Notindexed (ex: DownloadDate) • E também: • Stored: Recuperados a partir do documento, podem ser lidos depois • Notstored: Usados apenas na hora de criar o índice

  9. Lucene – Conceitos básicos

  10. Lucene: Criando um novo índice As classes IndexWriter e Analyser

  11. Criando um índice

  12. Lucene: Fazendo uma busca As classes IndexSearcher, QueryParser e TopDocs

  13. Fazendo uma busca

  14. Usando o Lucene Passo-a-passo da criação de uma aplicação de RI

  15. Criando uma aplicação de RI • Obter dados • Crawlers, arquivos texto, bases da internet, etc. • Criar e salvar a base • Usar IndexWriter e Document

  16. Criando uma aplicação de RI • Receber a busca do usuário • Formulários, botões, listas • Gerar e executar query • Usar QueryParser ou criar instancias da classe Query • TermQuery • BooleanQuery • Usar IndexSearcher • Mostrar resultados • Ler os atributos dos documentos retornados • Escrever/desenhar na tela

  17. Conclusões Resumindo a apresentação

  18. Conclusões • Vimos o Lucene e sua API: • Para que serve • Conceitos básicos • Como criar um índice • Como fazer uma busca

  19. Conclusões • Criar aplicações de RI com o Lucene é muito simples: • Obter dados • Criar base • Receber busca do usuário • Gerar query • Mostrar resultados • Dúvidas?

  20. Abrir demonstração no Eclipse... E-mail para contato: hbas@cin.ufpe.br Obrigado!

More Related