Baixe o app para aproveitar ainda mais
Prévia do material em texto
Análise da Aplicação de Sistemas de Recuperação de Informação Usando Android numa Base Bíblica Jomara Mota Bindá 1 , Marcus Antônio G. Brandt 2 , Márcio Palheta Piedade 1 1 Centro de Pós-Graduação e Extensão FUCAPI (CPGE) – Av. Gov. Danilo de Mattos Areosa, 381 – Distrito Industrial CEP: 69075-351 – Manaus - AM – Brasil 2 Engenharia de Telecomunicações – Centro de Ensino Superior FUCAPI (CESF) – Av. Gov. Danilo de Mattos Areosa, 381 – Distrito Industrial CEP: 69075-351 – Manaus - AM – Brasil jomarabinda@gmail.com, marcusbrandt@gmail.com, marciopalheta@gmail.com Abstract. Information Retrieval is a computation area that has techniques to allow a fast access to a large amount of information. Finding the information mainly depends on the efficient use of search engines. This work proposes the application of an information retrieval algorithm on the Android platform, using the Lucene API as search engine and using as data base the documents related to the Bible texts. At the end, the analysis was made of the retrieval information strategy suggested, through applying the accuracy and the recall metrics. Resumo. Recuperação de Informação é uma área da computação que possui técnicas para permitir o acesso rápido a uma grande quantidade de informações. Encontrar a informação depende, principalmente, do uso eficiente das ferramentas de busca. Este trabalho propõe a aplicação do algoritmo de recuperação da informação na plataforma Android, utilizando a API Lucene como ferramenta de busca e tendo como base de dados os documentos referentes aos textos da Bíblia. Ao fim, foi feita a análise da estratégia de recuperação da informação proposta, através da aplicação de métricas de precisão e revocação. Introdução Presenciamos uma época onde ter informação é deter poder social e econômico. Entretanto, ao contrário do que acontecia há alguns anos atrás, o atual desafio não está em encontrar informações, uma vez que existe um número grandioso de conteúdo na web, o desafio é encontrar um conteúdo que seja de fato útil e relevante [Joca 2013]. A fim de facilitar o processo de busca, tornou-se comum o uso de ferramentas para recuperação de informações que vasculham, em milhões de repositórios de dados, a informação solicitada pelo usuário e este, mediante consulta nas interfaces disponíveis, seleciona aquela considerada mais condizente ou relevante entre as fontes apontadas. [Feitosa 2008] Com o propósito de analisar a estratégia de recuperação da informação numa interface móvel, este trabalho desenvolveu um protótipo funcional que executa a busca Manaus, 25 a 27 de abril de 2013 1 ISSN 2238-5096 (CDR) Anais do Encontro Regional de Computa€o e Sistemas de Informa€o dos dados utilizando a plataforma Android. Os usuários da aplicação enviam consultas ao protótipo, que retorna como resposta os textos bíblicos mais relevantes a cada consulta submetida. Analisamos a aplicação através do uso das métricas de avaliação de precisão e revocação baseada numa lista de consulta a ser executada na aplicação, a fim de verificar o grau de relevância dos resultados gerados. Nas seções a seguir, apresentamos os trabalhos relacionados ao tema proposto, a metodologia seguida, conceitos e fundamentos de Recuperação da Informação, o processo de desenvolvimento da aplicação, a avaliação da estratégia utilizada, seguida pelas considerações finais deste trabalho. No próximo tópico, temos os trabalhos relacionados ao artigo. Trabalhos relacionados No estudo da tese de [Bonfim 2006], o autor apresentou a estratégia de recuperação de informação, utilizando os modelos probabilístico e probabilístico exponencial, que foram combinados com recursos do modelo vetorial. Foram apresentados resultados de experimentos que comprovam que a combinação dos modelos probabilísticos com o modelo vetorial possibilita uma recuperação mais eficaz, trazendo como resposta documentos relevantes que não seriam recuperados utilizando somente um dos modelos. No modelo probabilístico estendido observou-se que a média percentual de precisão foi de 20,38%, e a revocação foi de 39,65%, enquanto no modelo probabilístico observou- se que a média percentual de precisão foi de 17,22%, e a revocação foi de 33,33%. Comparando os dois modelos, concluiu-se que o modelo probabilístico estendido leva vantagem em relação ao modelo probabilístico. No artigo de [Pérez-Iglesias 2009] é descrita a implementação dos algoritmos BM25 e BM25F usando o Lucene Java Framework. Ambos os modelos têm se destacado pelo seu desempenho e são considerados como estado-da-arte na comunidade de RI. O objetivo do artigo é aplicar a biblioteca Lucene nestes algoritmos a fim de avaliar o desempenho da funcionalidade de ranking deste. Até onde pudemos observar, nenhum trabalho anterior estudou como utilizar o Sistema de Recuperação da Informação num dispositivo móvel utilizando Android e tendo como base de dados a Bíblia. Neste sentido, nosso trabalho é distinto de todos os observados na literatura. Na próxima seção será apresentada a metodologia utilizada neste trabalho. Metodologia Nesta seção, apresentamos os passos realizados para o desenvolvimento deste projeto: 1. Revisão bibliográfica da literatura, onde foi feita pesquisa de trabalhos similares ao nosso com a aplicação do Sistema de Recuperação da Informação em base de dados; 2. A segunda etapa foi responsável pela obtenção da base de dados onde definimos que todos os livros da Bíblia seriam usados como documentos da estratégia de RI apresentada. Definimos, ainda, utilizar a técnica de indexação de índice invertido que é a técnica utilizada pela API Lucene para organização de Manaus, 25 a 27 de abril de 2013 2 ISSN 2238-5096 (CDR) Anais do Encontro Regional de Computa€o e Sistemas de Informa€o documentos e a função de similaridade padrão da API, que aplica os modelos vetorial e booleano de recuperação da informação para gerar respostas às consultas realizadas; 3. Na terceira etapa ocorreu o desenvolvimento de um protótipo funcional na plataforma Android, no qual os usuários enviam consultas à aplicação e avaliam as coleções de resposta gerada, a fim de gerar massa de dados para avaliação dos resultados; 4. E por fim, utilizamos as métricas de precisão e revocação para avaliação da qualidade das respostas geradas pela estratégia proposta. A seguir, descreveremos os principais conceitos de Recuperação da Informação e detalhamos os tópicos apresentados neste capítulo. Modelos de Recuperação de Informação O termo Recuperação de Informação (RI) foi criado por [C. N. Mooers 1951] que definiu da seguinte maneira: “... Recuperação de Informação é o nome do processo onde um possível usuário de informação pode converter a sua necessidade de informação em uma lista real de citações de documentos armazenados que contenham informações úteis a ele...”. Segundo [Baeza-Yates 1999], um modelo de recuperação de informação é uma quádrupla D, Q, F, R(qi,dj)i, onde: D é um conjunto de representações lógicas dos documentos em uma coleção. Q é um conjunto de representações lógicas (consultas) das necessidades de informação dos usuários. F é um arcabouço para a modelagem dos documentos, consultas e suas relações. R(qi,dj) uma função que associa um número real com uma consulta qi2Q e uma representação de documento dj 2 D. Esta função define uma ordenação entre os documentos com respeito à consulta qi. Com basenestas entidades, a estrutura do modelo utilizado na recuperação pode ser definida. Em seguida, apresentamos os modelos clássicos de Recuperação da Informação. a) Modelo Booleano De acordo com [Souza 2006], o Modelo Booleano é baseado na teoria da álgebra booleana. É uma solução simples e elegante, baseada na teoria dos conjuntos. O modelo booleano considera uma consulta como uma expressão booleana convencional, que liga seus termos através de conectivos lógicos AND, OR e NOT. No modelo booleano um documento é considerado relevante ou não relevante a uma consulta, não existe resultado parcial e não há informação que permita a ordenação do resultado da consulta. Desta maneira, o modelo booleano é muito mais utilizado para recuperação de dados do que para recuperação de informação [Manning 2008 e Baeza- Yates 1999]. Manaus, 25 a 27 de abril de 2013 3 ISSN 2238-5096 (CDR) Anais do Encontro Regional de Computa€o e Sistemas de Informa€o b) Modelo Vetorial Segundo [Souza 2006] o Modelo Vetorial é o algoritmo base da grande maioria dos Sistemas de Recuperação da Informação. Neste modelo, os documentos são representados como vetores em um espaço n-dimensional, em que n é a totalidade de palavras-chave de todos os documentos armazenados no sistema. Como não é um algoritmo dualista, é possível construir um ranking baseando-se nos graus de relevância dos documentos recuperados. c) Modelo Probabilístico No Modelo Probabilístico, ainda de acordo com [Souza 2006], supõe-se que, para cada consulta ao sistema, há um conjunto ideal de documentos que a satisfaça completamente. Por meio de tentativa inicial com uma coleção de documentos, para a qual se podem usar técnicas de outros modelos em conjunto, como o vetorial, e do retorno do usuário em sucessivas interações, é possível uma aproximação do conjunto ideal. Este modelo dá grande importância às respostas do usuário como forma de aprimoramento contínuo das buscas. No protótipo apresentado neste artigo, foi utilizado o algoritmo padrão da biblioteca de busca escolhida que combina o modelo booleano e o modelo vetorial de recuperação da informação para obter resultados precisos. A biblioteca padrão escolhida foi a API Java Lucene, que será apresentada na próxima seção. A seguir, detalhamos a estrutura e organização da implementação da aplicação proposta neste artigo. Implementação da Aplicação Nesta seção descrevemos a estrutura e organização dos principais componentes utilizados para o desenvolvimento desta pesquisa. Base de Dados A base de dados utilizada no projeto foi coletada através da internet. O processo de coleta iniciou-se com o acesso a um site de Bíblia on-line [Biblia 2013], disponível ao público. Após o acesso, foi feita a codificação de um programa em Java que fizesse o parse das informações referentes à Bíblia, utilizando a biblioteca Jsoup.[Jsoup 2013] O Jsoup é uma biblioteca Java para trabalhar com HTML, que fornece uma API para a extração e manipulação de dados, usando os métodos Document Object Model (DOM), Cascade Style Sheet (CSS) e Jquery-like. [Jsoup 2013] A partir do acesso à massa de dados bíblicos, utilizamos 3 versões da Bíblia disponíveis no site, que são as seguintes: Almeida Corrigida e Revisada Fiel, Almeida Revisada Imprensa Bíblica, Nova Versão Internacional. Ao final do processo de obtenção da base de dados, verificamos a existência de (1) 93.304 documentos, onde cada documento é representado por um versículo bíblico, (2) 57.731 palavras distintas, que determinam o número de dimensões do espaço vetorial do modelo e (3) cada documento possui, em média, 22,33 palavras. Manaus, 25 a 27 de abril de 2013 4 ISSN 2238-5096 (CDR) Anais do Encontro Regional de Computa€o e Sistemas de Informa€o A seguir, descrevemos as ferramentas utilizadas para indexação da base e processamento das consultas. API Java Lucene A API Java Lucene é uma biblioteca de mecanismo de busca, que oferece um conjunto de métodos para indexação e busca textual em grandes massas de dados [Lucene 2013]. Neste trabalho utilizamos Java Lucene por oferecer recursos como: (1) suporte a vários tipos de consultas, como FuzzyQuery, BooleanQuery, QueryParser que foi a consulta utilizada no aplicativo, além de permitir a busca e a indexação simultânea dos documentos; (2) ferramenta para calcular o grau de relevância de cada documento, em relação a uma determinada consulta; (3) retorno da lista de documentos relevantes, ordenada por grau de similaridade, onde o mais similar aparece no topo da lista, o que auxilia ao processo de avaliação do modelo a partir de métricas de ranking. Neste trabalho, encontramos limitação no uso da versão Java Lucene 4.2.1 por possuir algumas bibliotecas incompatíveis com o Android, portanto utilizamos a versão Java Lucene 3.2.6 para indexação da base de documentos e no processo de busca por documentos, utilizando a função de similaridade baseada no modelo vetorial e booleano. A seguir, descrevemos a arquitetura do protótipo funcional do projeto. Arquitetura do projeto Nesta seção, descrevemos os componentes e fases do projeto. Na primeira parte do trabalho, coletamos a base de dados a partir do site Bíblia on-line. [Bíblia 2013] A partir da coleta, realizamos um processo de analise dos dados utilizando um analisador que atua como um filtro e verifica os documentos que podem ser indexados ou não. Após a análise do texto, os dados são indexados. A indexação processa os dados originais, gerando uma estrutura de dados inter-relacionada eficiente para a pesquisa baseada em palavras-chave. [Lucene 2013] Os documentos recebem tokens e esses tokens são incluídos como termos no índice. No item de Processo de Indexação serão expostos mais detalhes desta fase do projeto. Selecionamos 5 usuários para avaliação do nosso modelo de busca. O critério para escolha dos usuários foi que estes possuíssem conhecimento e experiência no estudo de textos bíblicos. Cada usuário realizou no mínimo 2 consultas, informando na tela da aplicação Android textos de seu interesse. Como resposta, o sistema devolvia uma lista de 50 versículos mais relevantes a cada consulta, onde o primeiro elemento é o mais relevante. No item de Processo de Consulta será detalhada a busca feita pelo aplicativo. A Figura 1 demonstra a arquitetura geral do nosso projeto. Manaus, 25 a 27 de abril de 2013 5 ISSN 2238-5096 (CDR) Anais do Encontro Regional de Computa€o e Sistemas de Informa€o Processo de Indexação A Indexação é um processo de converter os dados de texto em um formato que facilita a procura rápida. [Lucene 2013] A biblioteca Lucene foi usada para armazenar os dados de entrada em uma estrutura de dados chamada de índice invertido, que é armazenado no sistema de arquivos ou na memória, como um conjunto de arquivos de índice. O índice invertido permite que os usuários executem procuras rápidas utilizando palavras-chave e localizem os documentos relevantes a uma determinada consulta. Porém, antes que os dados do texto sejam incluídos no índice, eles são processados por um analisador. Neste trabalho, utilizamos o analisador Standard Analyzer [Lucene 2013], nativo do Lucene. Este analisador insere tokens no texto com base em uma gramática sofisticada e remove as palavras comuns.Neste processo, as palavras de cada documento são convertidas em tokens e esses tokens são incluídos como termos no índice da biblioteca Lucene. Durante a indexação, os documentos passam pelas operações de extração das palavras, remoção de palavras comuns, exclusão da pontuação, redução de palavras para o formato de raiz e alteração das palavras para minúsculas. Estas operações são procedimentos comuns na recuperação da informação, a fim de que o resultado da consulta seja o mais eficiente possível. [Lucene 2013] Processo de Consultas A procura é o processo de buscar palavras no índice e de localizar os documentos que contêm essas palavras [Lucene 2013]. Figura 1. Arquitetura do Projeto Manaus, 25 a 27 de abril de 2013 6 ISSN 2238-5096 (CDR) Anais do Encontro Regional de Computa€o e Sistemas de Informa€o A classe de busca é uma classe base abstrata que possui vários métodos de procura sobrecarregada. O IndexSearcher é uma subclasse que permite procurar índices armazenados em um determinado diretório. O método de busca retorna uma coleta ordenada de documentos classificados pelas pontuações computadas. [Lucene 2013] O Lucene fornece tipos de implementação de consulta concreta. A consulta utilizada neste aplicativo foi o QueryParser. O QueryParser é usado para analisar expressões de consultas inseridas pelo usuário, que é transmitido para o método de procura do IndexSearcher. [Lucene 2013] Protótipo Funcional O protótipo apresentado neste trabalho foi desenvolvido em Android, por ser uma plataforma popular para desenvolvimento de aplicativos móveis. O Android possui interfaces de programação de aplicativo (APIs), que vêm com o seu Software Development Kit (SDK) e possui recursos completos de interface e bibliotecas de serviços como o SQLite.[Android 2013] Para este protótipo utilizamos a versão 4.2.2 do Android conhecida como Jelly Beans, por ser a versão mais recente disponível, quando do desenvolvimento deste trabalho. A composição da tela foi baseada em componentes de interface: EditText, ListView e TextView. O EditText é o campo em que o usuário digita a palavra-chave e o ListView é o componente utilizado para mostrar o resultado da busca. O protótipo também faz buscas utilizando o comando de voz, onde o usuário fala o que deseja consultar e o texto aparece no campo de busca. Na figura 2, apresentamos a tela principal da aplicação, exibindo o resultado para três consultas distintas. Na primeira imagem, temos a tela onde o usuário digita a palavra-chave, na segunda temos o usuário usando o comando de voz para fazer a busca e na terceira imagem temos a lista com o resultado da busca. Figura 2. (1) Tela de Busca usando teclado; (2) Tela de Busca usando comando de voz; (3) Resultado da Busca Manaus, 25 a 27 de abril de 2013 7 ISSN 2238-5096 (CDR) Anais do Encontro Regional de Computa€o e Sistemas de Informa€o Na próxima seção, apresentamos o processo de avaliação da estratégia de Recuperação da Informação aplicada e os resultados alcançados. Avaliação dos Resultados Nesta fase, a avaliação foi feita com a contribuição de um bispo formado em teologia e especialista em aconselhamento, que ajudou na composição da lista de consultas utilizada. As métricas utilizadas foram a de precisão e revocação, como citado anteriormente, por serem métricas comumente utilizadas para avaliação de rankings de busca. O processo de avaliação da estratégia seguiu os seguintes passos: 1. Criação da lista de consultas com as palavras-chave: a criação da lista iniciou-se com a escolha de 11 palavras - chave que são bastante solicitadas nas buscas segundo o especialista consultado; 2. Identificação dos documentos mais relevantes: seguindo a indicação do especialista e verificando os versículos sugeridos em uma chave bíblica, foram identificados os documentos relevantes e foi atribuído um peso de 1 a 5, onde 5 indica o documento mais relevante e 1 indica o documento menos relevante a uma dada consulta; 3. Execução da busca no Lucene: utilizando as palavras-chave da lista de consulta pré-definidas, o algoritmo foi executado e obteve-se a lista de resultado por ele gerado; 4. Análise dos resultados: o resultado da busca do Lucene foi comparado com os documentos relevantes da lista de consulta e assim observou-se a precisão do algoritmo de 0,052, com a revocação de 0,263. A lista de consulta, definida no primeiro passo citado acima, possui as seguintes palavras – chaves, com os seguintes pesos segundo a tabela 1: Tabela 1. Lista de Consulta Antigo Testamento Novo Testamento Palavras- chave Peso 1 Peso 2 Peso 3 Peso 4 Peso 5 Peso 1 Peso 2 Peso 3 Peso 4 Peso 5 Alegria Dt. 28:47 Sl. 16:11 Pv. 10:28 Is. 61:3 Sf. 3:17 Mt. 13:20 Jo. 16:24 2 Co. 9:7 Hb. 12:11 3 Jo. 1:4 Amor 2 Sm. 1:26 Pv. 27:5 Ct. 8:7 Jr. 31:3 Os. 12:6 Mt. 24:12 Rm. 5:8 1 Co. 13:4 Ef. 5:2 Ap. 2:4 Anjo Gn. 22:15 Ex. 23:20 Sl. 103:20 Dn. 3:28 Zc.1:9 Mt. 1:20 Lc. 22:43 Rm. 8:38 Gl. 1:8 Ap. 22:16 Esperança 2 Sm. 23:5 Jó 5:16 Sl. 39:7 Pv. 10:28 Ez. 37:11 At. 2:26 1 Co. 9:10 Ef. 2:12 Tt. 2:13 1 Pe. 1:21 Espírito Santo Gn. 1:2 Is. 11:2 Ez. 37:14 Mq. 3:8 Ag. 2:5 Mt. 1:18 Jo. 1:32 At. 2:4 Fp.3:3 Jd. 1:20 Família Gn. 12:3 Nm. 26:6 1 Sm. 18:18 Sl. 68:6 Am. 3:2 Gl.6:10 Ef. 2:19 Ef. 3:15 - - Fé Hc. 2:4 - - - - Mt. 6:30 Lc. 8:48 Rm. 1:17 1 Ts. 1:3 Tg. 2:18 Graça Gn. 6:8 1 Cr. 16:8 Sl.13:5 Sl. 147:7 Zc. 4:7 Mt. 10:8 At. 7:10 2 Co. 13:13 2 Ts. 1:3 2 Pe. 3:18 Paz Lv. 26:6 1 Rs. 2:13 Ec. 3:8 Is. 32:7 Na. 1:15 Mt. 10:34 Rm. 3:17 1 Co. 7:15 Ef. 1:2 Fp. 4:7 Perdão Sl. 130:4 Dn. 9:9 - - - Mc. 3:29 Mc. 4:12 Lc. 3:3 At. 2:38 - Salvação Gn. 49:18 Sl. 37:39 Jr. 3:23 Jn. 2:9 Ml. 4:2 Lc. 3:6 At. 28:28 1 Ts. 5:8 Hb. 2:3 Ap. 19:1 Manaus, 25 a 27 de abril de 2013 8 ISSN 2238-5096 (CDR) Anais do Encontro Regional de Computa€o e Sistemas de Informa€o E os resultados de cada consulta com sua respectiva Precisão e Revocação, juntamente com a média esta na tabela 2. Tabela 2. Tabela com Precisão e Revocação Consulta Precisão Revocação q1 0,02 0,1 q2 0,1 0,5 q3 0,04 0,2 q4 0,06 0,3 q5 0,04 0,2 q6 0,02 0,1 q7 0,04 0,2 q8 0,06 0,3 q9 0,04 0,2 q10 0,08 0,4 q11 0,08 0,4 Média 0,052 0,26 Considerações Finais No referido trabalho, foi apresentado um protótipo funcional desenvolvido em Android, onde aplicava os algoritmos de recuperação da informação. Foi utilizada a API Lucene e o algoritmo de busca padrão desta API que aplica os conceitos do modelo vetorial e do modelo booleano. Para validação do protótipo, criamos uma lista de consultas, onde foram definidos pesos para cada documento de resposta. Como resultado, pudemos identificar que a abordagem aplicada neste trabalho gerou precisão de 5,2% e revocação 26%, além de apresentar tempo médio de resposta de 50 milissegundos, se mostrando adequada ao uso em dispositivos móveis, com limitações de processamento e armazenamento. Um fator que pode ter influenciado no resultado é que a chave bíblica utilizada na composição da lista de consulta é de versão diferente das existentes na base de dados. Outro fator é que na lista de resultado eram mostradas todas as versões, ou seja, a lista de resultado repetia o mesmo versículo para cada versão. Como trabalhos futuros, avaliaremos o desempenho do modelo, comparando diferentes funções de similaridade, como, por exemplo,o BM25, podendo, assim, identificar a função que melhor se ajusta às características da base de textos bíblicos e ainda aplicar a métrica de precisão Mean Average Precision (MAP). Além disso, pretendemos estudar o comportamento da estratégia proposta, quando aumentarmos o número de consultas e o tamanho médio de cada uma e também pretendemos fazer a verificação do consumo de memória e processamento do aplicativo no dispositivo móvel. Referências Almeida, João Ferreira de. (1970) Chave Bíblica. Edição Revista e Atualizada no Brasil. Sociedade Bíblica do Brasil. Brasília. Manaus, 25 a 27 de abril de 2013 9 ISSN 2238-5096 (CDR) Anais do Encontro Regional de Computa€o e Sistemas de Informa€o Android, Developers. (2013) Develop. Android Developers. http://developer.android.com/develop/index.html, Março. Baeza-Yates, Ricardo and Ribeiro-Neto, Berthier. (1999) “Modern Information Retrieval”. ACM Press. Biblia, On line. (2013) Biblia On line – Almeida, NIV e mais 52 versões. http://www.bibliaonline.com.br/, Março. Bonfim, Marcello Erick. (2006) Recuperação de documentos texto usando um modelo probabilístico estendido. Universidade Metodista de Piracicaba, Piracicaba. C. N. Mooers. (1951) Zatoeodmg applied to mechanical organization of knowledge. American Documentation, 2:20–32. Feitosa, Ailton. (2008) Organização da Informação na Web: das tags à web semântica. Brasília: Thesaurus. Joca. (2013) Produto web, móvel ou social? Guia da StartUp e Gestão de Produtos. http://www.guiadastartup.com.br/produto-web-movel-ou-social/, Fevereiro. Jsoup. (2013) Jsoup: Java HTML Parser. http://jsoup.org/, Março. Lucene, Apache. (2013) Lucene Search Apache. http://www.ibm.com/developerworks/ br/java/library/os-apache-lucenesearch/, Março. Manning, Christopher D., Raghavan, Prabhakar and Schütze , Hinrich. (2008) “An Introduction to Information Retrieval”. Cambridge University Press. Pérez-Iglesias, Joaquín. (2009) Integrating the Probabilistic Model BM25/BM25F into Lucene. LSI,UNED. Salton, G. (1973) “Recent Studies in automatic text analysis and document retrievial ” Journal of the ACM, v. 20, n. 2, p. 258-278. Salton, Gerard and Chris Buckley. (1987) Term weighting approaches in automatic text retrieval. Technical report, Cornell University. Souza, Renato Rocha. (2006) Sistemas de recuperação de informações e mecanismos de busca na web: panorama atual e tendências. Perspect. ciênc. inf., Belo Horizonte, v. 11, n.2, Agosto. Manaus, 25 a 27 de abril de 2013 10 ISSN 2238-5096 (CDR) Anais do Encontro Regional de Computa€o e Sistemas de Informa€o
Compartilhar