A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Ferramentas de RI Arthur Freitas Ramos (afr) Davi Duarte Pinheiro (ddp) Hugo Neiva de Melo (hnm2) Tullio José de Souza Lucena (tjsl)

Apresentações semelhantes


Apresentação em tema: "Ferramentas de RI Arthur Freitas Ramos (afr) Davi Duarte Pinheiro (ddp) Hugo Neiva de Melo (hnm2) Tullio José de Souza Lucena (tjsl)"— Transcrição da apresentação:

1 Ferramentas de RI Arthur Freitas Ramos (afr) Davi Duarte Pinheiro (ddp) Hugo Neiva de Melo (hnm2) Tullio José de Souza Lucena (tjsl)

2 Motivação •Bases e sistemas de RI são trabalhosas de definir, criar e implementar •Algumas etapas deste processo necessitam ser realizadas por pessoas •Diversas ferramentas foram criadas para abstrair várias etapas deste processo

3 Ferramentas de RI •Xapian •Lucene •Sphinx (acrescentado por Flávia) •Wumpus •GATE

4 •http://xapian.org/http://xapian.org/ •É uma ferramenta de busca Open Source •Biblioteca escrita em C++ ▫Compatível com Perl, Python, PHP, Java, C#, Ruby e Lua •Permite integrar em uma aplicação técnicas avançadas de indexação e busca

5 Características •Portabilidade •Modelo probabilístico •Feedback de relevância •Stemming e sinônimos

6 Características •Suporta documentos grandes ▫> 2 GB •Permite busca e atualização simultâneas •Indexa grande quantidade de documentos ▫html, php, pdf, openOffice, Word, Excel •Indexa dados de qualquer SQL ▫Oracle, MySQL, SQLite, etc.

7 Modelo probabilístico •Utiliza como esquema o “Best Match (BM)” 25 •Constantes podem ser alteradas •Possui mecanismos para impedir que arquivos muito pequenos ganhem pesos muito altos

8 Colapsos •Permite eliminar documentos repetidos •Realizado durante o processo de “match” •“Collapse key” •Restrição de número de “matches” por fonte

9 PostingSource •Alimenta dados para o matcher do Xapian •Pode ser usado nas seguintes formas •Filtro •Aumento dos pesos •Forma alternativa de ranqueamento

10 Indexação •Todas as palavras indexadas são letras minúsculas •As palavras são indexadas com informação de posição •Stemmings indexados sem posição •Prefixo ‘Z’

11 Buscas •AND, OR, NOT, XOR •Expressões com parênteses •‘+’ e ‘-’ •NEAR •ADJ

12 Buscas •Busca de frases •Busca com campo probabilístico •Nomes próprios •Região de buscas •Sinônimos e Wildcards

13 Ordenação •Relevância •Valor •Chave gerada

14 Preparação dos textos •Usa o algoritmo de Stemming “Snowball” •Suporte a várias linguagens ▫Inglês, português, alemão, espanhol, francês, etc.

15 Suporte a sinônimos •Suporte a thesaurus •Criação manual •Integração com o sistema de buscas •Sem suporte a dicionário de palavras compostas

16 Outras funcionalidades •Faceting •Correção de escrita •Serialização de consultas e documentos

17 Lucene

18 O que é o Lucene? “O Apache Lucene é uma tecnologia adequada para quase todas as aplicações que necessitam de buscas em textos, especialmente as multiplataformas.” •http://lucene.apache.org

19 Disponibilidade •Gratuita •Open Source ▫Apache License, versão 2.0 •Escrita em Java •Implementações em outras linguagens ▫C++,.Net, Python, etc.

20 Características •Rápida indexação (95 GB / h) •Pouca memória RAM requerida ( 1 MB) •Atualização e buscas feitas simultaneamente •Fácil distribuição

21 Funcionalidades •Ranqueamento das buscas •Buscas flexíveis •Buscas por campos •Ordenação

22 Ranqueamento das buscas •Faz uma filtragem nos documentos •Classifica por relevância ▫Frequência dos termos ▫Termos específicos de um documento

23 Buscas flexíveis •Frases ▫“WEB Mining” •WildCards ▫Min* •Intervalos ▫[ ] •Expressões booleanas ▫WEB OR Mining

24 Buscas por campos •Buscas feitas por campos específicos do documento ▫Exemplo Class: “WEB Mining” AND Teacher: “Flavia”

25 Ordenação •Ordenação por campos do documento ▫Preço, tamanho, assunto, etc. •Por padrão, os documentos são ordenados por relevância

26 Arquitetura •Documentos •Índices •Indexação •Buscas

27 Documentos •Documentos representam qualquer texto ▫Texto Word, metadados de músicas, Website, etc. •Faz uma representação similar a um documento XML

28 Índices •Calcula a frequência de cada termo no documento •Cada termo mapeia os documentos em que aparece •Faz a tabela de TF-IDF

29 Indexação •Operação feita ao adicionar um novo documento •Os documentos são analisados para achar os seus termos •Possui um analisador robusto para textos em inglês •Dá suporte à criação de novos analisadores •Possui algumas implementações para o stemming

30 Buscas 1.Realiza o parsing do texto do usuário 2.Utiliza o mesmo analisador da indexação 3.Procura os documentos com os termos 4.Filtra os resultados por relevância 5.Ordena os documentos 6.Retorna a lista ao usuário

31 •http://sphinxsearch.com/http://sphinxsearch.com/ •Sphinx é uma ferramenta de busca por texto open source escrita em C++ que funciona em Linux, Windows, MacOS, Solaris, FreeBSD, e alguns outros sistemas •Sphinx permite que você faça indexação e buscas de arquivos armazenados em servidores SQL e NoSQL •Permite adicionar a uma aplicação técnicas de indexação e busca

32 Performance e Escalabilidade •Sphinx organiza em índices cerca de 60mb/seg de dados em cada servidor dedicado para indexação •Realiza buscas testes através de milhões de documentos com cerca de 500 queries/seg para garantir velocidade de entrega de resultados •Possui cerca de 25 bilhões de documentos indexados em seus servidores e recebe hoje mais de 300 milhões de search queries/dia

33 O que apresenta? •Índices não textuais – número arbitrários (ID do produto, nome da empresa, etc.) que são armazenados no índice para facilitação de recuperação de documentos •Suporte a busca com termos complexos – operadores booleanos, frases, termos sinônimos, substrings •Ranking por relevância

34 O que apresenta? •Processamento de texto suporta stopwords, stemming, tokenizing •Pode ser utilizado apenas como uma ferramenta de armazenamento •Exemplos de uso: Craigslist.org, Tradebit.com, vBulletin.com

35 •http://www.wumpus-search.org/http://www.wumpus-search.org/ •Engenho de busca Open Source •Implementado em C++ •Disponível para Linux

36 Wumpus •Escalável •Indexa centenas de GB de documentos •Engenho de busca e serviço de indexação de arquivos •Suporte a vários usuários •Acesso local (terminal) e remoto (interface web)

37 Wumpus local

38 Wumpus remoto

39 Wumpus •Indexa documentos em vários formatos ▫Txt, doc, ppt, pdf, xml, etc. •Permite buscas com vários parâmetros de filtro •Permite configurar o número de documentos retornados •Definição de macros •Suporte a TREC

40 Wumpus remoto busca

41 Base de dados •Base de índices invertidos •Modelo probabilístico •Permite uso do modelo espaço vetorial •Usa o Best Match (Okapi BM) 25 •Permite modificação dos parâmetros de configuração e pesos

42 Consultas •Busca por termos ou frases •Busca utilizando a linguagem GCL (Generalized Concordance Lists) •Suporta vários operadores ▫AND, OR, etc. •Stemming (Porter)

43 GCL •Linguagem principal •Consultas mais complexas •Pode ser usada junto com termos e frases •Usada para definir os parâmetros do BM25 •Define outros atributos opcionais

44 Consultas •Prefixos •Definição de atributos relevantes •Menor substring ▫Evita repetição de resultados •Stemming e prefixos podem ser aplicados a termos, individualmente

45 Relevância dos documentos •Suporte a várias métricas ▫Best Match 25, espaço vetorial, qap •Suporte a feedback de relevância ▫Okapi e KLD ▫Lento

46 Divergência de Kullback-Leibler •Também chamada de ganho de informação •Cria um modelo de linguagem para query e documento •A “distância” entre estes modelos é utilizada para ranquear os documentos

47 The Handyman •Ferramenta de suporte ao Wumpus •Permite extrair e alterar diversas informações sobre a base •Evita uso do Wumpus para modificar a base ▫Algumas funcionalidades não existem •Cria um vocabulário para uma base específica

48 •http://gate.ac.uk/http://gate.ac.uk/ •Open Source •Bastante robusta em atividades de processamento de textos •O “Lucene” da extração de informação •O “Eclipse” do processamento de linguagem natural

49 GATE •Tem um escopo muito grande ▫Processamento de texto ▫Análise de sentimentos ▫Mineração da web ▫Anotações semânticas ▫Extração de informação ▫Processamento de linguagem

50 Funcionalidades •Ferramentas de processamento de texto •Ferramentas de recuperação de informação •Sistema de extração de informação (ANNIE) •Anotação semântica •Análise de sentimentos

51 Funcionalidades •JAPE •Benchmark •Extração de instancias de treinamento de aprendizagem de máquina •Integração com implementações de aprendizagem de máquina (Weka)

52 Módulos •GATE Developer •GATE Cloud •GATE Teamware •GATE Mimir •Módulo de análise de sentimentos •GATE Embedded •ANNIE •JAPE

53 Anotações •São comentários, explanações, informação associada a um documento ou a parte dele •São considerados metadados •Anotação != Tags •Melhora buscas

54 Developer •GUI do GATE •Gerenciamento do corpo de documentos •Criação manual de anotações •Gerenciamento das anotações, podendo associar tipos

55 Developer •Criação de conjuntos formados por grupos de anotações •Permite procurar e editar anotações automaticamente •Permite utilização de recursos para criação e manipulação automática de anotações, como os recursos do módulo de extração de informação (ANNIE)

56 Developer

57

58

59 GATE Cloud •Funciona como uma caixa preta •Cloud computing •Necessidade de alugar os servidores •Funcionalidades ▫Mineração de opinião, web e texto ▫Indexação e buscas (booleana, estruturada ou texto completo) ▫Extração de informação e anotação semântica ▫Análise de sentimentos

60 GATE Cloud

61 GATE Teamware •Plataforma WEB •Gerenciamento de anotações •Colaborativo

62 GATE Teamware •Carregamento de corpus •Criação de templates •Inicia projetos a partir de templates •Ferramentas de gerenciamento •Relatórios do status do projeto, estatísticas •Permite anotações automáticas

63 Mimir •Interface Web •É um gerenciador de índices e repositório •Indexa documentos GATE •Indexa o texto de documentos e as anotações semânticas •Pode salvar metadados dos documentos •Permite consultas na base de índices

64 Mimir •Permite consultas complexas (operadores &, |, In, Over, +) •Possui queries especiais, como retornar a quantidade de documentos ou o título dos documentos (metadados) •Base de conhecimento •Possui diversos algoritmos já implementados para ordenar os documentos (pode usar TF-IDF, etc.)

65 Mimir

66 Análise de sentimentos •Usa aprendizagem supervisionado de máquina •Utiliza para o treinamento documentos manualmente anotados, técnicas de estatística e mapeamento de palavras positivas e negativas •Opiniões sensíveis ao usuário •Elemento temporal

67 GATE Embedded •Biblioteca implementada em Java •Conjunto de arquivos JARs •Usado nativamente em JAVA •Voltado especialmente para programadores

68 JAPE •Versão do CPSL •ER em anotações •LHS e RHS

69 ANNIE •Utiliza JAPE •Algumas funcionalidades: ▫Reset documentos ▫Tokens ▫Gazetter

70 ANNIE

71 Dúvidas ?

72 Referências •http://xapian.org/http://xapian.org/ •http://lucene.apache.org/http://lucene.apache.org/ •http://www.wumpus-search.org/http://www.wumpus-search.org/ •http://gate.ac.uk/http://gate.ac.uk/ •http://en.wikipedia.org/wiki/Kullback%E2%80 %93Leibler_divergencehttp://en.wikipedia.org/wiki/Kullback%E2%80 %93Leibler_divergence


Carregar ppt "Ferramentas de RI Arthur Freitas Ramos (afr) Davi Duarte Pinheiro (ddp) Hugo Neiva de Melo (hnm2) Tullio José de Souza Lucena (tjsl)"

Apresentações semelhantes


Anúncios Google