Experiências em Armazenamento e Recuperação de Informação Ana Sofia Queimado ci05006 Filipa Ramalho ci05020 Jennifer Gonçalves ci05032 Faculdade de Engenharia da Universidade do Porto Licenciatura em Ciência da Informação Rua Roberto Frias, s/n, 4200-465 Porto, Portugal Dezembro de 2007
Experiências em Armazenamento e Recuperação de Informação Ana Sofia Queimado ci05006 (ci05006@fe.up.pt) Filipa Ramalho ci05020 (ci05020@fe.up.pt) Jennifer Gonçalves ci05032 (ci05032@fe.up.pt) Trabalho realizado no âmbito da disciplina de Armazenamento e Recuperação da Informação I, do 1º semestre, do 3º ano, da Licenciatura em Ciência da Informação da Universidade do Porto, leccionada por Rui Ferreira da Silva. Faculdade de Engenharia da Universidade do Porto Licenciatura em Ciência da Informação Rua Roberto Frias, s/n, 4200-465 Porto, Portugal Dezembro de 2007 Pág.2/38
Resumo Este trabalho, através de experiências, leva à compreensão dos aspectos técnicos, semânticos e pragmáticos do armazenamento e recuperação da Informação e também dá a conhecer as técnicas de organização, pesquisa e processamento de informação textual. 0 tema escolhido foi Cancer, com os sub-temas Cancer treatments e Quality of life in persons with câncer. Numa primeira parte, a fase de pré-processamento, foram realizadas três tarefas:filtragem; remoção de stop-words; e stemização. Depois, seguiu-se ao processo de indexação automática. No fim, são descritas as experiências feitas em armazenamento e recuperação de documentos que foram baseadas nos modelos Booleano e Vectorial. Pág.3/38
Sumário 1. INTRODUÇÃO 5 1.1. ENQUADRAMENTO 5 1.2. MOTIVAÇÃO 5 1.3. OBJECTIVOS 5 1.4. TEMA ESCOLHIDO 5 1.5. ESTRUTURA DO TRABALHO 6 2. EXPERIÊNCIAS EM ARMAZENAMENTO DE INFORMAÇÃO 7 2.1. CARACTERIZAÇÃO DO REPOSITÓRIO 7 2.2. PRÉ-PROCESSAMENTO 7 2.3. INDEXAÇÃO 9 3. EXPERIÊNCIAS EM RECUPERAÇÃO DE INFORMAÇÃO 14 3.1. MODELO BOOLEANO 14 3.1.1. Experiências com Modelo Booleano 15 3.1.2. Resultados e comentários 20 3.2. MODELO VECTORIAL 23 3.2.1. Experiências com Modelo Vectorial 26 3.2.2. Resultados e Comentários 31 4. CONCLUSÃO 33 5. MELHORAMENTOS 35 6. REFERÊNCIAS BIBLIOGRÁFICAS 36 7. APÊNDICES 37 7.1. URLS 37 7.2. TABELA DE URLS DO REPOSITÓRIO 37 7.3. TABELA DE RECUPERAÇÃO EXAUSTIVA DAS PALAVRAS-CHAVE 38 Índice de Ilustrações FIGURA 2 LISTA DE PALAVRAS-CHAVE...10 FIGURA 4 TABELA EVOLUÇÃO DO Nº DE PALAVRAS DIFERENTES DOS DOCUMENTOS...12 FIGURA 5 RECUPERAÇÃO DE DOC.PELO MODELO BOOLEANO- PERGUNTA: CANCER...16 FIGURA 6 TABELA RESULTADOS EXPERIÊNCIAS TEMA 1-MODELO BOOLEANO...21 FIGURA 7 TABELA RESULTADOS EXPERIÊNCIAS TEMA 2 MODELO BOOLEANO...22 FIGURA 8 MODELO VECTORIAL...24 FIGURA 9 MODELO VECTURIAL COM DUAS DIMENSÕES...24 FIGURA 10 FÓRMULA DE SIMILARIADADE...25 FIGURA 11 - RECUPERAÇÃO DE DOC.PELO MODELO VECTORIAL- PERGUNTA: CANCER...27 FIGURA 12 TABELA RESULTADOS TEMA 1 MODELO VECTORIAL...31 FIGURA 13 TABELA RESULTADOS TEMA 2 MODELO VECTORIAL...31 Pág.4/38
1. Introdução 1.1. Enquadramento Este trabalho foi realizado no âmbito da disciplina de Armazenamento e Recuperação da Informação I, da licenciatura de Ciência da Informação. Pretendemos, com este relatório, relatar as nossas experiências em Armazenamento e Recuperação da Informação. 1.2. Motivação As nossas principais motivações para fazer este trabalho prenderam-se essencialmente com o experimentar os objectivos principais da cadeira de maneira a percebermos melhor a matéria leccionada e a perceber na prática os aspectos técnicos e as técnicas de organização, pesquisa e processamento da informação, e também ver como devem ser representados os documentos, as interrogações e as respostas na pesquisa. Assim, a nossa motivação passa por termos a hipótese de ver na prática a matéria leccionada nas aulas teóricas o que se revela muito interessante e até faz crescer uma certa curisodade já que a aplicação foi sendo desenvolvida aos poucos e, portanto só poderiamos experimentar aos poucos. 1.3. Objectivos Este trabalho tem como principal objectivo fazer experiências em Armazenamento e Recuperação de Informação. Assim sendo, pretendemos compreender os aspectos técnicos, semânticos e pragmáticos do armazenamento e recuperação da Informação e também conhecer as técnicas de organização, pesquisa e processamento de informação textual. Por último, temos como objectivo explorar os domínios de aplicação e as questões em aberto no armazenamento e recuperação de Informação. 1.4. Tema escolhido 0 tema escolhido para a elaboração deste trabalho foi Cancer (cancro), com os sub-temas Cancer treatments e Quality of life in persons with câncer Pág.5/38
A escolha deste tema recaiu sobre o facto de, infelizmente, este ser um tema actual e muito presente na nossa sociedade devido á enorme quantidade de casos de cancro existentes nos dias de hoje. Este facto faz com que o tema seja interessante para a cadeira de ARI1 uma vez que existe uma considerável quantidade de informação sobre o tema e, portanto, poderíamos experimentar se seria possível fazer uma boa recuperação de informação consoante a relevância dos documentos do repositório. 1.5. Estrutura do Trabalho Este relatório é constituído por cinco partes distintas. A primeira parte é a introdução na qual fazemos um enquadramento do trabalho e falamos da motivação, objectivos e tema escolhido. Numa segunda parte, Experiências em Armazenamento de Documentos, fazemos a caracterização do nosso repositório e descrevemos as experiências com as operações de pré-processamento e indexação. Na terceira parte, Experiências em Recuperação de Documentos, fazemos uma resumida explicação do Modelo Booleano e do Modelo Vectorial e apresentamos as experiencias feitas em cada um deles. A quarta e quinta parte são a conclusão e o apêndice respectivamente. Pág.6/38
2. Experiências em Armazenamento de Informação 2.1. Caracterização do Repositório O nosso repositório é constituído por dois temas que já enunciamos anteriormente. Após a entrada no repositório é apresentada uma sucinta descrição de cada tema. Ambos derivam do tema principal Cancer.O tema 1 é "Quality of life in persons with cancer" e com ele pretendemos adquirir um conjunto de documentos que aborde directamente a qualidade de Vida de doentes com cancro. Já com tema 2, "Cancer Treatments pretendemos adquirir um conjunto de documentos que aborde directamente os diferentes tratamentos para o cancro. Contudo tivemos alguns problemas na recolha dos links uma vez que, após termos realizado a recolha, na passagem para o repositório deparamo-nos com a situação de muitos links estarem indisponíveis, tendo que fazer uma nova pesquisa. Tivemos também alguma dificuldade em escolher os artigos irrelevantes visto que nos foi díficil distinguir os relevantes dos irrelevantes, uma vez que os irrelevantes para um tema poderiam ser relevantes para o outro tema. O repositório mostra uma tabela que identifica o conteúdo do repositório em si, sendo constituído por 51 documentos. Destes 51 documentos 19 são relevantes para o sub tema 1, 20 são relevantes para o sub tema 2, apenas dois são relevantes para ambos os temas e 10 são irrelevantes (para ambos os temas). Ao longo do trabalho vamos observando que, através das diferentes partes do pré-processamento, o tamanho dos documentos vai diminuindo. Apresentamos de seguida uma estimativa do tamanho do conjunto dos documentos no seu original. Para o tema 1 tem o tamanho total de: 408.555 bytes; e para o tema 2 tem o tamanho total de 166.012 bytes; por fim, o tamanho total do conjunto dos documentos relevantes era de 107.700 bytes. 2.2. Pré-processamento Na fase de pré-processamento foram realizadas três tarefas: filtragem; remoção de stop-words; e stemização. A tarefa de filtragem dos documentos consistiu em remover caracteres especiais e desnecessários, números sem interesse e até texto ou palavras consideradas Pág.7/38
desnecesárias. Desta maneira, procedeu-se a uma observação documento a documento fazendo-se um levantamento dos caracteres e das palavras a eliminar, filtrando-os assim. Os caracteres eliminados foram toda a pontuação em si, como por exemplo, os pontos finais, as vírgulas, os ponto e vírgulas, as reticências, pontos de exclamação e interrogração, todo os acentos, as aspas, os hiféns, etc. A nível de caracteres especiais foram eliminados, por exemplo:, <, >, #, $, %, &, =, *, +,,,,,, ±, @,. De seguida foi realizada a tarefa de remoção de stop-words que consistiu em remover todos os termos que ocorressem com muita frequência. Esta tarefa foi realizada completamente de forma automatica com o recurso à aplicação programada pelo professor. Por fim, concluimos a fase do pré-processamento com a tarefa da stemização que consistiu em converter cada palavra para o seu radical, eliminando sufixos representados por flexões verbais e plurala. Os algoritmos de stemização geralmente incorporam um grande conhecimento de linguística e, por essa razão são dependentes da linguagem. Esta tarefa também foi realizada de forma 100% automática na aplicação desenvolvidada pelo professor. É importante referir que esta fase de pré-processamento ficou registada no repositório (na aplicação), nomeadamente na tabela do listar documentos. Nesta tabela é apresentado, na 1ª coluna, o ID associado a cada documento (um número inteiro de 1 a 51 respectivamente). A 2ª coluna diz respeito ao URL de onde foi retirado o documento original. Na coluna a seguir temos a informação do documento original indicando o chars (tamanho), o pd (numero de palavras diferentes) e a rel (relevância) de cada documento. De notar que estes números são números adquiridos após a filtragem dos documentos. Na 4ª coluna da tabela é apresentada a tarefa da remoção das stopwords ( s/stopwords ), onde é apresentado o novo valor para o chars e para o pd de cada documento. A 5ª coluna diz respeito à última tarefa da fase do pré-processamento dos documentos que é a stemização onde são apresentados novamente os novos valores do chars e para o pd de cada documento. A 6ª e última coluna é relativa à indexação dos documentos de que vamos falar no ponto a seguir. Pág.8/38
Na figura seguinte apresentamos um print-sreen de uma linha da tabela para exemplificar o registo que acbamos de explicar: Figura 1 exemplo de registo na tabela do repositório Tabém é de referir que fomos registando numa tabela excel toda esta fase, tabela essa que está disponível em apêndice. 2.3. Indexação O processo de descrição onde as palavras dos documentos são colocadas num índice é denominado de indexação. O processo de indexação automática consiste em identificar palavras relevantes nos documentos de uma colecção de documentos e armazená-las numa estrutura de índice. A identificação dos termos corresponde nada mais é do que à aplicação de um parser (analisador do léxico) que identifique as palavras presentes nos documentos, ignorando os símbolos e caracteres de controlo de arquivo ou de formatação. Desta maneira, o processo de indexação foi feito automáticamente na aplicação com base na lista de palavras-chave definidas por nós. Para identificação das palavras-chave passou-se por duas fases: uma primeira que foi efectuada ao longo da escolha dos links onde se foram recolhendo as palavras que achámos mais importantes; e depois de recolhidos todos os links procedeu-se a uma segunda fase, onde se analisaram todos os documentos relevantes e se fez uma nova recolha das palavras mais importantes e das que mais se repetiam ao longo dos diversos documentos. Após recolhidas todas as palavras aplicamos técnicas adicionais, tais como eliminação de hífens, passagem de todas as palavras para a forma minúscula e passagem das palavras para o singular. O nosso repositório é constituído por 34 palavras-chave. Pág.9/38
Na figura seguinte podemos ver as palavras da nossa lista de palavras-chave. Figura 2 Lista de Palavras-chave Para este processo foi importante toda a fase de pré-processamento, principalmente a tarefa de stemização. Para concluir apresentamos de seguida duas tabelas que mostram a evolução do tamanho em todas as tarefas da fase de pré-processamento e indexação e da mesma forma a evolução do número de palavras diferentes: Pág.10/38
Pág.11/38
Figura 3 Tabela evolução do nº de palavras diferentes dos documentos Como podemos ver (e como seria de esperar), tanto o tamanho dos documentos como o número de palavras diferentes dos documentos foram diminuindo ao longo do seu tratamento: primeiro com a remoção das stop-words depois com a remoçao de stop- Pág.12/38
words + stemização e finalmente com o índice. Podemos afirmar que no tamanho dos documentos a redução mais significativa foi aquando a remoção das stop-words + stemização, sendo maior a diferença no número de palavras diferentes dos documentos quando se da a remoção de stop-words Pág.13/38
3. Experiências em Recuperação de Informação Os modelos clássicos de recuperação de informação apresentam estratégias de pesquisa de documentos relevantes para uma consulta. Nestes modelos cada documento é descrito por um conjunto de palavras-chave representativas que procuram representar o assunto do documento e sumariar o seu conteúdo de forma significativa. Os modelos clássicos de recuperação de informação são três: modelo booleano, modelo vectorial e modelo probabilístico. Apenas nos iremos debruçar sobre o modelo booleano e o modelo vectorial. 3.1. Modelo Booleano O Modelo Booleano considera uma consulta como uma expressão booleana convencional, que liga os seus termos através de conectivos lógicos AND, OR, NOT. As expressões booleanas são capazes de unir conjuntos, descrever interjeições e retirar partes de um conjunto.¹ Numa pesquisa o utilizador indica quais são as palavras que o documento resultante deve ter para que seja retornado. Assim os documentos possuem uma intersecção com a consulta e são retornados. Contudo a partir dos conectivos lógicos (and, or e not), o modelo pode ser compreendido de uma outra forma, onde o conjunto de documentos relevantes à consulta é o conjunto de documentos que satisfaz as restrições especificadas na consulta. 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. Este modelo é mais utilizado para recuperação de dados do que para recuperação de informação. É um bom modelo para quem entende de álgebra booleana contudo, a maioria os utilizadores não entende. Pág.14/38
O modelo booleano tem vantagens e desvantagens. As vantagens deste modelo são as seguintes: simplicidade e clareza de expressão lógica; facilidade de implementação e facilidade de interpretação dos resultados de pesquisa. As suas desvantagens são: dificuldade de exprimir queries com expressões booleanas; um documento ou é (1) ou não é (0) relevante; não existe graduação do tipo: pouco similar, muito simila, etc; ausência de ordem na resposta; as respostas podem ser nulas ou muito grandes e por fim este modelo tem tendência a devolver muito poucos ou demasiados documentos. Existem formas para tentar aperfeiçoar os resultados gerados por este modelo como, por exemplo: dar pesos aos termos; usar conjuntos fuzzy; categorização em IR; ordenar a saída, etc. 3.1.1. Experiências com Modelo Booleano Relatando agora as experiências que realizamos no modelo Booleano é importante começar por dizer quais as instruções para realizarmos estas experiências na aplicação. Sendo assim, sabiamos que só se podia utilizar as conectivas lógicas: e; ou; sem (sem significa NOT); por fim, também sabiamos que o padrão da interrogação tinha que obedecer a uma das seguintes opções: um Termo (uma palavra ou a sua negação); uma conjunção ('e') de Termos; ou um conjunto de disjunções de conjunções de Termos. Primeiramente, começamos por experimentar fazer perguntas à sorte com as palvras-chave, mas os resultados não eram como esperavamos sendo que não conseguiamos recuperar todos os documentos relevantes e recuperavamos muitos irrelevantes. Assim, decidimos fazer uma recuperação exaustiva por cada termo, palavra-chave, e registamos os resultados numa folha excel com manchas de cores com o objectivo de, no final, conseguirmos ter uma ideia geral do que cada palavra recuperava, que documentos relavantes para qual tema, etc. Esta tabela está disponível no fim do relatório, em apêndice. Assim, vamos apenas evidenciar aqui as experiências que realizamos após termos efectuado essa recuperação exaustiva. Para cada tema vamos apresentar as interrogações efectuadas, juntamente com os resultados obtidos. No que concerne aos Pág.15/38
resultados apresentados, estes indicam todos os documentos recuperados através da interrogação efectuada, identificados pelo seu número (de 1 a 51) e, para cada documento é apresentada a sua relevância (0 irrelevante; 1 relevante para o tema 1; 2 relevante para o tema 2; 3 relevante para ambos os temas). Consideramos também importante apresentar para cada experiência a taxa de Recuperação (Recall) e de Precisão (precision). É importante, por isso, dizer que a precision e a recall são medidas para avaliar o SRI, que comparam o conjunto de documentos relevantes com o que é obtido pelo SRI, avaliando a qualidade da estratégia de recuperação. A taxa de recall é o número de documentos relevantes recuperados sobre o número total de documentos relevantes; e a taxa de precision é o número de documentos relevantes recuperados sobre o numeros total de documentos recuperados. A nossa primeira experiência cosnsistiu em escolher uma palavra-chave que era comum aos dois temas, cancer, fizemos a pergunta com o Termo cancer em que obtivemos o resultado que podemos ver na figura 3. Figura 4 Recuperação de Doc. Pelo Modelo Booleano- pergunta: cancer Com este resultado reparamos que a palavra cancer aparece em praticamente todos os documentos, ou seja, recupera todos os documentos relavantes à excepção do documento 16 (relevante para o tema 1) e o documento 25 (relevante para o tema 2); e também recupera todos os docuemntos irrelevantes à excepção do do documento 1. Recall = 39/41 = 0,95 = 95% Precision = 39/48 = 0,81 = 81% 2. De seguida vamos apresentar as experiências para o tema 1 e depois para o tema Pág.16/38
Tema 1 - Quality of life in persons with cancer Pergunta 1: quality Recall = 20/21 = 0,95 = 95% Precision = 20/23 = 0,87 = 87% Pergunta 2: life Recall = 20/21 = 0,95 = 95% Precision = 20/22 = 0,91 = 91% Pergunta 3: diagnosis Recall = 12/21 = 0,57 = 57% Precision = 12/13 = 0,92 = 92% Pergunta 4: depression ou discomfort ou fatigued Recall = 12/21 = 0,57 = 57% Precision = 12/27 = 0,44 = 44% Pág.17/38
Pergunta 5: physical e patient Recall = 12/21 = 0,57 = 57% Precision = 12/15 = 0,80 = 80% Pergunta 6: life e diagnosis Recall = 11/21 = 0,52 = 52% Precision = 11/11 = 1 = 100% Pergunta 7: quality e life Recall = 20/21 = 0,95 = 95% Precision = 20/20 = 1 = 100% Pergunta 8: life ou diagnosis Recall = 21/21 = 1 = 100% Precision = 21/24 = 0,88 = 88% Pág.18/38
Tema 2 Cancer treatments Pergunta 1: chemotherapy Recall = 17/22 = 0,77 = 77% Precision = 17/28 = 0,61 = 61% Pergunta 2: radiotherapy Recall = 8/22 = 0,36 = 36% Precision = 8/9 = 0,89 = 89% Pergunta 3: drug Recall = 12/22 = 0,55 = 55% Precision = 12/14 = 0,86 = 86% Pergunta 4: treatment Recall = 21/22 = 0,95 = 95% Precision = 21/27 = 0,78 = 78% Pág.19/38
Pergunta 5: sem life e medication Recall = 13/22 = 0,59 = 59% Precision = 20/21 = 0,62 = 62% Pergunta 6: sem physical ou (symptom e drug) Recall = 20/22 = 0,91 = 91% Precision = 20/32 = 0,63 = 63% Pergunta 7: (treatment e chemotherapy) ou (treatment e radiotherapy) Recall = 18/22 = 0,82 = 82% Precision = 18/22 = 0,82 = 82% 3.1.2. Resultados e comentários Em relação ao tema 1, no decorrer das experiências realizadas foi-nos possível recuperar numa única pergunta os 20 documentos relevantes para o tema 1 mais os 2 documentos relevantes para ambos os temas, apesar de na mesma terem sido recuperados também documentos irrelevantes, mas foram apenas 2. Na tabela seguinte, é possível ter uma visão geral dos resultados obtidos: Pág.20/38
Figura 5 Tabela resultados experiências tema 1-Modelo Booleano Como se pode constatar na tabela, os melhores resultados obtidos foram o da pergunta 8 onde foram recuperados os 21 documentos relevantes e logo de seguida das perguntas 7, 1 e 2 em que foram recuperados 20, 23 e 22 documentos respectivamente e desses recuperados, em todas as perguntas, 20 eram relevantes para o tema 1. De todas as perguntas realizadas apenas uma obteve um recall de 100% (pergunta 8 que recuperou todos os documentos relevantes) e as que obtiveram uma melhor precision (de 100%) foram as pergunta 6 e 7 (em que apenas obtiveram documentos relevantes) porém o recall, na primeira foi apenas de 52% e noutra de 95%. Das restantes perguntas, a que teve piores resultados, no geral, foi a pergunta 4, com 57% de recall e apenas 44% de precision. O comentário que podemos tecer acerca destas experiências é que consideramos que os melhores resultados foram os das pergunas 7 e 8, sendo que das duas optaríamos pela pergunta 7, uma vez que, apesar de não recuperar os 21 documentos relevantes (como a pergunta 8), recupera apenas menos um (20) e tem uma taxa de precision de 100%, enquanto que na pergunta 8 a taxa de precision é de 88%. Já em relação ao tema 2, apesar de todas as experiências realizadas não conseguimos recuperar numa pergunta todos os documentos relevantes para o tema 2, incluindo os 2 documentos relevantes para ambos os temas. No entanto dos 22 temas que eram relevantes para o tema 2 conseguimos numa pergunta recuperar 21 relevantes, embora tivessemos nessa mesma pergunta recuperado mias 6 irrelevantes. Na tabela seguinte, é possível observar uma visão geral dos resultados obtidos com as 7 perguntas referidas: Pág.21/38
Figura 6 Tabela resultados experiências tema 2 Modelo Booleano Como é possível verificar, o melhor resultado que obtivemos foi o resultado da Pergunta 4 em que foram recuperados 27 documentos, 21 dos quais relevantes para o tema 2. Ou seja, de todas as perguntas que efectuámos nunca obtivemos um recall de 100%, sendo as que obtiveram melhor recall foram as perguntas 4, 6 e 7 com 95%, 91% e 82% respectivamente. Em relação ao precision as que tiveram melhores resultados foram as perguntas 2, 3 e 7 com 89%, 86% e 82% respectivamente. Das restantes perguntas a que teve resultados menos satisfatórios a nível de recall foi a pergunta 2 e a nível de precision foi a pergunta 1. O comentário que podemos tecer em relação aos resultados é que foram bastante diferentes, sendo que se quisermos dar mais importância à taxa de recall escolheríamos a pergunta 4, no entanto se quiséssemos dar mais importância à precision escolheríamos a pergunta 2. Nós optaríamos, neste caso pela pergunta 4 na medida em que na pergunta 2 apenas obtemos 8 documentos dos 22 relevantes. Em relação a conlusões, podemos dizer que depoi todas as experiências e do contacto que tivemos com este modelo, de maneira geral, quando se consegue aumentar a precision o recall diminui e quando se consegue aumentar o recall a precision diminui. Se utilizarmos disjunções obtemos mais docuemntos, mas tanto devolve mais documentos relevantes, como documentos irrelevantes. Depois, ao utilizar da conectiva lógica e, restringimos o número dos documentos devolvidos. Pág.22/38
3.2. Modelo Vectorial O Modelo Vectorial (também chamado de modelo espaço-vectorial) foi criado por Gerard Salton, com o objectivo de ser utilizado num Sistema de Recuperação de Informação (SRI) chamado SMART.³ Neste modelo, cada documento é representado como um vector de termos em que cada termo tem um valor associado a si indicando o grau de importância (peso - weight) do termo no ocumento. Desta maneira, cada documento possui um vector associado é constituído por pares de elementos na forma {(palavra_1, peso_1), (palavra_2,peso_2),..., (palavra_n, peso_n)}. È importante dizer que, os documentos são representados como vectores no espaço de termos. Estes termos são ocorrências únicas nos documentos, que por sua vez são representados pela presença ou ausência de um termo. Todos os termos combinados podem definir cada documento. Além disso, as consultas são representadas da mesma forma, sendo que aos termos das consultas e documentos são acrescentados pesos. Estes pesos especificam o tamanho e a direcção da sua especificação como vector. A distância entre os vectores mede a relação numa consulta. No que toca ao peso dos termos, podemos dizer que o peso de um termo num documento pode ser calculado de diversas formas. Os pesos são usados para calcular a similaridade entre cada documento armazenado e também numa consulta feita pelo usuário. Os métodos de cálculo de peso baseiam-se normalmente no número de ocorrências do termo no documento (frequência). Salton e Buckey dão uma das formas para calcular o peso. Esta forma pretende balancear as características em comum nos documentos (intra-document) e as características para fazer a distinção entre os documentos (inter-document). Assim apresentamos a forma dada por Salton e Buckey em que freq (k,s) _ TF consiste na frequência do termo k no documento/consulta S; log (N / nk) _ IDF (inverse document frequency), onde N é o número de termos na colecção e nk número de vezes que o termo ocorre na colecção. O TF reflete as características intra-documentos e IDF dá uma medida de distinções inter-documento. Os pesos baseados no produto freq (k,s) log (N / nk), são chamados de abordagem tf-idf. Cada elemento do vector de termos é Pág.23/38
considerado uma coordenada dimensional. Assim, os documentos podem ser colocados num espaço euclidiano de n dimensões (onde n é o número de termos) e a posição do documento em cada dimensão é dada pelo seu peso. A Figura seguinte mostra o modelo vectorial. Figura 7 Modelo vectorial Podemos dizer que cada dimensão corresponde a um termo, e o valor do documento em cada dimensão varia entre 0 (irrelevante ou não presente) e 1 (totalmente relevante). A figura seguinte apresenta um espaço com duas dimensões (2 termos) representando os documentos. Nesse caso só dois termos são considerados importantes na descrição dos documentos -todos os outros termos são desconsiderados na representação e indexação. Figura 8 Modelo vecturial com duas dimensões As distâncias entre um documento e outro indicam o seu grau de similaridade, ou seja, os documentos que possuem os mesmos termos acabam por ser colocados numa mesma região do espaço e, em teoria, tratam de assuntos idênticos. Pág.24/38
A consulta do usuário também é representada por um vector. Desta forma, os vetores dos documentos podem ser comparados com o vector da consulta e o grau de similaridade entre cada um deles pode ser identificado. Os documentos mais similares (mais próximos no espaço) à consulta são considerados relevantes para o usuário e retornados como resposta para ela. Uma das formas de calcular a proximidade entre os vectores é testar o ângulo entre estes vectores. No modelo original, é utilizada uma função denominada de cosine vector similarity que calcula o produto dos vectores de documentos através da fórmula:² Figura 9 fórmula de similariadade Nesta fórmula Q representa o vector de termos da consulta; D é o vector de termos do documento; Wqk são os pesos dos termos da consulta; e Wdk são os pesos dos termos do documento. Depois dos graus de similaridade terem sido calculados, é possível montar uma lista ordenada (ranking) de todos os documentos e seus respectivos graus de relevância à consulta, da maior para a menor relevância. O modelo vectorial tem vantagens tais como: atribuir pesos aos termos melhora o desempenho; é uma estratégia de encontro parcial (função de similaridade), que é melhor que a exatidão do modelo booleano; os documentos são ordenados de acordo com seu grau de similaridade com a consulta. No entanto também possui desvantagens como, por exemplo: ausência de ortogonalidade entre os termos em que poderia encontrar relações entre termos que aparentemente não têm nada em comum; é um modelo generalizado; um documento relevante pode não conter termos da consulta. Pág.25/38
3.2.1. Experiências com Modelo Vectorial No que concerne às regras para realizar as experências no Modelo Vectorial, estas eram parecidas com as do Booleano, mas não iguais. Assm, sabíamos que só se podia utilizar as conectivas lógicas: e ou; ou. Cada palavra na sua pergunta podia ser antecedida de um número positivo (o peso da palavra) e, caso não colocassemos um número antes de uma palavra o seu peso era considerado 1. Sabiamos igualmente que deveriamos utilizar o peso 0 (zero) se não quisessemos que uma palavra ocorresse nos documentos. Por fim, sabíamos que o padrão da interrogação tinha que obedecer a uma das seguintes opções: palavra; uma conjunção ('e') de palavras; ou um conjunto de disjunções de conjunções de palavras. Para as experiências com o Modelo Vectorial optamos por fazer as mesmas experiências que fizemos com o Modelo Booleano adaptando as perguntas á sua gramática e atribuindo pesos para dar mais importância a um termo do que a outro. Esta opção deveu-se ao facto de que já tínhamos tido muita dificuldade em conseguir experiências com resultados que fossem mais ao emnos claros e assim podemos também ver as diferenças na recuperação de um para o outro modelo com as mesmas perguntas. Mais uma vez, para cada tema vamos apresentar as interrogações efectuadas, juntamente com os resultados obtidos. No que concerne aos resultados apresentados, relembramos que estes indicam todos os documentos recuperados através da interrogação efectuada, identificados pelo seu número (de 1 a 51) e, para cada documento é apresentada a sua relevância (especialista- nossa : 0 irrelevante; 1 relevante para o tema 1; 2 relevante para o tema 2; 3 relevante para ambos os temas) e, agora, a relevância do modelo (0- totalmente irrelevante a 1 totalmente relevante). Consideramos mais uma vez importante apresentar para cada experincia a taxa de Recuperação (Recall) e de Precisão (precision) que, apesar de serem em quase todas as experiências os mesmos valores que no modelo Booleano, alguns podem ser diferentes já que entra um novo facto que é o n resultados e o peso. Como no Modelo Booleano, a nossa primeira experiência cosnsistiu em escolher uma palavra-chave que era comum aos dois temas, cancer, fizemos a pergunta com o Termo cancer em que obtivemos o resultado que podemos ver na figura seguinte. Pág.26/38
Figura 10 - Recuperação de Doc. Pelo Modelo Vectorial- pergunta: cancer Recall = 26/41 = 0,63 = 63% Precision = 26/31 = 0,83 = 83% De seguida apresentamos as experiências para o tema 1 e depois para o tema 2. Tema 1 - Quality of life in persons with cancer Pergunta 1: quality Recall = 20/21 = 0,95 = 95% Precision = 20/23 = 0,86 = 86% Pergunta 2: life Recall = 20/21 = 0,95 = 95% Precision = 20/22 = 0,90 = 90% Pergunta 3: diagnosis Recall = 12/21 = 0,57 = 57% Precision = 12/13 = 0,92 = 92% Pág.27/38
Pergunta 4: 8 depression ou 6 discomfort ou 4 fatigued Recall = 9/21 = 0,43 = 43% Precision = 9/25 = 0,36 = 36% Pergunta 5: 8 patient e 6 physical Recall = 11/21 = 0,52 = 52% Precision = 11/15 = 0,73 = 73% Pergunta 6: 6 life e 4 diagnosis Recall = 11/21 = 0,52 = 52% Precision = 11/12 = 0,92 = 92% Pergunta 7: 6 quality e 4 life Recall = 19/21 = 0,90 = 90% Precision = 19/20 = 0,95 = 95% Pág.28/38
Pergunta 8: 6 life ou 4 diagnosis Recall = 21/21 = 1 = 100% Precision = 21/25 = 0,84 = 84% Tema 2 Cancer treatments Pergunta 1: chemotherapy Recall = 17/22 = 0,77 = 77% Precision = 17/28 = 0,60 = 60% Pergunta 2: radiotherapy Recall = 8/22 = 0,36 = 36% Precision = 8/9 = 0,88 = 88% Pergunta 3: drug Recall = 12/22 = 0,54 = 54% Precision = 12/14 = 0,85 = 85% Pág.29/38
Pergunta 4: treatment Recall = 21/22 = 0,95 = 95% Precision = 21/27 = 0,77 = 77% Pergunta 5: 0 life e 8 medication Recall = 7/22 = 0,32 = 32% Precision = 7/20 = 0,35 = 35% Pergunta 6: 0 physical ou ( 4 symptom e 6 drug) Recall = 16/22 = 0,73 = 73% Precision = 16/30 = 0,53 = 53% Pergunta 7: (6 treatment e 8 chemotherapy) ou (6 treatment e 8 radiotherapy) Recall = 20/22 = 0,91 = 91% Precision = 20/22 = 0,91 = 91% Pág.30/38
3.2.2. Resultados e Comentários Em relação ao tema 1, após as experiências realizadas pudemos sintetizar os resultados obtidos na seguinte tabela: Figura 11 Tabela Resultados tema 1 Modelo Vectorial Como é possível verificar, o valor máximo obtido no recall é 100%, uma vez que, tal como já foi referido, fizemos as mesmas perguntas do modelo Booleano. Relativamente à precision, sempre que o valor do recall atingia os 95%. Em relação aos comentários, com este modelo os melhores resultados obtiveram os mesmo valores de recall e precision do modelo Booleano, mas é importante referir que, no conjunto das perguntas conseguimos detectar, por exemplo, que documentos considerados (por nós) irrelevantes obtinham uma relevância neste modelo muito superior a muitos dos documentos recuperados relevantes. Em relação ao tema 2, após as experiências realizadas pudemos sintetizar os resultados obtidos na seguinte tabela: Figura 12 Tabela resultados Tema 2 Modelo Vectorial Pág.31/38
Como se pode ver o melhor resultado de recall foi o da pergunta 4, mais uam vez, e o de precision foi o da pergunta 7, o que difere do modelo booleano. Já também diferente do modelo booleano foi o pior resultado, sendo que este coube à pergunta 5 com 32% de taxa de recall e 35% de taxa de precision. Como comentário podemos dizer que neste tema obtivemos valores diferentes sendo que ficou aqui mais claro qual a pergunta melhor, de maneira geral, para a recuperação dos documentos. Aqui escolheríamos a pergunta 7 já que tem uma taxa de recall de 91% (com 20 documentos relevantes recuperados de 22) e uma taxa de precision de 91% (uma vez que o numero de documentos recuperados é igual ao numero de documentos relevantes). Em relação às conclusões deste modelos, depois de todas as experiências e do contacto com o modelo vectorial podemos dizer que, de maneira geral, que o modelo vectorial em relação ao booleano tem vantagens. Essas vantages são o facto de permitir a ordenação dos documentos recuperados de acordo com o maior nível de relevância em função da pergunta efectuada e, deste modo, limitando o número de documentos recuperados, é possível eliminar a devolução de documentos irrelevantes e permite a atribuição de pesos diferentes às palavras-chave, e, assim, torna-se mais fácil e simples recuperar apenas os documentos relevantes. Pág.32/38
4. Conclusão Com este trabalho tivemos a oportunidade de realizar experiências em Armazenamento de Informação e experiências em Recuperação de Informação e, por isso, estamos agora prontas para fazer as principais conlusões após a realização destas experiências. No que concerne à pesquisa de documentos para a construção do nosso repositório podemos concluir que: Deveriamos ter escolhido temas não tão proximos tematicamente, ou seja, com uma larga ligação. Tecemos esta conclusão porque os temas que escolhemos revelaram-se, consequentemente nos documentos escolhidos, muito próximos, o que resultou em experiências de Recuperação de Informação dificeis e não muito claras uma vez que a maioria das palavras-chave funcionavam para todos os documentos do repositório; Quanto aos documentos irrelevantes, estes mostraram-se mal escolhidos no sentido em que, apesar de irrevelevantes para os temas, situavam-se na grande Temática do cancer o que veio a tornar-se num obstáculo já que os irrelevanmtes também continham a maioria das palavras-chave. é que: No que toca às fases de pré-processamento e indexação o que podemos concluir Existe, na verdade, uma gande vantagem na remoção de pontuação, caracteres indesejáveis e stop-words, assim como da radicalização e indexação com o objectivo da redução no tamanho dos documentos existentes no repositório; Em relação a problemas, no que concerne à tarefa da filtragem é importante dizer que foi dolorosa uma vez que tívemos que rever documento a documento e, em relação à radicalização, detectamos problemas porque em palavras-chave como medical e medication ambas têm o mesmo radical apesar de terem significados diferentes e isso prejudicaria as experiências em Recuperação de Informação. Pág.33/38
Por fim, em relação às experiências em recuperação de informação, realizadas com o Modelo Booleano e o Modelo Vectorial, retiramos as seguintes conclusões: Através das experiências realizadas observamos que havia uma grande dificuldade em recuperar os documentos relevantes sem recuperar simultaneamente os irrelevantes, isto porque como já foi dito anteriormente os temas são muito próximos daí a dificuldade em recuperar apenas os relevantes para um tema sem recuperar também os relevantes para o outro tema. No que toca à relevância dos documentos, conseguimos observar nas experiências do modelo vectorial que, por vezes, documentos que consideramos totalmente irrelevantes têm uma relevância no modelo bastante alta o que faz com que duvidemos da nossa classificação, mas ao mesmo tempo nos faz concluir que o facto de uma palavra aparecer imensas vezes num docuemento não quer necessáriamente dizer que esse docuemnto é relevante na busca por esse termo. Pág.34/38
5. Melhoramentos Ao longo da realização deste trabalho foram detectados alguns melhoramentos que agora devemos sugerir. Após realizada cada tarefa da fase de pré-processamento deveria haver a possibilidade de aceder ao documentos a fim de se fazerem comparações e verificações. Da mesma maneira, após a indexação também deveria ser possivel aceder aos documentos para facilitar a consulta dos mesmos na fase das experiências em recuperação da Informação para observar quais as pslavraschave presentes nos documentos; Para sentirmos e sermos mais correctos na escolha das palvras fases, ou para consultarmos de que maneira fomos correctos na escolha das mesmas, deveria constar na lista de índices (palavras-chave) o número de vezes que cada palavrachave aparece em cada documento; A linguagem das interrograções no modelo Booleano deveria ser menos restritiva ou primitiva na medida em que as conectivas lógicas deveriam ter a possibilidade de serem utilizadas de diversas maneiras e não em condições tão restritas; Deveria ser possivel modificar ou escolher como uma palavra-chave deve ser radicalizada de maneira a ultrapassar o obstáculo das palvras com significados diferentes, mas que têm o mesmo radical; No que concerne a melhoramentos que não estão directamente ligados com a aplicação destacámos alguns como a reformulação dos temas ou das palavraschave; e mais tempo para realizar as experiências em ambos os modelos já que tivemos pouco tempo para o fazer porque para além de fazer as perguntas é preciso meditar nos resultados para as reformular. Pág.35/38
6. Referências Bibliográficas ¹ SALTON, Gerard; MACGILL, Michael J. Introduction to Modern Information Retrieval. New York: McGRAW-Hill, 1983. 448p ² SALTON, Gerard; Buckley, Christopher - Term-Weighting Approaches in Automatic Text Retrieval. Department of Computer Science, Cornell University, Ithaca, NY 14853, USA ³BAEZA-YATES, Ricardo - Modern information retrieval. New York: ACM Press, cop. 1999. ISBN 0-201-39829-X Pág.36/38
7. Apêndices 7.1. URLs Modelos para Recuperação da Informação. Disponível em http://www.dcc.ufla.br/~olinda/arquivos/ri%20aula3.pdf. 7.2. Tabela de URLs do Repositório Pág.37/38
7.3. Tabela de recuperação exaustiva das palavras-chave Pág.38/38