PersonalNews - A nossa vida de relance

108
PersonalNews A nossa vida de relance… Bruno Ricardo Tavares Antunes Dissertação para obtenção do Grau de Mestrado em Engenharia Informática e de Computadores Júri Presidente: Prof. Joaquim Armando Pires Jorge Orientador: Prof. Daniel Jorge Viegas Gonçalves Vogal: Prof. Carlos Alberto Pacheco dos Anjos Duarte Setembro 2008

Transcript of PersonalNews - A nossa vida de relance

PersonalNews – A nossa vida de relance…

Bruno Ricardo Tavares Antunes

Dissertação para obtenção do Grau de Mestrado em

Engenharia Informática e de Computadores

Júri

Presidente: Prof. Joaquim Armando Pires Jorge

Orientador: Prof. Daniel Jorge Viegas Gonçalves

Vogal: Prof. Carlos Alberto Pacheco dos Anjos Duarte

Setembro 2008

I

Agradecimentos

Um grande obrigado à minha namorada Ana Cristina Ricardo. Sem o seu apoio, muito

dificilmente teria conseguido alcançar os objectivos a que me propus.

Agradeço também aos meus pais, irmã e o resto da família toda pelo constante apoio.

Ao co-orientador Joaquim Jorge e ao Engenheiro Tiago Guerreiro pela incansável

ajuda ao longo de todo o trabalho.

Aos meus amigos Bruno Anjos, Bruno Santos, Daniel Martins, David Rodrigues, Hugo

Alberto, João Inácio, Manuel Rosa, Nuno Tomás, Pedro Fiadeiro, Telmo Machado que

foram alguns dos utilizadores teste e todos deram uma ajuda à sua maneira.

Por fim, o maior agradecimento vai para o Professor Daniel Gonçalves, que ao longo

do último ano me guiou, aconselhou e incentivou, o que foi o principal combustível

para que este trabalho tivesse chegado ao fim.

II

Resumo

Com o aumento da quantidade de informação existente nos computadores pessoais,

existe cada vez mais a necessidade de desenvolver novas formas de gerir essa

informação. Em particular, as ferramentas existentes hoje em dia não possibilitam ao

utilizador visualizar, de forma eficaz, quais os seus interesses num dado período de

tempo e, a partir destes, recuperar informação pessoal para referência ou reutilização.

Apresentamos o PersonalNews, um sistema que fornece ao utilizador um jornal

pessoal da sua vida. As várias notícias descrevem os desenvolvimentos nos temas

que mais interessaram o utilizador num dado intervalo de tempo. Essas notícias,

criadas a partir dos documentos do utilizador. Com base nestes, conseguimos

automaticamente inferir os temas de interesse, obter passagens que os descrevem, e

criar o texto das notícias. Estas são dispostas no jornal de acordo com a sua

importância relativa, dando ao utilizador de uma ideia dos temas que mais o

interessaram e permite facilmente encontrar os documentos com eles relacionados. A

interface permite pois visualizar e navegar de forma eficaz na informação pessoal de

um utilizador, possibilitando a descoberta de padrões relevantes nessa informação.

Um conjunto de testes com utilizadores confirma que o PersonalNews consegue

identificar correctamente a maioria dos temas relevantes para os utilizadores, e até

mesmo alguns de que estes à partida não se recordam. Adicionalmente, mostra-se

que é possível encontrar eficazmente documentos pessoais com o auxílio do sistema.

III

Abstract

It is not uncommon for computer users to work on several things at once. However, to

the computer, all documents, emails and applications are considered equal, regardless

of why they were created or used. Little support is provided when trying to recall

important information about a particular project or subject at a later time. What is more,

there is no effective way to help users review their past activities to identify when a

particular subject was more important, what were their concerns at a given moment in

the past, or simply review at a glance their activities during a period of time.

In this paper we describe PersonalNews, a system in which users are presented with a

personal newspaper, in which the news articles report on the subjects they were

concerned with in a given period of time. Those articles are automatically generated

from the users‘ documents, grouped according to their subject and analyzed for

relevant passages describing them. We show that PersonalNews is able to help users

recognize the subjects and projects they were involved in, and even recall some they

had forgotten about. Also, it can be used effectively to help retrieve documents on

particular subjects, even when the usual hints of filename and location in the

filesystem.

IV

Palavras Chave

Gestão de Informação Pessoal, Metafora de Jornal, Visualização de Informação,

Recuperação de documentos pessoais

Keywords

Personal Information Management, Personal Document Retrieval, Newspaper

Metaphor, Information Visualization.

V

Índice

1. Introdução ............................................................................................................................. 1

1.1. Contribuições ................................................................................................................ 2

1.2. Publicações .................................................................................................................... 3

1.3. Estrutura do documento ............................................................................................... 3

2. Estado da Arte ....................................................................................................................... 4

2.1. Informação pessoal em E-mails..................................................................................... 4

2.1.1. Themail .................................................................................................................. 5

2.1.2. Email visualization to Aid Communications .......................................................... 5

2.1.3. Mailview ................................................................................................................ 7

2.1.4. PostHistory e Social Network Fragments .............................................................. 7

2.2. E-mail e tarefas .............................................................................................................. 9

2.2.1. TimeStore .............................................................................................................. 9

2.3. TaskView...................................................................................................................... 10

2.4. Dispositivos Físicos ...................................................................................................... 10

2.4.1. Storytelling with Digital Photographs ................................................................. 11

2.4.2. Personal Digital Historian: User interface Design ............................................... 11

2.4.3. Forgot-me-not ..................................................................................................... 12

2.5. Social Networks ........................................................................................................... 13

2.5.1. Newsgroup Crowds and AuthorLines .................................................................. 13

2.5.2. PeopleGarden ...................................................................................................... 15

2.6. Informação multimédia ............................................................................................... 15

VI

2.6.1. Milestones in Time .............................................................................................. 16

2.6.2. Time-Machine Computing ................................................................................... 16

2.6.3. LifeLines ............................................................................................................... 18

2.6.4. Lifestreams .......................................................................................................... 19

2.6.5. MyLifeBits ............................................................................................................ 19

2.7. Pesquisadores e Browsers ........................................................................................... 21

2.7.1. Stuff I’ve Seen ...................................................................................................... 21

2.7.2. Plath .................................................................................................................... 22

2.7.3. Personal Chronicling Tools .................................................................................. 23

2.7.4. FacetMap ............................................................................................................. 24

2.8. Discussão ..................................................................................................................... 25

3. Overview ............................................................................................................................. 29

4. Descoberta de Temas .......................................................................................................... 31

4.1. Motivação/Introdução ................................................................................................ 31

4.2. Método ........................................................................................................................ 31

4.3. Matriz de distâncias .................................................................................................... 32

4.4. LSA ............................................................................................................................... 32

4.5. Escolha das Keywords ................................................................................................. 35

4.6. Matriz de Distância LSA ............................................................................................... 36

4.7. Criação dos clusters ..................................................................................................... 36

4.8. Utilização do QT-Clust ................................................................................................. 38

4.9. Join clusters ................................................................................................................. 39

4.10. Avaliação ................................................................................................................. 39

VII

4.10.1. Medidas de avaliação .......................................................................................... 40

4.10.2. Conjuntos de testes usados ................................................................................ 41

4.10.3. Raio ...................................................................................................................... 42

4.10.4. Join Clusters......................................................................................................... 44

4.10.5. Número de keywords .......................................................................................... 48

4.10.6. Teste da Dimensão .............................................................................................. 51

4.10.7. Conclusões dos testes ......................................................................................... 53

4.11. Verificação manual dos clusters obtidos ................................................................. 53

4.12. Conclusão ................................................................................................................ 56

5. Geração das Notícias ........................................................................................................... 57

5.1. Extracção das palavras-chave dos Grupos .................................................................. 57

5.2. Extracção dos sumários ............................................................................................... 58

5.2.1. Algoritmo de extracção dos sumários ................................................................. 58

5.2.2. Tratamento das frases relevantes ....................................................................... 60

5.2.3. Classificação das frases ....................................................................................... 61

5.3. Criação das notícias ..................................................................................................... 62

5.3.1. Padrões de Notícias ............................................................................................. 63

5.3.2. Análise Lexical ..................................................................................................... 64

6. Interface .............................................................................................................................. 68

7. Resultados e avaliação ........................................................................................................ 72

7.1. Protocolo Experimental ............................................................................................... 72

7.1.1. Tarefas ................................................................................................................. 72

7.1.1.1 Lançamento da aplicação pela primeira vez pelo utilizador ............................... 73

VIII

7.1.1.2 Identificação de temas em intervalos de tempo diferentes ............................... 73

7.1.1.3 Identificação de tema único ................................................................................ 74

7.1.1.4 Pesquisa de ficheiros ........................................................................................... 74

7.1.2. Questionário ........................................................................................................ 75

7.2. Resultados obtidos ...................................................................................................... 75

7.2.1. Tarefas ................................................................................................................. 75

7.2.1.1 Tarefa 1 - Lançamento da aplicação pela primeira vez pelo utilizador ............... 76

7.2.1.2 Tarefa 2 - Identificação de temas em intervalos de tempo diferentes ............... 76

7.2.1.3 Tarefa 3 - Identificação de tema único ................................................................ 81

7.2.1.4 Tarefa 4 - Pesquisa de ficheiros ........................................................................... 82

7.2.2. Questionário ........................................................................................................ 83

7.3. Conclusão .................................................................................................................... 86

8. Conclusões e trabalho futuro .............................................................................................. 87

9. Bibliografia .......................................................................................................................... 89

10. Anexos ................................................................................................................................. 94

IX

Lista de Figuras

Figura 1 - Interface do Themail ..................................................................................................... 5

Figura 2 - Um e-mail thread .......................................................................................................... 6

Figura 3 - Message tree com timeline ........................................................................................... 6

Figura 4 - Reduced-Resulution vista geral de documentos. ......................................................... 6

Figura 5 - Interfaces do Mailview .................................................................................................. 7

Figura 6 - Interface do PostHistory................................................................................................ 8

Figura 7 - Social network e o da History. ...................................................................................... 8

Figura 8 - Interface do TimeStore. ................................................................................................ 9

Figura 9 - Interface do taskView.................................................................................................. 10

Figura 10 - Interface do dispositivo móvel em questão. ............................................................. 11

Figura 11 - Dispositivo em questão. ............................................................................................ 11

Figura 12 - Dispositivo móvel e interface. ................................................................................... 13

Figura 13 - Interface do AuthorLines. .......................................................................................... 13

Figura 14 - Interface do Newsgroup Crowds. ............................................................................. 14

Figura 15 - Um PeopleGarden .................................................................................................... 15

Figura 16 - Interface do Milestones in Time ................................................................................ 16

Figura 17 - Screenshot do TimeScape desktop. ......................................................................... 16

Figura 18 - Do lado esquerdo a timeline view e do direito a calendar view ................................ 17

Figura 19 - Interface do LifeLines................................................................................................ 18

Figura 20 - Interfaces do Lifestreams. ........................................................................................ 19

Figura 21 - Screenshots das vistas ............................................................................................. 20

Figura 22 - Screenshot do SIS, em Top view ............................................................................. 22

Figura 23 - Screenshot do Phlat.................................................................................................. 23

Figura 24 - Interface de browsing do PCT .................................................................................. 24

Figura 25 - Interface do Facetmap. ............................................................................................. 24

Figura 26 – Etapas seguidas ao longo do PersonalNews .......................................................... 29

Figura 27 - Resultados obtidos depois da aplicação do algoritmo LSA. .................................... 34

Figura 28 - Screenshot da janela de configuração. .................................................................... 68

Figura 29 – Screenshot de uma edição do jornal. ...................................................................... 69

Figura 30 – Selecção de data e alteração da configuração. ....................................................... 70

Figura 31 – Screenshot da barra temporal usada. ...................................................................... 71

X

Lista de Tabelas

Tabela 1 - Classificação dos trabalhos descritos ........................................................................ 27

Tabela 2 - Extractos de texto usados no exemplo de aplicação do algoritmo LSA .................... 33

Tabela 3 - Matriz term-document. ............................................................................................... 34

Tabela 4 - Resultados obtidos com o primeiro conjunto de dados. ............................................ 54

Tabela 5 - Resultados obtidos com o segundo conjunto de dados ............................................ 55

Tabela 6 – Resultados obtidos para o intervalo de tempo de uma semana. .............................. 77

Tabela 7 - Resultados obtidos para o intervalo de tempo de um mês........................................ 78

Tabela 8 - Resultados obtidos para o intervalo de tempo de um ano. ....................................... 79

Tabela 9 – Tabela resumo dos resultados obtidos no questionário ........................................... 86

XI

Lista de Gráficos

Gráfico 1 - Resultados obtidos para os conjuntos de dados (a e b) ........................................... 43

Gráfico 2 – Percentagem de acerto variando o raio ................................................................... 43

Gráfico 3 - Silhouette Coefficient variando o raio ........................................................................ 44

Gráfico 4 - Resultados para os conjuntos de dados - raio de 0.22 (a e b) ................................. 45

Gráfico 5 - Resultados obtidos para o 1º conjunto de dados - raio de 0.22 ............................... 45

Gráfico 6 - Resultados obtidos para o 2º conjunto de dados - raio de 0.22 ............................... 46

Gráfico 7 - Distância de junção para o raio 0.22, 1º conjunto de dados ..................................... 47

Gráfico 8 - Distância de junção para o raio 0.22, 2º conjunto de dados ..................................... 47

Gráfico 9 - Variação do número de clusters com a distância de junção. .................................... 48

Gráfico 10 – Gráfico para encontrar o número de keywords confirmando o raio 0.22. .............. 49

Gráfico 11 – Percentagem de acerto para o raio fixo em 0.22. .................................................. 50

Gráfico 12 - Gráfico para encontrar o número de keywords confirmando o raio 0.22. ............... 50

Gráfico 13 - Percentagem de acerto para o raio fixo em 0.22. ................................................... 51

Gráfico 14 - Variação da variável dimensão, 1º conjunto de dados ........................................... 52

Gráfico 15 - Variação da variável dimensão, 1º conjunto de dados ........................................... 52

Gráfico 16 - Relação de tempo com a variação da dimensão usa no algoritmo LSA. ............... 53

Gráfico 17 - Distribuição dos temas pela sua importância (semana) ......................................... 77

Gráfico 18 - Distribuição dos temas pela sua importância (mês) ............................................... 79

Gráfico 19 - Distribuição dos temas pela sua importância (ano) ................................................ 80

Gráfico 20 – Grau de satisfação obtido na identificação de tema único. .................................... 81

Gráfico 21 – Resultados obtidos na tarefa de pesquisa de ficheiro............................................ 82

Gráfico 22 – Facilidade de interacção com a aplicação ............................................................. 83

Gráfico 23 – Facilidade de Identificação dos temas em que trabalhou ...................................... 83

Gráfico 24 – Facilidade de encontrar ficheiros através dos temas ............................................. 83

Gráfico 25 – Qualidade dos resultados obtidos nas suas pesquisas ......................................... 84

Gráfico 26 – Facilidade em identificar o tema de uma noticia em particular .............................. 84

Gráfico 27 – Qualidade das frases .............................................................................................. 85

Gráfico 28 – Estética do jornal .................................................................................................... 85

Gráfico 29 – Legibilidade das notícias. ....................................................................................... 85

Gráfico 30 – Utilidade da aplicação ............................................................................................ 85

1

1. Introdução

Nos dias que decorrem, existem cada vez mais formas de guardar todo o tipo de

informação indexada num computador pessoal. Desde e-mails enviados/recebidos,

documentos criados/alterados, conversas em salas de chat e msn, etc. Esta

informação encontra-se disponível a qualquer utilizador comum no seu computador

pessoal. O grande problema, há já algum tempo, tem sido como procurar e visualizar

essa informação.

Com toda a informação que existe actualmente indexada no nosso computador

pessoal é fácil efectuar uma pesquisa acerca de um e-mail que recebemos num dado

momento em que se laborava num determinado trabalho de uma disciplina. O único

problema que se coloca é toda esta informação estar dispersa em vários locais,

programas, ficheiros, etc., o que torna bastante difícil ter uma percepção global sobre

esta e conseguir visualiza-la de forma integrada com as várias relações que existem.

Um outro problema, é quando não nos conseguimos lembrar do nome do documento,

sabendo apenas que foi editado numa determinada data, ao trabalhar num

determinado tema.

Um exemplo da grande quantidade de informação aglomerada e, por vezes, de forma

confusa, são os e-mails dos utilizadores. Estes, normalmente contêm informação de

variadíssimas áreas, desde informações e documentos dos empregos dos utilizadores,

tarefas e lembranças a executar, convites e outro tipo de informação, toda ela na

mesma pasta de Inbox do e-mail. Embora exista a possibilidade de criar novas pastas

e de filtrar a entrada de e-mails, esta solução não é suficiente. Existe assim a

necessidade de criar novos paradigmas e novas metáforas para gerir a informação

contida num simples e-mail.

Um outro exemplo é o da informação multimédia. Devido aos avanços tecnológicos,

todos os utilizadores comuns têm acesso a máquinas fotográficas digitais, câmaras de

filmar, telemóveis, etc. O conteúdo destes dispositivos normalmente vai parar ao

computador pessoal dos seus utilizadores, de forma não muito organizada, e quando o

é, é simplesmente dividida em pastas, não havendo qualquer informação adicional

acrescentada aos conteúdos. Assim, quando o utilizador quer efectuar uma dada

pesquisa ou simplesmente navegar nesses conteúdos, e caso não se lembre do nome

dos ficheiros ou do caminho para os mesmos, é como se esta informação estivesse

perdida, não existindo qualquer forma de pesquisa que encontre esses conteúdos,

perdendo-se muito tempo para a encontrar. Existe assim a necessidade de criar um

2

sistema que, de forma atraente, facilite estas pesquisas e a navegação nestes

conteúdos, sendo as pesquisas baseadas em informação indexada. Em particular,

deve ser possível ao utilizador visualizar informação dos temas em que este laborou,

temas que são reflectidos no conjunto de documentos do utilizador.

Como veremos no capítulo 2, a maioria dos sistemas que se preocupam com a

visualização de informação pessoal apenas se destinam a um tipo de informação

pessoal. Houve uma série de abordagens que tentaram fazer face ao problema

enunciado acima, mas nenhum conseguiu resolver o problema na totalidade.

Exemplos destas abordagens são os sistemas que têm como principal incidência a

informação contida nos emails dos utilizadores, no entanto, como é previsível, estes

sistemas deixam de parte muita informação pessoal dos utilizadores. Existem, por

outro lado, sistemas físicos, no entanto, estes sistemas acabam por servir de agenda,

registando os acontecimentos do dia-a-dia de um determinado utilizador. Existem

também aproximações à resolução do nosso problema através de Social Networks, no

entanto, como vermos no capítulo do estado da arte, estes tipos de sistemas já fogem

à nossa percepção do problema. Por fim, existem aproximações através de

pesquisadores e browsers, no entanto, o principal problema destes é mostrarem a

informação toda, sem criar padrões de notícias ao longo do tempo, não mostrando

assim o que o utilizador tem andado a fazer.

Neste trabalho propomos uma abordagem que possibilita aos utilizadores visualizarem

a sua informação pessoal de modo a revelar de forma imediata o contexto e interesses

do utilizador num dado intervalo temporal. Tal é conseguido pela criação automática

de grupos de documentos semanticamente relacionados de acordo com os vários

temas de interesse para o utilizador. Uma vez identificados os temas, estes são

apresentados ao utilizador sob a forma de notícias num jornal pessoal. Esta é uma

metáfora amplamente conhecida e fácil de compreender, adaptando-se à grande

quantidade de informação a mostrar. Cada ―edição‖ do jornal reporta-se a um

determinado período temporal, reflectindo as notícias, isto é, os interesses do

utilizador nesse período. O texto das notícias é gerado automaticamente a partir dos

documentos em cada tema, podendo estes ser recuperados directamente a partir do

PersonalNews.

1.1. Contribuições

Este trabalho mostra-nos que a organização de vários tipos de informação pessoal em

temas/grupos e a apresentação desta sob a forma de jornal tem claras vantagens, no

3

sentido em que possibilita ao utilizador recordar-se de temas, os quais já estavam

esquecidos, pesquisar ficheiros e verificar relações e padrões ao longo do tempo. As

nossas principais contribuições são:

Inferência automática de temas a partir de documentos.

Extracção de excertos relevantes e representativos dos documentos pessoais

dos utilizadores.

Criação de notícias que resumam os temas.

Criação de uma interface e sistema interactivo onde se aplica a biblioteca

desenvolvida.

1.2. Publicações

Até ao momento, foram publicados artigos acerca do PersonalNews em:

Interacção2008 – 3ª Conferência Nacional em Interacção Pessoa Máquina.

IUI2009 (Submetido) – 2009 International Conference on Intelligent User

Interfaces. Sanibel Island, Florida, 8 – 11 Fevereiro 2009.

1.3. Estrutura do documento

Para que os leitores se consigam enquadrar com o problema a que nos propomos

resolver, é necessária uma análise exaustiva das soluções já existentes, análise que

irá ser realizada na secção 2 seguido por um overview na secção 3. Na secção 4

estudamos as várias formas de criação de clusters para a formação dos temas da

informação pessoal contida nos computadores. Após estarmos na posse dos vários

temas, passamos então, na secção 5 a descrever a forma criada para a extracção de

sumários dos documentos e a geração de notícias. Por fim, na secção 6 descrevemos

a interface da nossa aplicação. Para terminar o documento, fazemos a avaliação e

discussão dos resultados obtidos no teste da aplicação, isto na secção 7.

4

2. Estado da Arte

Com o aumento da quantidade da informação nos computadores pessoais tem-se

notado uma crescente necessidade de melhorar e criar novas interfaces de

visualização para pesquisar e navegar por toda esta informação. Para além do

aumento de informação, tem-se notado um aumento da variedade de informação,

principalmente na área do multimédia, o que não facilita a sua visualização. Têm

surgido várias investigações e várias aplicações para fazer face ao crescente aumento

de informação, no entanto estes dirigem-se num sentido específico. Normalmente

apenas se dedicam a uma parte da informação pessoal contida no computador dos

utilizadores. De seguida são apresentados exemplos de sistemas que se dedicam a

esta a apresentação de vários tipos de informação pessoal, das mais variadíssimas

maneiras.

2.1. Informação pessoal em E-mails

O E-mail foi inicialmente desenhado como uma aplicação de comunicação, no entanto

nos dias que decorrem este está, e cada vez mais a ser usado para funções

adicionais, como é o exemplo da gerência de tarefas e personal archiving. A isto

chama-se email overload. Este email overload cria problemas para a gerência de

infomação pessoal, como é o caso das perdas de informação [Whittaker and Sidner

96]. O email overload é em parte gerado devido ao facto dos email clients terem

evoluído pouco desde a sua invenção, continuando com as mesmas funcionalidades e

organização estrutural: múltiplas pastas, uma listagem textual das mensagens dentro

de uma determinada pasta e a possibilidade de ver uma mensagem seleccionada.

Estudos mostram que sistemas de pastas depressa se degradam com a recepção de

muitas mensagens [Whittaker96].

Assim sendo surgiram várias aplicações para tentar resolver este problema de uma

forma eficaz e estética. A principal preocupação dos produtores destas aplicações

estavam relacionadas com as interfaces destas, de modo a conseguir convencer

qualquer tipo de utilizador a usar essas mesmas aplicações. Conclui-se que

actualmente o email é usado para mais tarefas do que fora desenhado inicialmente,

sendo as que se destacam mais: entrega e armazenamento de documentos, work task

delegation, task tracking, armazenamento de contactos e de respectivas direcções,

para o envio de lembranças, para pedir assistência e scheduling appointments

[Whittaker96].

5

2.1.1. Themail

Um dos primeiros trabalhos abordados em relação a este tema mencionado acima, é o

Themail (Figura 1) [Viégas et al. 06]. Este trabalho, bastante recente, diz respeito a um

sistema em que o grande objectivo era criar uma visualização para visualizar

informação preservada em arquivos e-mail dos seus utilizadores, onde a interface da

aplicação era de extrema importância. A aplicação foi desenhada de modo a ajudar os

seus utilizadores a responder a duas perguntas de extrema importância: ―de que

coisas falo com cada um dos meus contactos e-mail?‖ e ―como é que as minhas

conversas diferem das outras pessoas?‖. Assim sendo, o Themail mostra uma relação

entre o utilizador com um dos seus contactos e-mail, numa dada altura.

Figura 1 - Interface do Themail

Na interface destaca-se a existência de muitas camadas de informação, cada qual

com o seu significado. Por exemplo, a camada que se encontra mais abaixo diz

respeito aos termos mais usados ao longo de um ano de troca de e-mails. A maneira

que os criadores da aplicação encontraram para realçar as palavras mais importantes,

era fazendo variar o tamanho da letra, com a frequência com que essas palavras

apareciam. Como neste trabalho a noção de tempo também tinha grande importância,

criaram-se dois métodos para mostrar a informação desejada ao longo do tempo, a

collapsed view e a expanded view. A limitação deste trabalho é tratar apenas da

informação contida nos arquivos do e-mail do respectivo utilizador, restringindo assim

muito o seu campo de aplicação. Outro problema desta aplicação é tratar todas as

mensagens da mesma forma, não tendo em conta a importância destas, isto é, não

existem pesos diferentes entre as várias mensagens, não se podendo assim dar

especial atenção às que se destacam.

2.1.2. Email visualization to Aid Communications

Email visualization to Aid Communications é um artigo onde se descreve um trabalho

sobre e-mails, para melhorar a percepção e visualização através de várias técnicas de

6

visualização de informação (trees, timelines e low-resulution overviews) num novo

cliente e-mail [Rohall et al. 01]. Estas visualizações dão maior importância às relações

existentes entre as mensagens e entre as pessoas que fazem a troca de e-mails. A

este novo cliente e-mail deu-se especial atenção a três atributos que poderão ser

visualizados: message threads, tempo e o conteúdo do documento.

As message threads são threads de conversação em e-mail (Figura 2), que

representam uma série de respostas a uma mensagem e as respostas a essas

respostas. No sistema, os autores criaram uma árvore para representar estas trocas

de mensagens.

Os nós têm diferentes cores, para assim

mostrarem a relação do sender de cada

mensagem com o receptor das mensagens.

Outro atributo muito importante, que já foi referido acima, é o tempo aquando a

mensagem foi recebida. Em relação a este, a ideia dos autores foi combinar as

message tree referidas acima (Figura 3), que dá importância ao primeiro atributo, com

uma timeline, para produzir

assim uma melhor visualização,

como é perceptível abaixo. As

linhas verticais representam as

fronteiras dos dias. O texto no

meio é o subject da thread.

Por fim, o último atributo, que diz respeito ao conteúdo do documento, a ideia é

transmitir uma vista geral de reduced-resulution do conteúdo do e-mail (Figura 4). A

combinação destes três atributos base

deu origem ao cliente e-mail, criado pelos

autores do artigo.

O artigo dá especial importância a

threads de mensagens, no entanto a

técnica de visualização escolhida pode

levar ao caos quando estas threads de

mensagens começam a crescer demasiado. Embora os autores do artigo referiram

que esta situação seria pouco provável de acontecer, deveriam ter adoptado uma

técnica que conseguisse fazer face ao problema. É de referir que as cores, embora

sejam para ajudar os utilizadores, estas podem ter o efeito contrário, devido ao facto

Figura 2 - Um e-mail thread

Figura 3 - Message tree com timeline

Figura 4 - Reduced-Resulution vista geral de

documentos.

7

de serem muitas. A mais-valia deste artigo, é de facto a técnica de visualização

adoptada para o atributo ―conteúdo‖ do documento, podendo esta ser de enorme

utilidade, devido ao facto de dar uma boa vista geral.

2.1.3. Mailview

Mailview é uma aplicação que fornece uma ferramenta de visualização interactiva de

e-mail que utiliza filtros e técnicas de coordenação para explorar os seus dados

arquivados [Frau et al. 05]. Esta aplicação permite aos seus utilizadores analisar e

visualizar e-mails armazenados, distribuindo-os em plots dependentes do tempo,

permitindo assim que o utilizador tenha uma noção temporal entre os seus e-mails

(Figura 5).

Figura 5 - Interfaces do Mailview

Assim sendo o Mailview, fornece uma visualização de e-mails focados, mostrando-os

cronologicamente, usando as técnicas de focagem, de contexto e múltiplas vistas.

Inclui (a) uma vista geral dos múltiplos e-mails representados por glyphs, (b) duas

vistas coordenadas e zooming descrevendo o tempo de chegada, especificando

cronologicamente a ordem de chegada dos vários e-mails e o tamanho relativo dos

vários e-mails, e (c) descreve detalhes específicos de um e-mail seleccionado. No

entanto, tal como a aplicação anterior, esta aplicação também se restringe muito,

tratando apenas da informação pessoal contida no e-mail.

2.1.4. PostHistory e Social Network Fragments

No trabalho seguinte são analisadas duas visualizações diferentes: a PostHistory e

Social Network Fragments [Viégas et al. 04]. Estas visualizações são ferramentas que

permitem aos utilizadores aceder aos seus hábitos e-mail através de padrões de

elevado nível. O PostHistory (Figura 6) e Social Network Fragments (Figura 7)focam-

se nas duas dimensões mais importantes dos arquivos e-mail: tempo e pessoas. O

primeiro foca-se no mundo social de relações e-mail, por exemplo entre duas pessoas.

8

Assim sendo o PostHistory foca-se nas interacções directas entre utilizadores com

cada um dos seus contactos e-mail. O segundo explora o agrupamento de pessoas

que emergem entre a social network de uma pessoa, pela troca de e-mails. Ambos os

sistemas têm mecanismos para mostrar como os ―mundos sociais‖ evoluem ao longo

do tempo. O PostHistory cria o seu esquema de visualização à volta da noção de

tempo, mostrando ritmos de trocas de e-mail de longo tempo numa interface que é

estruturada por um calendário. O sistema mostra também como as mudanças de

ritmos de trocas de e-mail afecta a social landscape do utilizador. O Social Network

Fragments usa o tempo para mostrar como as conexões entre o utilizador e os seus

correspondentes surgem e se dissolvem.

Figura 6 - Interface do PostHistory.

Em relação à interface do PostHistory esta encontra-se dividida em duas partes: o

calendário na parte esquerda, o qual mostra a intensidade de trocas e-mail ao longo

do tempo e os contactos. O calendário mostra a actividade e-mail na base de um dia,

em que cada dia é representado por um quadrado. O tamanho do quadrado

representa a quantidade de e-mails recebidos nesse dia. A cor dos quadrados indica

se as mensagens são ―personal‖ ou ―directed‖. Em relação aos contactos, estes

podem ter três representações possíveis: vertical, circular e alfabética.

A interface do Social Network Fragments também é composta por dois painéis: o

painel da social network e o painel da história.

Figura 7 - Social network e o da History.

9

O painel da história descreve cada time slice com dois quadrados. O quadrado de fora

indica o número de conexões que ocorreram durante o período de tempo e o quadrado

de dentro indica o número de relações. O painel da social network mostra toda a rede.

Em relação às reacções a estas interfaces, no geral foram bastante positivas, porque

conseguiam captar a atenção do utilizador, através da sua estética e simplicidade. No

entanto, numa análise mais profunda e quando as interfaces eram sujeitas a testes

mais exaustivos pelos utilizadores, esta tinha vários problemas, como por exemplo a

fraca legibilidade no nível geral, isto antes de se fazer zooming. As cores da interface,

em vez de ajudarem os utilizadores, faziam exactamente o contrário, baralhando-os,

devido ao facto de não saberem o significado delas. Este trabalho fornece umas ideias

gerais de como representar informação acerca dos e-mails, combinando-a com os

contactos do utilizador, no entanto é apenas isso, não tendo qualquer vertente noutro

sentido, tratando assim pouca informação pessoal.

2.2. E-mail e tarefas

Para além dos simples e-mail clients, existem outros mais complexos que tentam gerir

as tarefas dos seus utilizadores. No entanto, ainda não existe nenhuma aplicação que

o faça de forma eficaz e atraente para os utilizadores, isto é, os utilizadores não se

sentem atraídos por estas aplicações. É por esta razão que surgiram os artigos

seguintes, que tentam resolver o problema mencionado.

2.2.1. TimeStore

TimeStore é um trabalho sobre um sistema e-mail, cuja principal característica é usar

o tempo de chegada para a exposição do e-mail [Yiu et al. 97]. Visualizações

baseadas no tempo podem complementar ou substituir a semântica tradicional em que

se baseia o e-mail usando aspectos da memória humana que a maioria dos e-mails

ignora: organização temporal em memória auto-

biográfica (Figura 8).

Para além de gerir o e-mail, TimeStore fornece

suporte integral para gerir tarefas assim como outra

informação pessoal, onde o tempo seja o primeiro

método para aceder. Fornece também a

possibilidade de ligar as mensagens às tarefas.

Figura 8 - Interface do TimeStore.

10

Toda a interface é baseada no tempo, sendo a área principal constituída por um

gráfico de duas dimensões onde se encontra a informação, em que o eixo dos xx diz

respeito ao tempo e o eixo dos yy aos contactos do utilizador. A parte superior da

janela da aplicação contém um calendário, uma lista de tarefas organizadas por data e

uma lista de notas, também organizada por tempo. Os utilizadores podem também

fornecer keywords específicas para efectuar pesquisas, sendo o resultado destas

pesquisas apresentado na vista principal do sistema, isto é, nas duas dimensões

referidas acima. No entanto este sistema é bastante incompleto por possuir vários

problemas. O primeiro é a aplicação não fornecer nenhum meio para organizar os

nomes. Embora o conceito do TimeStore seja interessante e até útil, é muito limitado

no que diz respeito a sua interface, complicando, a interacção do sistema com o

utilizador. Tal como nos trabalhos analisados anteriormente, também este se limita à

informação baseada no e-mail, tendo no entanto este já alguma informação pessoal,

como é o exemplo das tarefas.

2.3. TaskView

TaskView é um trabalho que tem

como preocupação principal a gestão

de tarefas pendentes em e-mail e

explora soluções que usam

representações externas diferentes

de mensagens e tarefas associadas

[Gwizdka02a] [Gwizdka02b]. No

desenho da interface foi tido especial atenção a relação entre o tempo e as

mensagens (Figura 9). A interface baseia-se nas mensagens serem automaticamente

organizadas por tempo e por remetente, e sendo dispostas numa grelha de duas

dimensões.

2.4. Dispositivos Físicos

Ao longo das pesquisas efectuadas para a realização deste survey apareceram alguns

artigos acerca de dispositivos móveis que estavam de alguma forma relacionados com

a apresentação de informação pessoal, por exemplo fotografias. Nestes dispositivos,

como é óbvio, o mais importante é a sua interface, dando-se a esta especial atenção,

não dando deste modo atenção à parte física do dispositivo.

Figura 9 - Interface do taskView

11

2.4.1. Storytelling with Digital Photographs

Storytelling with Digital Photographs descreve um dispositivo móvel fácil de usar que

permite visualizar fotografias e construir histórias com as fotografias contidas no

dispositivo [Balabanović et al. 00]. Combinando uma interface inovadora e user

friendly, o objectivo deste trabalho foi criar um dispositivo acessível a qualquer

utilizador para que este possa partilhar e formar histórias com as suas fotografias

(Figura 10). Com o resultado das histórias o utilizador pode formar um filme, ou antes

um slideShow, podendo em qualquer altura o utilizador acrescentar/remover

fotografias à sua história actual. Para além disso, no meio de uma visualização de uma

história, pode passar para outra.

A interacção do dispositivo como o utilizador é feita através de uma interface

relativamente simples. O display é dividido em três partes: a parte central, que ilustra o

thumbnail seleccionado, ou seja, é

onde se vêm as histórias e as

fotografias; a área de áudio, para

quando uma determinada história foi

criada com áudio; área de

navegação, no topo do ecrã, que é a

representação gráfica para procurar

e navegar entre as várias fotos.

Este trabalho está limitado no sentido em que trata apenas de fotografias. Em termos

de interface, o protótipo estava bem formado para os seus objectivos. Já em relação

ao dispositivo móvel, embora este já não seja área sobre a qual vamos trabalhar, era

de certa forma arcaico, dados os avanços tecnológicos nesta área na época em que

este sistema foi criado.

2.4.2. Personal Digital Historian: User interface Design

Personal Digital Historian: User interface Design é um

artigo que descreve o design de uma user interface para

interacções multi-user informais para storytelling [Shen et

al. 01]. O objectivo deste artigo era criar um dispositivo

físico com uma user interface de forma a permitir

storytelling entre várias pessoas, através de dados digitais

pessoais, como por exemplo fotografias, vídeos, entre

Figura 10 - Interface do dispositivo móvel em questão.

Figura 11 - Dispositivo em

questão.

12

outros. Para isso o dispositivo físico teria de ser de um tamanho razoável, isto é, uma

superfície de uma pequena mesa redonda touch sensitive (Figura 11).

Em relação ao layout do sistema seria constituído por: uma grande área do dispositivo

para a criação das histórias; vários painéis para os ―narradores‖ das histórias para

interagirem com o sistema. As fotografias e os dados seriam expostos à volta da

mesa, podendo os utilizadores organizar com estas as suas histórias, movendo-as e

reordenando-as. A navegação é feita através de perguntas essenciais para

storytelling: ―Quem?‖, ―Quando?‖, ―Onde?‖ e ―O que?‖. Através de botões que se

encontram à volta do perímetro da mesa com o nome de ―people‖, ―calendar‖,

―location‖ e ―events‖. Os utilizadores podem também formar Boolean queries, ou filtros,

seleccionando para isso os itens ou regiões nas diferentes vistas. Embora este

trabalho tenha algum interesse na área sobre a qual o meu se insere, pensamos que

não será muito viável devido ao facto de estar limitado a dados digitais e de ser

necessário um equipamento especial para as tarefas referidas acima, uma mesa touch

sensitive, isto pelo menos para utilizadores comuns.

2.4.3. Forgot-me-not

O ―Forgot-me-not‖ foi um dos primeiros dispositivos físicos a aplicar a ideia de

representar informação pessoal passada [Lamming and Flynn 94]. A ideia principal do

―Forgot-me-not‖ era criar um dispositivo móvel que ―ajudasse‖ a memória do seu

utilizador, isto é, que resolvesse alguns problemas do utilizador, nomeadamente

problemas de memória. Por exemplo, lembrar onde se encontra um determinado

documento, lembrar o nome de uma determinada pessoa. Este dispositivo usava um

modelo denominado Intimate Computing, que enunciava um dispositivo móvel que

andava sempre com o seu utilizador, em todas as actividades do seu dia-a-dia, este

poderia recolher informação ao longo do tempo, modelando assim o objecto para as

necessidades do seu utilizador. Este dispositivo poderia recolher informação de todos

os objectos que rodeiam o seu utilizador, por exemplo o carro, o fax, do posto de

trabalho, etc. O dispositivo recolheria esses dados acerca de aspectos das actividades

do utilizador e organizava-a numa biografia pessoal. Para o dispositivo móvel, os

criadores queriam uma interface fácil de aprender, fácil de usar, de confiança, etc.

13

Figura 12 - Dispositivo móvel e interface.

A interface deveria permitir procurar e mostrar toda essa informação reunida e que se

encontra armazenada. O display do dispositivo encontrava-se dividido em duas partes:

title line, que ocupava a parte superior do ecrã, que continha uma subject e um filter,

onde poderiam ser colocados ícones para o utilizador dizer quais os eventos que

deveriam aparecer na parte inferior do ecrã; a parte inferior do ecrã, que era a maior,

chamada a biography onde aparecia toda a biografia. Neste trabalho aborda-se muito

a questão do armazenamento, mas para esse problema actualmente já existe solução.

Nota-se que é um dos primeiros trabalhos a aparecer na área devido ao facto de ser

arcaico, toda a noção de interface que os seus autores abordaram já se encontra

ultrapassada. No entanto é um dos artigos que li que se assemelha mais ao trabalho

que vamos realizar, devido ao facto da informação poder surgir de variadíssimas

fontes, não se limitando a e-mails ou a fotografias.

2.5. Social Networks

Outra área onde surgiu a necessidade de sistemas de visualização sofisticados foi nas

redes sociais. Com a crescente actividade nestas redes, tanto em termos de

participantes, como em termos de quantidade de informação houve necessidade de

criar novas técnicas de visualização para facilitar a interacção dos utilizadores e para

os ajudar a ter uma percepção geral sobre o sistema.

2.5.1. Newsgroup Crowds and AuthorLines

No Newsgroup Crowds and AuthorLines discute-

se o desenho, a implementação e a evolução de

duas visualizações de actividades de authors em

Usenet newsgroup [Viégas and Smith 04].

Figura 13 - Interface do AuthorLines.

14

O primeiro a abordar é o Newsgroup Crowds,

que representa graficamente a população de

authors num particular newsgroup, por exemplo,

ao longo de um mês. Os authors são amostrados

de acordo com o número de mensagens com

que contribuem para cada thread e o número de

diferentes dias que eles aparecem no espaço,

ilustrando e contrastando desta forma os

padrões de interacção dos participantes. Em

relação ao AuthorLines visualiza a actividade de ―postagem‖ de um determinado

author em todos os newsgroups ao longo de um período de um ano.

A interface do Newsgroup Crowds (Figura 14) é constituída por uma parte central, que

pode ser considerada como a vista geral, onde cada author é representado por um

círculo. Este círculo é colocado no ecrã segundo dois eixos: o vertical, que indica o

número de dias que um author esteve activo num dado mês e a horizontal, que indica

a média de posts por thread no newsgroup. A cor do círculo mostra o quão recente o

author esteve activo no newsgroup e a sua total actividade de ―postagem‖ no Usenet

em geral.

A interface contém também uma outra parte, do lado direito do display, que contém os

endereços e-mail de todos os authors. Se o utilizador seleccionar o endereço e-mail, o

respectivo círculo na vista geral aparece destacado.

A interface do AuthorLines (Figura 13) mostra a intensidade da actividade de

―postagem‖ ao longo do tempo. Contém uma timeline horizontal com os meses na

vertical. Linhas verticais de círculos figuram a actividade semanal, representando cada

circulo uma thread de conversação para qual o author contribui. O tamanho do círculo

representa o número de mensagem com que o author contribui para essa thread.

É interessante ver como se apresenta a informação dos vários utilizadores do Usenet

e só de um em particular, daí o interesse neste trabalho. Embora não tenhamos um

sistema de pesquisas como os trabalhos anteriores, é bem visível a noção de tempo e

de informação guardada ao longo do tempo, com uma boa interface.

Figura 14 - Interface do Newsgroup Crowds.

15

2.5.2. PeopleGarden

O PeopleGarden [Xiong and Donath 99], tal como o artigo

anterior, refere-se a interacções online em ambientes com

um elevado número de participantes. Neste artigo propõe-

se uma nova representação gráfica dos utilizadores

baseada nas suas interacções passadas. Usa-se, para

isso, uma metáfora de flor para criar retratos de dados

individuais, retratos que apresentam uma representação

abstracta do histórico de interacções do utilizador, e uma

metáfora de jardim de forma a combinar esses retratos para representar um ambiente.

Em relação às flores (peopleFlower), estas indicam o tempo na ordem e na saturação

das pétalas. O número de pétalas cresce conforme cresce o número de mensagens

―postadas‖. As pétalas mais antigas movem-se para a esquerda à medida que novas

pétalas vão sendo adicionadas à direita. As pétalas desvanecem-se à medida que o

tempo passa. As respostas ao post também são representadas através de círculos

pistil-like.

Em relação ao jardim, o peopleGarden (Figura 15) mostra as peopleFlowers dos

diversos utilizadores, facilitando assim a percepção de uma vista geral e a

comparação entre os vários utilizadores. Assim, jardins com mais flores indicam bons

grupos, onde existe muita discussão. Utilizam também as propriedades das flores que

foram plantadas há mais tempo serem mais altas, isto é, a altura da peopleFlower

indica há quanto tempo o utilizador se encontra no ambiente. Este trabalho é

interessante devido ao facto de ter adoptado metáforas diferentes e inovadoras para

representar informação de diferentes utilizadores ao longo do tempo. Tal como no

trabalho anterior não existe a noção de pesquisa.

2.6. Informação multimédia

Muita da informação pessoal contida nos computadores pessoais dos seus utilizadores

é informação multimédia. Este tipo de informação surge cada vez mais por vários tipos

de meios, como é o caso das fotografias, vídeos, documentos, etc. Surgiu assim

também a necessidade de se criarem sistemas que permitem visualizar e procurar

informação ao longo do tempo.

Figura 15 - Um PeopleGarden

16

2.6.1. Milestones in Time

Milestones in Time descreve um sistema que foi

construído sobre um motor de pesquisa, motor

este que consegue indexar toda a informação

que o utilizador viu ao longo de um determinado

tempo [Ringel et al. 03]. Esta informação pode

ser sobre páginas na Web, emails e

documentos, entre outros.

Os resultados dessas pesquisas são apresentados com a ajuda de uma timeline, em

forma de vista geral ou em detalhe. A vista sumária permite ver a distribuição dos

resultados da pesquisa ao longo do tempo. A vista detalhada permite analisar com

mais detalhe um determinado resultado da pesquisa. Assim sendo, a visualização

interactiva fornece uma representação timeline-based de resultados de pesquisa

marcada por marcos pessoais (fotos, tarefas) e públicos (notícias, férias). Os

resultados das pesquisas são fornecidos por um sistema de indexação pessoal e

sistema de pesquisa chamado Stuff I’ve Seen (SIS).

A interface do sistema (Figura 16) é relativamente simples. Do lado esquerdo do

display está a timeline, cujos endpoints estão rotulados com as datas do primeiro e do

último resultado devolvido pela pesquisa. O tempo flui do topo para o fundo do ecrã,

com os resultados mais recentes no topo. A vista geral, que se encontra no centro do

display mostra uma vista geral dos resultados obtidos com a pesquisa. Perto da vista

geral, pode-se visualizar as datas e os marcos. Embora a interface fosse relativamente

simples, pelos testes realizados ao protótipo os utilizadores encontraram dificuldades

em navegar na timeline. Este trabalho é bastante parecido ao que iremos realizar,

devido ao facto de se conseguirem fazer pesquisas sobre dados indexados, sejam

estes documentos, emails ou outro tipo de ficheiros. No entanto as pesquisas são

pesquisas normais, sem grande semântica por detrás.

2.6.2. Time-Machine Computing

Time-Machine Computing (TMC) é uma

aproximação time-centric para organizar

informação em computadores

[Rekimoto99a] [Rekimoto99b]. Permite

aos utilizadores visitar os estados

Figura 16 - Interface do Milestones in Time

Figura 17 - Screenshot do TimeScape desktop.

17

passados e futuros de um computador. Quando um utilizador necessita de consultar

um documento onde este estava a trabalhar num dado momento, pode viajar numa

dimensão de tempo e o computador restaurando o seu estado para esse momento.

Um dos principais objectivos deste trabalho é explorar as vantagens da combinação

de informação espacial com mecanismos de navegação cronológicos. TMC é um novo

conceito de user interfaces que permite aos utilizadores visitar espaços de informação

passados e futuros. Existem quatro conceitos chave, que caracterizam este conceito:

lifelong archival os information history – que se resume a guardar toda a informação no

computador, seja esta o histórico das visitas realizadas na Web, documentos, etc.;

Time-traveling: chronological navigation over archived information – a informação

arquivada pode ser usada para recriar o estado do computador para um determinado

momento; visualizing time in varius ways – restaurar o passado simplesmente não é

suficiente, é necessário fornecer várias vistas para a visualização desta informação

(por exemplo timelines e calendários); time-casting: inter-applicational communication

of time – para além de se restaurar o estado dos documentos, é desejável restaurar o

estado das aplicações para essa altura.

O timescape fornece vários meios para mudar o tempo do desktop. Quando por

exemplo o utilizador muda o selector de tempo, o sistema restaura o estado do

desktop para o estado em que estava nesse momento seleccionado. A interface do

sistema consiste apenas na parte central, que é uma vista geral do resultado da

navegação no tempo e uma pequena barra, localizada na parte superior do display

onde o utilizador selecciona as datas desejadas para as suas viagens no tempo.

Existem várias técnicas de visualização dos resultados das viagens: em desktop, que

basicamente resume-se a visualizar o desktop, como estava na altura seleccionada;

timeline e vista de calendário (Figura 17 e 18).

Figura 18 - Do lado esquerdo a timeline view e do direito a calendar view

O TMC é particularmente apropriado para gerir informação pessoal porque o

processamento de informação e a história pessoal estão fortemente ligados nesse

18

domínio. No entanto, a ideia da nossa tese não é aceder a estados passados da

aplicação, mas sim, encontrar qualquer tipo de informação indexada no computador.

No entanto este artigo é interessante no sentido em que ajuda a visualizar

variadíssimos tipos de informação e em vários tipos de escalas e formas de tempo,

isto é, em vários tipos de timeline.

2.6.3. LifeLines

LifeLines é um sistema que fornece um ambiente

de visualização para histórias pessoais que pode

ser aplicado por exemplo a dados médicos,

registos de tribunal, histórias profissionais e outro

tipo de dados biográficos [Plaisant et al. 96]. Por

exemplo, a condição médica de um determinado

paciente é indicado com timelines individuais,

enquanto os ícones indicam eventos. A cor da linha e a sua espessura ilustram

relações ou outro determinado significado. Este sistema ajuda assim a que não seja

esquecida informação, tendo uma noção geral da situação ao qual o LifeLines é

aplicado. Para além disso, as metodologias gerais que o desenho da interface seguiu

foram: apresentar um registo visual geral num único ecrã; promover acesso directo a

toda a informação detalhada sobre a vista geral com apenas um ou dois clicks do rato;

colocar informação crítica ou alertas no nível geral.

Os grandes benefícios do LifeLines são: reduzir a possibilidade de perda de

informação; facilitar a detecção de anomalias e de tendências; facilitar o acesso a

dados. No entanto, a nível de interface tinha um problema, que era a representação de

muita informação no nível geral. O problema foi solucionado aproximando as linhas

umas das outras quando existe grande quantidade de informação, continuando assim

a ver-se toda a informação. Usaram também o denominado semantic zooming [22].

Para além disso o LifeLines está organizado em facets (Figura 19), podendo estas

expandir e contrair para desta forma aumentarem ou diminuírem o nível de detalhe.

Também existe a possibilidade de rescaling (zooming in) para quando os dados se

estendem ao longo de um grande período de tempo. As vantagens claras deste

sistema é ter-se sempre uma vista geral da informação e o fácil acesso aos detalhes.

No entanto, este trabalho também só serve para retirar algumas ideias para o nosso,

isto porque, embora possa tratar de uma grande variedade de dados, eram apenas

dados pessoais e não informação electrónica. Para além disso, neste trabalho não

existe a noção de pesquisa que é muito importante no nosso trabalho.

Figura 19 - Interface do LifeLines.

19

2.6.4. Lifestreams

O artigo Lifestreams é sobre um sistema que serve para, dinamicamente, se organizar

o workspace pessoal de um utilizador [Fertig et al. 96] [Freeman and Gelernter 96].

Lifestreams usa uma simples

metáfora organizacional, uma

stream de documentos

ordenada no tempo. Filtros

stream são usados para

organizar, monitorizar e

sumarizar informação acerca do utilizador. Assim sendo o Lifestreams é um sistema

para gerir informação electrónica pessoal (Figura 20).

Lifestreams é baseado nas seguintes observações: o armazenamento deve ser

transparente; directórios são inadequados como meio de organização; o

armazenamento deve ser automático; o sistema deve fornecer uma lógica sofisticada

para sumarizar ou comprimir um grande número de documentos relacionados, sobre o

qual o utilizador quer ter uma vista geral.

Em relação a interface deste sistema, é baseada numa representação da metáfora

stream. Existe uma grande combinação de cores e de animações para indicar

características especiais dos documentos. Por exemplo, uma margem vermelha indica

que o documento ainda não foi visto, e a bold significa que é writable. Os documentos

novos que chegam entretanto pelo lado esquerdo, e documentos criados entram na

stream vindos de cima, empurrando os restantes, fazendo um push numa pilha. Para

além disso contém vários botões e menus que facilitam aos utilizadores a interacção

com o sistema.

Este sistema, tal como os outros artigos já referidos anteriormente, contém alguma

informação que poderá vir a ser usada no nosso trabalho, no entanto o trabalho limita-

se ao tratamento de documentos. É interessante ver a metáfora usada na interface do

sistema e a importância destas metáforas, de uma forma geral, serem bastante

intuitivas para facilitar a interacção do sistema com o utilizador.

2.6.5. MyLifeBits

O artigo que se segue é o MyLifeBits [Gemmel et al.02] [Gemmel et al. 02] [Gemmel et

al.06]. Este trabalho é um projecto para aplicar a visão Memex, criada por Vannevar

Bush em 1945. É um sistema para guardar todos os media digitais de um utilizador,

Figura 20 - Interfaces do Lifestreams.

20

incluindo documentos, imagens, vídeos, etc. O sistema foi concebido sobre três

princípios: (1) colecções e pesquisas são a base para organização; (2) devem ser

suportadas muitas visualizações e (3) deve ser possível tirar anotações de forma

simples e eficaz. A visão Memex é a seguinte: ―a device in which an individual store all

His books, records, and communications, and which is mechanized so that it may be

consulted with exceeding speed and flexibility‖. Assim o objectivo do MyLifeBits é

implementar uma personal digital store.

De uma forma geral, o sistema é uma base de dados de recursos (media) e

hiperligações. Uma hiperligação indica que um recurso anota outro. O MyLifeBits usa

SQL Server com Índex Server, fornecendo assim pesquisas full-text. O schema da

base de dados é relativamente simples: existe uma tabela para recursos, uma para

hiperligações de anotação e outra para tabela para links de colecções. Na interface, os

resultados de uma pesquisa podem ser vistos de múltiplas formas: detail que é uma

lista dos resultados com as suas propriedades; thumbnail, onde se apresentam

imagens em miniatura dos recursos, numa espécie de grelha; timeline, onde se

mostram thumbnails numa escala de tempo linear; clustered-time faz o cluster de

thumbnails por tempos parecidos, e organiza-os numa ordem temporal.

O MyLifeBits inclui funcionalidades que permitem fazer anotações de forma simples.

Para além das funcionalidades referidas anteriormente, o sistema facilita também a

criação de histórias com ajuda de um método chamado Interactive Story by Query

(ISBQ). ISBQ permite aos utilizadores criarem queries e depois fazer drag and drop de

selecções numa história.

Figura 21 - Screenshots das vistas

Este survey enquadra-se no tema do nosso trabalho na medida em que este permite

pesquisar informação sobre vários tipos de ficheiros, visualizando o resultado destas

pesquisas de várias formas, variando estas no seu grau de detalhe. É interessante

analisar as interfaces escolhidas para as diferentes formas de representação dos

dados (Figura 21), podendo retirar destas várias ideias. No entanto, num nível mais

21

geral, a interface era relativamente limitada, a nível de outras opções, limitando-se a

apresentar as tais formas de representar os resultados das pesquisas de forma eficaz.

2.7. Pesquisadores e Browsers

Como já foi referido anteriormente, o aumento e a diversidade de informação pessoal

tem criado vários tipos de problemas aos utilizadores comuns de computadores

pessoais, devido ao facto destes estarem a perder a noção geral do seu sistema. Para

além disso, a grande quantidade de informação dificulta a navegação por esta e

também a sua pesquisa. Devido a estas razões, surgiram alguns sistemas com

visualizações interessantes, os quais iremos analisar de seguida.

2.7.1. Stuff I’ve Seen

Stuff I’ve Seen é um sistema que facilita a reutilização de informação [Dumais et al.

03]. Esta reutilização é feita de dois modos: o primeiro consiste num sistema que

guarda qualquer informação que o utilizador tenha visto, através da indexação, seja

esta referente ao seu e-mail pessoal, documentos criados/editados pelo utilizador ou

mesmo páginas acedidas na Web; o segundo é quando a informação já foi ―vista‖ e

indexada, é possível, através de uma interface de pesquisa, reencontrar essa

informação.

A interface permite ao utilizador especificar queries, visualizar e manipular os

resultados. Os utilizadores têm possibilidade de fazer uma pesquisa mais geral e de

seguida refinar a pesquisa, filtrando e sorteado interactivamente os resultados.

A interface, denominada Top View (Figura 22), é uma list view com filtros para refinar

atributos em cada coluna. Os resultados das pesquisas são mostrados na parte

inferior do display. Para cada resultado é apresentada informação adicional, como por

exemplo o título do documento, autor, etc. É também mostrado um ícone que identifica

o tipo de documento que é. Como já foi referido acima, depois de ser aplicado uma

pesquisa pode-se refinar esta mesma pesquisa, através da secção de filtros. Estes

filtros podem ser aplicados através da selecção de checkBoxes.

22

Figura 22 - Screenshot do SIS, em Top view

De forma geral, este sistema é semelhante ao sistema que vamos desenvolver ao

longo deste trabalho, daí o seu interesse. A nível de interface dá para retirar ideias

interessantes do SIS, como é o caso do refinamento das pesquisas através de filtros

de uma forma simples que são as checkboxes, permitindo assim aos utilizadores

encontrar informação desejada de forma simples e eficaz. Em relação ao resto da

interface, mesmo os próprios autores do artigo referiram que era uma das partes onde

podem efectuar alterações para melhorar o seu aspecto, devido ao facto de ainda ser

uma simples list view.

2.7.2. Plath

O próximo survey é o Plath (Personal Search and Organization Made Easy) [Cutrell et

al. 06]. Descreve-se o design de um sistema que faz a optimização de pesquisas para

informação pessoal com uma interface simples que junta a pesquisa e o browsing com

uma variedade de sugestões associativas e contextuais. Para além disso, o Plath

(Figura 23) suporta um esquema de tagging para organizar conteúdo pessoal por

sistema de armazenamento (por exemplo o e-mail). De uma forma geral, o Plath

permite aos utilizadores encontrar informação baseada no que o utilizador se lembra e

onde quer que esteja a informação. Em relação aos princípios de desenho que o

sistema seguiu, citamos os mais importantes: unify text entry and filtering, isto é, as

pesquisas tanto devem ser possíveis através da inserção do texto da query a

pesquisar, como só por filtro, ou mesmo ambos; os critérios actuais da busca devem

ser visíveis e salientes em todas as situações, isto significa que em qualquer altura o

utilizador tem de saber quais os critérios de uma pesquisa actual, os filtros aplicados

sobre a pesquisa, ou seja, uma noção geral do sistema em cada momento; promova a

interação rápida da query, isto é, as pesquisas têm de ser rápidas, ou pelo menos,

depois de o utilizador carregar em Enter, devem aparecer resultados assim que

23

possível; Permita a interacção baseada no reconhecimento. Em relação a Interface,

esta é composta por três áreas principais: área de query, onde estão os comandos

query (go, back, forward, etc.) e a query box, onde se coloca o texto da query; sob

esta, encontra-se a área de filtro; à direita destas duas últimas áreas encontra-se a

secção dos resultados.

De uma forma geral, os resultados do

sistema são bastante positivos. Entre

estes aspectos encontra-se o facto do

modelo de query ser simples, no

entanto muito eficaz. Outro aspecto

muito positivo é os utilizadores

poderem modificar as suas queries nos

resultados de uma pesquisa. No

entanto, existiam alguns problemas

com o sistema. O maior problema que o sistema tinha prendia-se com o tagging. A

nível da interface, era relativamente simples para o que era necessário, conseguindo

uma boa interacção com o utilizador, no entanto, é demasiado simplista para aplicar

ao nosso trabalho. No nosso ver, a mais-valia deste artigo são os princípios de

desenho em que se baseou, referidos anteriormente.

2.7.3. Personal Chronicling Tools

Neste artigo propõe-se um conjunto de ferramentas para guardar eventos pessoais

(PCT – Personal Chronicling Tools), para suportar trabalhadores de conhecimento da

empresa nos eventos digitais de armazenamento e de publicação [Kim et al. 04]. PCT

é composto por quatro ferramentas primárias: (1) monitorização de eventos –

capturam os eventos do utilizador como por exemplo e-mail, paginas Web,

documentos editados, etc.; (2) anotação interactiva – permite ao utilizador fazer

tagging e book marking de momentos interessantes; (3) browser/search – permite

pesquisas semânticas; (4) edição/publicação – facilita a publicação de eventos

importantes. Este trabalho é claramente orientado para pessoas num contexto

empresarial. Ora, neste contexto, existe uma grande perda de informação devido a

informação que não é capturada, informação que não é organizada eficientemente

para à posteriori ser pesquisada ou simplesmente, a informação não estar disponível

para pesquisa. Assim o principal objectivo do PCT (Figura 24) é fornecer ferramentas

que permitem aos empregados capturar, organizar, recuperar e partilhar registos das

suas actividades, interacções e interesses. Enquanto as ferramentas de monitorização

Figura 23 - Screenshot do Phlat.

24

de eventos captam toda a actividade do utilizador com o computador, as anotações e

tagging interactivo permite ao utilizador fazer tagging e anotações manuais. Para isso

o utilizador tem um tagging button.

Figura 24 - Interface de browsing do PCT

Relativamente ao browsing para a pesquisa e recuperação de informação, usa-se uma

interface de pesquisa como um aspecto comum a qualquer outra, como é observável

na figura acima. Na parte superior do layout encontra-se a caixa de texto onde se

insere a query para a pesquisa desejada. Existe também uma opção de More, que ao

ser seleccionada abre um sub-menu nesse sob a caixa de texto, onde podem ser

seleccionados alguns filtros através de check-boxes e onde também pode ser feita

uma selecção por data. Na parte inferior do layout surgem os resultados das

pesquisas. Em relação à publicação e partilha de informação, existe no layout, na

parte direita deste, um menu chamado PCT views and Access Control. Este trabalho

enuncia a elaboração de sistema guardar/recuperar informação vocacionado para as

empresas. É sempre interessante visualizar diferentes âmbitos aplicacionais da

recuperação e visualização de informação. No entanto, em relação à interface deste,

esta é limitada, na medida em que é um sistema de pesquisa comum, não existindo

uma profunda abordagem ao nível da visualização de informação.

2.7.4. FacetMap

A maioria dos sistemas de pesquisas

são baseados no texto, e a visualização

destes resultados limitam-se a

apresentar uma lista com um scroll. O

FacetMap (Figura 25) é um sistema de

visualização interactiva, guiado por

queries, generalizável para um grande

conjunto de informação através da sua

metadata [Smith et al. 06]. Figura 25 - Interface do Facetmap.

25

O FacetMap tentou ultrapassar o paradigma dominante para procuras e browsing

baseadas em texto através de visualizações interactivas e query-driven, generalizáveis

para uma grande quantidade de data stores ricas em informação metadata. O

objectivo inicial dos autores do artigo era explorar os designs para um sistema de

recuperação de informação pessoal que permitisse que os utilizadores tirassem

partido das suas capacidades visuais espaciais e que também desse prazer de usar.

Assim sendo, o FacetMap é uma visualização para interagir com grandes bases de

dados e ricas em metadata permitindo ao utilizador juntar queries complexas por

iteração e por interacção directa com o output gráfico do sistema.

O FacetMap permite aos utilizadores realizarem pesquisas e browse tarefas,

seleccionando iterativamente atributos para filtrar o conjunto de dados e refinar os

resultados no display. O princípio base por detrás do FacetMap é mostrar qualquer

conjunto de dados da maneira mais eficaz, dado a restrição do tamanho do ecrã, o

número de itens e os seus atributos. O sistema, em vez de começar com o ecrã vazio

e branco, mostra logo um conjunto de dados organizado (por tempo, autor, tipo, etc.).

Quando o conjunto de dados é demasiado grande para o display, o FacetMap junta-os

numa bolha oval, representando assim o conjunto de dados que partilham atributos,

oferecendo assim uma vista geral da distribuição dos itens ao utilizador. Para realizar

uma pesquisa ou um browse o utilizador simplesmente selecciona uma das bolhas,

clicando sobre ela, aplicando assim um filtro aos dados, reduzindo logo à partida o

conjunto de dados. O espaço do ecrã é dividido em duas partes: do lado esquerdo

têm-se as facets que ainda não foram usadas para filtrar os dados e do lado esquerdo

estão as facets com os valores que estão a ser usados no filtro.

Os autores deste artigo, de facto conseguem criar um novo paradigma para a

pesquisa e browse através da metáfora usada. Em termos de interface, esta é

bastante atraente e simples de usar, simplificando a visualização dos resultados ao

longo da pesquisa e permitindo uma boa interacção entre o sistema e o utilizador. Em

relação à escalabilidade do sistema, a forma como os autores resolveram o problema

(juntando dados com características iguais) também foi bem conseguida, tornando-se

assim o sistema escalável. Os utilizadores por vezes ficam confundidos, não sabendo

qual a facet correcta que devem seleccionar para a sua pesquisa.

2.8. Discussão

Depois de analisar todos os sistemas mencionados anteriormente, existe a

necessidade de os comparar entre si, para que desta forma se consiga aproveitar o

26

melhor de cada um, de uma forma geral, conseguir visualizar os prós e os contras dos

vários sistemas.

Embora todos os trabalhos tenham pontos interessantes para a resolução dos

problemas que existem na visualização de informação pessoal, nenhum consegue dar

resposta a todos eles, estando assim as respostas aos problemas repartidos entre os

vários artigos. Na tabela 1 encontra-se um resumo dos trabalhos segundo várias

dimensões que são relevantes para o meu trabalho.

No nosso trabalho e do nosso ponto de vista, a dimensão ―Overview‖ é a dimensão

mais importante. Os trabalhos que tentam uma aproximação ao problema referido,

deveriam todos fazer de esta a dimensão mais importante, isto porque assim a

utilização não perde a percepção geral do seu conteúdo, isto é, da sua informação

pessoal. Na realidade, praticamente todos os trabalhos analisados respeitam esta

dimensão, a excepção de dois. A ausência desta dimensão deve-se, no nosso ver, a

serem dispositivos físicos, sendo difícil manter uma ―Big Picture‖ do sistema.

Uma outra dimensão importante é a Time Navigation. Como a informação pessoal de

um utilizador se encontra dispersa no tempo e o utilizador trabalha em vários temas

tanto ao mesmo tempo como ao longo do tempo, existe a necessidade de permitir a

este a navegação no espaço temporal na sua informação. Dos trabalhos analisados

nem todos possuíam esta feature. Cerca de metade dos trabalhos não permitiam

qualquer navegação no tempo aos utilizadores na sua informação pessoal.

Em relação ao tipo de visualização utilizada, isto é, visualização 2D ou 3D, a grande

maioria dos trabalhos usava visualizações 2D, existindo apenas 3 trabalhos que

usavam a visualização 3D. Para o problema em questão a visualização 3D pode ser

usada para inserir mais uma dimensão na informação disponibilizada ao utilizador, e

não para meros aspectos decorativos.

Por fim encontramos as seguintes dimensões: zooming, filtering e details on demand.

Todos estes contribuem para melhorar alguns aspectos nos trabalhos, reflectindo a

maioria das vezes a granularidade com que os trabalhos analisam a informação em

questão.

27

Abordagem Organização Overview Vis.

3D

Vis.

2D

Time

navigation

Zoom-

ing

Fil-

tering

Details

on

demand

Themail Temporal

Email

Visualization to

aid com-

munications

Temporal

MaiView Espacial

PostHistory e

Social Network

Fragments

Temporal e

especial

TimeStore Temporal

TaskView Temporal

Storytelling

with D.

Photographs

-

Personal Digital

Historian -

Forget-me-not -

Newsgroup

Crowds and

AuthorLines

Espacial

PeopleGarden Espacial

Milestones in

Time Temporal

Time-Machine

Computing

Temporal e

Espacial

LifeLines Temporal

Lifestreams Temporal

MyLifeBits Temporal e

Espacial

Stuff I’ve Seen Espacial

Plath Espacial

Personal

Chronicling

Tools

Espacial

FacetMap Espacial

Tabela 1 - Classificação dos trabalhos descritos

Todos os trabalhos, à excepção dos pesquisadores e navegadores, do Time-Machine

Computing e do Milestones in Time, dedicam-se apenas à representação de um tipo

de informação pessoal, não abrangendo toda a informação pessoal contida num

computador pessoal, daí as suas limitações. Os que conseguem abordar toda a

informação pessoal, não conseguem criar uma interface coerente e eficaz para

apresentar essa informação.

O nosso trabalho vai tentar reaproveitar os aspectos mais positivos dos trabalhos

analisados nesta secção, tentando responder a todas as dimensões referidas acima.

28

No entanto existe uma delas que à partida não irá ser tida em conta, que é a

visualização 3D, visto que a nossa interface vai ser em forma de jornal.

Uma dimensão, que de certa forma estava relacionada com a anterior, é a

organização da informação. Esta pode ser dividida em temporal e espacial. Também

nesta dimensão não há consenso, estando alguns trabalhos organizados

temporalmente e outros espacialmente. Existem mesmo alguns que têm em conta as

duas organizações, isto é, conseguem organizar-se espacialmente e temporalmente.

29

3. Overview

O nosso trabalho pode ser dividido numa série de blocos, todos estes interligados para

atingir o mesmo fim: permitir a um determinado utilizador visualizar a sua informação

pessoal como um todo, isto é, sem que este perca a percepção geral de toda a

informação. Para além disso, e como objectivo secundário, a identificação e respectiva

apresentação de padrões existente na informação pessoal do utilizador.

A figura 26 identifica as etapas seguidas para a resolução do nosso problema.

Figura 26 – Etapas seguidas ao longo do PersonalNews

Toda a aplicação é baseada em informação pessoal, nomeadamente documentos

pessoais dos utilizadores. Assim, a primeira etapa é a indexação desses documentos

pessoais e a extracção de imagens desses mesmos documentos, para que estas

possam ser utilizadas na fase da exposição das notícias. A fase que se segue é a

identificação dos temas. Nesta criam-se grupos de documentos pertencentes ao

mesmo tema. Realiza-se também nesta fase a extracção de palavras-chave destes

temas, para assim ficarmos na posse das palavras mais significativas do tema. Segue-

se a extracção de excertos das notícias. Esta, para além de usar os documentos da

primeira fase, usa as palavras-chave extraídas da fase anterior para a que desta forma

se possam extrair os excertos mais significativos dos documentos. Após a fase de

extracção dos excertos mais significativos dos documentos, segue-se a extracção dos

sumários. Nesta extracção, que tem por base os excertos da fase anterior, é, de uma

forma geral, a selecção da secção mais importante de um excerto, que passa deste

modo a ser considerado um sumário. Na quinta fase procede-se à geração das

notícias, onde se inclui todas as operações de língua natural.

30

Por fim, na última fase encontra-se a exposição das notícias. Para tal, elaborou-se

uma interface que usa a biblioteca criada ao longo do trabalho, isto é, nas etapas

anteriores. No geral, pode-se verificar que o trabalho é constituído por duas grandes

partes: a criação da biblioteca e a segunda que consiste na elaboração de uma

interface que aplique a biblioteca, sendo, no entanto, independentes. A biblioteca

engloba os 5 primeiros passos. Resta o último passo que é da elaboração da interface.

31

4. Descoberta de Temas

Uma vez apresentados os objectivos e o enquadramento do nosso trabalho,

começamos agora com a descoberta dos temas. Esta descoberta de temas incide

sobre a informação pessoal dos utilizadores, nomeadamente documentos.

4.1. Motivação/Introdução

Qualquer utilizador trabalha em várias áreas e vários temas ao longo do tempo. A

informação disponível na nossa base de indexação possibilita-nos a análise desta e a

organização da mesma em vários temas, que são representativos das áreas que um

determinado utilizador andou a trabalhar, como iremos ver de seguida.

De forma a se conseguir visualizar informação mais relevante para o utilizador em

temas, é necessário existir um pré-tratamento dessa informação antes de ser

apresentada ao utilizador. Da mesma forma, para que o conhecimento contido nas

várias fontes de informação possa ser apresentado ao utilizador através de padrões, é

necessário que seja organizada em grupos de forma a que, à posteriori, estes grupos

sejam apresentados aos utilizadores da aplicação em secções diferentes, ou de forma

claramente separável.

Cada grupo necessita de ter uma breve descrição, isto é, um sumário que descreva de

forma sucinta os vários tópicos mais relevantes do respectivo cluster, isto é, do tema.

4.2. Método

A forma escolhida para a descoberta de temas é através do agrupamento de fontes

através de clustering por tema.

Esta etapa de clustering pode ser decomposta em várias subsecções, subsecções que

vão ser explicadas de seguida. Numa primeira fase é necessário criar os corpii dos

ficheiros desejados para análise, isto é, dos dados que o utilizador vai ver. Os corpii

contêm as palavras e o número de vezes que essas palavras surgem nos ficheiros. O

objectivo da análise dos corpii é a obtenção das keywords dos respectivos ficheiros

usando o TF-IDF [Brooks and Montanez 06] [Liu et al. 04]. Depois de estar na posse

das keywords, inicia-se a fase referente ao algoritmo LSA, que serve para extracção e

representação do significado no uso contextual das palavras de grandes corpii de

texto.

32

Após o cálculo da matriz LSA estamos na posse das matrizes de distâncias, que pode

ser usado como input para o algoritmo de clustering (QT-Clust), o qual vai criar então

os grupos de dados agrupados em diferentes temas.

4.3. Matriz de distâncias

Para criar os clusters é necessário algum género de medida, com que se possa medir

a distância entre os dados que se desejam agrupar. O método escolhido para obter

esta medida foi através de uma matriz de distâncias. Esta mede a distância semântica

entre os documentos. Nas linhas a matriz contém os documentos e nas colunas

contém as keywords utilizadas. Assim sendo, as células da matriz contêm o número

de vezes que a keyword (coluna) se encontra no documento (linha). Cada linha pode

ser vista como um vector n-dimensional que nos dá a posição do documento no

espaço semântico. A distância entre os documentos é pois dada pela distância

euclidiana entre os respectivos vectores.

Para a criação da matriz de distância utilizou-se o algoritmo LSA, o qual será

apresentado da secção seguinte.

4.4. LSA

A Latent Sematic Analysis (LSA) pode ser aplicado para induzir e representar aspectos

do significado das palavras [Berry et al. 1995] [Berry92] [Landauer and Dumais 94].

LSA é uma variante do modelo vector space que converte documentos para uma

matriz termo-documento (term-document), em que cada célula da matriz indica a

frequência que cada termo (termos que estão representados nas linhas) ocorre em

cada documento (documentos que se encontram representados nas colunas). O LSA

é parecido com modelos de redes neuronais, no entanto é baseado no singular value

decomposition, uma técnica matemática de decomposição de uma matriz.

O LSA é uma teoria/método para extracção e representação do significado no uso

contextual das palavras de grandes corpii de texto. A ideia base deste algoritmo é que

o agregado de todos os contextos em que uma determinada palavra aparece fornece

um conjunto de restrições que largamente determinam a similaridade do significado

das palavras dos documentos. Este método não usa qualquer dicionário, base de

conhecimento ou qualquer outra ferramenta, utilizando apenas como input o texto em

análise, o que é adequado para o nosso caso, uma vez que nos é fácil prever os

temas prever os temas que podem ter interesse para o utilizador.

33

De uma forma geral, o algoritmo LSA permite a criação de uma matriz, que na linhas

representa os documentos em análise e nas colunas os documento-keywords dos

documentos em questão, criando assim uma matriz documento-keyword. Assim

sendo, seja li uma linha e cj uma coluna da matriz e Oij um elemento, Oij representa o

número de vezes que o termo j aparece no documento i. Depois de se ter a matriz

documento-keyword, é aplicado o SVD (Simple Value Decomposition). O SVD divide a

matriz documento-keyword em três matrizes: U, S e V. A matriz U diz respeito aos

termos, enquanto que a matriz S contém os valores mais representativos da matriz

documento. A matriz V contém os documentos. De seguida escolhe-se um tamanho

(nível k, ou simplesmente dimensão) para trabalhar com as três matrizes, obtendo-se

as matrizes U‘, S‘ e V‘, matrizes estas que agora contêm as keywords pesadas, isto é,

as keywords menos importantes não irão possuir qualquer peso ao contrário das mais

importantes. Finalmente, usam-se estas matrizes para reconstruir a original, matriz

esta que pode ter keywords que não ocorreram num determinado documento, isto

porque correspondem com o tema e keywords que antes de correr o LSA eram

importantes, mas que no entanto agora não vão ter qualquer peso por não ocorrerem

no tema, ou por terem sido eliminadas pela dimensão.

De seguida apresenta-se um exemplo de ilustração, onde é aplicado o LSA

[Deerwester et al. 90] (Tabela 2 e Tabela 3).

Titles

c1:

Human machine interface for Lab ABC computer

applications

c2:

A survey of user opinion of computer system response

time

c3: The EPS user interface management system

c4: System and human system engineering testing of EPS

c5:

Relation os user-perceived response time error

measurement

m1: the generation of random, binary, unordered trees

m2: the intersection graph of paths in trees

m3: Graph minors IV: widths of trees and well-quasi-ordering

m4: Graph minors: A survey

Tabela 2 - Extractos de texto usados no exemplo de aplicação do algoritmo LSA

34

Terms Documentos

c1 c2 c3 c4 c5 m1 m2 m3 m4

human 1 0 0 1 0 0 0 0 0

interface 1 0 1 0 0 0 0 0 0

computer 1 1 0 0 0 0 0 0 0

user 0 1 1 0 1 0 0 0 0

system 0 1 1 2 0 0 0 0 0

response 0 1 0 0 1 0 0 0 0

time 0 1 0 0 1 0 0 0 0

EPS 0 0 1 1 0 0 0 0 0

survey 0 1 0 0 0 0 0 0 1

trees 0 0 0 0 0 1 1 1 0

graph 0 0 0 0 0 0 1 1 1

minors 0 0 0 0 0 0 0 1 1

Tabela 3 - Matriz term-document.

Neste exemplo escolheu-se propositadamente termos em títulos de forma a conseguir-

se uma boa aproximação usando apenas duas dimensões. Assim na figura 27 é

apresentado um gráfico bidimensional dos termos e dos títulos dos documentos; as

suas coordenadas são simplesmente as duas primeiras colunas na matriz U e V

respectivamente.

Figura 27 - Resultados obtidos depois da aplicação do algoritmo LSA.

A partir da análise da figura 27, consegue-se facilmente verificar que os vários

documentos estão organizados segundo um tema, isto é, os documentos m

35

encontram-se bem separados dos documentos c, representando m e c dois temas

diferentes.

A matriz resultante do algoritmo LSA vai ser de extrema importância para a criação

dos clusters, isto porque para o algoritmo de clustering vamos necessitar uma matriz

de distância, que é criada com a ajuda da matriz resultante do LSA.

4.5. Escolha das Keywords

A escolha das keywords é um passo de elevada relevância por estas terem um papel

importante no algoritmo LSA, com que se vai criar a matriz de distâncias.

A extracção das keywords foi realizada de duas formas diferentes, isto porque ambas

produziam resultados diferentes, existindo assim a necessidade de verificar qual seria

a melhor. Numa primeira abordagem seleccionavam-se as N mais frequentes para ser

criada a matriz de distância. Esta forma era a maneira simples de extrair keywords, no

entanto poderia não ser o melhor método para o fazer.

Depois de uma análise inicial das keywords seleccionadas (resultados na tabela 3),

através deste primeiro método de selecção escolhido, conclui-se que este não era o

mais correcto, isto porque surgiam keywords sem qualquer interesse, como por

exemplo números. Após os testes efectuados, os resultados, numa primeira

aproximação continham stop words, que são palavras de ligação de frases, por

exemplo o the, to, or, entre outras. Era necessário ignorar estas stop words para se

obterem resultados mais interessantes. Na segunda aproximação foi usado o método

TFIDF [Brooks and Montanez 06] [Liu et al. 04] para a extracção de keywords. Assim

sendo, foi necessário remodelar a selecção de keywords. Optou-se pela selecção de

palavras através do algoritmo TFIDF, conseguindo-se assim obter melhores

resultados.

A função standard do TFIDF combina a frequência dos termos (Term frequency TF), o

qual mede o número de vezes que uma palavra ocorre no documento e a frequência

inversa do documento (inverse document frequency IDF).

idfa = log(N/df

a)

tfidfag=tf

ag x idf

a

Assim sendo o idfa é a frequência inversa do documento da palavra a, nos N

documentos, sendo dfa o número de documentos em que a palavra a aparece. Por fim,

tfag é o número de vezes que a palavra a aparece no documento g.

36

Com o TFIDF, as keywords vêm em forma de Stem (usando o Porter Stemmer

[Porter80]), isto é, as palavras já vêm reduzidas à sua forma base, sem ter em conta

as variações que a palavra pode ter. Um exemplo disso é a palavra drawings. Esta

palavra quando reduzida à sua forma stem fica draw, isto é, draw é a raiz da palavra

drawings.

4.6. Matriz de Distância LSA

Um dos objectivos para a utilização do algoritmo LSA era, depois de este ter devolvido

a matriz LSA, criar a uma matriz de distância. Esta matriz de distância vai ter enorme

importância, na medida em que os input‘s dos algoritmos de clustering é esta matriz e

outro factor, como veremos de seguida.

A matriz resultante do algoritmo LSA fornece as coordenadas para o cálculo da matriz

de distâncias, isto é, como esta matriz possui nas suas linhas os documentos, e nas

colunas, as várias keywords, que representam cada uma das coordenadas. Assim, a

matriz LSA é uma representação espacial, num espaço de dimensão igual ao número

de keywords existentes. Para o cálculo da matriz de distância bastava assim ter os

documentos nas linhas (i) e nas colunas (j) e em cada Dij ter a distância do documento

i ao documento j. O cálculo da distância foi realizado através da distância euclidiana.

4.7. Criação dos clusters

Para os humanos é relativamente fácil agrupar um conjunto de documentos em

diferentes grupos (bastando para tal a leitura destes). Como os computadores não têm

a mesma compreensão das palavras como os humanos, este agrupamento não é tão

trivial. Foram desenvolvidas algumas teorias e algoritmos de forma a facilitar esta

tarefa às máquinas, como é o caso de Machine Learning [Sebastiani02] [Yang and Liu

99] e clustering. Para o Machine Learning vários algoritmos podem ser utilizados,

como é o exemplo das redes neuronais, Naive Bayes, Support Vector Machines (SVM)

e k-Nearest Neighbours (kNN). Como é óbvio, cada um tem as suas vantagens e

desvantagens, variando o algoritmo usado conforme os dados e os resultados

desejados. No entanto, a grande desvantagem dos métodos de Machine Learning é

estes necessitarem de ser treinados, para que desta forma a máquina aprenda

realmente. Para que estes métodos produzam resultados significativos têm de ser

treinados com uma imensa quantidade de dados, existindo métodos que foram

treinados com 800.000 documentos.

37

Já em relação ao clustering, este pode ser dividido em duas partes: supervisionado e

não supervisionado. Os métodos de clustering supervisionados, normalmente são

referidos como métodos de classificação, isto porque usam um conjunto de dados

classificados e treinados para cada grupo. No entanto, esta é uma abordagem que não

interessa para o nosso caso, como já foi mencionado acima. Assim os métodos de

clustering que nos interessam são os não supervisionados.

Para além da separação clara dos métodos de clustering quanto ao

supervisionamento, ainda existe outra divisão: os hierárquicos e os particionais. Os

métodos de clusters hierárquicos usam clusters estabelecidos anteriormente para

conseguir criar os novos clusters. Assim sendo, o objectivo destes métodos de

clustering não é produzir uma única solução de clustering, mas um grupo de soluções,

conectadas umas às outras, criando um género de uma árvore. Nos métodos de

clustering particionais, o objectivo é chegar apenas a uma solução, ou seja, uma

partição dos dados. Estes métodos têm a vantagem de serem mais rápidos e

computacionalmente menos pesados, devido ao facto de só se produzir um conjunto

de clusters. No entanto, neste tipo de métodos é preciso saber o número de

grupos/clusters que vão ser criados à partida, como é o exemplo do K-means. [Xu and

Wunsch 05].

Devido aos problemas levantados pelos métodos de clustering referidos acima, tanto

do lado dos hierárquicos, como do lado dos particionais, começaram a surgir métodos

que tiram partido das potencialidades e evitam as desvantagens destes. Algoritmos

como o CBC (clustering by committee) [Pantel and Lin 02] e o QT_Clust [Heyer et al.

99] são exemplos deste tipo.

O algoritmo CBC constrói um centróide de um cluster calculando as médias de um

subconjunto de membros dos clusters. Este subconjunto pode ser visto como um

committee para determinar quais são os outros elementos que deveriam pertencer ao

cluster. Este algoritmo é composto por três fases: procura dos elementos top-similar,

encontrar os committees e por fim, atribuir os restantes elementos aos clusters. No

entanto, estudos feitos mostram que este algoritmo não cobre todos os objectos

[Hotho and Stumme 02].

Já em relação ao QT-Clust (Quality cluster algorithm) (Heyer et al., 1999) o objectivo

deste algoritmo é criar clusters com garantia de qualidade. Este algoritmo tem duas

vantagens a seu favor, dai ter sido escolhido para a implementação do clustering no

nosso caso: não é necessário saber o número de clusters à partida, como no caso do

K-Means e tem garantia de qualidade, como é explicado no artigo (Heyer et al., 1999).

38

4.8. Utilização do QT-Clust

O algoritmo funciona da seguinte maneira: um cluster candidato é criado com base no

primeiro elemento dos dados (que no nosso caso, um elemento irá corresponder a um

documento) e junta-se a este um outro elemento que tenha elevadas parecenças com

este elemento, ou seja, que esteja próximo. Vão-se juntando outros elementos a este

cluster candidato iterativamente, sendo que em cada elemento que se junta é menor

que um certo raio que é fornecido no input do algoritmo. Quando este raio é

ultrapassado, é criado um novo cluster candidato, começando com o segundo

elemento dos dados repetindo-se o procedimento, tendo novamente em conta todos

os elementos que formam o conjunto de dados, isto é, mesmo que um elemento já se

encontre no primeiro cluster candidato, é tido em conta para este segundo cluster

candidato. No fim deste processo, vai-se ter tantos clusters candidatos como

elementos do conjunto de dados. De seguida é escolhido o maior cluster candidato e

guardado, retirando-se os elementos, que fazem parte deste, do conjunto de dados e

repete-se o processo todo novamente. No algoritmo 1 está representado o pseudo-

código deste algoritmo.

Procedure QT_Clust(G,d)

if(|G| ≤ 1) then output G, else do

foreach i Є G

set flag = True; set Ai = {i} /* Ai cluster started by i*/

while ((flag = True) and (Ai≠G))

find j Є (G - Ai) such that diameter(Ai U {j}) is min

if (diameter(Ai U {j}) > d)

then set flag = False

else set Ai = Ai U {j} /* Add j to cluster Ai */

identify set C Є {A1, A2, …, A|G|} with maximum cardinality

output C

call QT_Clust(G - C, d)

Algoritmo 1 - Qt_clust

No entanto, depois de se perceber o algoritmo, foi necessário escolher um raio que iria

ser usado no algoritmo. Em relação ao número de keywords, era previsível que este

raio variasse, isto é, para um determinado conjunto de dados poderia ser um, e para

outro conjunto de dados poderia ser outro, completamente diferente do anterior. Este

problema foi atenuado, com a normalização da matriz resultante da aplicação do

algoritmo LSA. Foi necessário efectuar-se testes exaustivos para tentar escolher o

valor do raio que, em média, produz os melhores resultados.

39

4.9. Join clusters

Embora os resultados obtidos através do algoritmo de clustering geralmente fossem

completos, notava-se uma clara tendência a produzirem demasiados clusters, e alguns

com apenas um a dois elementos. Ora, esta situação é perfeitamente possível, no

entanto, geralmente o que se verificava era que esses clusters podem-se juntar com

outros clusters, visto que a distância entre estes é reduzida indicando que o clusters

são semelhantes, reduzindo assim o número de clusters, e por consequente o número

de temas, o que seria desejável. Foi pois necessário criar mais um algoritmo que junte

os clusters segundo um determinado parâmetro, e mais uma vez, este parâmetro não

era conhecido à partida, sendo necessário efectuar-se um conjunto de testes. O que

fazia mais sentido, para a junção dos clusters, era determinar o centro de cluster dos

clusters que se poderiam juntar e verificar a distância entre estes. Se esta distância for

menor do que um determinado valor, juntam-se os clusters.

O que levou à criação deste algoritmo de junção de cluster, foi a obtenção de

demasiados clusters através do algoritmo de clustering. Ora, este número era

demasiado elevado quando comparado com o que era esperado a partir dos nossos

conjuntos de dados de teste. Depois de se efectuar os conjuntos de teste após a

aplicação do algoritmo de junção, verificou-se que os resultados continuavam a ser

bons em termos de agrupamento concreto de documentos, e, o mais importante,

conseguiu-se aproximar o número de clusters produzidos pelo algoritmo ao número de

clusters que seria esperado para os conjuntos de dados.

Assim sendo, numa primeira fase foi necessário encontrar o centro do cluster, tarefa

esta, fácil de executar devido ao facto de cada linha da matriz LSA se poder

considerar as coordenadas de um espaço, de dimensão igual ao número de keywords

utilizado, bastando para tal efectuar a média dos vectores linha para que assim se

obtivesse o ponto médio. O único problema que se punha nesta fase era a distância a

utilizar para o caso de junção.

4.10. Avaliação

Para se conseguir verificar que os clusters gerados pela nossa aplicação são bons,

houve a necessidade de efectuar medidas e avaliações. Para além disso, foi

necessário estipular valores que funcionem bem no caso geral. As variáveis em causa

são: raio e keywords utilizados no algoritmo de clustering, dimensão usada no LSA e a

distância de junção dos clusters usada no Join Clusters.

40

4.10.1. Medidas de avaliação

Ao longo da criação dos clusters foi necessário efectuar um conjunto de testes e

comparar resultados, sendo assim necessário usar um conjunto de medidas para que

as comparações fossem efectuadas de maneira correcta e eficiente.

Usaram-se duas medidas principais de comparação: Silhouette Coefficient [Kaufman

and Rousseeuw 90] e a taxa de acerto. Com a ajuda destas duas medidas de

comparação entre clusters, conseguiram-se tirar conclusões.

O Silhouette Coefficient é uma medida própria dos algoritmos de clustering, que mede

a qualidade dos clusters, independente do número de clusters. Informalmente, mede a

qualidade de um determinado cluster através do cálculo das distâncias entre os vários

elementos desse mesmo cluster. O método de cálculo do Silhouette Coefficient é

constituído pelos seguintes passos:

Para um determinado objecto (i), calcular a distância média para todos os objectos

contidos no cluster onde o objecto em análise se insere. A este valor chama-se ai.

Para o mesmo objecto i e todos os clusters que não contenham o objecto i, calcular a

distância média a todos os objectos nesses clusters. Encontrar a menor distância,

chamando a esse valor bi.

Para o objecto i, o Silhouette Coefficient é calculado da seguinte forma:

si = (bi -ai)/max(ai,bi)

Este processo realiza-se para todos os objectos do cluster, e calcula-se a média dos

Silhouette Coefficient de todos os objectos, ficando assim com o Silhouette Coefficient

do cluster.

Depois de se estar na posse do valor do Silhouette Coefficient, verifica-se em qual dos

seguintes intervalos este se insere:

0.7 ≤ SC(P) ≤ 1.0 → separação excelente entre os clusters

0.5 ≤ SC(P) < 0.7 → separação média entre os clusters. Os vários dados que

compõem possuem um centro de cluster bem definido.

0.25 ≤ SC(P) < 0.5 → separação fraca entre clusters, continuando no entanto a ser

possível a encontrar o centro do cluster.

41

SC(P) < 0.25 → Separação sem estrutura, tornando-se impossível encontrar o centro

do cluster.

A outra medida é a taxa de acerto. ‗A‘ são os documentos relevantes para o utilizador

e ‗B‘ são os documentos recuperados pela aplicação.

Diagrama 1 – Ilustração da taxa de acerto

A B – Medida desejada, que evolui o número de documentos bem classificados.

A - (A B) – Avalia o número de documentos mal classificados.

4.10.2. Conjuntos de testes usados

Em todo o processo desta descoberta de temas foram utilizados dois conjuntos de

testes. Os documentos contidos nestes dois conjuntos de testes eram artigos

científicos de forma a serem relativamente fáceis de classificar, para que à posteriori

se conseguissem comprovar/comparar os resultados obtidos pelos métodos criados.

O primeiro conjunto de documentos para teste foi obtido com a ajuda do grupo de

multimédia VIMMI (grupo de investigação do INESC-ID - http://vimmi.inesc-id.pt/).

Encontram-se neste quase todos os artigos científicos escritos pelo grupo. Este

primeiro conjunto possuía 116 artigos que foram manualmente classificados e

agrupados em 8 grupos, podendo-se assim concluir que este primeiro conjunto de

documentos era constituído por 8 temas diferentes. Os temas deste conjunto de testes

são: eLearning, Accessibility, Mobile, CG, Improve, Multimedia Information Retrieval,

Sketch-Based e Narrative Baseed Document Retrieval. Estes artigos estão todos

escritos em inglês.

O segundo conjunto de documentos para teste também era constituído por artigos

científicos, que foram obtidos nas bibliotecas digitais ACM e IEEE. Para a obtenção

destes, arranjaram-se 11 temas diferentes, e com base no nome desse tema

42

efectuava-se a pesquisa nas bibliotecas. Assim consegui-se criar um segundo

conjunto de testes com 128 ficheiros agrupados em 11 temas diferentes. Os temas

deste conjunto de testes são: Collaborative Tagging, Consensus Algorithm, Data

Mining, Embedded Computation, Intelligent Environment, LSA, Network Protocols,

Parallel Computation, Speech Synthesis, Use cases e Sketch Based. Tal como no

conjunto de testes anterior, estes artigos estão todos escritos em inglês.

No primeiro conjunto de testes usaram-se temas que se inserem todos num grande

grupo (multimédia) e no segundo usamos temas completamente diferentes, para

assim se verificar se as conclusões retiradas dos testes, tanto num caso como no

outro, seriam parecidas.

Para testar os algoritmos utilizados e explicados acima, foi necessário arranjar dois

conjuntos de dados, que eram artigos científicos, por serem mais fáceis de classificar

à partida. Com estes dois conjuntos de testes devidamente classificados era possível

comparar os clusters obtidos com a classificação realizada manualmente, embora

nenhuma destas fosse completamente correcta. Não eram totalmente correctas devido

ao facto de, na classificação manual, os artigos não terem sido lidos na sua totalidade,

existindo a possibilidade de o artigo falar sobre várias áreas, e uma destas áreas se

poder enquadrar numa outra classificação. No caso dos resultados obtidos pelo nosso

algoritmo, estes nunca iriam ser perfeitos devido ao facto de o algoritmo depender de

várias variáveis que não podiam ser completamente definidas, como é o caso do raio.

Para além disso, as keywords dos vários documentos, poderiam aparecer nos outros

documentos, não tendo estes necessariamente pertencer à mesma classificação, mas

mesmo assim queremos o melhor possível e por isso fizemos os testes.

4.10.3. Raio

Um dos primeiros testes realizados ao algoritmo foi relativamente simples, e servia

apenas para se ter uma ideia do raio que poderíamos esperar como bom no QT-Clust.

No teste avaliava-se o tempo que o algoritmo demora a executar, o número de clusters

criados pelo algoritmo e o maior número de documentos num cluster, isto é o número

de documentos do maior cluster. Os resultados obtidos foram os seguintes:

43

Gráfico 1 - Resultados obtidos para os conjuntos de dados (a e b)

Podem-se tirar várias conclusões da análise dos gráficos. Em primeiro lugar, nota-se

que a medida que o raio vai aumentando, o algoritmo vai demorando mais tempo, e

vai-se aperfeiçoando até um certo ponto, isto é, até quando o raio é aproximadamente

0.3. Conclui-se que o raio que vai ser utilizado no algoritmo QT_Clust irá ser perto de

0.2. Retira-se esta conclusão a partir do gráfico 1, em que, até aos valores referidos, o

número de clusters, que no inicio é ridiculamente grande vai diminuindo, com base nos

conjuntos de testes usados. Já em relação ao tempo, este vai aumentando quase

exponencialmente à medida que o raio vai ficando maior, o que, mais uma vez, nos

levou a escolher um raio relativamente pequeno (0.3), para que desta forma o

algoritmo não fosse muito lento. No entanto, nota-se que ainda continuavam a existir

muitos clusters, o que indicava que iria de ter de utilizar um algoritmo adicional que, de

certa forma, juntasse os clusters mais parecidos, algoritmo este que irá ser referido

adiante.

Gráfico 2 – Percentagem de acerto variando o raio

44

Embora se tenham conseguido tirar conclusões com o teste enunciado acima, este

não era suficiente. Existia a necessidade de efectuar mais uma série de testes, não só

para confirmar a hipótese obtida, mas para se poderem tirar conclusões acerca das

restantes variáveis que se iriam utilizar no processo. Para se conseguir avaliar os

resultados desses testes foi necessário criar um conjunto de medidas, que serão

descritas mais abaixo. No gráfico 2 consultar a percentagem de acerto variando a raio,

para os dois conjuntos de dados. Conseguimos verificar que os melhores valores para

os dois conjuntos de dados não coincidem, no entanto andam muito próximos.

Gráfico 3 - Silhouette Coefficient variando o raio

No gráfico 3 podemos ver os valores obtidos para o Silhouette Coefficient para ambos

os conjuntos de dados. Em ambos os casos, para quando o raio se encontra à volta de

0.2 é superior a 0.6, o que indica que existe uma separação média entre os clusters.

Acabou-se por confirmar o raio que vamos utilizar no QT-Clust, raio este que é igual a

0.22.

4.10.4. Join Clusters

No primeiro teste recriaram-se gráficos onde se tinham em conta várias variáveis:

número de documentos bem classificados, número de documentos mal classificados e

a distância de junção dos clusters para algoritmo de junção (Join clusters). Os

resultados mais relevantes são apresentados no gráfico 4.

Como se pode concluir através da análise dos gráficos, nota-se que existe uma grande

quantidade de documentos mal classificados, isto é, que não ficaram na classificação

efectuada à partida. Ora, como foi referido acima, isto não implica que os resultados

não estejam correctos e não tenham interesse, pelo contrário, houve um grande grupo

de documentos bem classificados, para ambos os conjuntos de dados.

45

Gráfico 4 - Resultados para os conjuntos de dados - raio de 0.22 (a e b)

Testou-se o Silhouette Coefficient, para verificar que os resultados obtidos, isto é, que

os clusters criados automaticamente com o nosso algoritmo faziam sentido (se existia

uma boa separação entre clusters). Os resultados obtidos encontram-se nos gráficos 5

e 6. A conclusão que se retira da análise dos gráficos acerca do Silhouette Coefficient

é que este é indicativo da qualidade dos clusters. Em ambos os casos é acima de

0.55, e escolhendo o join distance a 0.25, este valor passa acima de 0.6, o que indica

uma separação média entre os clusters. Os vários dados que compõem possuem um

centro de cluster bem definido. No entanto existem valores ainda melhores do

Silhouette Coefficient, com join distances maiores, no entanto diminuem os

documentos bem classificados e aumentam os documentos mal classificados, daí a

necessidade de escolher um valor que tirasse melhor partido de todos os valores.

Gráfico 5 - Resultados obtidos para o 1º conjunto de dados - raio de 0.22

46

Gráfico 6 - Resultados obtidos para o 2º conjunto de dados - raio de 0.22

Mais uma vez, os resultados não são perfeitos, no entanto como já foi evidenciado

anteriormente, seria quase impossível obter resultados perfeitos. No entanto a criação

de sumários apenas é um passo intermédio para a obtenção de alguns sumários

descritivos de alguns temas sobre os quais o utilizador andou a trabalhar, sumários

este que é possível extrair com os resultados obtidos.

Como foi referido anteriormente, foi utilizado um algoritmo de join dos clusters, que se

juntavam os clusters que se encontravam mais próximos uns dos outros. Este

algoritmo de join depende de uma variável que é a distância de junção. No entanto, tal

como anteriormente é necessário estipular este valor para ambos os conjuntos de

dados, e adoptar esse para o caso geral.

Com tem vindo a ser feito para os restantes testes, os quais já foram apresentados, o

teste em causa foi efectuado para ambos os conjuntos de testes. Em ambos variou-se

o raio e a distância de junção, avaliando-se os resultados novamente pela

classificação (bem-lassificados menos mal-classificados).

Pela análise do gráfico 7 obtido para o primeiro conjunto de dados, para o nosso valor

de raio escolhido anteriormente (0.22), a melhor distância de junção era melhor entre

0.20 e 0.25 também.

47

Gráfico 7 - Distância de junção para o raio 0.22, 1º conjunto de dados

Para o segundo conjunto de dados, gráfico 8, os resultados obtidos foram

semelhantes aos do primeiro conjunto de dados, o que foi um bom sinal. No mesmo

intervalo de distância de junção, ou seja, 0.2 a 0.25 os resultados são bons, tal como

anteriormente.

Gráfico 8 - Distância de junção para o raio 0.22, 2º conjunto de dados

48

Gráfico 9 - Variação do número de clusters com a distância de junção.

Assim sendo, escolheu-se um distância de junção por default de 0.22.

4.10.5. Número de keywords

Como tem vindo a ser referido, o algoritmo de clustering depende de um conjunto de

variáveis que são dinâmicas. Um exemplo disso é o número de keywords usado para

criar a term-document. O número de keywords vai ser fixo, isto devido ao facto de a

maioria dos utilizadores usarem os valores que nós iremos definir como default. no

entanto é necessário escolher um número com o qual se obtenham melhores

resultados e que seja indicado para praticamente todos os conjuntos de dados que

poderão ser usados na aplicação.

Para além do número de keywords, ainda existia a necessidade de verificar se o raio

considerado como indicado até a este ponto 0.22, continuava a produzir bons

resultados.

Assim, para que fosse possível estimar estes dois valores (número de keywords e o

raio usado no algoritmo de clustering) correu-se o algoritmo de clustering várias vezes

com vários valores para o raio e vários valores para as keywords. Para se

conseguirem avaliar os resultados obtidos, classificaram-se os resultados obtidos pelo

algoritmo de clustering. Esta classificação era simplesmente a subtracção dos

documentos bem-classificados menos os documentos mal-classificados. Assim, com

49

esta classificação, conseguia-se ter uma ideia se os resultados estavam a ser bons ou

não.

Para o primeiro conjunto de dados os resultados obtidos encontram-se abaixo:

Gráfico 10 – Gráfico para encontrar o número de keywords confirmando o raio 0.22.

Pela análise do gráfico 10, consegue-se verificar que existe um pico do gráfico, isto é,

uma classificação elevada, sendo este um bom resultado possível. No entanto o raio

deste pico é relativamente baixo ao esperado, obtendo-se muitos conjuntos de

documentos, isto é, muitos clusters a mais do que o que era esperado, admitindo

assim este resultado menos bom. Existia um outro pico no gráfico bastante

interessante, que é quando o raio se encontra acima de 0.2, que confirma o valor

obtido anteriormente. Assim, confirma-se que o raio anteriormente encontrado para o

algoritmo de clustering é de 0,22 é adequado.

Já em relação as keywords, consegue-se verificar, a partir do gráfico 11, que o número

de keywords que em média produz os melhores resultados é 20, em concreto, para o

raio escolhido anteriormente de 0.22. Os restantes valores não têm grande interesse,

devido ao facto de a classificação considerada ser muito baixa, sendo mesmo na

maioria dos casos negativa, o que indica que existem mais documentos mal

classificados do que bem classificados, isto pelo algoritmo de clustering com os dados

em causa.

50

Gráfico 11 – Percentagem de acerto para o raio fixo em 0.22.

Para o segundo conjunto de dados, os resultados obtidos foram relativamente

parecidos, embora neste conjunto de dados se tivessem obtido mais picos, ou seja,

mais variações ao logo dos vários valores testados.

Gráfico 12 - Gráfico para encontrar o número de keywords confirmando o raio 0.22.

Como é fácil de verificar a partir do gráfico 11, os valores escolhidos anteriormente

não batem certos com os picos do gráfico 13 para este conjunto de dados, no entanto

a classificação continua a ser boa para o conjunto de dados escolhidos.

51

Gráfico 13 - Percentagem de acerto para o raio fixo em 0.22.

Neste teste só se utilizaram raios entre 0.1 e 0.3 devido ao facto de para raios fora

deste intervalo os resultados já não possuírem interesse, teoria comprovada pela

análise do gráfico 2. Para raios menores que 0.1, obtinham-se muitos clusters, isto é,

muitos em relação ao número que seria esperado obter. Para valores de raio superior

a 0.3, o tempo despendido também já era muito elevado, e levava a obtenção de um

cluster com muitos documentos, o que também não tinha grande interesse.

Podemos concluir que, para ambos os conjuntos de testes, os melhores resultados

eram obtidos com keywords e raios diferentes, no entanto, ao escolher-se um raio e

um número de keywords que produzisse bons resultados para ambos os conjuntos de

dados, conseguia-se obter resultados bastante positivos.

4.10.6. Teste da Dimensão

No teste que se segue, o objectivo era verificar qual a dimensão indicada no algoritmo

LSA, dimensão esta que na realidade é o número de keywords que se retiram na

matriz.

Foram testadas várias dimensões para os dois conjuntos de dados e verificavam-se

novamente os resultados obtidos pelo algoritmo. Esses resultados eram novamente

indicados pela classificação, conseguindo-se assim verificar qual seria a melhor

dimensão.

Pela análise dos resultados obtidos para ambos os conjuntos de dados nos gráficos 14

e 15, conclui-se que a dimensão deveria ser 1, isto é devem ser mantidas todas as

52

dimensões menos 1. No primeiro conjunto de dados, existe um pico do gráfico 14 onde

se conseguem resultados melhores, no entanto esta a diferença não é significativa, e

não se verifica no segundo conjunto de dados, gráfico 15.

Gráfico 14 - Variação da variável dimensão, 1º conjunto de dados

Gráfico 15 - Variação da variável dimensão, 1º conjunto de dados

Pela análise do gráfico 16, verifica-se que essa dimensionalidade convinha ser

reduzida, porque quanto maior essa fosse, mais tempo se demorava na obtenção dos

clusters, para além dos resultados serem piores.

53

Gráfico 16 - Relação de tempo com a variação da dimensão usa no algoritmo LSA.

4.10.7. Conclusões dos testes

Após este conjunto de testes conseguimos chegar a conclusão que os resultados

nunca irão ser perfeitos, no entanto, conseguem-se boas aproximações com os

valores que vamos tomar por default e usar para o resto da aplicação e testes.

Assim, o raio do algoritmo de clustering com que se obtinham melhores resultados era

0.22. Para além disso, o algoritmo de clustering, para produzir clusters bons

necessitava de 20 keywords. Já em relação ao join distance usamos 0.22. A dimensão

da matriz LSA deveria ser 1.

4.11. Verificação manual dos clusters obtidos

Após a obtenção dos clusters com o algoritmo de QTClust existia a necessidade de

verificar manualmente a qualidade desses clusters obtidos, devido ao facto de

existirem muitas variáveis que influenciavam a obtenção de resultados. Também era

impossível obter resultados perfeitos porque, para além das muitas variáveis já

referidas, as keywords não são independentes, podendo documentos diferentes no

seus tema, possuírem keywords muito parecidas.

Para a verificação manual dos resultados criou-se uma tabela para ambos os

conjuntos de dados. Nas linhas destas tabelas encontram-se os clusters que o nosso

algoritmo criou, e nas colunas os vários temas que o conjunto de dados possuía.

Assim, cada célula da tabela diz respeito ao número de documentos que um

54

determinado cluster tem sobre um determinado tema. Por exemplo, na tabela 4, o

cluster 1 contém 1 documento de eLearning, entre outros.

O ideal seria existir o mesmo número de clusters que o número de temas, isto é, o

número de linhas ser igual ao número de colunas e só existir um tipo de documento

em cada cluster. No entanto, tal como já foi referido anteriormente, esta situação é

impossível de acontecer devido ao elevado número de variáveis que influenciam os

resultados, como por exemplo o número de keywords e os termos não serem

estanques.

eL

earn

ing

Ac

ce

ss

ibilit

y

Mo

bile

CG

Imp

rov

e

Mu

ltim

ed

iaIn

foR

etr

ieval

Sk

etc

h_

Ba

se

d

NB

DR

Mis

c

To

tal

1 1 - - 13 1 10 26 3 1 56

2 - - - 1 - - 1 - - 2

3 - - 4 - - - - - 4 8

4 10 - - - - - - - - 10

5 - 2 1 - - - - - 1 4

6 - - - - - 3 - - - 3

7 - - - 3 - - - - - 3

8 - - - 1 - - - - - 1

9 4 - - - - - - - - 4

10 - - - 3 - - - - - 3

11 - - - 3 - - - - - 3

12 2 - - - - - - - - 2

13 - - - - 4 - - - 1 3

14 - - - - 1 - 1 11 1 14

TOTAL 17 2 5 24 6 13 28 14 8

Tabela 4 - Resultados obtidos com o primeiro conjunto de dados.

Nas tabelas encontram-se diferenciadas algumas células, como cores diferentes,

indicando assim o possível tema correspondente ao cluster. A análise das tabelas 4 e

5 leva-nos a perceber que os clusters são criados de forma satisfatória. A cor diferente

de alguns campos da tabela significa que o cluster gerado tem mais documentos do

tema da coluna onde se insere o campo de cor diferente. Imaginemos o cluster 1 da

55

tabela 5, onde o campo l1c1 (linha 1 e coluna 1) esta com a cor diferente. Isto significa

que o cluster 1 (l1) contém mais documentos de collaborative tagging (c1).

Como é fácil de verificar a partir das tabelas, existem alguns clusters em que é difícil o

algoritmo encontrar uma separação clara entre os vários temas, como é o exemplo do

cluster 1 na tabela 4. Este cluster contém uma grande quantidade de documentos de

temas diferentes (13 de CG, 10 de multimédia information retrival e 26 artigos de

Sketch Based),no entanto estes três temas estão fortemente ligados, sendo

perfeitamente natural que as keywords escolhidas nos vários temas sejam

semelhantes.

Co

lla

bo

rati

veT

ag

gin

g

Co

ns

en

su

sA

lgo

rith

m

Da

taM

inin

g

Em

be

dd

ed

Co

mp

uta

tio

n

Inte

llig

en

tEn

vir

on

me

nt

LS

A

Ne

two

rkP

roto

co

ls

Pa

rall

elC

om

pu

tati

on

Sp

ee

ch

Sy

nth

es

is

Us

eC

ase

s

Sk

etc

h_

Ba

se

d

TO

TA

L

1 7 - - 1 - - - - - - - 8

2 - 2 - 1 5 - - - - 1 - 9

3 - 3 - 1 - - 2 - - - - 6

4 - 1 1 1 - - - 3 - - 1 7

5 - 1 - - - - - - 1 - 1 3

6 - - 2 - - - - - 2 3 17 25

7 - - 1 - - - - 1 1 - 1 4

8 - - 1 - - - 1 - 2 - - 4

9 - - 1 1 - - 2 1 - - 1 6

10 - - 3 - 2 - - - - - - 4

11 - - - - 1 - 1 - - - - 2

12 - - - - 1 - - 1 - - 1 3

13 - - - - 1 - - - - - - 1

14 - - - - - 5 - - - - 1 6

15 - - - - - 2 - - - - - 2

16 - - - - - 1 - - - - - 1

17 - - - - - - - 3 - - 1 4

18 - - - - - - - - - - 2 2

19 - - - - - - - - - - 1 1

20 - - - - - - - - - - 1 1

21 - - - - - - - - 1 - - 1

TOTAL 7 7 9 5 10 8 6 9 7 4 28

Tabela 5 - Resultados obtidos com o segundo conjunto de dados

56

Embora os resultados não sejam perfeitos, conseguimos obter uma boa aproximação,

obtendo bons resultados na junção dos documentos que estão relacionados com

keywords em comum, que era o objectivo primordial.

Existem alguns resultados curiosos da análise das duas tabelas. O primeiro é de os

resultados da tabela 5 serem mais expressivos do que os resultados da tabela 4. Isto

justifica-se com o facto de os documentos da tabela 5 estarem todos muito

interligados, pertencendo todos a área de multimédia, havendo assim um cluster que

contém muitos desses documentos (l1), enquanto que na tabela 5, os temas são muito

mais diversificados. Embora haja grande incidência de documentos no clutser 1 (l1) na

tabela 5, isto não quer dizer que esse cluster não esteja correcto. Se olharmos para os

temas (computer grafics, multimédia information retrieval e sketched based retrieval)

concluímos que estes temas estão fortemente ligados, daí a incidência de tantos

documentos nesse cluster.

4.12. Conclusão

Como já foi referido anteriormente os resultados obtidos não são perfeitos, no entanto

conseguem uma boa aproximação a realidade, aproximação que se torna melhor

ainda quando os temas são mais diversificados, por razões óbvias.

Vimos que, para o primeiro conjunto de dados, existia um cluster que continha muitos

documentos, no entanto, como foi referido acima, isto devia-se aos temas serem muito

semelhantes. Temas muito semelhantes contêm keywords muito parecidas,

explicando assim os clusters com maior número de documentos. No entanto este

problema é atenuado, como veremos nas secções seguintes, com a extração de um

segundo conjunto de keywords, não dos documentos apenas, mas do tema, isto é,

extraem-se as keywords do tema das keywords dos documentos desse tema.

Como o objectivo não era obter clusters perfeitos, pensamos que a solução atingida é

muito satisfatória, e, em conjunção com as restantes etapas antes da produção da

noticia em si, vai produzir bons resultados.

Assim os valores que vamos usar com predefinidos são: raio a 0.22, join distance a

0.22, dimensão 1 e o número de keywords a 20.

57

5. Geração das Notícias

No capítulo anterior estudaram-se as formas de criação dos grupos e de agrupamento

da informação pessoal de um dado utilizador em temas. Analisaram-se também as

formas de extracção de palavras-chave, tanto de documentos individuais como dos

grupos.

Neste capítulo vamos analisar a forma utilizada para a geração de notícias. Para tal,

decompôs-se o problema em questão em vários sub-problemas para que desta forma

a abordagem a estes fosse mais simples: extracção das palavras-chave dos grupos,

extracção dos sumários, análise lexical e padrões de notícias.

5.1. Extracção das palavras-chave dos Grupos

O objectivo de se criarem os clusters, é obter grupos de dados dos utilizador para, à

posteriori, serem criados sumários dos temas que representam um resumo da

actividade deste. Assim sendo, uma forma de criar estes sumários é com a ajuda das

keywords. Estas keywords já não vão ser apenas de um ficheiro, mas tem de existir

um conjunto de keywords que defina cada um dos clusters, até porque os clusters não

são perfeitos. Para isso criou-se um algoritmo de extracção de keywords do cluster.

Este algoritmo tem em conta, numa primeira fase, as keywords que aparecem em

mais ficheiros, e para os casos de empate o número de vezes que estas aparecem

nos ficheiros.

O algoritmo tem por base as palavras-chave já extraídas anteriormente de cada um

dos ficheiros pertencentes ao cluster através do algoritmo TFIDF, já descrito acima.

Assim garante-se que as palavras-chave extraídas dos clusters contém palavras-

chave que não são stopwords e não têm em conta apenas a frequência com que estas

aparecem no documento. Este método torna-se mais correcto do que voltar a aplicar

TF-IDF, porque se restringe só as palavras-chave que o grupo de documentos possui.

Imagine-se que num determinado grupo do tema X existem 5 documentos que

pertencem de facto a esse grupo e 2 documentos que não pertencem ao grupo, mas

que no entanto foram inseridos no grupo pelo algoritmo de clustering. Ora, os 5

documentos que pertencem mesmo ao grupo vão ter palavras-chave muito

semelhantes, enquanto que nos 2 documentos que não pertencem ao referido grupo,

as palavras-chave vão ser diferentes, pelo menos algumas delas. Com esta extracção

de palavras-chave as palavras que se encontram apenas em dois documentos não

58

vão ter tanta importância como as que se encontram nos restantes 5 que pertencem

realmente ao grupo. Se o TF-IDF voltasse a ser aplicado, é quase certo que as

keywords documentos ao serem frequentes nestes e raros nos demais não seriam

representativas do tema do cluster.

As keywords assim extraídas do cluster dão assim uma boa descrição do cluster. O

que pode variar é o número de keywords desejadas, no entanto este é um problema

menor, visto que este número afecta apenas o número de sumários extraídos. Como o

algoritmo a esse ponto era configurável, não havia qualquer problema.

5.2. Extracção dos sumários

As palavras-chave caracterizam correctamente os grupos. No entanto, para a geração

de notícias, as palavras-chave não são suficientes. Efectivamente, as palavras,

isoladamente, não possuem uma semântica suficiente para descrever de forma

articulada os temas a que se reportam. Assim, estas foram usadas como ponto de

partida para a obtenção de sumários.

A forma como isto foi feito foi através da extracção de excertos de texto contidos nos

documentos a analisar. Assim sendo, a ideia foi percorrer os ficheiros pertencentes a

um determinado cluster/grupo a procura de excertos onde se encontram as palavras-

chave encontradas no respectivo grupo. Depois de se encontrar um determinado

excerto onde ocorria mais do que uma palavra-chave, considerava-se este excerto

como um sumário relevante para o grupo.

5.2.1. Algoritmo de extracção dos sumários

O algoritmo criado para a extracção dos sumários é baseado numa ideia relativamente

simples: estando na posse das palavras-chave e do texto em si dos documentos, é

relativamente fácil encontrar extractos que possuam mais que uma palavra-chave e

passam-se a considerar estes extractos como relevantes para o grupo.

O algoritmo começa por um determinado documento do grupo de documentos criado

através do algoritmo de clustering. Ao percorrer o texto procuravam-se as palavras-

chave encontradas para o cluster. Quando se encontra uma, verifica-se se existia

outra palavra-chave num pré-determinado raio à volta da primeira. Este processo é

recursivo: se for encontrada uma outra palavra-chave dentro desse raio, procuram-se

outras tendo essa como base. O limite é quando não se encontravam mais palavras-

chave nos raio das anteriores ou se encontra um sinal de pontuação que termine a

59

frase, terminando-se o processo e considerando-se o extracto com um sumário

relevante para o grupo. Efectuava-se o mesmo processo para o restante texto do

documento e para os restantes documentos dos grupos.

Um raio de duas palavras-chave mostrou-se razoável, visto não fazer sentido

considerar todas as frases onde aparece uma única palavra-chave, e ao considerar

um número maior que dois, corríamos o risco de obter poucas frases.

Caso o algoritmo não encontrasse nenhum sumário relevante para um determinado

documento aumentava-se o raio pré-estabelecido à volta da primeira palavra-chave

encontrada até ao limite de 5, para que desta forma aumentasse a probabilidade de se

encontrar um sumário relevante para o grupo.

De seguida exemplifica-se o funcionamento do algoritmo.

Considerem-se as seguintes frases:

―A number of novel information visualization methods have been developed. In order to

facilitate the exploration of data across temporal contexts the application takes specific

time aspects into account.‖

Imagine-se agora que as palavras-chave extraídas são: information, visualization,

exploration, data e temporal.

O algoritmo começa com a primeira frase. Ao encontrar a palavra-chave information

verifica se existe outra palavra-chave num raio de 2 palavras (palavras que não sejam

stop-words). À esquerda da primeira palavra-chave estão as palavras novel e number,

palavras estas que não pertencem às palavras-chave encontradas nas frases. À direita

da palavra information está visualization e methods. Como a palavra visualization faz

parte das palavras-chave encontradas para o pequeno extracto de texto, somam-se

duas palavras-chave na mesma frase com um raio de 2 palavras. Repete-se o

processo para a palavra visualization, no entanto agora só para a direita, visto que a

parte da esquerda já está analisada. Como à direita da palavra visualization não existe

mais nenhuma palavra que pertença às palavras-chave com o raio de duas palavras o

algoritmo termina e conclui-se que a frase analisada é um sumário relevante para o

grupo, sendo o extracto resultante o seguinte:

“A number of novel information visualization methods have been developed”

60

Embora o algoritmo só necessite de encontrar duas palavras-chave numa frase com o

raio de duas palavras, este continua a identificar as restantes palavras-chave, para

que desta forma se consiga determinar a importância do sumário, isto é, quantas mais

palavras-chave existem numa determinada frase mais relevante é o sumário.

O algoritmo continuaria com a segunda frase do excerto de texto, e o processo seria o

mesmo. Muito resumidamente o algoritmo segue até à palavra exploration. Como à

direita existe a palavra data esta frase também é considerada um sumário relevante,

no entanto, este sumário é mais relevante que o da primeira frase porque à direita da

palavra-chave data ainda se encontra a palavra temporal, existindo assim 3 palavras-

chave juntas na frase.

Ao efectuar este processo para todos os documentos do grupo, ficamos na posse de

um vasto leque de informação semanticamente rica acerca do tema desse grupo. No

entanto, verificou-se que existiam documentos onde as palavras-chave se

encontravam muito separadas, não extraindo assim qualquer extracto deste. Era para

esses casos que se voltava a repetir o procedimento, no entanto incrementava-se o

raio, passando este a ser de 3. Caso o procedimento não voltasse a encontrar

extractos novamente, voltava-se a incrementar o raio, parando apenas quando o raio é

igual a 5.

5.2.2. Tratamento das frases relevantes

Após a extracção dos sumários para cada grupo é necessário tratar estas

orações/frases para que estas apenas possuam informação relevante, e não

necessariamente frases completas. Queremos também evitar situações em que o raio

usado cause a cisão indevida de orações com relevância. Assim sendo, as frases

passam por um conjunto de tratamentos para que estas ficassem mais simples e

possuíssem apenas a informação relevante. De seguida explicam-se os tratamentos a

que as frases foram sujeitas.

Um dos primeiros tratamentos efectuados à frase/oração é a simplificação desta

através das vírgulas. Como a maioria das frases/orações possuem vírgulas para

separar as várias partes da frase, retém-se apenas o texto até essas vírgulas (ou a

partir delas), dependendo de onde se encontra o maior número de palavras-chave,

para que desta forma obtenhamos a parte mais importante da frase. Verifica-se que a

maioria das vezes essa parte é suficiente para descrever toda a frase. Pode-se pensar

que se corre um grande risco de ficarmos com extractos de frases sem sentido

nenhum e sem qualquer significado semântico, no entanto, como a maioria das

61

palavras-chave são nomes, verifica-se que estes extractos, na maioria das vezes,

possui, para além das palavras-chave, verbos e orações que acabam por dar sentido

ao extracto. Imagine-se o seguinte sumário:

The work we have done is about information visualization, and in the last section, we

will analyze interfaces.

Imagine-se que agora as palavras-chave seriam apenas information e visualization. O

extracto resultante do tratamento da frase seria apenas o seguinte:

“The work we have done is about information visualization”

Com esta simples simplificação reduz-se significativamente o tamanho e a

complexidade das frases, conseguindo-se um bom tratamento para os sumários, visto

que a maioria das frases possuem várias vírgulas.

No entanto, houve o cuidado de deixar de ter em conta as vírgulas quando se tratava

de uma enumeração, como por exemplo a seguinte frase: […] we considered the

follow objects: spheres, squares, circles, triangles […].

Um outro tratamento às frases/sumários extraídos anteriormente é através da

identificação das preposições. Assim, um raciocínio semelhante foi usado como

fronteira as palavras como that e which indicam uma clara divisão na frase.

Foi criada uma pequena lista de preposições, à qual se podem juntar novas

preposições em qualquer altura, para simplificar as frases. Tal como no caso das

vírgulas, verificava-se a localização das palavras-chave relativamente à preposição

existente na frase, de modo a que se achasse o extracto da frase mais importante.

5.2.3. Classificação das frases

Após a extracção das frases/sumários e do respectivo tratamento ficamos na posse de

um vasto conjunto de informação. Cada grupo possui vários ficheiros e cada um

desses ficheiros possui vários sumários. No entanto, para a geração das notícias, são

necessários apenas alguns desses sumários, nomeadamente os mais relevantes e os

que caracterizam melhor o grupo. Para se saber quais os sumários mais relevantes é

importante que haja uma métrica, para estes serem classificados.

A métrica encontrada para a classificação foi a seguinte: Com o número de palavras-

chave existentes num determinado sumário e com o raio da ―janela‖ utilizado para a

extracção destes mesmos sumários conseguimos, dividindo o número de palavras-

62

chave pelo raio, obter um valor para ser usado como medida de comparação entre os

vários sumários. Isto é correcto porque, os extractos com mais palavras-chave e com

um raio menor são sempre melhor classificadas do que com menos palavras-chave.

Imaginem-se os seguintes exemplos:

Primeiro extracto: “A number of novel information visualization methods have been

developed.”

Palavras-chave: information e visualization. Raio usado: 2

Segundo extracto: “A number of novel information visualization methods with great

interfaces have been developed.”

Palavras-chave: information, visualization e interfaces. Raio usado: 2

Embora ambos os extractos sejam muito semelhantes, pelo nosso método o segundo

obtém uma melhor classificação que o primeiro, isto porque 3/2 é maior que 2/2. Neste

exemplo, ambos os extractos contém o raio igual a 2, no entanto para raios diferentes

também se verifica a regra: Um primeiro extracto de texto com duas palavras-chave e

com um raio de 2 e segundo com o mesmo número de palavras-chave, no entanto

com raio 3. Neste caso o primeiro vai ser melhor classificado porque necessitou de um

raio menor para encontrar o mesmo número de palavras-chave (2/2 é maior que 2/3),

Desta forma, depois de se extraírem as frases, de se efectuarem os respectivos

tratamentos às mesmas e depois da sua classificação, escolheram-se as que

classificassem melhor os grupos de documentos, através da escolha das frases

melhor classificadas.

5.3. Criação das notícias

Na secção anterior falámos da extracção dos sumários. Esta extracção tem como

objectivo a criação de notícias, que têm por sua vez o objectivo de reflectir a actividade

de um dado utilizador com o seu computador pessoal numa determinada altura. Assim

sendo, depois de estarmos na posse dos sumários, devidamente configurados e

classificados, é necessário passar à fase da criação das notícias.

As notícias deveriam descrever o grupo a que estas se referiam, e para que tal

deveriam usar os sumários extraídos dos grupos. No entanto, como já foi referido

apresentar apenas os sumários sem qualquer ligação entre estes e sentido semântico

não tinha qualquer interesse para o utilizador. Assim sendo, seria necessário criar uma

nova frase, com os sumários extraídos, e coloca-la na notícia gerada.

63

5.3.1. Padrões de Notícias

Para organizar os sumários obtidos num todo coerente, recorremos a padrões

(templates) de possíveis notícias, em que esses sumários são usados de forma

adequada. Como os sumários extraídos poderiam ser orações sob as mais diversas

formas, isto é, poderiam começar tanto com um nome ou com um verbo, é necessário

criar diferentes padrões de frases para que, depois de se juntar o texto contido no

template e a respectiva oração, o texto fizesse sentido. Visto não se saberem à priori,

os temas a reportar, o texto dos padrões é o mais abstracto possível.

Cada padrão possui obrigatoriamente um título da notícia e um corpo da notícia. Para

além destes, existem elementos opcionais, usados apenas se existirem sumários

relevantes para os preencher. É o caso de imagens e excertos de documentos.

Finalmente, é possível especificar elementos alternativos, a escolher aleatoriamente

durante a criação da notícia para enriquecer o jornal, mas também para serem usadas

em situações específicas. Por exemplo, uma palavra poderá ser usada se o sumário

seguinte estiver no passado, e outra se este estiver no presente. Os padrões são

descritos em XML. Um exemplo pode ser visto abaixo (Anexo1).

<newsTemplate importance ="1">

<title>

<alt>

<!-- as alternativas ficam aqui -->

<li>New advances in</li>

<li time="Present" number="plural">Developments on</li>

</alt>

<textExcerpt quoteSize="small" morphology="verb"> </textExcerpt>

</title>

<body>

We saw new developments in

<textExcerpt quoteSize="small" morphology="name"> </textExcerpt>,

having figured out that

<textExcerpt quoteSize="medium" morphology="name"> </textExcerpt>.

As a result, we

<alt>

<li time="present">studied how</li>

<li time="future">will study how</li>

<li time="past">had studied how</li>

</alt>

<textExcerpt quoteSize="medium" morphology="name"> </textExcerpt>

</body>

</newsTemplate>

64

A utilização destes padrões permite uma fácil adaptação e enriquecimento da

interface.

5.3.2. Análise Lexical

Não é possível usar directamente os sumários para a criação das notícias. É

necessário saber, por exemplo, em que tempo verbal se encontra a oração, se está no

singular ou plural, etc, para que os textos criados façam sentido. Assim sendo foi

necessário incluir nesta parte do trabalho a análise lexical, âmbito de Língua Natural, e

outros métodos desenvolvidos para encontrar o tempo verbal de uma determinada

frase.

A análise lexical propriamente dita foi realizada com a ajuda do NLTK, um toolkit de

língua natural em Python. Neste criaram-se uma série de expressões regulares para

identificar a morfologia das palavras, isto é, se uma determinada palavra é um nome,

verbo, adjectivo, etc. No nosso caso apenas interessavam os nomes, para saber se

uma determinada oração estava no plural ou no singular, e os verbos, para conhecer o

seu tempo verbal. Como só estamos a considerar documentos são escritos em inglês,

não foi muito difícil efectuar esta análise.

De forma a conseguir, construímos notícias que fizessem sentido, isto é, que fossem

semanticamente correctas, era necessário analisar a gramática das frases. Para tal,

depois de estarmos na posse das várias palavras que constituíam uma frase e da sua

morfologia, era fácil de criar gramáticas, embora esta pudesse não estar correcta.

Mais uma vez, para se conseguir verificar se a frase estava gramaticalmente correcta

seria preciso um sistema de língua natural muito sofisticado, com muita informação por

detrás. Embora já haja sistemas que conseguem uma boa aproximação a frases

correctas, estes ainda têm falhas. Para além disso nenhum destes se dedica

exclusivamente a notícias.

Assim sendo, foi necessário tentar uma nova aproximação a este problema.

Tínhamos, à partida, noção que a nossa aproximação não produzem resultados

perfeitos, já que nem os últimos sistemas que tentam uma aproximação a este

problema o são. A forma encontrada para a resolução do problema referido acima era

a seguinte: através da análise gramatical de cerca de 18000 notícias, construíamos a

nossa própria gramática, isto é, um conjunto de regras de várias notícias (recolhidas

na internet). A cada regra era atribuída um peso, que era o número de vezes que a

mesma regra aparecia no conjunto de notícias. Este número era importante para

verificar se a regra, para além de ser parecida com a nossa, se era frequente, e se era

65

verdadeiramente importante. Efectuava-se essa verificação também para o caso de

estarmos na posse de duas regras em que em ambas faltava apenas uma palavra na

nossa frase para que esta ficasse completa, escolhia-se a que aparecia mais vezes. O

conjunto de regras forma a gramática.

Depois de estarmos na posse da nossa regra, e após possuir a regra de uma dada

notícia criada pela nossa aplicação comparava-se a nossa regra com as das notícias

reais e verificamos qual delas se aproximava mais à nossa. Caso fossem as duas

iguais, não era necessário efectuar qualquer operação. Caso contrário, isto é, caso a

nossa gramática fosse uma aproximação à outra existente, completava-se a frase com

palavras da mesma morfologia. Essas palavras eram retiradas do contexto dos

sumários que eram usados para a geração das frases. Para se saber quão próximas

eram duas regras, utilizou-se a distância de Levenshtein.

Assim, após estas operações, ficávamos com uma frase bastante correcta e com uma

boa aproximação a uma frase criada de raiz correctamente.

Um exemplo das gramáticas que nos obtínhamos através do nosso método encontra-

se abaixo.

<NN> <VB> <PREP> <NN> <PREP> <VB> <NN> ->9

<NN> <VB> <AJ> <NN> <PREP> <VB> <NN> ->3

Tal como foi referido acima, o número 9 significa que essa gramática foi encontrada 9

vezes nas notícias analisadas. Podemos verificar que a frase começa por um nome

<NN> seguida por um verbo <VB>, seguindo-se as restantes preposições. Nas

gramáticas identificavam-se os seguintes tipos morfológicos: números (CD), advérbios

(AD), adjectivos (AJ), articles (ART - the, na, etc), preposições (PREP), pronomes

(SW), conjunções (CONJ) e nomes (NN).

Imagine-se agora que se deseja juntar um determinado excerto com o template. Após

essa junção ficaríamos com a seguinte gramática:

<NN> <VB> <NN> <PREP> <VB> <NN>

Ao verificar as gramáticas semelhantes extraídas das notícias chegávamos a

conclusão que as duas referidas acima eram as mais semelhantes, um com 9

ocorrências e outra com 3. Com o nosso algoritmo, era escolhida a gramática com

nove ocorrências. De seguida, juntava-se uma preposição à nossa, para que assim as

duas gramáticas ficassem iguais, tornando-se a frase assim o mais correcta possível.

66

Na análise lexical era dado especial atenção aos nomes e aos verbos, isto porque, nos

templates encontrava-se o tempo verbal de que o template estava à espera e se o

template estava no plural ou no singular. Para caso dos verbos, criou-se um pequeno

programa que identificava o tempo verbal do verbo. Como a aplicação estava

desenvolvida para o idioma inglês, não houve grande dificuldade em identificar os

tempos do verbo. Exemplo disso são os verbos irregulares, sendo as regras de

formação de tempos verbais com estes verbos muito simples. Já em relação aos

verbos regulares, também era trivial saber o tempo verbal destes mesmos, tirando

raras excepções, que também eram consideradas. Já em relação ao número dos

nomes, isto é, se o nome se encontrava no singular ou no plural também foi

relativamente fácil identificar o número deste. A regra trivial para verificar se um

determinado nome se encontrava no plural era verificar se esse mesmo número

terminava em ‗s‘. Como é possível de prever, também neste caso havia uma série

excepções que também foram devidamente consideradas, como é o exemplo de

palavras como ‗hippopotamus‘ e ‗bus.‘

Quando se juntavam os vários extractos com os templates era então verificar o tempo

verbal e o número de um e do outro verificando se ambos eram iguais. Caso estes

correspondam, pode-se passar de imediato à junção das partes da frase, isto é, do

template e do excerto. Caso não correspondessem, verifica-se se o template possuía

uma outra alternativa para o tempo verbal e para o número do verbo (elemento <li> no

template), verificando-se se este correspondia às condições desejadas. Em último

caso, isto é, quando as alternativas estivessem esgotadas sem no entanto se ter

encontrado correspondência, ignorava-se o extracto, passando-se ao extracto

seguinte.

Os extractos a usar obedeciam a uma determinada regra para que estes fossem

escolhidos. Antes de mais, todos os extractos se encontravam ordenados segundo a

sua importância, começando-se assim por considerar e tentar criar frases com os mais

relevantes. Para o título da notícia escolhia-se o extracto mais importante, para que

assim se conseguisse ―dizer tudo‖ com título. No resto da notícia era criada com os

extractos que se seguiam. Caso os extractos possuíssem igual importância, escolhia-

se um de forma aleatória.

Quando se juntavam os extractos extraídos dos documentos com os templates de

notícias existentes, havia necessidade de retocar a ligação entre estes. Depois de

analisar várias notícias geradas verificou-se que no início da frase, esta ligação não

batia certo, sendo necessário uma análise mais pormenorizada. Uma das regras que

67

se implementou foi que depois do texto do template, quando vinha um nome seguido

de imediato por um verbo, era necessário inserir a palavra that ou that is entre estes

dois para que frase fosse mais correcta. Esta regra, embora muito simples, produzia

bons resultados, conseguindo na maioria das vezes corrigir a frase e fazer com que

esta tivesse sentido.

Um exemplo de uma notícia (curta) criada automaticamente pelo sistema é:

Work in mesh quality and mesh accuracy

Recently we had new advances in partitioning techniques that are the most popular

methods for rendering implicit surfaces, by creating a polygonal mesh.

68

6. Interface

Nesta secção iremos falar de uma submódulo do trabalho de extrema importância, a

interface. Como o nosso trabalho tinha uma forte componente de multimédia e era

apenas direccionada para utilizadores comuns, os quais teriam de gostar da aplicação,

tanto ao nível funcional como da estética, houve a necessidade de dar especial a

elaboração desta.

A interface tem a forma de uma página web, com o aspecto tradicional de um jornal,

isto na janela principal. A aplicação, embora local, corre num navegador comum. O

uso de HTML e CSS dá-nos a versatilidade de incluir todo o tipo de texto e mesmo

imagens nas notícias. Com este tipo de tecnologia damos a possibilidade a qualquer

utilizador de usar a nossa aplicação, bastando para tal correr um executável e de

seguida lançar o browser.

Quando o utilizador lança a aplicação pela primeira vez, é-lhe pedido que configure

uma série de parâmetros (figura 28), sendo estes o nome, selecione uma pasta que

contanha ficheiros que quer indexar, o raio e o número de keywords usados para a

criação dos clusters. Nestes dois últimos parâmetros é indicado aos utilizadores os

valores com que o algoritmo funciona melhor, encontrando-se estes valores

seleccionados por omissão. Estes valores podem ser configurados à posteriori pelo

utilizador. A aplicação indexa todos os ficheiros que contenham texto.

Figura 28 - Screenshot da janela de configuração.

69

A indexação desses documentos pessoais e a extracção de imagens desses mesmos

documentos, para que estas possam ser utilizadas na fase da exposição das notícias

era assim feita logo de inicio, quando se lançava a aplicação pela primeira vez, não

sendo necessário à posteriori indexar novamente os documentos, a não ser que o

utilizador quisesse alterar os documentos usados. Também é referido explicitamente

nos templates das notícias se a respectiva notícia deve incluir uma imagem ou não.

Para se criar uma edição de um jornal, o utilizador necessita de seleccionar uma data

de incio e de fim, sendo assim criadas noticias relativas a esse intervalo de tempo.

Figura 29 – Screenshot de uma edição do jornal.

No topo, encontramos o título do jornal, seguido da data a que se reporta (Figura 29).

Em seguida, dispostas de acordo com a sua importância relativa (inferida a partir do

número de documentos de cada tema), surgem as várias notícias. Cada tema pode

resultar em uma notícia, de diferentes relevâncias. As notícias com mais destaque são

mostradas, tal como nos jornais reais, com um título maior e ocupando uma parte

maior do ecrã. Cada noticia contem no final um link no qual se podem ver os

documentos pertencentes ao tema da noticia em questão.

A disposição das notícias na página é decidida automaticamente com base na

quantidade de notícias a apresentar e a importância destas. É usado um algoritmo de

sub-divisão sucessiva do espaço para o fazer. A página começa por ser dividida em

70

duas, ficando logo uma das partes reservada para a notícia de maior importância. De

seguida, divide-se a parte ainda não reservada em mais duas, sendo novamente uma

das partes reservada para a segunda notícia mais relevante, e assim sucessivamente

até todas as notícias terem sido posicionadas. O tamanho reservado para cada uma

depende da sua importância relativamente às restantes. Ao dar mais destaque a

temas mais importantes, fornece-se imediatamente uma pista visual ao utilizador sobre

as suas actividades num determinado período de tempo.

O tamanho das colunas das notícias de certa forma era gerado de forma automática,

isto é, apenas se inserem as notícias desejadas numa linha horizontal imaginária e

depois esta adapta-se as notícias. A primeira notícia ocupava a largura toda do jornal,

visto que era a noticia mais importante. De seguida colocavam-se notícias de

importância 2 com notícias de importância 3 ou 5, conforme se desejasse preencher a

largura do jornal. O que diferenciava as notícias, para além dos diferentes tamanhos

de letra, quanto menos importante menor é o tamanho da letra, era a largura da

noticiam, à excepção das notícias de importância 4, que ocupavam toda a largura do

jornal, mas tinham o tamanho da letra muito reduzido.

Existiu da nossa parte o cuidado de as notícias que se encontravam na mesma linha

imaginária na vertical terem aproximadamente o mesmo tamanho, para que na mesma

linha não houvesse uma noticia muito grande e ao lado uma demasiado pequena.

Para tal, para além de se juntarem as colunas de tamanho semelhante, inseriam-se

imagens para preencherem os espaços em branco existentes. No entanto, esta tarefa

não era perfeita, devido ao facto de ser difícil de saber a altura de uma notícia e da

sua imagem, visto que é tudo gerado dinamicamente.

Figura 30 – Selecção de data e alteração da configuração.

Para navegar entre várias edições do jornal pessoal para seleccionar intervalos de

tempo diferentes a que o jornal se reporta, carrega-se sobre a data (Figura 30) o que

nos leva uma secção da interface onde se podem efectuar as operações referidas.

Esta contém uma barra temporal onde se encontram as edições do jornal já visitadas,

sob a forma de sub-barras nos respectivos intervalos de tempo (Figura 31). Consegue-

se assim ter uma percepção geral de todas as edições existentes. Para se criar uma

71

edição do jornal referente a um período novo, basta seleccionar um novo intervalo de

tempo em menus de selecção da data.

Figura 31 – Screenshot da barra temporal usada.

De notar que na geração da folha principal do jornal eram usados tipos de letra e

tamanhos de letra parecidos aos jornais verdadeiros, tornando assim o sistema mais

real. Para além disso, todas as notícias, para além de estarem diferenciadas pela

importância destas, encontram-se divididas por linhas verticais e horizontais, dando

assim a ideia de secções, o que também se verifica nos jornais reais.

No decorrer do desenvolvimento da aplicação verificou-se que a maioria dos

documentos continha várias imagens, o que poderia servir para enriquecer as nossas

notícias, e desta forma melhorar assim a aparência da nossa interface. Assim, ao

mesmo tempo que se indexava a informação, isto é, o texto, retiravam-se as imagens

dos documentos. Ao gerar-se uma nova notícia, verificavam-se quais os documentos

pertenciam ao grupo da notícia e inseria-se, junto com o texto, uma imagem desses

mesmos documentos, sempre que houvesse necessidade de preencher um espaço

em branco entre textos e que o grupo de documentos que constituía a noticia

possuísse imagens.

72

7. Resultados e avaliação

Neste capítulo de resultados e avalização descrevemos com foi efectuada a avaliação

da aplicação, através do protocolo experimental, passando depois para a análise de

todos os resultados obtidos na avaliação da nossa aplicação.

7.1. Protocolo Experimental

Para se avaliar a usabilidade, utilidade e a eficiência da nossa aplicação é necessário

efectuar testes com vários utilizadores, simulado assim várias situações possíveis de

utilização da aplicação. Para tal vamos tentar escolher um leque alargado de

utilizadores, para assim conseguirmos obter várias situações e avaliações diferentes

acerca do nosso sistema. No entanto, existe à partida uma pequena limitação aos

utilizadores a considerar: estes devem possuir um vasto conjunto de informação

pessoal em inglês, devido ao facto de a aplicação ter sido desenvolvida para essa

língua. Assim sendo, um público-alvo muito apetecível para os testes da aplicação é a

comunidade universitária, nomeadamente os alunos que se encontram a fazer tese de

mestrado, devido ao facto de estes alunos possuírem variadíssimos documentos

científicos, normalmente em inglês. Inicialmente os utilizadores teste seriam poderiam

ser quaisquer utilizadores, no entanto, como ao longo do trabalho nos focámos em

documentos pessoais do tipo artigo científico. Os utilizadores tinham entre 23 e 35

anos, todos eles com um curso académico e possuidores de grandes conhecimentos

em inglês. Todos ele possuiam documentos pessoais escritos em inglês.

Os testes com os utilizadores irão ser feitos no computador pessoal dos mesmos

devido ao facto de aí que se encontram os documentos pessoais destes. Sendo

assim, e para além de ser necessário combinar o local para efectuar os testes, é

necessário indexar os documentos dos utilizadores visto que é sobre estes mesmo

documentos pessoais indexados que a aplicação funciona.

Os testes com os utilizadores vão ser constituídos por duas partes principais: tarefas a

serem efectuadas pelos utilizadores e um questionário.

7.1.1. Tarefas

As tarefas elaboradas para os testes com os utilizadores encontram-se na secção

seguinte.

73

7.1.1.1 Lançamento da aplicação pela primeira vez pelo utilizador

Esta tarefa, como é a primeira, é a mais simples das tarefas, na medida em que o

utilizador necessita apenas de correr a aplicação e configurar os parâmetros a utilizar

na indexação dos documentos pessoais. Para tal o utilizador selecciona uma pasta

onde se encontram os documentos, que poderá ser a pasta MyDocuments. É também

dado ao utilizador algum tempo para que este se ambiente à aplicação, tanto ao

aspecto visual desta como ao modo de funcionamento. Para isso pode livremente

escolher um intervalo de tempo desejado e navegar nos resultados obtidos. Poderá

também escolher mais do que um intervalo de tempo, e deste modo ver diferentes

edições do seu jornal pessoal.

No decorrer da tarefa, o utilizador vai apenas ser observado, cabendo ao avaliador

apenas anotações acerca da experiência, pedindo que o utilizador comente o que está

a pensar e o que este vai fazendo. Existem também uns requisitos mínimos que o

utilizador tem de correr para que a experiencia tenha sucesso. São estes requisitos os

seguintes:

Lançamento da aplicação

Configuração da aplicação

Indexação de dados (documentos pessoais)

Inserção de intervalos de tempo (data de inicio e data de fim)

Navegação pelas notícias

Utilização da barra temporal

Reacções as notícias geradas

Para além destes requisitos, o avaliador deve anotar outros que surjam no decorrer da

experiência e outro tipo de reacções do utilizador.

7.1.1.2 Identificação de temas em intervalos de tempo diferentes

Esta tarefa consiste na identificação, por parte do utilizador, dos temas dos

documentos indexados de um determinado intervalo de tempo. Esta tarefa é repetida

por vários intervalos de tempo, começando pela semana, passado para o mês e por

fim o ano.

Os testes começam pela selecção de uma determinada semana. É pedido ao

utilizador que identifique os temas em que este trabalhou nessa semana e anotam-se.

Para além disso anota-se a importância dada pelo utilizador a esses temas. De

74

seguida efectua-se o mesmo processo, no entanto depois de o utilizador usar a

aplicação, isto é, pede-se ao utilizador que identifique os temas que a aplicação

reconheceu, pedindo também a importância dada por parte do utilizador a esses

temas. Para finalizar avaliam-se os dois conjuntos de temas e retiram-se as devidas

conclusões. De seguida efectua-se a mesma tarefa para os restantes intervalos de

tempo, isto é, para o mês e para o ano.

Como é fácil de prever seria importante que a aplicação identificasse os temas mais

relevantes para o utilizador, isto é, que esta identificasse os temas identificados pelos

utilizadores com maior importância. Seria também interessante que o utilizador

conseguisse recordar outros temas depois de utilizar a aplicação, ou seja, que a

aplicação relembrasse o utilizador de determinados temas em que este trabalhou e já

não se recorda.

7.1.1.3 Identificação de tema único

Esta tarefa consiste em o utilizador se recordar de um tema importante e seleccionar

um intervalo de tempo para verificar se esse tema faz parte do jornal. Esta tarefa

distingue-se da anterior no sentido em que não existe nenhum intervalo de tempo

predefinido nem nenhum limite para este, isto é, o utilizador pode seleccionar o

intervalo que bem entender e onde melhor se enquadra o tema escolhido.

O objectivo é verificar se aplicação consegue responder com notícias que o utilizador

está à espera, isto é, se a aplicação produzir um jornal onde esse tema se encontra

destacado, este resultado é considerado positivo.

7.1.1.4 Pesquisa de ficheiros

A última tarefa é a pesquisa de um determinado ficheiro contido no conjunto de

documentos pessoais indexados. É pedido ao utilizador que se recorde de um

determinado ficheiro, de um intervalo de tempo em que esse ficheiro tenha sido criado

e/ou alterado e o tema em que esse ficheiro se enquadra. De seguida o utilizador cria

o jornal com esse intervalo de tempo.

O utilizador deverá ser capaz de identificar a notícia/tema no jornal em qual o ficheiro

se encontra e de seguida verificar que o ficheiro se encontra nos ficheiros que servem

de base a essa notícia/tema. Durante a tarefa são contados também o número de

cliques para encontrar ficheiros e o número de retrocessos para a tarefa.

75

7.1.2. Questionário

Para finalizar a avaliação da aplicação com os utilizadores, é-lhes pedido que

preencham um questionário onde expressam uma opinião geral sobre o sistema.

Todas as questões do questionário relacionam-se com a usabilidade do sistema. As

perguntas são as seguintes:

Facilidade de interacção com a aplicação

Qualidade dos resultados obtidos nas suas pesquisas

Facilidade de identificação dos temas em que trabalhou

Facilidade de encontrar ficheiros através dos temas

Qualidade das frases

Facilidade em identificar o tema de uma notícia em particular

Estética do jornal (layout , tipos de texto, etc.)

Legibilidade das notícias

Utilidade da aplicação

As avaliações devem ser feitas numa escala de 1 a 5, sendo o 1 a pior avaliação e 5 a

melhor avaliação do tópico (1 - mau, 2 - razoável, 3 - bom, 4 - muito bom, 5 -

excelente).

Para finalizar é pedido aos utilizadores que dêem opiniões e sugestões acerca da

aplicação.

7.2. Resultados obtidos

Foram efectuados 18 testes com os utilizadores, tendo assim resultados válidos da

aplicação. A análise dos resultados irá ser feita por tarefa, tal como anteriormente para

a descrição destes.

7.2.1. Tarefas

Para se conseguir avaliar a utilidade e o funcionamento da aplicação foi necessário

elaborar um conjunto de tarefas a serem executadas à posteriori por utilizadores de

teste. Foram criadas 4 tarefas com diferentes graus de complexidade, avaliando vários

cenários e vários objectivos, como veremos de seguida.

76

7.2.1.1 Tarefa 1 - Lançamento da aplicação pela primeira vez pelo utilizador

Esta tarefa tinha como principal objectivo ambientar o utilizador a aplicação e ao

sistema em si, aproveitando-a também para que este pudesse esclarecer qualquer

dúvida que surgisse durante a execução da aplicação. Existiam um conjunto de metas

que os utilizadores deveriam atingir no decorrer da tarefa, como foi referido acima. De

forma geral, todos os utilizadores conseguiram atingir essas metas, não se registando

qualquer problema ao correr a aplicação pela primeira vez.

Já em relação à configuração da aplicação os utilizadores mostraram-se bastante

interessados em saber em como os valores de configuração (raio, números de

palavras-chave) escolhidos poderiam ser escolhidos, embora acabassem por utilizar

os valores que se encontravam seleccionados por default, isto é, os valores com os

quais obtivemos melhores resultados na secção 4.

Quando a indexação dos documentos, como os utilizadores já tinham os documentos

pré-seleccionados numa pasta e seria apenas necessário inserir o caminho para essa

pasta. Em relação ao tempo demorado na indexação dos ficheiros, não houve

qualquer tipo de reclamação a registar, chegando os utilizadores a considerar o tempo

de indexação razoável e compreensível. Os utilizadores possuíam, em média, 40

documentos, demorando a indexação destes e a respectiva extracção de imagens, em

média, 3 minutos.

Após a indexação dos ficheiros, os utilizadores inseriam um determinado intervalo de

tempo para que assim pudessem ver a primeira edição do PersonalNews. O decorrer

esta fase também se dava sem qualquer problema. Depois de estarem na presença da

edição do jornal, o utilizador navegava pelas notícias, verificando se os resultados

obtidos correspondiam aos esperados. As reacções às notícias, de uma forma geral,

eram muito boas, gostando assim da aplicação e dos resultados obtidos.

7.2.1.2 Tarefa 2 - Identificação de temas em intervalos de tempo diferentes

Nesta tarefa, o objectivo principal era testar se os temas que o utilizador ainda possuía

em mente correspondiam aos temas apresentados pela aplicação. Assim sendo,

pedia-se ao utilizador que, para cada intervalo de tempo (aproximadamente uma

semana, um mês e um ano) identificasse os temas de que se lembrava, temas estes

que eram apontados e aos quais era atribuída uma importância numa escala de 1 a 5,

sendo 1 o tema muito pouco importante e 5 muito importante para o utilizador. Após a

aplicação gerar a edição do jornal para o respectivo intervalo de tempo, o utilizador

77

verificava se todos os temas previamente recordados apareciam e ainda se, com a

ajuda da edição gerada, conseguia recordar de mais algum tema. Os intervalos de

tempo, isto é, a semana, o mês e o ano não eram necessários ser os mais recentes.

Não era necessário o utilizador seleccionar a semana anterior, podendo escolher uma

à escolha.

Em relação ao intervalo de tempo de um semana, os valores a reter são os

apresentados na tabela 6.

Intervalo de tempo de uma semana Média Desvio padrão

Max Min Total

Temas identificados antes da edição 3,67 2,11 8 1 66

Temas identificados correctamente pela aplicação 3 1,49 6 1 54

Temas não identificados pela aplicação 0,67 0,51 2 0 12

Temas identificados apenas pela aplicação 1,72 1,07 4 0 31

Percentagem de acerto 81,81%

Importância dos temas identificados pelo utilizador

3.45 1.17 5 1

Importância dos temas identificados pela aplicação

3,67 1,17 5 1

Importância dos temas não identificados pela aplicação

2,5 1 4 1

Importância dos temas identificados após correr a aplicação

2,45 1.03 5 1

Tabela 6 – Resultados obtidos para o intervalo de tempo de uma semana.

Como se pode verificar através da análise da tabela 6, os utilizadores, antes de

correrem a aplicação lembravam-se de em média de 3,67 temas. Destes, 3 temas

eram correctamente identificados pela aplicação, conseguindo assim uma taxa de

sucesso da aplicação na identificação dos

temas de 81.81%. Este resultado é muito

bom devido ao facto de a aplicação

conseguir reconhecer mais de 80% dos

temas identificados pelo utilizador. Para

além disso a aplicação identificava em

média mais 1,72 temas, isto é, ajudava o

utilizador a recordar-se de 1 – 2 temas.

Uma outra conclusão interessante que se

pode retirar da tabela, é que a aplicação Gráfico 17 - Distribuição dos temas pela sua

importância (semana)

78

conseguia identificar os temas mais importantes para o utilizador, isto é, a média de

importância dos temas identificados pela utilizador e reconhecidos correctamente pela

aplicação era de 3.67. Os temas que a aplicação não reconhecia mas que eram

identificados pelos utilizadores previamente era de 2,5. Assim sendo, os temas que a

aplicação não reconhecia tinham uma importância menor para o utilizador. Já em

relação a importância dos temas recordados pela aplicação ao utilizador era de 2.45.

Através da análise do gráfico 17 conseguimos verificar as importâncias dos vários

temas obtidos, o número de temas identificados pela aplicação e o número de temas

não identificados, isto para o total dos utilizadores, isto no intervalo de tempo de uma

semana. Verifica-se que para o tema de importância 1, houve 2 temas que o utilizador

teste identificou e que a aplicação não identificou. No entanto para os temas de maior

importância, por exemplo os de importância 5 a aplicação conseguiu identificar todos

os temas de que o utilizador se tinha recordado.

Já em quando o intervalo de tempo era um mês, os resultados obtidos encontram-se

na tabela 7.

Intervalo de tempo de um mês Média Desvio padrão

Max Min Total

Temas identificados antes da edição 3,78 2,05 9 1 68

Temas identificados correctamente pela aplicação 3,27 1,53 7 1 59

Temas não identificados pela aplicação 0,5 0.70 2 0 12

Temas identificados apenas pela aplicação 1,56 0.98 3 0 28

Percentagem de acerto 86,76%

Importância dos temas identificados pelo utilizador

3.44 1.08 5 1

Importância dos temas identificados pela aplicação

3,57 1.03 5 1

Importância dos temas não identificados pela aplicação

2,56 1.01 4 1

Importância dos temas identificados após correr a aplicação

2,39 1.00 5 1

Tabela 7 - Resultados obtidos para o intervalo de tempo de um mês.

Através da análise da tabela 7 podemos concluir que os resultados foram muito

parecidos aos do intervalo de tempo referente a uma semana. De referir apenas que o

taxa de acerto para o intervalo de tempo de um mês subiu, passando a ser de 86.76%.

Isto pode ser justificado na medida em que o temas identificados pelo utilizadores

79

relativamente ao intervalo de tempo em

questão são mais gerais e mais

abrangentes, sendo assim também mais

fácil à aplicação de os identificar.

Já em relação à distribuição dos temas por

importância, podemos verificar os resultados

obtidos no gráfico 18. Os resultados obtidos

para quando o intervalo de tempo era de um

mês, foram bastante semelhantes aos de

quando o intervalo de tempo era de uma

semana. Mais uma vez é realçar que a

aplicação conseguiu identificar todos os temas de importância 5 de que o utilizador

teste se tinha recordado. O único resultado menos bom, que no entanto continua a ser

um óptimo resultado, é para os temas de nível de importância 3, em que dos 18

temas, 5 não foram identificados pela aplicação.

Por fim, a tabela 8 indica os resultados obtidos quando o intervalo de tempo era um

ano.

Intervalo de tempo de um ano Média Desvio Padrão

Max Min Total

Temas identificados antes da edição 4,33 2,44 9 2 78

Temas identificados correctamente pela aplicação 3.78 1,85 8 2 68

Temas não identificados pela aplicação 0,56 0,77 2 0 10

Temas identificados apenas pela aplicação 1,67 0.84 3 0 30

Percentagem de acerto 87,17%

Importância dos temas identificados pelo utilizador

3.73 1.02 5 1

Importância dos temas identificados pela aplicação

3,7 1.07 5 1

Importância dos temas não identificados pela aplicação

2,5 1.08 4 1

Importância dos temas identificados após correr a aplicação

2,4 0.86 4 1

Tabela 8 - Resultados obtidos para o intervalo de tempo de um ano.

Na tabela podemos verificar que, tal como tinha acontecido para os restantes

intervalos de tempo, os resultados são muito semelhantes e voltando a aumentar a

taxa de sucesso na identificação dos temas pela aplicação.

Gráfico 18 - Distribuição dos temas pela sua

importância (mês)

80

Mais uma vez, com a análise da

distribuição dos temas pela importância

deste, concluímos que os temas mais

importantes eram todos identificados. Já

em relação aos de nível de importância 4,

dos 32 temas, houve apenas 2 que não

foram identificados pela aplicação.

Com os dados obtidos nesta tarefa,

podemos concluir que a aplicação se

comporta de maneira semelhante para

intervalos de tempo diferentes, o que é um

bom resultado. Para além disso, a taxa de sucesso na identificação dos temas

encontra-se sempre acima dos 80% chegando quase aos 90%. Assim a aplicação vai

em conta às expectativas dos utilizadores. A aplicação consegue também recordar em

média 1 a 2 temas ao utilizador. Concluímos também que a aplicação consegue

identificar os temas mais relevantes para o utilizador. Com a comparação dos

diferentes intervalos de tempo, verifica-se que quanto maior são os intervalos de

tempo, melhor é a taxa de acerto. Isto justifica-se com o facto de quanto maior os

intervalos de tempo, os utilizadores cada vez se recordam mais do geral e não tanto

dos pormenores, isto leva os utilizadores testes a identificar os temas mais relevantes

e importantes, para os quais a aplicação tem pouca dificuldade em identificar.

Gráfico 19 - Distribuição dos temas pela sua

importância (ano)

81

7.2.1.3 Tarefa 3 - Identificação de tema único

Gráfico 20 – Grau de satisfação obtido na identificação de tema único.

Esta tarefa tinha como objectivo medir o grau de satisfação dos utilizadores na

pesquisa de um determinado tema, e, para além disso, verificar se a aplicação

encontrava sempre o tema desejado pelo utilizador, correspondendo assim a

expectativa deste.

Como se pode verificar no gráfico 20, a maioria dos utilizadores conseguia encontrar o

tema desejado no jornal gerado, tendo assim a aplicação sucesso na identificação do

tema. Apenas em 2 testes a aplicação não identificou o tema desejado, o que no da

uma taxa de sucesso de 88.89 %.

O grau de satisfação dos utilizadores, embora não fosse sempre igual, variando entre

2, nos casos em que a aplicação não identificava o tema, e 5. No entanto consegue-se

uma média de 4.22, com um desvio padrão igual a 1.00.

Os resultados obtidos são bons, embora tenha havido temas que não foram

identificados. Em relação ao grau de satisfação dos utilizadores acerca dos temas

identificados pela aplicação não ser sempre 5 justifica-se devido a expectativa que

estes tinham. Os utilizadores por vezes estavam a espera de encontrar o seu tema

logo na primeira notícia, que era a mais importante, o que por vezes não acontecia,

daí não darem a classificação máxima.

82

7.2.1.4 Tarefa 4 - Pesquisa de ficheiros

Gráfico 21 – Resultados obtidos na tarefa de pesquisa de ficheiro

Esta tarefa tinha como principal objectivo verificar se os utilizadores eram capazes de

encontrar um determinado documento com a nossa aplicação. Para isso era pedido ao

utilizador que se lembrasse de um determinado documento e do respectivo tema e que

inserisse o intervalo de tempo desejado. Após o jornal estar criado contava-se o

número de cliques que o utilizador precisava para conseguir encontrar o ficheiro,

navegado apenas nas notícias e identificando o tema das notícias. Cada vez que o

utilizador seleccionava os documentos de uma dada noticia e o documento pretendido

não se encontrava no grupo de documentos dessa notícia, contava-se um retrocesso.

Os resultados obtidos estão ilustrados no gráfico 21. Todos os utilizadores

conseguiram identificar o ficheiro, no entanto, alguns necessitaram mais cliques que

outros, como se pode verificar através da análise do gráfico. Em média, cada utilizador

necessitava de 2.11 cliques para encontrar o seu ficheiro, com o desvio padrão a 1.41

cliques. No entanto a média para esta tarefa não é muito explicativa. Podemos

verificar que 10 utilizadores (mais de metade) encontraram o ficheiro à primeira,

necessitando de apenas um clique. Verifica-se também que apenas dois utilizadores

necessitaram mais de 3 cliques.

Em relação ao numero de retrocessos, estes numero é directamente proporcional ao

numero de cliques, isto é, se forem necessários 3 cliques, sabemos que houve um

retrocesso, 5 cliques 2 retrocessos e assim sucessivamente.

83

7.2.2. Questionário

Após a realização das tarefas por parte dos utilizadores era-lhes pedido que

preenchessem um breve questionário, para que estes pudessem dar as suas opiniões

e avalização sobre a aplicação. As respostas eram dadas em valores de 1 a 5 com os

seguintes significados: 1 - mau, 2 - razoável, 3 -

bom, 4 - muito bom, 5 – excelente.

Como se pode verificar pela análise do gráfico 22

a 30, os resultados obtidos foram bons.

A primeira questão era acerca da facilidade de

interacção com a aplicação. Os resultados

obtidos estavam todos acima de bom,

conseguindo obter uma média de 3.94 o que se

pode considerar muito bom.

Em relação a facilidade de identificação dos

temas em que o utilizador trabalhou, obtivemos

uma média de 4.17, o que também é um

resultado muito bom, demonstrando que os

utilizadores conseguiram encontrar os temas em

que estes trabalharam na edição do jornal.

Quanto a facilidade de os utilizadores

encontrarem ficheiros através dos temas da

edição do jornal, a média foi de a média foi de

4.56, resultado este que se encontra entre o

muito bom e o excelente. Isto leva-nos a

concluir que os utilizadores conseguiram, sem

qualquer dificuldade, encontrar os ficheiros

através da nossa aplicação, como já tinha sido

demonstrado nos resultados das tarefas.

Em relação a facilidade de identificar o tema de

uma dada noticia em particular, obtivemos uma

média de 3.89, que se pode considerar um

resultado muito bom também. Concluímos que os utilizadores eram capazes de olhar

para uma determinada noticia e identificar o tema em que esta se inseria.

Gráfico 22 – Facilidade de interacção com

a aplicação

Gráfico 23 – Facilidade de Identificação dos

temas em que trabalhou

Gráfico 24 – Facilidade de encontrar

ficheiros através dos temas

84

Quanto à qualidade dos resultados obtidos nas

suas pesquisas, à qual os utilizadores teste

reponderam com uma média de 3.67. Este valor

esta entre bom e muito bom.

De seguida, em relação a qualidade das frases

criadas pela nossa aplicação, a média foi de

3.11, o que pode ser considerado como um bom

resultado. Já em relação a estética do jornal,

onde se tinha em conta o layout, os tipos de

texto, entre outros, os utilizadores responderam

numa média de 4.33, resultado este que é muito

bom.

Gráfico 25 – Qualidade dos resultados

obtidos nas suas pesquisas

Gráfico 26 – Facilidade em identificar o

tema de uma noticia em particular

85

A última pergunta do questionário que se encontra no gráfico 30 era sobre a

legibilidade das notícias, onde se obteve uma média de 3.67, que está entre bom e

muito bom.

Na ultima questão, cujos resultados estão representados no gráfico 23, a questão era

acerca da utilizada da aplicação, onde a média de repostas obtida foi de 4.17

Na tabela 9 encontram-se um resumo das questões do questionário feito aos

utilizadores. Conseguimos verificar que o desvio padrão às várias questões nunca foi

superior a 1 e que a média nunca foi inferior a 3.

Gráfico 28 – Estética do jornal Gráfico 27 – Qualidade das frases

Gráfico 29 – Legibilidade das notícias. Gráfico 30 – Utilidade da aplicação

86

Questão: Média Desvio padrão

Max Min

Facilidade de interacção com a aplicação 3,94 0,87 5 3

Qualidade dos resultados obtidos nas suas pesquisas 3,67 0,49 4 3

Facilidade de identificação dos temas em que trabalhou

4,17 0,86 5 3

Facilidade de encontrar ficheiros através dos temas 4,56 0,92 5 2

Qualidade das frases 3,11 0,58 4 2

Facilidade em identificar o tema de uma noticia em particular

3,89 0,32 4 3

Estética do jornal (layout, tipos de texto) 4,33 0,84 5 3

Legibilidade das notícias 3,67 0,68 5 3

Utilidade da aplicação 4,17 0,38 5 4

Tabela 9 – Tabela resumo dos resultados obtidos no questionário

7.3. Conclusão

Os resultados obtidos dos testes foram, de forma geral, muito positivos. Os

utilizadores conseguem encontrar na aplicação quase todos os temas de que se

recordam, principalmente os mais importantes.

Nota-se claramente que os utilizadores não têm qualquer problema em identificar os

temas em que já trabalharam e a recordarem-se de outros, que já tinham caído em

esquecimento. Não têm também qualquer dificuldade em olhar para um determinada

noticia e identificar qual o temas em que essa mesma noticia se insere.

A aplicação mostrou-se muito útil também para a pesquisa de ficheiros, embora não

seja esta a sua funcionalidade. Os utilizadores conseguiam pensar num ficheiro e,

olhando para os temas das notícias, encontrar mesmo esse ficheiro, sem ser

necessário a selecção de muitas notícias, isto é, normalmente acertavam à primeira.

Por fim, o feedback dos utilizadores fui muito positivo, gostando, de uma forma geral,

da aplicação e vendo-lhe grande utilidade. Para além disso, não tinham qualquer

dificuldade em usar a aplicação, sem ser necessário qualquer tipo de treino prévio.

87

8. Conclusões e trabalho futuro

Neste capítulo vamos concluir esta dissertação. No inicio desta dissertação

propusemo-nos a criar uma nova forma de mostrar a informação pessoal que se

encontra encontrada indexada nos computadores aos seus utilizadores.

Um dos problemas encontrados hoje em dia ao gerir a grande quantidade de

informação pessoal ao nosso dispor no computador é conseguir visualizá-la de forma

suficientemente resumida e agrupada de forma a dar ao utilizador uma percepção

geral desta e de padrões acerca das suas actividades e interesses ao longo do tempo.

A nossa solução, o PersonalNews, permite obter essa percepção ao agrupar os

documentos do utilizador de acordo com os seus temas e apresentando esses temas

sob a forma de notícias num ―jornal pessoal‖. Conseguimos identificar correctamente

os temas em causa, bem como obter excertos relevantes dos documentos que

caracterizem esses temas. Esses excertos são então usados para a criação das

notícias propriamente ditas.

Existiram várias contribuições ao longo do nosso trabalho, destacando-se claramente

a inferência automática de temas a partir de documentos, a extracção de excertos

relevantes e representativos dos documentos pessoais dos utilizadores, a criação de

notícias que resumem os temas e, para finalizar, a criação de uma interface e sistema

interactivo onde se aplicou a biblioteca criada.

Depois de avaliar a aplicação com testes verificamos que obtivemos bons resultados.

Exemplo disso são os resultados obtidos na identificação dos temas pela aplicação.

Acima de 80% dos temas identificados pelos utilizadores foram também identificados

pela nossa aplicação, chegando este valor aos 87% quando o intervalo de tempo era

de aproximadamente 1 ano. É de realçar também os bons resultados obtidos nas

pesquisas de ficheiros. Todos o utilizadores conseguiram encontrar os ficheiros a

pesquisar, bastando para tal em média 2 cliques. Existam, no entanto, pontos onde se

pode melhorar. Exemplo disso, e onde obtivemos piores resultados, embora estes

ainda sejam bons, é a qualidade das frases. Os resultados obtidos justificam-se com a

não utilização de uma aplicação de língua natural já testada e em funcionamento,

sendo aplicada uma criada por nós. O valor mais importante a reter dos testes a

aceitação da aplicação por parte dos utilizadores. Também é de realçar a taxa de

identificação de temas pela aplicação dos quais os utilizadores estavam a espera e de

os relembrar certos temas que já tenham caído em esquecimento.

88

Em relação ao trabalho futuro, existem várias vertentes por onde este pode seguir.

Pode-se criar um algoritmo de clustering de raiz para aplicações parecidas com a

nossa, ou tentar adaptar os já existentes. Por outro lado, pode-se tentar melhorar a

estipulação dos valores usados no algoritmo de clustering, como é o caso das

keywords, raio e distância de junção, para diferentes conjuntos de dados. Uma outra

vertente por onde se pode continuar o trabalho é na língua natural. Neste, também

existem várias possibilidades, no entanto pensamos que a melhor seria aplicar uma

aplicação já existente e testada, de forma a que os resultados melhorassem

significativamente. Um outro caminho que se pode seguir como trabalho futuro prende-

se com a interface, podendo criar uma nova aplicação de visualização mais elaborado.

Por fim, a vertente mais interessante por onde este trabalho poderia evoluir era com a

integração de outras fontes de informação, como é o caso de informação pessoal

contida nos e-mails dos utilizadores, por exemplo.

89

9. Bibliografia

[Balabanović et al. 00] Balabanović, M., Chu, L. L., Wolff, G. J. 2000. Storytelling with

digital photographs, Proceedings of the SIGCHI conference on Human factors in

computing systems, p.564-571, April 01-06, 2000, The Hague, The Netherlands.

[Berry 92] Berry, M., W. 1992. Large-scale sparse singular value computations. The

International Journal of Supercomputer Applications, 6(1):13--49.

[Berry et al. 95] Berry, M., W., Dumais S.,T., O‘Brien, G. W. 1995. Using linear algebra

for intelligent information retrieval, SIAM Review, v.37 n.4, p.573-595, Dec. 1995

[Brooks and Montanez 06] Brooks, C. H., Montanez, N. 2006. An Analysis of the

Effectiveness of Tagging in Blogs, Proc 2006 AAAI Conf, 2006.

[Calvo and Ceccatto 00] Calvo A. R., Ceccatto H. A. 2000. Intelligent document

classification. In intelligent Data Analysis., p.411-420.

[Cutrell et al. 06] Cutrell, E., Robbins, D., Dumais, S., Sarin, R. 2006. Fast, flexible

filtering with phlat, Proceedings of the SIGCHI conference on Human Factors in

computing systems, April 22-27, 2006, Montréal, Québec, Canada.

[Deerwester et al. 90] Deerwester, S., Dumais S., Landauer, T., Furnas, G., Harshman,

R. 1990. Indexing by latent semantic analysis. In Journal of the American Society for

Information Science 41, 391-407.

[Dumais et al. 03] Dumais, S., Cutrell, E., Cadriz, JJ., Jancke, G., Sarin, R., Robbins,

C. D. 2003. Stuff I‘ve seen: A System for personal information retrieval and re-use.

Proceedings of the 26th annual international ACM SIGIR conference on Research

and development in information retrieval, July 28-August 01, 2003, Toronto,

Canada.

[Frau et al. 05] Frau, S., Roberts, J., & Boukhelifa, N. 2005. Dynamic Coordinated

Email Visualization. In WSCG.

[Fertig et al. 96] Fertig, S., Freeman, E., Gelernter, D. 1996. Lifestreams: an alternative

to the desktop metaphor, Conference companion on Human factors in computing

systems: common ground, p.410-411, April 13-18, 1996, Vancouver, British

Columbia, Canada.

90

[Freeman and Gelernter 96] Freeman, E., Gelernter, D. 1996. Lifestreams: a storage

model for personal data, ACM SIGMOD Record, v.25 n.1, p.80-86, March 1996.

[Gemmel et al. 02] Gemmel, J., Bell, G., Lueder, R., Drucker, S., Wong, C. 2002.

MyLifeBits: Fulfilling the Memex Vision. In Proceedings of the 10th ACM

international conference on Multimedia, December 01-06, 2002, Juan-les-Pins,

France.

[Gemmel et al. 06] Gemmel, J., Bell, G., Lueder, R. 2006. MyLifeBits: a personal

database for everything. In Communications of the ACM, v.49 n.1, p.88-95, January

2006.

[Gemmel et al. 03] Gemmel, J., Luder, R., Bell, G. 2003. The MyLifeBits Lifetime Store.

In proceedings of the 2003 ACM SIGMM workshop of experimental telepresence,

November 07, 2003, Berkeley, California.

[Gwizdka02a] Gwizdka, J., 2002. TaskView: design and evaluation of a task-based

email interface, Proceedings of the 2002 conference of the Centre for Advanced

Studies on Collaborative research, p.4, September 30-October 03, 2002, Toronto,

Ontario, Canada.

[Gwizdka02b] Gwizdka, J. 2002. Future Time in Email - Design and Evaluation of a

Task-Based Email Interface. Proceedings of IBM CASCON 2002, pp. 136--145.

[Heyer et al. 99] Heyer, L., J., Kruglyak, S., Yooseph, S. 1999. Exploring expression

data: identification and analysis of coexpressed genes. Genome Research, 9:1106-

1115, 1999.

[Hotho and Stumme 02] Hotho, A. Stumme, G. 2002. Conceptual clustering of text

clusters. In G. Kokai and J. Zeidler (Eds.), editors,Proc. Fachgruppentreffen

Maschinelles Lernen (FGML 2002), pages 37--45, Hannover, 2002.

[Kaufman and Rousseeuw 90] Kaufman, L., Rousseeuw, P., J. 1990. Finding Groups in

Data: An Introduction to Cluster Analysis. Wiley Series In Probability and Statistics.

John Wiley and Sons. New York: Wiley, 1990.

[Kim et al. 04] Kim, P., Podlaseck, M., Pingali, G. 2004. Personal chronicling tools for

enhancing information archival and collaboration in enterprises, Proceedings of the

the 1st ACM workshop on Continuous archival and retrieval of personal

experiences, October 15-15, 2004, New York, New York, USA.

91

[Lamming and Flynn 94] Lamming, M., Flynn, M. 1994. ―Forget-me-not‖ Intimate

computing in Support of Human Memory. In Proceedings of FRIEND 21:

International Symposium on Next Generation Human Interfaces (Tokyo, 1994), 125-

128.

[Landauer and Dumais 94] Landauer, T.,K., Dumais, S., T. 1994. Latent Semantic

analysis and the measurement of knowledge. In R. M. Kaplan and J. C. Burstein

(EDS) Education Testing Service Conference on Natural Language Processing

Techniques and Technology in Assessment and Education.

[Liu et al. 04] Liu, Y., Ciliax, B. J., Borges, K., Dasigi, V., Ram, A., Navathe, S.,

Dingledine, R. 2004. Comparison of two schemes for automatic keyword extraction

from MEDLINE for functional gene clustering. In Proceedings of the 2004 IEEE

Computational Systems Bioinformatics Conference (CSB'04), p.394-404, August 16-

19, 2004.

[Pantel and Lin 02] Pantel, P., Lin, D. 2002. Document clustering with committees. In

Proceedings of the 25th annual international ACM SIGIR conference on Research

and development in information retrieval, August 11-15, 2002, Tampere, Finland.

[Plaisant et al. 96] Plaisant, C., Milash, B., Rose, A., Widoff, S., Shneiderman, B. 1996.

LifeLines: visualizing personal histories, Proceedings of the SIGCHI conference on

Human factors in computing systems: common ground, p.221-ff., April 13-18, 1996,

Vancouver, British Columbia, Canada.

[Porter80] Porter, M. F. An algorithm for suffix stripping. Program,(14):130–137,1980.

[Rekimoto99a] Rekimoto, J. 1999. Time-machine computing: a time-centric approach

for the information environment, Proceedings of the 12th annual ACM symposium

on User interface software and technology, p.45-54, November 07-10, 1999,

Asheville, North Carolina, United States.

[Rekimoto99b] Rekimoto, J. 1999 TimeScape: a time machine for the desktop

environment, CHI '99 extended abstracts on Human factors in computing systems,

May 15-20, 1999, Pittsburgh, Pennsylvania.

[Ringel et al. 03] Ringel, M., Cutrell, E., Dumais, S. and Horvitz, E. 2003. Milestones in

time: The value of landmarks in retrieving information from personal stores. In

Proceedings of Interact 2003: Ninth International Conference on Human-Computer

Interaction, September 2003, Zürich, Switzerland.

92

[Rohall et al. 01] Rohall, S. L., Gruen, D., Moody, P., Kellerman, S. 2001. Email

Visualizations to Aid Communications. In Proceedings of InfoVis 2001 The IEEE

Symposium on Information Visualization, IEEE. 12--15.

[Sebastiani02] Sebastiani, F. 2002. Machine learning in automated text categorization.

ACM Computing Surveys (CSUR), v.34 n.1, p.1-47, March 2002.

[Shen et al. 01] Shen, C., Lesh, N., Moghaddam, B., Beardsley, P., Bardsley, R. S.

2001. Personal digital historian: user interface design, CHI '01 extended abstracts

on Human factors in computing systems, March 31-April 05, 2001, Seattle,

Washington .

[Smith et al. 06] Smith, G., Czerwinski, M., Mayers, B., Robbins, D., Robertson, G.,

Tan, D. S. 2006. FacetMap: A Scalable Search and Browse Visualization. In IEEE

Transactions on Visualization and Computer Graphics, v.12 n.5, p.797-804,

September 2006.

[Viégas et al. 04] Viégas, F. B., Boyd, D., Nguyen, N. B., Potter, J., Donath, J. 2004.

Digital Artifacts for Remembering and Storytelling: PostHistory and Social Network

Fragments, Proceedings of the Proceedings of the 37th Annual Hawaii International

Conference on System Sciences (HICSS'04) - Track 4, p.40109.1, January 05-08,

2004.

[Viégas and Smith 04] Viégas, F. B., Smith, M. 2004. Newsgroup Crowds and

AuthorLines: Visualizing the Activity of Individuals in Conversational Cyberspaces.

In Proceedings of the Proceedings of the 37th Annual Hawaii International

Conference on System Sciences (HICSS'04) - Track 4, p.40109.2, January 05-08,

2004.

[Viégas et al. 06] Viégas, F. B., Golder, S., Donath, J. 2006. Visualizing Email Content:

Portraying Relationships form Conversational Histories. Proceedings of the SIGCHI

conference on Human Factors in computing systems, April 22-27, 2006, Montréal,

Québec, Canada.

[Whittaker and Sidner 96] Whittaker, S., Sidner, C., 1996. Email overload: exploring

personal Information management of email. In Proceedings of the SIGCHI

conference on Human factors in computing systems: common ground, p.276-283,

April 13-18, 1996, Vancouver, British Columbia, Canada

[Xiong and Donath 99] Xiong, R., Donath, J. 1999. PeopleGarden: creating data

portraits for users, Proceedings of the 12th annual ACM symposium on User

93

interface software and technology, p.37-44, November 07-10, 1999, Asheville, North

Carolina, United States.

[Xu and Wunsch 05] Xu, R., Wunsch, D. 2005. Survey of clustering algorithms.

Transactions on neural networks. IEEE Transactions on neural networks 16 (3):

645—678.

[Yang and Liu 99] Yang, Y., Liu, X.. 1999. A re-examination of text categorization

methods. In Proceedings of the 22nd annual international ACM SIGIR conference

on Research and development in information retrieval, p.42-49, August 15-19, 1999,

Berkeley, California, United States.

[Yiu et al. 97] Yiu, K., R. Baecker, N. Silver and B. Long. 1997. A time-based interface

for electronic mail and task management. In Proc. HCI International ‗97.

94

10. Anexos

A1 – Estrutura dos padrões em XML

Como foi referido e explicado no capítulo 5, os padrões de notícias eram muito

importantes para a geração destas. Nesta secção iremos analisar e descrever

detalhadamente a estrutura dos documentos XML que continham estes padrões de

notícias. De seguida encontra-se um desses padrões:

<newsTemplate importance ="1">

<title>

<alt>

<!-- as alternativas ficam aqui -->

<li>New advances in</li>

<li time="Present" number="plural">Developments on</li>

</alt>

<textExcerpt quoteSize="small" morphology="verb"> </textExcerpt>

</title>

<body>

We saw new developments in

<textExcerpt quoteSize="small" morphology="name"> </textExcerpt>,

having figured out that

<textExcerpt quoteSize="medium" morphology="name"> </textExcerpt>.

As a result, we

<alt>

<li time="present">studied how</li>

<li time="future">will study how</li>

<li time="past">had studied how</li>

</alt>

<textExcerpt quoteSize="medium" morphology="name"> </textExcerpt>

</body>

</newsTemplate>

Como se pode ver, estes padrões são compostos para vários nós e elementos, que

analisaremos de seguida.

<newsTemplate importance ="1">

Marca o início de um novo template para as notícias. O atributo importance define a

importância da notícia, podendo estes assumir valores de 1 a 5, sendo o 1 a notícia

mais importante e a 5 a menos importante.

95

<title>

<alt>

<!-- as alternativas ficam aqui -->

<li>New advances in</li>

<li time="Present" number="plural">Developments on</li>

</alt>

<textExcerpt quoteSize="small" morphology="verb"> </textExcerpt>

</title>

Este submódulo de XML define o título da notícia. Dentro do elemento <alt> podem-se

inserir as diferentes alternativas par o inicio da notícia, sendo depois escolhido apenas

uma na geração da noticia. Essas alternativas estão dentro de um <li> que pode ter os

seguintes atributos: number que indica se o texto a inserir deve estar no plural ou no

singular e o time que indica o tempo verbal do texto a inserir. Assim, para o exemplo

fornecido se escolhêssemos a segunda alternativa, o tempo verbal do texto a inserir

deveria ser no presente. Depois do elemento <alt> vem o elemento <textExcerpt> que

contém o atributo morphology que indica a morfologia da primeira palavra a inserir

após o texto do temlate.

O XML que se segue é acerca do corpo da noticia:

<body>

We saw new developments in

<textExcerpt quoteSize="small" morphology="name"> </textExcerpt>,

having figured out that

<textExcerpt quoteSize="medium" morphology="name"> </textExcerpt>.

As a result, we

<alt>

<li time="present">studied how</li>

<li time="future">will study how</li>

<li time="past">had studied how</li>

</alt>

<textExcerpt quoteSize="medium" morphology="name"> </textExcerpt>

</body>

Tal como anteriormente para o título os elementos e os seus atributos do <body> são

semelhantes.

Com estes templates qualquer utilizador pode acrescentar novos templates e/ou

adaptar os já existentes para o formato desejado.