Documente Academic
Documente Profesional
Documente Cultură
Estudo sobre
Navegação Colaborativa na Web
Este trabalho somente foi possível pelo apoio que re
ebi de diversas pessoas.
Agradeço à minha esposa Rita,
ompanheira de todos os momentos.
Agradeço à Ione Russo, uma presença importantíssima na minha vida.
Agradeço à minha orientadora, Vera Lú
ia Strube de Lima, pelo apoio nesta
jornada.
Agradeço às pessoas annimas que tornaram este trabalho possível. Àqueles
que se dispuseram a utilizar o programa que eu estava propondo num momento
em que ele nada tinha a ofere
er em tro
a. Estas pessoas o zeram por amizade.
Talvez seja esta a maior riqueza que um homem pode aspirar.
Muito embora a sua
ontribuição seja annima, apresentarei os apelidos que
eles utilizaram para se rela
ionar
om o protótipo que é apresentado neste trabalho.
Sou espe
ialmente grato a: brownie, Altrus,
a
horro, lpalazzo, pris
illa, zumbi,
senhorita, rafael, Taz.
Agradeço a meus pais.
viii
Abstra
t
The sear
h for relevant information on the Web depends on a personalized dis-
overy pro
ess. In this pro
ess ea
h person will agregate new information to the
border of what he/she already knows. Finding relevant information is also related
to the user history, being driven by the
hoi
es of the do
uments whose informa-
tion will be a
essed. In this work, we present a study on alternative ways to help
users nd relevant information based on identied similarities between users. The
similarities are the starting point for the presentation of exploration paths that
potentially lead to information that is of relevan
e for ea
h parti
ular user.
ix
x
Resumo
A bus
a por informações relevantes na Web passa por um pro
esso de des
oberta
que rela
iona os
onhe
imentos que a pessoa já possui e aqueles que, na vizinhança
dos primeiros, ela pode
ompreender. Esse pro
esso tem um
aráter históri
o
mar
ado pelas ações de es
olha dos do
umentos
ujos
onteúdos serão a
essados.
Em nosso trabalho, apresentamos um estudo sobre modos alternativos para o
auxílio à navegação, enquanto bus
a por
onhe
imentos relevantes, baseada na
identi
ação de similaridades entre grupos de usuários. Essa similaridade fun
iona,
no sistema proposto,
omo um meio de identi
ar
aminhos de exploração que
determinem um mapeamento das áreas de interesse de
ada usuário.
xi
xii
Sumário
ABSTRACT ix
RESUMO xi
Capítulo 1: Introdução 25
1.1 Re
uperação de informações úteis na Web . . . . . . . . . . . . . . 26
1.1.1 Bus
a por informações baseada em pesquisa . . . . . . . . . 26
1.1.2 Bus
a por informações baseada em navegação . . . . . . . . 27
1.2 Contexto de Pesquisa . . . . . . . . . . . . . . . . . . . . . . . . . . 27
1.3 Metodologia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
1.4 Estrutura do do
umento . . . . . . . . . . . . . . . . . . . . . . . . 30
xiii
2.1.5.1 Utilização do algoritmo K-Means . . . . . . . . . . 48
2.1.6 Mapa Auto-Organizável . . . . . . . . . . . . . . . . . . . . 50
2.1.6.1 Aprendizagem nos mapas auto-organizáveis . . . . 50
2.1.6.2 Utilização dos mapas auto-organizáveis para agru-
pamento de dados . . . . . . . . . . . . . . . . . . 52
2.2 Visão geral do agrupamento de textos . . . . . . . . . . . . . . . . . 52
2.2.1 Agrupamento de textos
om o algoritmo K-Means . . . . . . 54
2.2.2 Bise
ting K-Means . . . . . . . . . . . . . . . . . . . . . . . 55
Capítulo 4: Sistema z9 71
4.1 Agrupamento par
ial de usuários . . . . . . . . . . . . . . . . . . . 71
4.2 Agrupamento de pers de usuários ao invés de agrupamento de textos 72
4.3 A abordagem do z9 . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
4.4 O sistema desenvolvido . . . . . . . . . . . . . . . . . . . . . . . . . 76
4.4.1 Coleta de dados . . . . . . . . . . . . . . . . . . . . . . . . . 78
4.4.1.1 Software
liente . . . . . . . . . . . . . . . . . . . . 78
4.4.1.2 Software servidor . . . . . . . . . . . . . . . . . . . 80
4.4.2 Proteção da priva
idade . . . . . . . . . . . . . . . . . . . . 80
4.5 Serviços do z9 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
4.5.1 Identi
ando Par
eiros de Navegação e Pesquisa . . . . . . 81
4.5.2 Fazendo Amigos . . . . . . . . . . . . . . . . . . . . . . . . 84
4.5.3 Sugestões de navegação e
ontexto de navegação de grupo . 85
4.5.4 Pesquisa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
4.5.5 Continuações e noção de presença . . . . . . . . . . . . . . . 89
4.5.6 Estatísti
as e reputação . . . . . . . . . . . . . . . . . . . . 91
4.5.7 Grá
os . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
xiv
Capítulo 5: Análise da evolução da
omunidade de usuários
do z9 97
5.1 Pesquisa qualitativa de satisfação . . . . . . . . . . . . . . . . . . . 97
5.2 Relação entre notas e distân
ia dos par
eiros de navegação . . . . . 99
5.3 Outras avaliações possíveis . . . . . . . . . . . . . . . . . . . . . . . 100
xv
xvi
Lista de Tabelas
xvii
xviii
Lista de Figuras
4.1 Arquitetura do z9 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
4.2 Estrutura de armazenamento de dados . . . . . . . . . . . . . . . . 79
4.3 Par
eiros de navegação e pesquisa no z9 . . . . . . . . . . . . . . . 82
4.4 Amigos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
4.5 Sugestões de páginas relevantes . . . . . . . . . . . . . . . . . . . . 87
4.6 Continuações e noção de presença . . . . . . . . . . . . . . . . . . . 90
4.7 Estatísti
as e reputação . . . . . . . . . . . . . . . . . . . . . . . . 92
4.8 Representação grá
a do históri
o do usuário . . . . . . . . . . . . . 94
4.9 Grá
o de ligações entre usuários baseado na visitação das mesmas
páginas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96
xix
xx
Lista de Algoritmos
1 Agrupamento hierárqui
o aglomerativo . . . . . . . . . . . . . . . . 44
2 Agrupamento hierárqui
o divisivo . . . . . . . . . . . . . . . . . . . 44
3 K-Means . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
4 Sumário do Algoritmo do SOM . . . . . . . . . . . . . . . . . . . . 51
5 Bise
ting K-Means . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
6 S
atter/Gather . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
7 Similaridade de navegação entre usuários . . . . . . . . . . . . . . . 83
8 Similaridade de pesquisa entre usuários . . . . . . . . . . . . . . . . 83
9 Identi
ação de páginas relevantes . . . . . . . . . . . . . . . . . . . 86
xxi
xxii
Lista de Símbolos e Abreviaturas
SOM Self-Organizing Map 50
xxiii
xxiv
Capítulo 1
Introdução
Este trabalho propõe alternativas para a des
oberta de informação relevante
na Web.
A forma es
olhida para abordar esse problema passa por uma
onexão
om o
históri
o de navegação individual e suas relações
om o históri
o
oletivo,
omo in-
di
ador de relações de vizinhança de
onhe
imento que permitam apontar direções
signi
ativas para aquele que realiza a pro
ura.
Esta abordagem é fundamentalmente diversa, e ainda assim,
omplementar,
àquela da pesquisa em motores de bus
a. O aspe
to fundamental dessa difer-
ença está na perspe
tiva estáti
a, ou estrati
ante, desses últimos. Isso porque a
geração, ou estruturação, de uma base de dados da Internet, a partir de uma per-
spe
tiva genéri
a, gerada pela experiên
ia de navegação de
rawlers, ou robs,
que varrem a teia de
onexões da Web, é algo fundamentalmente diferen
iado
da experiên
ia e propósitos que levam
ada pessoa a per
orrer determinados
am-
inhos formados por seqüên
ias de links. Essa abordagem é estrati
ante porque
segue a proposta de re
uperação, organização e disponibilização sistemáti
a de um
onhe
imento que se en
ontra disponível nas páginas a
essíveis publi
amente.
Neste ponto podemos
onsiderar a questão da bus
a dentro de um
ontexto
parti
ular para
ada pessoa,
one
tado, ainda,
om o grupo ao qual esta pessoa se
liga, e que determina símbolos próprios de
omuni
ação, tais
omo línguas, dialetos,
gírias, et
. Aspe
tos esses que extrapolam a perspe
tiva generalista proposta pelos
sites de bus
a. Não queremos dizer
om isso que esse tipo de serviço não seja útil
- sua utilização em larga es
ala prova o
ontrário - mas sim que existem aspe
tos
individuais que não são, por sua própria natureza, levados em
onsideração.
Assim, neste trabalho, parte-se da
onstrução de históri
os parti
ulares e rela
io-
nam-se os mesmos, de modo a formar grupos
om
ara
terísti
as similares. De
posse dessa informação
riamos um serviço que é
apaz de gerar perspe
tivas in-
dividuais de páginas relevantes e de asso
iações entre os usuários do sistema.
Apli
ando nossa proposta, apresentamos uma ferramenta para o auxílio à nave-
25
gação, baseada na identi
ação de similaridades entre um grupo de usuários. A
medida de similaridade entre os usuários baseia-se no a
esso às mesmas páginas
(quanto mais páginas
omuns a
essadas, mais similares os pers). Essa medida,
entretanto, nun
a é aferida de modo global. Para permitir a parti
ipação de um
grande número de usuários, o sistema
onstrói apenas uma visão par
ial das re-
lações entre os usuários. Assim,
ada usuário, a partir de um ponto de vista do
sistema, pode utilizar-se do mesmo para a realização de explorações baseadas na
tro
a de informações sobre páginas visitadas por outros usuários
om interesses
similares.
A prin
ipal forma de se pro
urar por informações na Web hoje é a pesquisa,
R ou Yahoo!
om a utilização de serviços de bus
a, tais
omo o Google
R , os quais
utilizam um sistema de indexação de páginas que tem,
omo
ritério bási
o, a
presença de determinadas palavras ou expressões nas mesmas.
A abordagem baseada em pesquisa por palavras ou expressões vem mostrando
suas limitações à medida que vemos
res
er a quantidade de material disponível,
gerando um aumento no tempo ne
essário para se en
ontrar um do
umento rel-
evante dentre os retornados pelo serviço de bus
a, e um aumento no número de
bus
as infrutíferas realizadas.
Um ponto fra
o dos sistemas de bus
a baseada em pesquisa na Web,
omo
apontado por [Honkela, 1997a℄, está na di
uldade em auxiliar o usuário na ex-
ploração de
onjuntos de do
umentos rela
ionados a assuntos sobre os quais ele
não tem muito
onhe
imento. Isso porque os sistemas de bus
a ne
essitam que
o usuário determine, de antemão, as palavras que são relevantes para a pesquisa,
o que normalmente é difí
il quando não se é
onhe
edor do assunto em questão.
Assim, o problema torna-se quase paradoxal. Quanto maior for o
onhe
imento
sobre o assunto que se quer pesquisar, melhores serão os resultados en
ontrados,
sendo o
ontrário também verdadeiro.
26
1.1.2 Bus
a por informações baseada em navegação
27
provedores de serviços Web ela pode permitir a des
oberta de padrões de
ompor-
tamento, em termos de páginas visitadas, que permitam rela
ionar os usuários do
site em termos das páginas a
essadas e extrair informação útil, de modo a permitir
a melhora do serviço ou uma exploração mais efetiva do poten
ial
omer
ial do site.
A
oleta dos endereços visitados pode ser realizada no servidor, no
liente ou em
um proxy intermediário [Cabri et al., 1999℄. Em um exemplo [Shahabi et al., 1997℄
no qual as informações de navegação foram
oletadas no
liente, o me
anismo de
oleta, baseado em um applet java, somente era
apaz de realizar a
oleta quando
o usuário utilizava o servidor no qual o applet era disponibilizado. Essa abordagem
pou
o se diferen
ia daquelas em que os dados são
oletados no próprio servidor
Web.
Web personalization diz respeito à modi
ação automáti
a da estrutura de
um Web site, de modo a satisfazer as preferên
ias de
ada usuário que faz uso
do mesmo. En
ontram-se, na literatura, exemplos da apli
ação de algoritmos de
Data Mining [Mitra, 2003℄ na tentativa de identi
ar pers de navegação 1 entre
os usuários do site. Depois de identi
ados esses pers é possível dire
ionar os
usuários para páginas mais relevantes, utilizando o
onhe
imento adquirido sobre
o
omportamento do grupo de usuários que utiliza o site.
Collaborative Web browsing é a navegação realizada simultaneamente por várias
pessoas. Em sua forma mais
omum, temos a gura do mestre, o qual dire
iona a
navegação do grupo, enquanto os outros parti
ipantes,
hamados es
ravos assis-
tem ao passeio. É possível ainda que um es
ravo, se autorizado pelo mestre,
torne-se o indivíduo responsável por guiar o grupo. Nesse tipo de navegação é
o-
mum o uso de ferramentas de apoio à
omuni
ação e
olaboração, tais
omo
hats
e
ollaborative whiteboards, para auxiliar a interatividade durante a experiên
ia de
navegação.
Assisted browsing diz respeito ao monitoramento do usuário, por parte de um
sistema, de modo que o mesmo seja
apaz de auxiliá-lo na des
oberta de novas
páginas interessantes, a partir da identi
ação e automatização das estratégias
utilizadas pelo usuário em suas bus
as. Essas té
ni
as, normalmente baseadas em
agentes, foram utilizadas tanto para ajudar o usuário solitário [Lieberman, 1995℄
quanto grupos de usuários [Ja
zynski and Trousse, 1998℄[Lieberman et al., 1999℄.
Cooperative browsing diz respeito à utilização de ferramentas auxiliares no pro-
esso de navegação livre (un
onstrained browsing ), que permitam aos usuários ter
uma per
epção do que os outros usuários estão fazendo (awareness ), enquanto
grupo, e quem está fazendo o quê (a
ountability ) enquanto usuários individuais.
Além disso, propõe-se a
riação e utilização de um históri
o global de indí
ios
de navegação (tais
omo transições entre endereços) que permita que um usuário
1 Neste trabalho denimos perl de navegação
omo o
onjunto de endereços das páginas
a
essadas por um usuário.
28
possa se bene
iar da experiên
ia
oletiva, enquanto, por sua vez, alimenta o sis-
tema
om os resultados de suas próprias experimentações. As noções apresentadas
até aqui não são, entretanto,
onsenso: em [Cabri et al., 1999℄
ooperative brows-
ing é denido
omo a atividade de um time que navega na Web
om o objetivo
de en
ontrar informações a respeito de um determinado tópi
o.
Como visto em [Aneiros et al., 2003℄, o termo so
ial browsing diz respeito ao
ato de
ooperação entre diversos indivíduos realizando uma tarefa de navegação.
Essa
ooperação pode ser direta ou indireta. O
aso do
ollaborative browsing é um
exemplo de
ooperação direta, onde um indivíduo guia os outros expli
itamente.
No
aso da
olaboração indireta, entretanto, os usuários têm a sua disposição um
onjunto de sinais e traços deixados por outros, e que podem servir de subsídio para
a realização de uma navegação mais e
iente. Esses sinais podem ser indi
ações
deixadas por usuários que passaram pelo site anteriormente, enquanto os traços
podem ser, por exemplo, direções tomadas pelos usuários que estiveram em um
determinado site.
Um exemplo interessante de assisted Web browsing, que utiliza elementos de
olaboração indireta, é o software Alexa
R (www.alexa.
om). Esse software
on-
siste de um toolbar que o usuário instala em seu browser, permitindo-lhe veri
ar,
para
ada página a
essada, quais as páginas rela
ionadas, em termos das relações
de similaridade entre essa página e as outras, onde o
ritério de similaridade é
o a
esso pelos mesmos usuários. Um exemplo seria: o usuário a
essa a página
www.futebol.
om e o sistema indi
a as páginas www.inter.
om e www.gremio.
om.
Isso signi
a que o sistema identi
ou que os usuários que a
essam www.futebol.
om
ostumam a
essar também as páginas www.inter.
om e www.gremio.
om. Essa
té
ni
a é pare
ida
om a empregada pela livraria Amazon
R (www.amazon.
om),
ujo site sugere livros baseado nas relações entre as
ompras feitas pelos usuários.
O termo Re
ommender systems [Riedl and Dourish, 2005℄ diz respeito a sis-
temas que tentam prever quais itens, sejam eles músi
as, notí
ias, lmes, ou mesmo
páginas da Web, são do interesse de um dado usuário. Para isto estes sistemas uti-
lizam informações a respeito do perl do usuário. Os sistemas de re
omendação
extraem suas informações de perl dos próprios usuários, em pro
essos que po-
dem ser explí
itos ou implí
itos. Um exemplo de pro
esso explí
ito de formação
de perl poderia ser perguntar diretamente ao usuário se um dado objeto é de
interesse para ele. Já no
aso do pro
esso de aquisição implí
ita de perl, um
exemplo poderia ser o monitoramento das ações do usuário, de forma a inferir seus
interesses e, a partir daí,
riar seu perl.
Neste trabalho,
omo resultado do estudo realizado, apresentamos um ambi-
ente
olaborativo similar ao Alexa
R . A diferença é que ele agrupa os usuários,
e não as páginas. Essa diferença é a
have que
olo
a a
omunidade de usuários
omo
entro do pro
esso de des
oberta da informação, utilizando, para isso, a es-
29
trutura das
onexões entre as páginas, tal
omo eviden
iada através do pro
esso
da navegação dos grupos,
omo auxiliares na des
oberta da informação relevante,
determinada pelas dinâmi
as próprias de
ada grupo ao qual
ada indivíduo se
en
ontra asso
iado.
1.3 Metodologia
O método utilizado para a realização deste trabalho teve iní
io
om uma
pesquisa teóri
a, que envolveu os temas apontados na Seção 1.2. Logo após foi
realizado um levantamento sobre sistemas desenvolvidos
om o m de auxiliar
usuários no pro
esso de des
oberta de informações relevantes, de modo asso
iado
ao ato de navegação. Esse levantamento abordou desde sistemas que tentam agru-
par os textos en
ontrados em um
onjunto de páginas, até a sugestão de páginas
interessantes, a partir da similaridade de perl de navegação dos usuários do sis-
tema, passando por sistemas de navegação
olaborativa, nos quais a experiên
ia
da navegação é
ompartilhada em tempo real. A partir da perspe
tiva dos diversos
sistemas estudados foi
riada uma proposta própria,
om
ara
terísti
as inovado-
ras em relação àquelas estudadas. A seguir realizamos a implementação de um
sistema protótipo que
ontém as
ara
terísti
as que a
reditamos relevantes para a
realização da tarefa de transferên
ia de informações, de forma a tornar a bus
a por
páginas relevantes mais efetiva. Por m realizamos um estudo de
aso de uso deste
protótipo,
om o intuito de identi
ar aspe
tos interessantes de sua utilização.
Apresentaremos, a seguir, uma des
rição da estrutura do texto da dissertação.
30
de dados e agrupamento de textos. Estes
on
eitos são fundamentais para a
om-
preensão dos me
anismos utilizados para a identi
ação de similaridade entre en-
tidades, sejam elas usuários ou páginas na Web.
31
32
Capítulo 2
Agrupamento de dados e
agrupamento de textos
Quando men
ionamos, anteriormente, as abordagens mais
omuns de bus
a de
informações na Web, foi apresentado o dilema representado pela bus
a baseada
em palavras-
have. Que é o de ser ne
essário um
onhe
imento prévio a respeito
daquilo que se quer des
obrir. Assim, não seria interessante se pudéssemos ter um
mapa da Web ? Alguma forma de se guiar entre os do
umentos que
ompõem a
rede de informações disponíveis, fazendo-se uso, para isso, de direções baseadas
nos assuntos a que se rela
ionam os do
umentos? Se tal mapa existisse, seria
possível a alguém pro
urar por informações relevantes e ir aprendendo sobre os
assuntos que não sabe, partindo daqueles que já
onhe
e. Não queremos dizer
om
isso que a bus
a que se faz atualmente, baseada em palavras pro
uradas em sites de
bus
a, não permite que se aprendam
oisas novas por
ontigüidade de assuntos.
O que queremos dizer é que não existe um me
anismo explí
ito estabele
ido para
tal propósito.
Uma tentativa no sentido de se organizar a Web foi feita pelo site Yahoo!
R,
entre outros, Nesse site existe, ainda, uma seção,
hamada Web Dire
tory, que
indexa páginas de a
ordo
om
ategorias pré-denidas, tais
omo
arros, nanças,
jogos, et
. Essa proposta
ontinua a ser tentada em sites
omo o Open Dire
-
tory Proje
t (http://dmoz.org/add.html), onde se pode ver um esforço da mesma
natureza. De qualquer forma, nos pare
e
laro que uma tentativa nesse sentido,
apaz de gerar resultados interessantes, baseada na força de trabalho humana,
está além de qualquer esforço que valha a pena ser tentado. Com isso em mente
podemos pensar: não seria possível
onstruir-se tal mapa de forma automáti
a?
Para se realizar essa tarefa podemos pensar em duas alternativas: a
lassi
ação
das páginas na Web e o seu agrupamento por similaridade.
Em relação à hipótese da
lassi
ação automáti
a de páginas da Web, é pre
iso
ter-se em mente que, para se
lassi
ar um
onjunto de do
umentos, é ne
essário
33
que se saiba, de antemão, quais as
lasses de assuntos a que eles perten
em. Na
Web en
ontramos uma quantidade muito grande de do
umentos que, além disso,
é dinâmi
a, no sentido de que os do
umentos são removidos ou modi
ados
om o
tempo. Para se
ategorizar ou
lassi
ar as páginas da Web, seria ne
essário dispor
de um
ritério de
lassi
ação universal,
riado por um
onjunto de espe
ialistas,
que abar
asse todos os possíveis assuntos
riados, em qualquer língua utilizada.
Além disso, seria importante que as páginas já
lassi
adas fossem revisitadas
e re
lassi
adas de tempos em tempos,
om a ne
essária
riação ou destruição
de
lasses,
onforme a mudança o
orrida nos textos. Isso nos leva novamente à
questão do
usto de utilização de trabalho humano para a tarefa. Uma esforço
dessa magnitude é,
laramente, algo imprati
ável nesses termos.
Assim, uma alternativa que pare
e mais interessante, e da qual parte esse
trabalho, é a identi
ação, automáti
a, de similaridades entre os textos, e o uso
dessa informação na determinação de grupos de textos
orrelatos.
Obviamente essa abordagem não resolve o problema da quantidade de pro
es-
samento ne
essário para
omputar-se o resultado dos agrupamentos. Falaremos
sobre esse problema, e sobre a proposta de solução aqui apresentada, no
apítulo
4, Seção 4.5.4.
Para entendermos
omo o agrupamento de textos pode ser feito, e as di
ul-
dades envolvidas na utilização dessa té
ni
a para um
onjunto muito grande de
páginas da Web, apresentaremos, antes, uma introdução ao assunto mais genéri
o
do agrupamento de dados.
34
objetos sob análise. O agrupamento de dados baseia-se na identi
ação de similar-
idades entre elementos,
omumente representados por vetores identi
ando pontos
no espaço multi-dimensional, organizados em grupos,
om base na similaridade
entre os elementos [Jain et al., 1999℄.
É importante salientar a diferença entre o agrupamento de dados, ou
las-
si
ação não-supervisionada, e a
lassi
ação supervisionada. Na
lassi
ação
supervisionada o sistema tem a
esso, durante o período de treinamento, a uma
oleção de objetos pré-
lassi
ados, que servirão de guia para o pro
esso de apren-
dizagem, durante o qual o algoritmo deverá identi
ar as regras subja
entes que
determinaram a
lassi
ação, feita por espe
ialistas humanos. A
lassi
ação não-
supervisionada, por outro lado, analisa um
onjunto de objetos não-rotulados,
de modo a
riar grupos de elementos que apresentam semelhanças entre os seus
vetores, representando, assim, as similaridades en
ontradas entre os objetos repre-
sentados por esses vetores. Após o pro
esso de agrupamento é
omum atribuir-se
rótulos des
ritivos aos grupos. Esses rótulos, entretanto, têm um signi
ado
om-
pletamente diferente dos rótulos utilizados na
lassi
ação supervisionada. Os
rótulos resultantes do agrupamento de dados têm a função de prover uma de-
s
rição, realizada posteriormente, das
ara
terísti
as responsáveis pela geração do
agrupamento, des
rição esta que é extraída dos próprios objetos apresentados.
O agrupamento de dados tem en
ontrado utilização em diversas áreas. Citamos
algumas apli
ações dessa té
ni
a [Mitra, 2003℄.
• Análises médi
as: identi
ação de
res
imento anormal através de imagens
de tomógrafo
omputadorizado.
35
• Ciên
ias e
onmi
as: realização de pesquisa de marketing a partir do agru-
pamento dos
lientes pelo perl.
A Figura 2.1 (extraída de [Jain et al., 1999℄, p. 267), mostra os diversos passos
realizados durante o pro
esso de agrupamento.
36
Um exemplo de identi
ação de
ara
terísti
as relevantes poderia ser o seguinte:
um projetista quer realizar um agrupamento de dados de
lientes de seguro, para
identi
ar
lientes que devem ser bene
iados
om des
ontos. O
ritério para a
atribuição do des
onto seria a não o
orrên
ia de a
identes envolvendo o
liente.
Nesse
aso, o projetista poderia
onsiderar a idade do
liente
omo um elemento
representativo das amostras, e des
artar o tipo sangüíneo. Per
ebe-se que, se o
sistema estivesse sendo projetado para a identi
ação de doadores de sangue, o
ritério de es
olha se inverteria. Isso nos remete à questão da subjetividade iner-
ente à es
olha das
ara
terísti
as que farão parte das amostras.
1. d(x, y) = 0 ↔ x = y
2. d(x, y) = d(y, x)
4. d(x, y) ≥ 0
37
Sejam dois pontos a = (x1 , x2 , . . . , xn ), b = (y1 , y2 , . . . , yn ) ∈ Rn . Dene-se a
distân
ia eu
lidiana entre eles
omo
q
d(x, y) = (x1 − y1 )2 + (x2 − y2 )2 + . . . + (xn − yn )2 (2.1)
Como visto em [Zhong and Ghosh, 2003℄, outra forma de se agrupar dados é
determinar a relação entre objetos
om base em modelos probabilísti
os.
Seja X = {x1 , x2 , . . . , xn } o
onjunto de objetos a serem agrupados, e L =
{l1 , l2 , . . . , lk } o
onjunto de modelos probabilísti
os, tais
omo
adeias marko-
vianas, as quais, basi
amente, determinam a possibilidade de um evento o
orrer,
dada a o
orrên
ia de um evento anterior. Nesse
enário, um modelo ly pode ser
visto
omo um
entróide, ou ponto médio entre as amostras, para o agrupamento
y . Os modelos teriam, assim, um nível de ligação
om os objetos, sendo esse
nível denido pelo logaritmo da verossimilhança, ou log-likelihood, dada uma dis-
tribuição p, p(x|ly ). A Figura 2.2 (de [Zhong and Ghosh, 2003℄), mostra a relação
entre os modelos e os objetos.
Seja τ = {t1 , t2 , . . . , tk } o
onjunto dos k
onjuntos de parâmetros geradores
dos modelos l. Assim, a similaridade pode ser vista
omo p(x|ty ). Podemos denir
a similaridade global S , para o
aso dos modelos probabilísti
os, dos objetos X
em relação aos parâmetros τ ,
omo mostrado na Equação (2.2) de [Bilmes, 1997℄.
N
(2.2)
Y
S(τ |X) = P (X|τ ) = p(xi |τ )
i=1
38
X1
l1
L X
X2
l2
X3
lK
XN
39
os c grupos que maximizam o
ritério de separação es
olhido. Os métodos hi-
erárqui
os, por sua vez, bus
am estabele
er relações de similaridade progressiva,
nas quais subgrupos a
abam fazendo parte de grupos maiores. Dentre os algo-
ritmos hierárqui
os podemos en
ontrar os aglomerativos e os divisivos. Esses
algoritmos
orrespondem às estratégias bottom-up e top-down, respe
tivamente.
Esses algoritmos empregam duas medidas de ligação: medida de ligação simples,
na qual a distân
ia é determinada pelos elementos mais próximos, e medida de lig-
ação
ompleta, na qual a distân
ia é determinada pelos elementos mais distantes do
mesmo grupo, tal
omo mostrado na Figura 2.3. Os algoritmos partitivos se difer-
en
iam pelas diversas estratégias empregadas no parti
ionamento das amostras.
Agrupamento
Hierárquico Partitivo
Expectation
K-Means
Maximization
40
goritmo realiza o agrupamento. A abordagem aglomerativa, ou bottom-up,
omeça atribuindo a
ada um dos objetos um agrupamento distinto. Em
seguida, o algoritmo vai su
essivamente fundindo os grupos mais próximos
até que o
ritério de parada seja satisfeito. No
aso da abordagem divisiva o
algoritmo
omeça por asso
iar todos os objetos a um úni
o agrupamento e
exe
uta a divisão desse grupo até que o
ritério de parada seja satisfeito.
A seguir apresentaremos uma dis
ussão sobre os dois prin
ipais modelos de al-
goritmos de agrupamento, hierárqui
o e partitivo, e mostraremos alguns exemplos
representativos de
ada um deles. Abordaremos, nesse trabalho, três té
ni
as de
agrupamento apenas: agrupamento hierárqui
o, agrupamento divisivo baseado no
algoritmo K-Means e Self-Organizing Map. As duas primeiras porque são as prin-
ipais té
ni
as utilizadas para o agrupamento de textos [Steinba
h et al., 2000℄, e
a última porque será útil em nossa dis
ussão posterior.
41
os grupos que
onsistem de apenas um elemento. Cada nodo, por sua vez, repre-
senta um agrupamento que
ontém todos os objetos de seus nodos des
endentes
[Manning and S
hütze, 1999℄.
Essa representação tem
omo raiz o próprio
onjunto de objetos a serem agru-
pados. Os algoritmos hierárqui
os ne
essitam da denição de um parâmetro,
ujo
valor deverá representar o limite até o qual os agrupamentos serão
onsiderados
omo de interesse para a organização que se bus
a dos objetos. A forma
omu-
mente utilizada para a representação da árvore hierárqui
a de agrupamentos é o
dendograma (dendogram ),
omo mostrado na Figura 2.4.
O agrupamento hierárqui
o, apresentado na Equação (2.3), somente faz sentido
se a função de similaridade es
olhida for monotni
a. Nesta equação c, c′ e c′′ são
três agrupamentos.
A B C D E F G
42
terísti
as dos algoritmos de agrupamento hierárqui
o ([Manning and S
hütze, 1999℄,
p. 500).
Esses algoritmos são preferíveis para análise de dados detalhada, em relação
aos algoritmos partitivos. Isso porque realizam um parti
ionamento ótimo dos
objetos, o que se deve a uma análise exaustiva de todos os objetos apresentados
entre si. Esses algoritmos provêem, ainda, mais informações do que os algoritmos
de agrupamento partitivo. Isso porque, além da atribuição de informações de
agrupamento para os objetos, os algoritmos
riam uma estrutura que rela
iona os
próprios grupos entre si. Os algoritmos hierárqui
os são, em
ontrapartida, menos
e
ientes que os algoritmos de agrupamento partitivo. Em termos de e
iên
ia
é importante notar que os algoritmos de agrupamento hierárqui
o sofrem
om a
di
uldade no es
alonamento da apli
ação de sua solução para grandes quantidades
de objetos. Isso porque é ne
essário levar em
onsideração, para
ada iteração do
algoritmo, todos os objetos. Assim, para n objetos, é ne
essário
al
ular os valores
dos elementos de uma matriz de n × n
oe
ientes de similaridade, e atualizar essa
matriz
onforme o algoritmo prossegue.
Continuaremos nossa dis
ussão sobre os algoritmos de agrupamento hierárqui
o
om a apresentação de suas duas variantes: os algoritmos aglomerativos e divisivos,
mostrando suas diferenças e os
asos em que seu uso é apropriado.
Agrupamento aglomerativo
Agrupamento divisivo
43
Algoritmo 1 Agrupamento hierárqui
o aglomerativo
1. Atribui
ada elemento do
onjunto a um grupo.
desse algoritmo para o agrupamento de textos, sendo o seu interesse restrito, aqui,
a
omplementar a nossa dis
ussão. No Algoritmo 2 a
oerên
ia dos grupos pode
ser
al
ulada pela Equação (2.5) (apresentada mais adiante).
44
om outro agrupamento, devido à sua maior similaridade em relação a algum
elemento do agrupamento que está sendo reunido. Esse efeito,
onhe
ido
omo
efeito de en
adeamento (
haining ee
t ), determina um formato alongado para
os agrupamentos que utilizam essa té
ni
a. Os agrupamentos de ligação
ompleta
(
omplete-link ) utilizam uma medida de similaridade que premia a qualidade global
do agrupamento, diferentemente da
oerên
ia lo
al produzida pelo agrupamento
de ligação simples. A medida de similaridade entre dois agrupamentos é denida
omo sendo a similaridade de seus dois membros menos similares. Essa té
ni
a
tende a produzir agrupamentos
ujos elementos apresentam-se mais próximos de
um
entróide, ou
entro de um grupo, que é o vetor que representa a média dos
vetores do grupo. Isso tende a produzir agrupamentos de formato mais esféri
o.
Dado um
onjunto S de representações vetoriais de do
umentos d, dene-se o
entróide c
omo a média dos valores de d, tal
omo mostrado na Equação (2.4).
1 X
c= d (2.4)
|S| d∈S
Algoritmos Partitivos
45
à bus
a global, devido ao
usto
omputa
ional asso
iado à pesquisa do espaço de
ombinações possíveis entre os objetos.
Tipi
amente, os algoritmos não-hierárqui
os
omeçam
om partições
riadas
a partir de nú
leos de agrupamentos
riados aleatoriamente e vão renando o
resultado. A maioria desses algoritmos realiza várias iterações, nas quais os objetos
podem ser realo
ados a diferentes
lusters, na medida em que essa ação melhore o
resultado forne
ido pela função de avaliação do agrupamento.
Nos algoritmos partitivos iterativos é ne
essário determinar-se um
ritério de
parada. Esse
ritério pode ser baseado na qualidade dos agrupamentos en
on-
trados, que é determinada pela função de avaliação es
olhida. Um
ritério de
parada muito
omum é a es
olha de um limite para a variação mínima do grau de
qualidade dos
lusters, tal
omo medido pela função de avaliação.
A denição do número de agrupamentos inuen
ia a medida de qualidade. Em
alguns
asos existe um
onhe
imento prévio da quantidade de
lasses às quais os
objetos devem ser rela
ionados. Por exemplo, se a apli
ação tenta segmentar, ou
agrupar, áreas de imagens de satélite, o
riador do sistema pode saber, de antemão,
que os
asos interessantes são as áreas de oresta, lagos, montanhas e plantações.
Nesse
aso seria su
iente denir um número de agrupamentos igual a 4, isso
porque, mesmo que alguma área não se en
aixe exatamente nos grupos previa-
mente denidos, ela será absorvida pelo agrupamento que melhor a representa.
Em nosso exemplo, poder-se-ía imaginar uma área de plantação sendo
onsiderada
omo parte da oresta. Nos
asos em que não se sabe o número de agrupamentos
mais relevantes, pode-se testar agrupamentos
om diferentes números de grupos e
veri
ar o
omportamento da função de avaliação. Em geral, a medida de quali-
dade dos agrupamentos aumenta
om o aumento no número de grupos. Quando,
entretanto, os objetos a serem agrupados têm uma estrutura que tende natural-
mente para um determinado número k de grupos, pode-se veri
ar um aumento
substan
ial na medida de qualidade quando se varia o número de grupos de k − 1
para k , e uma variação pequena na transição de k para k + 1. Essa tendên
ia pode
ser usada para determinar-se o melhor valor de k .
Existem diversas opções para a es
olha da função de medida de qualidade dos
agrupamentos. Vamos apresentar a seguir a mais popular delas: a função de erro
quadráti
o.
46
Seja L um agrupamento de um
onjunto X de objetos,
ontendo K grupos. O
erro quadráti
o é denido
omo mostrado na Equação (2.5).
nj
K X 2
j
(2.5)
X
e2 (X, L) = xi − c j
j=1 i=1
1. Sele
ionar uma partição xa ini
ial de grupos,
om seus
entróides
orre-
spondentes.
47
que nenhum objeto troque de grupo ou a variação da posição dos
entróides esteja
abaixo de um limiar pré-estabele
ido.
Apresentamos no Algoritmo 3 uma simpli
ação do algoritmo K-Means.
Algoritmo 3 K-Means
1. Es
olher K
entróides,
oin
idindo
om k objetos aleatoriamente es
olhidos
ou k posições aleatórias dentro do volume que
ontém o
onjunto de objetos
a serem organizados.
3. Re
al
ular os
entróides
omo sendo a média das posições dos objetos atribuí-
dos a
ada
entróide na iteração anterior.
48
Uma variação interessante do algoritmo K-Means utiliza medóides ao invés de
entróides. Os medóides são objetos representativos do próprio grupo, utilizados
omo
entro dos grupos. O algoritmo que utiliza os medóides é uma variação do
K-Means,
hamada K-Medoids. Esse algoritmo é mais robusto que o K-Means,
devido ao fato de ter uma menor sensibilidade ao ruído e a objetos forasteiros,
ou seja, que se en
ontram em posições muito afastadas dos outros objetos.
O algoritmo K-Means tem a tendên
ia a
riar grupos de objetos úni
os
om
os forasteiros, isso porque eles tendem a
apturar os
entróides, degenerando,
assim, o resultado do algoritmo. É
omum, para evitar que isso o
orra, a exe-
ução de uma etapa de pré-pro
essamento dos dados para eliminar os objetos que
apresentam grande disparidade em relação ao
onjunto.
Outra de
iên
ia dos algoritmos K-Means e suas variações, é o fato de que eles
não são
apazes de representar agrupamentos
ujo formato geométri
o é
n
avo.
Isso se deve ao fato de que
ada grupo é representado por um úni
o ponto, as-
sumindo, assim, uma hiperesfera, que dene o formato do grupo. A Figura 2.5
(de [Jain et al., 1999℄) ilustra o problema de se tentar representar agrupamentos
n
avos
om um úni
o ponto
entral. Nessa gura a estrutura subja
ente aos
objetos é um úni
o agrupamento alongado. O algoritmo K-Means, entretanto,
não possui meios para realizar essa representação de forma satisfatória, sendo o
resultado indeterminado.
49
Figura 2.6: Di
uldade de representação de grupos de tamanhos muito diferentes
50
Figura 2.7: Formação do Mapa Auto-Organizável
4. Cal
ula-se o raio de vizinhança do neurnio ven
edor. Esse valor é alto
no
omeço do treinamento e vai diminuindo
om o aumento do número de
iterações. Os neurnios en
ontrados dentro da área de vizinhança são iden-
ti
ados.
5. Para
ada nodo na área de vizinhança, in
lusive o nodo ven
edor en
ontrado
no passo quatro, os pesos são ajustados de modo a diminuir a sua distân
ia
em relação ao vetor de entrada apresentado. Além disso, os neurnios têm
seu vetor modi
ado na razão direta de sua distân
ia do
entro, ou seja,
quanto mais próximo, maior a variação.
6. Repete-se os passos 2 a 5 até que a variação per
ebida nos pesos dos neurnios
seja desprezível.
51
2.1.6.2 Utilização dos mapas auto-organizáveis para agrupamento de
dados
52
É importante notar que a dependên
ia de uma té
ni
a baseada em regras gra-
mati
ais para a identi
ação de palavras similares em uma etapa de pré-pro
essa-
mento,
omo é o
aso do stemming, torna o algoritmo de agrupamento dependente
de linguagem, e assim, difí
il de ser estendido para outras línguas. Uma alterna-
tiva para essa té
ni
a seria um agrupamento prévio das palavras em termos do
ontexto no qual as mesmas o
orrem, determinando de forma dinâmi
a as relações
de similaridade entre as palavras que
onstituem os textos a serem agrupados.
O
ontexto de o
orrên
ia da palavra, o qual determina seu nível de similaridade
em relação às outras palavras, é determinado por um número xo de palavras
que o
orrem antes e depois de
ada o
orrên
ia das palavras que
ompõem os tex-
tos e que são de interesse. Um exemplo de uso dessa té
ni
a pode ser visto em
[Lagus et al., 1996℄. Existem, ainda, outras té
ni
as para a
odi
ação de textos
para o agrupamento, mas vamos nos ater, nesse trabalho, à
odi
ação
hamada
bag-of-words, apresentada a seguir.
Muitos algoritmos de agrupamento de texto utilizam o modelo de espaço ve-
torial (ve
tor-spa
e model ) para a representação dos textos de forma que estes
possam ser analisados
om o uso de métodos matemáti
os. Nesse modelo,
ada
do
umento d é representado por um vetor no qual a i-ésima dimensão representa
a freqüên
ia do i-ésimo termo (tfi ) en
ontrado no
onjunto dos textos a serem
agrupados. Existem muitas maneiras de se
al
ular a freqüên
ia dos termos (ver
[Sebastiani, 2002℄), a mais simples delas é
onsiderar a freqüên
ia de
ada termo
simplesmente
omo o número de o
orrên
ias daquele termo no do
umento. Essa
forma de
odi
ação dos textos, que leva em
onsideração apenas a
ontagem
de palavras no texto, perdendo a relação de
ontigüidade entre elas, também é
hamada sa
o de palavras (bag-of-words ). Nesta abordagem um do
umento d
é representado pelo número de o
orrên
ias (freqüên
ia) de seus termos relevantes
d = (tf1 , . . . , tfm ).
Depois de
oletados os termos a serem utilizados, é
omum que os vetores
representativos dos do
umentos sejam bastante esparsos, ou seja, que
ontenham
muitos elementos de valor zero. Isso é problemáti
o, porque qualquer
ál
ulo
om
esses vetores terá que levar em
onsideração todas as dimensões, impa
tando neg-
ativamente na performan
e do algoritmo utilizado para o agrupamento. Assim, é
altamente desejável reduzir-se ao mínimo o número de dimensões dos vetores antes
de se pro
eder ao agrupamento propriamente dito. Uma forma bastante simples
de se diminuir a dimensão dos vetores é a eliminação dos termos menos freqüentes
en
ontrados no
onjunto total dos textos a serem agrupados [Sebastiani, 2002℄, de
modo que o número de termos representativos dos textos que em 10 1
, sem perda
de qualidade do agrupamento, tendo sido experimentadas reduções para até 100 1
53
q
do vetor d, que é
al
ulada por |d| = tf12 + tf22 + tf32 + . . . + tfm2 . Esse pro-
(d~1 · d~2 )
sim_cos(d~1 , d~2 ) = (2.6)
|d~1 ||d~2 |
Na Equação (2.6) · é o produto es
alar e || representa o módulo do vetor.
A idéia por trás do uso da similaridade do
oseno é que os vetores que rep-
resentam os textos podem ser
omparados quanto a sua similaridade pelo ângulo
formado entre eles. Por exemplo, dois vetores idênti
os terão a similaridade do
oseno igual a 1, ou seja, serão
onsiderados iguais. Por outro lado, quaisquer dois
vetores que sejam ortogonais no espaço n-dimensional em que estão representados
terão a similaridade do
oseno igual a 0, porque o produto es
alar entre eles, o
numerador da Equação (2.6), será 0.
~
~ = (~c · d)
sim_cos(~c, d) (2.7)
|~c|
Com o uso da Equação (2.7) para a geração dos agrupamentos faz sentido
utilizar-se uma medida interna de qualidade que utilize o mesmo prin
ípio. Seja
54
S o
onjunto de do
umentos agrupados. A Equação (2.8) permite determinar o
valor global de similaridade para o
onjunto dos k agrupamentos gerados.
1 X
global_sim = sim_cos(d~′ , d)
~ (2.8)
|S|2 ~ ~′
d,d ∈S
No Bise
ting K-Means, a es
olha do grupo a ser dividido, no passo 1, pode ser
feita de várias maneiras. É possível utilizar o maior grupo, ou seja, o grupo
om
o maior número de
omponentes, ou pode-se utilizar, alternativamente, o grupo
om o menor valor de similaridade. É possível, ainda, utilizar uma estratégia
55
que empregue os dois
ritérios. No exemplo visto em [Steinba
h et al., 2000℄ foi
utilizado,
omo
ritério para divisão, o número de
omponentes dos grupos.
É interessante notar que o algoritmo Bise
ting K-means pode ser usado tanto
para a geração de agrupamentos partitivos quanto hierárqui
os. No primeiro
aso, pelo renamento dos agrupamentos en
ontrados em estágios anteriores, sem
des
artar os grupos denidos nas iterações anteriores. No segundo
aso, pela
riação de subgrupos, a partir dos grupos mais gerais
riados ini
ialmente, adi
io-
nando novos níveis de granulosidade para
ada agrupamento gerado na iteração
anterior. Isso
ontrasta
om a distinção feita na Seção 2.1.2, que separava
om-
pletamente os dois tipos de algoritmo. Por outro lado, mostra que existem outras
formas de ver essa distinção. Um exemplo é a noção de que um algoritmo hi-
erárqui
o pode ser uma apli
ação re
ursiva de um algoritmo partitivo sobre os
grupos gerados por esse algoritmo em um passo anterior.
O Bise
ting K-Means teve uma performan
e superior ao K-Means nos experi-
mentos relatados em [Steinba
h et al., 2000℄, em termos da similaridade geral dos
agrupamentos gerados. Esses resultados foram
reditados à tendên
ia desse algo-
ritmo de gerar agrupamentos de tamanhos pare
idos, enquanto o K-Means gera
grupos de tamanhos muito diferentes.
[Steinba
h et al., 2000℄ relata que o algoritmo Bise
ting K-Means teve uma
performan
e levemente superior, em termos da qualidade dos agrupamentos gera-
dos, na geração de hierarquias, em relação ao algoritmo hierárqui
o aglomerativo.
Esse fato, aliado à
omplexidade apresentada por esse algoritmo, O(n), em re-
lação à
omplexidade do algoritmo hierárqui
o aglomerativo, que é O(n2 ), torna
essa solução ainda mais interessante para os
asos, muito
omuns, em que grandes
quantidades de textos pre
isam ser agrupadas.
56
Capítulo 3
Trabalhos
orrelatos
Apresentaremos a seguir trabalhos rela
ionados
om aquele aqui proposto.
Faremos também uma dis
ussão das propostas apresentadas em relação ao prob-
lema aqui
onsiderado: auxiliar o usuário em sua bus
a por informações relevantes
na Web.
3.1 WebSom
Uma alternativa para a
onstrução de um mapa de
on
eitos a partir de um
onjunto de do
umentos, pode ser vista em [Kohonen et al., 2000℄. Nesse trabalho
a
riação do mapa é realizada utilizando-se o mapa auto-organizável.
[Kohonen et al., 2000℄ é um projeto do Centro de Pesquisas em Redes Neurais,
da Universidade de Helsinki. Esse projeto, liderado pelo próprio Teuvo Kohonen,
o
riador dos mapas auto-organizáveis, está des
rito em
http://websom.hut./websom/.
O projeto
onsiste em mapear textos dos grupos de dis
ussão
omp.ai.neural-
nets, s
i.lang e s
i.
ognitive (artigos),
om 12088, 32627 e 5633 artigos respe
tiva-
mente, à épo
a da publi
ação.
O mapeamento dos textos provê uma visualização simpli
ada dos mesmos,
permitindo
ompreender, de forma intuitiva, a relação de similaridade entre eles a
partir da relação de proximidade en
ontrada. Além disso, o mapa permite nave-
gar através dos
on
eitos, a
ionando o ponteiro do mouse sobre os diferentes
on-
eitos. A Figura 3.1 (obtida de http://websom.hut./websom/) mostra o mapa,
omo visto no site do projeto.
A
ionando-se o mouse
om o
ursor sobre o mapa da Figura 3.1, sobre a palavra
neuro
omputing, por exemplo, des
e-se um nível,
omo mostrado na Figura 3.2.
As palavras mostradas no mapa são palavras-
have extraídas
om base na relação
omparativa entre sua quantidade no
luster e na
oleção
omo um todo,
omo
57
Figura 3.1: Visualização de
on
eitos
om WEBSOM
58
mostrado em [Lagus and Kaski, 1999℄.
59
Nos sistemas de bus
a por páginas na Web o usuário deve ser
apaz de saber
quais termos relevantes o levarão a en
ontrar textos de interesse dentro da
área pesquisada. Isso exige do usuário um
onhe
imento prévio da área de
interesse. No
aso do WEBSOM tal
onhe
imento não é ne
essário, visto que
o usuário pode navegar pelo mapa de palavras-
have, o que lhe permite ser
apresentado aos
on
eitos mais importantes da área, de uma forma intuitiva.
• Capa
idade de rela
ionar textos a partir do signi
ado das palavras, e não
somente de a
ordo
om o número de vezes em que as mesmas apare
em nos
textos. O mapa é
riado a partir de uma pré-organização dos termos
om
base no
ontexto em que estes apare
em.
60
Como visto anteriormente, as di
uldades para se realizar um mapeamento de
similaridades entre do
umentos na Web passam por problemas
on
eituais, tais
omo a
ara
terísti
a de um algoritmo automáti
o ser
apaz de rela
ionar dois
textos em termos de seus assuntos, depois de os mesmos terem passado por um
pro
esso de
odi
ação que destrói a própria estrutura dos textos, representada
pelo en
adeamento das palavras. Existe ainda um problema de ordem práti
a
muito importante. Esse problema é a quantidade de pro
essamento ne
essário
para realizar um agrupamento de textos que vá além de um
onjunto de textos de
uma lista de dis
ussões,
omo é o
aso apresentado em [Kohonen et al., 2000℄.
Na bus
a por uma solução para os problemas vistos a
ima, vamos apresentar,
a seguir, uma abordagem híbrida utilizada para a des
oberta de informação rele-
vante em um
onjunto relativamente grande de textos. Nessa proposta,
hamada
S
atter/Gather, o esforço
omputa
ional do
ál
ulo da similaridade entre do
u-
mentos é dire
ionado de forma interativa por um usuário, interessado na obtenção
das informações
ontidas nos textos.
3.2.1 S atter/Gather
61
Web, mas a
onjuntos de textos, ou
orpora, en
ontramos em [Pirolli et al., 1996℄
uma alternativa para a identi
ação de sua similaridade. Essa alternativa baseia-
se na interação
om o usuário para a denição dos
ritérios que determinarão
qual, dentre os sub
onjuntos dos textos apresentados, é mais promissor, quanto à
possibilidade de se en
ontrar uma
erta informação.
S
atter/Gather é uma ferramenta baseada no agrupamento de textos que per-
mite explorar grandes quantidades de do
umentos [Pirolli et al., 1996℄. O sistema
apresenta aos usuários um sumário do
onteúdo de
ada grupo,
riado automati
a-
mente. Além disso o sistema forne
e meios para explorar os sumários em diversos
níveis de granulosidade. A Figura 3.3, extraída de
http://www.sims.berkeley.edu/ hearst/sg-overview.html, mostra a interfa
e do sis-
tema.
Para permitir a exploração e
iente de grandes quantidades de textos, o sis-
tema utiliza o algoritmo do K-Means de forma interativa,
omo apresentado no
Algoritmo 6.
Algoritmo 6 S
atter/Gather
1. O sistema ini
ializa o grupo
om todos os do
umentos.
5. O sistema sele
iona o grupo es
olhido pelo usuário e vai para o passo 2, ou
sele
iona um texto parti
ular que é apresentado ao mesmo.
62
Figura 3.3: Interfa
e do S
atter/Gather
63
pela utilização do
onhe
imento do usuário na forma de uma expli
itação dos seus
interesses a
er
a das informações que lhe são apresentadas. Além disso, o sistema
permite que o usuário des
ubra novos interesses durante a própria navegação no
espaço dos assuntos que forma o
onjunto de do
umentos sob análise.
Nos testes realizados pelo grupo da Xerox, que
riou o sistema, foi veri
ada a
apa
idade dos usuários, uma população de teste de 16 pessoas adultas, de en
on-
trar informações relevantes tendo sido também veri
ado o nível de aprendizado
in
idental de
orrente do uso da ferramenta. Os textos que serviram de base
para as bus
as foram 2,2 gigabytes provenientes da
oleção de textos TIPSTER
(http://www.itl.nist.gov/iaui/894.02/related_proje
ts/tipster/pip.htm).
Os resultados do experimento indi
am que o S
atter/Gather é
apaz de
o-
muni
ar vários tipos de informações sobre a estrutura de tópi
os de uma grande
quantidade de do
umentos. Con
luiu-se, entretanto, que a ferramenta não é, soz-
inha, superior em termos de re
uperação de informações. A
redita-se que uma
ferramenta
omo essa possa ser útil
omo
omplemento ao uso de sites de bus
a,
nos
asos em que é desejável uma abordagem exploratória dos do
umentos que
ompõem a base de informações a ser
onsultada.
Como vimos, o
aso do S
atter/Gather mostra direções interessantes no ma-
peamento de informações
ontidas em um
onjunto de textos. A novidade apre-
sentada é a exploração a partir de um referen
ial determinado pelo usuário. Em
outras palavras, o algoritmo do S
atter/Gather não pre
isa agrupar todos os tex-
tos a
ada vez, mas sim o sub
onjunto es
olhido pelo usuário
om sendo de seu
interesse.
Assim, vimos que essa ferramenta mostra uma possível solução para parte do
problema de mapear as páginas da Web. Essa solução diz respeito ao
usto
om-
puta
ional do agrupamento de um
onjunto grande de textos de modo par
ial,
relativo ao ponto no qual o usuário fo
a sua atenção a
ada momento. Se pen-
sarmos em nossa proposta ini
ial de mapa, poderíamos imaginar o S
atter/Gather
omo um sistema de posi
ionamento relativo. Ou seja, ao invés de mostrar ao
usuário um mapa
ompleto, no qual este possa ver onde está em relação a todos
os pontos relevantes, que em nosso
aso são os assuntos das páginas da Web, esse
mapa seria um
onjunto de direções tais
omo: de onde vo
ê está siga para < a >
para assunto < x >, para < b > para assunto < y >, para < c > para assunto
< z >, et
.
Tendo em mente o que a
abamos de expor, vamos agora voltar nossa atenção
novamente ao problema da bus
a de informações no espaço de do
umentos rep-
resentado pelas páginas na Web. Dentro desse
ontexto, outras ferramentas de
auxílio à navegação podem ser en
ontradas na literatura. Vamos apresentar breve-
mente, a seguir, o
on
eito de navegação assistida, na qual o usuário
oopera
om
um sistema
omputa
ional na bus
a por informações.
64
3.3 Navegação assistida: Letizia
A navegação em páginas da Web,
om o uso de links que as
one
tam, tem um
aráter de bus
a semânti
a. Isso porque as páginas são
one
tadas pelos seus
ri-
adores, geralmente, a partir de uma ligação entre seus assuntos [Lieberman et al., 1999℄.
Dentro da área de Web Mining existe uma linha de pesquisa dedi
ada à identi-
ação de informação relevante, extraída das ligações entre as páginas. Essa área
de pesquisa
hama-se web stru
ture mining [Kosala and Blo
keel, 2000℄.
A idéia bási
a da navegação assistida,
omo visto em [Lieberman et al., 2001℄,
é auxiliar o usuário em sua bus
a por informações, utilizando a estrutura de links
da página de onde a bus
a se ini
ia. O me
anismo de ajuda baseia-se em um
agente auxiliar que age
omo um soldado batedor, ou seja, pro
ura identi
ar, a
partir da página em que o usuário se en
ontra, quais são os links mais relevantes
para a
ontinuação da bus
a.
Um agente que realiza esse tipo de
ooperação é o Letizia [Lieberman, 1995℄.
Em seu esforço por auxiliar o usuário, o agente pro
ura identi
ar quais são as
palavras relevantes para des
rever a página atual e, a partir dessa informação, tenta
identi
ar,
om o uso do mesmo método, quais as páginas a
essíveis, a partir da
página atual, que mais se rela
ionam em termos de assunto. O agente atribui um
valor para
ada página que pode ser atingida a partir da página atual
om o uso
de heurísti
as simples, tais
omo identi
ação da ordem em que o usuário a
essou
os links, retorno para a página ini
ial, adição da página à lista de favoritos, et
.
Além disso, o agente é também
apaz de identi
ar links para páginas que não
existem e avisar o usuário.
O resultado da bus
a realizada pelo agente é apresentado em uma janela de
sugestões separada. Essa janela serve de guia para o usuário enquanto navega. O
usuário tem a opção de ativar a janela de sugestões a qualquer momento e seguir
ou não as sugestões apresentadas pelo agente. Enquanto o usuário permane
e
em uma página o agente vai fazendo bus
as
ada vez mais profundas, por links
indiretos atingíveis a partir da página sendo visitada pelo usuário, e atualizando as
informações que serão disponibilizadas na janela de sugestões. Quando o usuário
passa para uma outra página o pro
esso se reini
ia.
O resultado dessa
ooperação é similar àquele visto para o S
atter/Gather : o
usuário
oopera
om o
omputador, tendo este último o papel de auxiliar, pro
u-
rando identi
ar
ara
terísti
as das páginas a
essíveis a partir dos links en
ontra-
dos na página atual que possam servir de indi
ação para uma melhor de
isão do
usuário sobre a página a ser visitada a seguir.
Muito embora a navegação assistida possa aumentar a
apa
idade de bus
a por
informações, ela sofre, a nosso ver, de uma limitação
on
eitual muito importante.
Essa limitação diz respeito à impossibilidade, por parte do agente auxiliar, de
determinar o real interesse do usuário em relação a
ada página
onsiderada
omo
65
possível sugestão. Isso porque essa relevân
ia somente poderia ser identi
ada por
uma outra pessoa que:
66
Existem variações para a proposta de navegação
olaborativa. Uma delas
[Aneiros et al., 2003℄ permite a navegação autnoma entre os parti
ipantes,
om a
riação,
ompartilhada, de um históri
o de navegação do grupo. A
riação desse
históri
o é feita de modo
olaborativo de forma automáti
a, a partir do registro
da navegação dos parti
ipantes do grupo. Posteriormente, o históri
o
riado pode
servir
omo base de
onhe
imento a respeito de rotas de navegação relevantes.
67
3.4.2 Sistema Broadway
68
um guia
apaz de nos indi
ar os melhores
aminhos para en
ontrar a informação
que pro
uramos na Web ou, ainda,
om o
ostume nosso do dia-a-dia de obter
indi
ações diretas sobre lugares interessantes, tais
omo restaurante, de pessoas nas
quais
onamos e que sabem de nossos gostos. Dentro desse
ontexto, o sistema
Broadway apresenta elementos um pou
o diversos. Ele permite a transferên
ia
de experiên
ias adquiridas por um usuário, no pro
esso de navegação, para outro,
que apresente um perl pare
ido. Existem aí duas diferenças bási
as. A primeira
é que a indi
ação é indireta, tal
omo na metáfora de irmos ao restaurante e o
en
ontrarmos
heio, e daí depreendermos que esse restaurante é bom. A segunda
é o fato de que não é ne
essário que exista alguém, um mestre, que esteja à
disposição a todo momento e que ainda saiba de todos os nossos gostos. Com
base nisso podemos dizer que o sistema Broadway permite um uso mais amplo
do me
anismo de sugestão, a partir da automatização do pro
esso baseado na
des
oberta de similaridades entre os pers de navegação dos usuários e o
onteúdo
das páginas que estes a
essaram.
Quando se vislumbra a utilização do sistema Broadway para uma abrangên
ia
mais ampla dos assuntos disponíveis na Web, a abordagem desse projeto deixa um
pou
o a desejar. Isto porque,
omo o sistema é instalado no proxy, a sua
ober-
tura, em termos de usuários que podem se bene
iar do me
anismo,
a bastante
restrita. Assim, para o relativamente pequeno grupo de usuários ser
apaz de
gerar sugestões que sejam realmente úteis, é ne
essário que os assuntos pro
urados
sejam de um es
opo restrito, de forma a permitir a
riação de direções, dentro de
um espaço de possibilidades que possa ser
oberto, pelo menos par
ialmente, pelo
grupo que está gerando o mapeamento a ser utilizado.
Outra limitação do sistema Broadway é a utilização de té
ni
as de pro
essa-
mento de linguagem natural no tratamento das páginas visitadas pelos usuários do
sistema, tais
omo remoção de palavras
ontidas em uma stoplist, stemming, et
,
além de utilizar as referên
ias aos a
essos realizados pelos usuários. A exe
ução
desses pro
essos é dependente de linguagem, o que limita a utilização do sistema.
Além disso, a análise de dados textuais é uma tarefa que demanda grandes quan-
tidades de pro
essamento, o que é mais um fator limitante, em termos da possível
abrangên
ia de um sistema que dependa dessas informações.
Outro possível empe
ilho a um sistema tal
omo o Broadway é a a
eitação,
por parte das pessoas, a usarem um sistema no qual suas identidades não são
protegidas. Em suas vidas pessoais, as pessoas, às vezes, visitam páginas
ujo
onteúdo não gostariam de ver rela
ionado a seus nomes. Assim, o me
anismo do
sistema Broadway, de utilizar o nome de login do usuário,
olo
ando-o em uma
posição em que sua priva
idade não é
ontemplada, tem, no mínimo, o efeito de
inibir a própria navegação que se quer fa
ilitar.
Como vimos, as abordagens apresentadas
are
em de elementos que permitam
69
uma utilização mais abrangente. Seja pela utilização de proxies, impossibilidade
do anonimato, ne
essidade de utilização simultânea, ne
essidade de transmissão
de grandes quantidades de dados (para as ferramentas auxiliares, tais
omo fer-
ramentas de desenho
olaborativo), ou alto
usto
omputa
ional, produzido pelo
pro
essamento de textos.
Apesar dos problemas apresentados para os sistemas que permitem a nave-
gação de grupos de usuários, as possibilidades
riadas pela bus
a
onjunta por
informações em páginas na Web pode ser um ponto-
have para a identi
ação de
direções na bus
a por informações relevantes.
Vamos apresentar, a seguir, nossa proposta para a
riação de uma ferramenta
que seja
apaz de ultrapassar as limitações identi
adas nas propostas apresen-
tadas anteriormente.
70
Capítulo 4
Sistema z9
O sistema z9, aqui proposto, parte de uma perspe
tiva
entrada no usuário.
Neste sistema os usuários são os geradores da informação que o sistema utiliza: os
endereços de páginas da Web. São os denidores dos
ritérios para a organização
da informação, e são, por último, os
onsumidores da informação organizada pelo
sistema e tornada disponível de forma individualizada.
Vamos explorar, a seguir, as motivações que levaram a esta perspe
tiva para a
onstrução do sistema.
71
métri
a tal
omo a distân
ia eu
lidiana, vista na Equação (2.1), na qual x e y
são os vetores que representam o históri
o de navegação de
ada usuário, e
ada
dimensão dos vetores x1 , x2 , x3 , . . . , xn e y1 , y2 , y3 , . . . , ym representa o número de
vezes que
ada página foi visitada.
72
espaço de informações onde as pessoas, tal
omo Web
rawlers inteligentes, per-
orrem os
aminhos que lhes vão forne
er a informação pro
urada. Ora, essa
informação, que é en
ontrada pelas pessoas em sua bus
a, é um indi
ativo indi-
reto de seus interesses. Os usuários, ao visitarem as páginas, determinam uma
relação entre elas, que é a expli
itação do próprio interesse do usuário que realiza
a visitação. Esse interesse pode ser representado, no sistema,
omo o registro do
onjunto de endereços das páginas visitadas pelo usuário, aqui
hamado perl de
navegação.
Se voltarmos aos sistemas de navegação em grupo, apresentados anteriormente,
e pensarmos nessas experiên
ias
om uma perspe
tiva que englobe todas as pessoas
que navegam na Web, podemos imaginar a
riação de um sistema de dire
iona-
mento que poderia ser útil para essas pessoas. Esse sistema poderia fun
ionar a
partir da identi
ação de similaridades entre os pers de navegação das pessoas,
que são indí
ios de seus interesses, para permitir agrupar não os do
umentos da
Web, mas sim os próprios usuários. Em um tal sistema seria possível mostrar a
um usuário sugestões baseadas em seu perl, tais
omo: as pessoas que
ostumam
visitar as páginas que vo
ê visita, também visitam as páginas X, Y, Z, que vo
ê
ainda não viu.
Um sistema que realizasse um tal serviço não teria, ne
essariamente, que en-
tender quais são os interesses dos usuários, ou sua língua, ou qualquer outro traço
distintivo que não fosse o interesse expresso a partir do ato de visitação de uma
página na Web.
Se pensarmos no interesse dos usuários
omo o elemento-
have em suas relações
om os do
umentos en
ontrados na Web, podemos ver os seres humanos
omo
sendo, ao mesmo tempo, os agentes mais
apazes de en
ontrar informaçãos rele-
vantes e, ainda mais importante,
omo sendo os próprios agentes da
riação/des
oberta
da informação. Assim, são as próprias pessoas, num pro
esso de interrela
iona-
mento, mediadas pela ferramenta Web , as denidoras da importân
ia do
on-
teúdo das páginas na mesma. Assim, em nossa hipótese, o problema se traduz
em transferir a experiên
ia, adquirida por um usuário na sua navegação, para out-
ros usuários
om um perl de navegação similar. O serviço ofere
ido por uma
ferramenta de auxílio à navegação que utilize a noção de agrupamento de pers
de navegação, ou interesses, teria um
aráter de
oadjuvante na identi
ação de
aminhos de a
esso às informações, a partir da disponibilização da informação de
navegação de um usuário para outro
ujo perl foi identi
ado
omo similar.
Para realizarmos esse mapeamento dos interesses das pessoas em relação às
páginas da Web é pre
iso, antes de tudo, resolver os problemas que impedem a
transmissão do
onhe
imento adquirido por um usuário para outro, de perl, ou
interesses, pare
idos. Esses problemas são de
orrentes das té
ni
as utilizadas pelas
ferramentas de navegação
ooperativa e assistida: análise de textos, ne
essidade
73
de proxy, ne
essidade de ação simultânea, ne
essidade de interromper o usuário
durante sua navegação para dar uma nota para a página sendo visitada, e respeito
à priva
idade.
Um sistema que realiza uma tarefa tal
omo essa que estamos imaginando é
o Alexa
R (www.alexa.
om). Como essa é uma ferramenta
omer
ial não
on-
seguimos saber, realmente,
omo ela fun
iona. Pode-se, porém, a partir das in-
formações disponibilizadas no site, ter uma idéia do me
anismo bási
o de seu
fun
ionamento.
Para utilizar o Alexa
R o usuário instala em seu browser uma ferramenta que
monitora as páginas visitadas por ele. Essa ferramenta utiliza as informações de
navegação, entre outras, para
riar uma rede de relações entre as páginas naveg-
adas. A idéia é similar àquela do sistema de sugestões da Amazon
R . No sistema da
Amazon
R o usuário veri
a informações a respeito de um livro e o sistema faz sug-
estões baseadas na relação de
ompra de livros rela
ionados. Essa sugestão se dá
na forma: pessoas que
ompram esse livro
ostumam, também,
omprar aqueles.
No
aso do Alexa
R , quando o usuário pergunta quais as páginas rela
ionadas
om
a página atualmente sendo visitada, o sistema apresenta outras páginas, seguindo
a mesma fórmula: pessoas que visitam essa página
ostumam, também, visitar
aquelas.
Pode-se per
eber, entretanto, que a relação que o Alexa
R elabora, e na qual
baseia suas sugestões, é a relação entre as páginas. Ou seja, as páginas da Web são
os elementos a serem agrupados, sendo a visitação do usuário um atributo (visitou
a página ou não a visitou).
Certamente o me
anismo proposto pelo Alexa
R é bastante interessante, visto
que resolve, prati
amente, todos os problemas elen
ados para a navegação
oop-
erativa e assistida, no que diz respeito à utilização em massa.
O problema do Alexa
R , em nossa
on
epção, é o fo
o voltado para as páginas da
Web. Utilizando esse fo
o pode-se
riar uma relação entre as diversas páginas que
é, realmente, baseada no próprio uso das mesmas. Com ela, entretanto, o usuário
não tem a
esso aos outros usuários e, além disso, não tem
ontemplada a sua
priva
idade. Esses talvez sejam os pontos fra
os mais determinantes para a não-
adoção dessa ferramenta de forma ma
iça, tal
omo o
orre hoje
om o Google
R.
É interessante notar que o problema para a sua adoção, por parte dos usuários,
não está em falta de re
ursos nan
eiros, já que o Alexa
R é, hoje, propriedade da
R
Amazon , que é uma das mais bem-su
edidas empresas baseadas na Web.
Essa falta de
uidado pela questão da priva
idade, por parte do Alexa
R,
pode ser atestada pelo fato de que alguns softwares para remoção de adware e
spyware, hoje
onsiderados
omo duas das piores pragas na Web, listam o Alexa
R
omo um software desse tipo. Veja-se
omo exemplo o spybot (http://www.safer-
networking.org/en/download/). O Alexa
R é de
larado spyware, ainda, pela Syman-
74
te
(http://se
urityresponse.symante
.
om/av
enter/ven
/data/spyware.alexa.html).
4.3 A abordagem do z9
A idéia de se ter um
onjunto de direções, que representem
aminhos que nos
levem ao en
ontro da informação pro
urada, de forma e
iente, entre os bilhões
de páginas a
essíveis, advém da ne
essidade de me
anismos exploratórios mais
efetivos do que a navegação lo
alizada nos links de
ada página en
ontrada ao
longo do
aminho. Se pensarmos, entretanto, que
ada
aminho, ou seja,
ada
rota de navegação, es
olhida por
ada pessoa navegando na Web, tem por trás de
si um objetivo, que pode ser asso
iado a um assunto, esse assunto, por sua vez,
estará, em maior ou menor grau, nas páginas a
essadas. Assim, seguindo esta
hipótese, podemos agrupar os usuários em termos do número de endereços iguais
en
ontrados no perl de
ada um. Nessa métri
a de similaridade utilizada, quanto
mais páginas
omuns forem a
essadas, maior a similaridade entre dois usuários,
em termos dos assuntos que representam os interesses destes. O Algoritmo 7
mostra
omo é feito o
ál
ulo de similaridade de navegação entre usuários em
nossa proposta, denominada z9. O objetivo do Algoritmo 7 é des
obrir os N (ou
menos) usuários
om pers de navegação mais similares a um dado usuário, em
função das páginas a
essadas.
Ainda, quando uma pessoa a
essa um
onjunto de páginas, em bus
a de uma
determinada informação, ela adquire um
onhe
imento sobre a bus
a por essa in-
formação. Esse
onhe
imento se traduz em uma
apa
idade, que vai
res
endo
om
o tempo, de en
ontrar mais fa
ilmente as páginas relevantes para determinado as-
sunto, dentro do
onjunto de seus interesses. Assim, se duas pessoas a
essam um
onjunto de páginas e, dentro desse
onjunto de páginas a
essadas, podemos identi-
ar um sub
onjunto representativo que seja a interse
ção dos pers de navegação
dessas pessoas, supomos
omo hipótese, que uma pessoa poderia se bene
iar dos
onhe
imentos sobre
omo en
ontrar mais fa
ilmente determinados assuntos, que
a outra possui. Assim, a apresentação de sugestões de navegação, que tivesse
omo
ritério a similaridade de pers de navegação, antes men
ionada, teria um
aráter
de transferên
ia de
onhe
imento entre os usuários do sistema. Nesse me
anismo
se baseia a nossa proposta de ajudar os usuários a en
ontrar, mais fa
ilmente,
as informações pro
uradas. A fa
ilidade seria resultado da disponibilização de
traços gerados por outros usuários, durante o seu pro
esso de aprendizagem de
rotas, que levem aos assuntos que são de interesse
omum.
Em nossa proposta pro
uramos desenvolver um sistema que atendesse aos
seguintes requisitos:
1. Ser utilizado por um
onjunto muito grande de pessoas.
75
2. Guardar endereços de um
onjunto muito grande de páginas.
3. Fa
ilitar a exploração de páginas úteis a partir da apresentação de sugestões
baseadas nas experiên
ias de navegação de usuários
om perl similar.
4. Preservar a priva
idade dos usuários.
5. Permitir e fa
ilitar a aproximação e
omuni
ação entre indivíduos
om pers
similares.
Com esses pontos em mente vamos apresentar o protótipo,
hamado z9, que
foi
onstruído
om o intuito de se estudar me
anismos que podem ser explorados
de modo a permitir a sugestão de páginas visitadas por um usuário a outro, de
perl similar. Neste trabalho denimos o perl de navegação
omo o
onjunto de
endereços das páginas a
essadas por um usuário, e a similaridade entre pers é
dada,
onforme mostrado no Algoritmo 7, pela quantidade de endereços
omuns
a
essados entre dois usuários.
76
propor
ional ao número de páginas a
essadas pelo usuário e número de usuários
a serem testados. Embora esse
ál
ulo possa ser
ustoso, ele é inferior ao esforço
ne
essário para se veri
ar a relação de similaridade global entre os usuários, ou
seja, realizar-se o agrupamento de todo o
onjunto.
Outro ponto-
have para a es
alabilidade é a forma
omo os dados são
ole-
tados. O sistema tem uma arquitetura
liente-servidor, na qual os usuários são
observados pelo software
liente, instalado em suas máquinas. Essa arquitetura,
apresentada na Figura 4.1, permite a utilização de
lientes em qualquer lugar, não
sendo dependente de proxy para a
onexão
om o servidor. Essa
ara
terísti
a tem
a ver
om a questão da es
alabilidade, não por ser um me
anismo que permita a
exe
ução dos algoritmos de agrupamento em um tempo a
eitável mas, sim, por
permitir a distribuição prati
amente irrestrita do sistema, limitada apenas pelo in-
teresse dos usuários em parti
ipar, o que não é o
aso nos sistemas que utilizam o
proxy para rela
ionar os usuários. Nesses últimos, o usuário só pode parti
ipar da
omunidade
olaborativa se o administrador da rede houver realizado a instalação
do sistema no proxy.
Vamos apresentar brevemente os módulos que
onstituem a arquitetura do
servidor, tal
omo apresentado na Figura 4.1.
• Serviços: módulo responsável pela exe
ução dos diversos serviços ofere
idos
aos usuários, tais
omo des
oberta de usuários
om perl similar, bus
a por
palavras-
have na base de dados de usuários, estatísti
as de utilização, et
.
Os serviços disponíveis serão tratados em detalhe na Seção 4.5.
77
Browser_N
Servidor
Serviços
Serviços
Browser_2
Interface
HTML
Base de Dados de
Usuários Consultas
Browser_1
Browser_0
URLsVistaidas
O sistema tem seu fun
ionamento baseado na
oleta de dados dos usuários.
Isso é realizado pelo monitoramento
onstante, que visa identi
ar os endereços
das páginas visitadas. Nesse pro
esso estão envolvidos dois elementos do sistema,
tal
omo visto na Figura 4.1: os softwares
lientes, que
am nos
omputadores
dos usuários, e o servidor, que
entraliza todas as informações
oletadas.
Vamos apresentar brevemente, a seguir, os elementos do sistema, e sua função
no pro
esso de
oleta de informações sobre as páginas visitadas pelos usuários.
Para que
ada usuário possa alimentar o sistema
om informações sobre sua
navegação, foi disponibilizado um software
liente, que exe
uta seu pro
essa-
mento nos
omputadores que os usuários utilizarão para navegar na Web. Este
software, que atualmente só pode ser exe
utado sob o sistema opera
ional Mi-
rosoft Windows
R ,
a en
arregado de obter, junto ao servidor, um identi
ador
úni
o, ou avatar, para
ada usuário diferente, e enviar informações sobre quais
78
endereços estão sendo visitados, juntamente
om seus títulos, por
ada um desses
usuários.
O software
liente, logo após o pro
esso de instalação, disponibiliza um í
one
na barra do sistema (system tray ), de modo a permitir que o usuário realize as
seguintes funções:
A
ada vez que o usuário visita um endereço na Web, o software
liente envia
para o servidor informações que identi
am o endereço visitado, o título da página,
o identi
ador do usuário e o número de versão do
liente. Essas informações são
atribuídas, na base de dados do servidor, ao usuário,
riando, nesse pro
esso,
o perl do mesmo. A relação
om os outros usuários, usando as informações
oletadas
om o auxílio do Algoritmo 7, é realizada somente quando o usuário faz
uma
onsulta ao sistema.
A informação enviada pelos
lientes é armazenada pelo servidor
omo mostrado
na Figura 4.2. Nesta gura são apresentados os elementos bási
os de armazena-
mento de dados realizado no servidor. Pode-se notar pela gura que as informações
armazenadas são, basi
amente, relativas ao perl do usuário, que é representados
pelo
onjunto de páginas visitadas, sendo estas páginas rela
ionadas entre si pela
estrutura asso
iada no históri
o de partidas.
usuario
senha
amigos
mensagens enviadas/recebidas
usuario
texto
paginas visitadas
url
titulo
Nro. de visitas
historico de partidas
url_partida
url_chegada
Nro. ocorrencias
79
4.4.1.2 Software servidor
O software servidor parti
ipa do pro
esso de
oleta de dados realizando duas
tarefas: a
riação de um identi
ador úni
o para
ada novo
liente que realiza
o pedido,
om a
orrespondente
riação de um novo usuário no sistema, e o ar-
mazenamento das informações re
ebidas pelos
lientes nas áreas destinadas a
ada
usuário.
A informação armazenada pelo servidor é a seqüên
ia de endereços das páginas
visitadas por um usuário durante a sua navegação.
Para armazenar a seqüên
ia de navegação de um usuário, o servidor asso
ia,
a
ada endereço re
ebido, uma lista de partidas. Nesta lista são elen
ados os
endereços que são enviados na seqüên
ia daquele endereço. Como exemplo, vamos
imaginar que um usuário envie um endereço www.xxx.
om.br. Se o endereço não
existe para aquele usuário, é
riada uma referên
ia para o mesmo na lista de a
essos
do usuário. Se o mesmo usuário visita, logo após, o endereço www.yyy.
om.br, esse
endereço é adi
ionado à lista de a
essos do usuário e também à lista de partidas
do endereço www.xxx.
om.br. Assim, todos os endereços enviados pelos usuários
estão ligados.
Vamos abordar a seguir a questão da priva
idade dos usuários.
Para a utilização do software
liente, o usuário deve
onar que o mesmo não
ausará nenhum prejuízo ao seu equipamento e que as informações
oletadas não
serão atribuídas a sua pessoa. Ou seja, é ne
essário garantir a priva
idade do
usuário e ter sua
onança.
Considerando-se que o sistema aqui proposto é
apaz de monitorar as atividades
dos usuários, é altamente desejável que ele garanta que não haverá meios de a
informação
oletada ser utilizada para outros ns, que não aquele de prestar um
serviço
om o qual os usuários
on
ordaram ini
ialmente.
O me
anismo adotado para isso baseia-se na não-tentativa, por parte do sis-
tema, de rela
ionar a identidade
riada para o usuário pelo sistema,
om a real
identidade do usuário.
Para que isso seja possível o sistema se baseia na
riação de avatares, que
permitem disso
iar a identidade do usuário no sistema, de sua real identidade. O
avatar é uma projeção do usuário, e a ele são atribuídas as páginas observadas pelo
software
liente. Assim, o avatar é um veí
ulo seguro, pelo qual o usuário fará sua
interação
om os outros usuários, também protegidos.
Além disso, o sistema não mostra, em hipótese alguma, uma relação unívo
a
entre um avatar e uma página da Web para outro avatar. Todo o sistema de
sugestão de novas páginas depende da visitação das páginas observadas por mais
80
de um usuário. Assim, o sistema pode sugerir páginas que são en
ontradas na
interse
ção entre as páginas visitadas pelos usuários de seu grupo de interesses.
Dessa maneira, nenhuma página sugerida pelo sistema pode ser imputada a um
avatar em parti
ular, mas sim ao grupo.
É interessante notar que o software
liente tem que ser
apaz de identi
ar o
usuário que está utilizando o
omputador. Isso para evitar que as informações de
diferentes usuários sejam atribuídas ao mesmo avatar. Para ser
apaz de geren
iar
diversos usuários no
omputador que hospeda o software
liente e manter a pri-
va
idade dos mesmos, esse programa faz um geren
iamento dos usuários no qual
ele, internamente, rela
iona os avatares
om os usuários da estação. Um detalhe
importante é o fato de que, na
omuni
ação
om o servidor, o
liente apenas uti-
liza o nome do avatar, e nun
a o nome do usuário na máquina hospedeira, o que
denun
iaria a identidade do usuário.
A utilização do avatar tem também um
arater transitório. Se um usuário de-
idir desistir de um
erto perl, ele pode, simplesmente,
adastrar-se novamente no
sistema
om outro avatar. Com este pro
edimento o novo avatar terá um perl que
será dependente apenas das páginas a
essadas a partir desse novo
adastramento.
Utilizando o me
anismo a
ima des
rito, o sistema é
apaz de prover o serviço
ao usuário sem
omprometer a sua priva
idade. A idéia bási
a por trás desse
me
anismo é a de que o sistema observa todas as ações dos usuários, mas não é
apaz de identi
á-los.
Vamos des
rever, a seguir, os serviços ofere
idos pelo sistema à
omunidade de
seus usuários.
4.5 Serviços do z9
4.5.1 Identi
ando Par
eiros de Navegação e Pesquisa
No z9 utilizamos o
on
eito de par
eiros. Par
eiros são pessoas que têm um
perl pare
ido, ou seja, que realizam ações similares no que se refere à navegação
e pesquisa. Existem dois tipos de par
eiros no sistema: par
eiros de navegação
e de pesquisa. Par
eiros de navegação são usuários que visitam um número sig-
ni
ativo de vezes, os mesmos sites, enquanto par
eiros de pesquisa são usuários
que pesquisam, no sistema, por um número signi
ativo de palavras-
have iguais.
Formalmente, os par
eiros de pesquisa são o sub
onjunto dos primeiros N usuários
retornados pelo Algoritmo 7, já os par
eiros de pesquisa são os j primeiros usuários
retornados pelo Algoritmo 8. O Algoritmo 8 é uma versão modi
ada do Algo-
ritmo 7, que utiliza palavras-
have utilizadas na pesquisa, ao invés de páginas
a
essadas
omo
ritérios para a identi
ação de par
eiros. O
on
eito de par
eiros
serve para permitir a per
epção de uma proximidade do usuário em relação aos
81
outros. Podemos imaginar os par
eiros
omo pessoas que en
ontramos no nosso
dia-a-dia, quando realizamos nossas atividades
otidianas. Eles são pessoas que
pegam o nibus ao nosso lado, que fazem exer
í
ios na mesma a
ademia que nós
fazemos, et
. Ou seja, são estranhos tornados próximos pela relação de similar-
idade de interesses. Em nossa vida real essas pessoas são a base para a
riação
de nossas relações afetivas e produtivas. Como exemplo, se estou a pé, e quero
saber
omo
hegar a uma rua próxima de onde estou, terei uma tendên
ia a per-
guntar a alguém que esteja andando na mesma rua que eu. Assim, os par
eiros
são, no sistema, pessoas que, em um dado momento, têm uma relação de similar-
idade de interesses, expressos pela visitação dos mesmos sites, ou pela realização
de pesquisas que
ontêm palavras em
omum.
Na Figura 4.3 apresentamos a interfa
e que permite identi
ar os par
eiros de
navegação e pesquisa.
82
Algoritmo 7 Similaridade de navegação entre usuários
1. Seja N o número de usuários a retornar.
3. Seja Si = {Si1 , Si2 , ..., Sil } o
onjunto de endereços das páginas visitadas por
Ui .
6. D ← {}
3. Seja Si = {Si1 , Si2 , ..., Sil } o
onjunto de palavras de pesquisa utilizadas por
Ui .
6. D ← {}
83
4.5.2 Fazendo Amigos
84
Figura 4.4: Amigos
85
de interesse a partir dos interesses de usuários
om pers similares. A sugestão de
páginas relevantes serve mais
omo um indi
ativo de uma direção
onsistente do
grupo ao qual o usuário perten
e. Seguir as sugestões tem o efeito de aproximar
o usuário do grupo ao qual ele já perten
e. Isso por aumentar o número de páginas
omuns entre o usuário e seu grupo.
3. Seja N vu = [nvu0 , nvu1 , ..., nvum−1 ], um vetor de o
orrên
ias, onde
ada
nvui representa o número de usuários de P r que visitou
ada uma das m
páginas de P a.
7. Seja M N r o valor de Nr
2
trun
ado para inteiro
8. Se N r é par
10. Senão
11. Retornar o intervalo [ON vu[P osm − M N r], ON vu[P osm + M N r]]
86
nas mais visitadas quanto as mais raras, são menos relevantes em termos de sua
apa
idade de des
rever assuntos que possam ser úteis. Em nossas observações
notamos que as páginas mais visitadas por diferentes usuários são páginas de por-
tais ou motores de bus
a, que são portas de entrada para assuntos muito diversos.
As páginas menos visitadas por usuários diferentes, por outro lado, a
abam por
representar interesses espe
í
os de um subgrupo dos par
eiros do usuário.
Na Figura 4.5 apresentamos a interfa
e do serviço de sugestão de páginas rel-
evantes.
87
a noção de um
aminho que mostra para onde esse grupo se dirige, em função
de seus interesses
ompartilhados, tal
omo eviden
iado pelos a
essos a um
erto
onjunto
omum de páginas. Para tentar fazer um paralelo
om o mundo real
podemos imaginar uma situação
otidiana, na qual um motorista se perde e tenta
seguir o
aminho mais
omum feito pelos
arros a sua frente, na esperança de ser
levado para uma avenida importante, a partir da qual a lo
alização será fa
ili-
tada. Nesse
aso,
omo o motorista não tem meios de perguntar aos outros qual o
aminho a seguir, ele segue pistas indiretas, deixadas pelo uxo de
arros que o
pre
ede. No
aso do z9 o sistema
ria essa per
epção de deslo
amento no espaço
de assuntos denidos pela visitação dos usuários mais próximos daquele que está
sendo
onsiderado.
Além de mostrar as páginas que são relevantes para o usuário, dentro do
on-
texto do movimento de seu grupo, o sistema mostra, também, as páginas rele-
vantes para o grupo
omo um todo, de modo a apresentar uma idéia do movimento
do usuário e de seu grupo. Essas páginas não têm o papel de indi
ar possíveis
am-
inhos a seguir mas, sim, apresentar ao usuário uma espé
ie de resumo dos assuntos
que fazem parte do repertório do grupo. A apresentação dessas páginas tem o intu-
ito de tornar explí
ito o espaço de assuntos abordados pelo grupo, expondo assim,
ao usuário, o perl de grupo das pessoas que apare
em em sua lista de par
eiros
de navegação.
4.5.4 Pesquisa
88
por
rawlers, ou seja, programas que navegam de página em página, enviando
para o servidor o endereço de
ada página, seu
onteúdo e, possívelmente, as lig-
ações entre as páginas. É importante notar que, em nenhum dos
asos, existe uma
relação entre as páginas disponíveis e os usuários que fazem as pesquisas.
No
aso do z9 o que a
onte
e é exatamente o oposto. Os usuários são, eles
mesmos, os geradores das referên
ias de páginas que podem ser pro
uradas. E a
ada bus
a o usuário está
ir
uns
rito ao seu históri
o e ao históri
o das pessoas
que apresentam semelhanças na navegação que sugerem anidades em termos de
interesses. Além disso, quando um usuário realiza uma pesquisa ele modi
a seu
perl de pesquisa, adi
ionando as palavras pesquisadas. Essa ação terá o efeito de
aproximar o usuário de pessoas que realizam pesquisas nas quais existe a o
orrên
ia
de palavras
omuns, seus par
eiros de pesquisa.
Uma pesquisa no sistema z9 tem um
aráter diferente de uma pesquisa real-
izada em um site de bus
a. Enquanto no último é usual tentar-se des
obrir quais
páginas existem sobre determinado assunto, no primeiro a bus
a é sobre quais são
as páginas que tratam de determinado assunto que são relevantes para o próprio
usuário e para seus par
eiros. Esse tipo de pesquisa permite pro
urar por pági-
nas
ujo endereço está asso
iado, para o usuário,
om seqüên
ias (ou roteiros)
de a
essos a páginas anteriormente per
orridos. Por exemplo, se um usuário tem
interesse em ligar para a se
retaria do
urso de pós-graduação do instituto de infor-
máti
a, ele pode ter guardado o seguinte
aminho para
hegar até aquela página:
entrar na página do instituto de informáti
a, entrar na página da pós-graduação,
entrar na página fale
onos
o. Usando o z9 o usuário pode apenas pro
urar pela
palavra informáti
a, sabendo que dentre as páginas que ele visitou antes, há uma
om esse título.
Em sua página ini
ial, no servidor, o usuário pode ver informações que mostram
tendên
ias sobre seu
omportamento e o das pessoas que formam seu grupo de
navegação. Essa noção se dá através da idéia de
ontinuações. As
ontinuações
fun
ionam da seguinte maneira: quando o usuário visita sua página ini
ial, ele é
apresentado às direções mais
omuns já seguidas a partir da sua última página
visitada.
Esse me
anismo fun
iona a partir da identi
ação da página que está asso
iada
ao maior número de partidas (páginas que su
edem a página em questão), na
lista de partidas da última página enviada pelo usuário. Assim, o sistema pode
apresentar ao usuário uma mensagem
omo A partir de sua última página visitada,
www.xxx.
om.br, vo
ê, normalmente, vai para www.yyy.
om.br.
Usando um pro
edimento similar, o sistema veri
a qual a página visitada
por mais par
eiros, a partir da última página visitada pelo usuário. Isso permite
89
ao sistema apresentar essa informação na forma: A partir de sua última página
visitada, www.xxx.
om.br, seus par
eiros de navegação, normalmente, vão para
www.zzz.
om.br. Caso não exista
ontinuação, tanto do usuário quanto dos par-
eiros, o sistema não informa nada.
Além disso, o sistema mostra quais outros usuários enviaram a última página
visitada pelo usuário para o servidor por último. Como o servidor não tem
omo
saber se o usuário está olhando para a página, ou se ela já foi fe
hada, ele
onsidera
que a página atual do usuário é a última transmitida. Assim, quando um usuário
visita sua página ini
ial no servidor, ele mostra quais usuários também estão na
última página visitada pelo usuário.
Na Figura 4.6 apresentamos a interfa
e de identi
ação das
ontinuações e
noção de presença.
90
Essa noção de proximidade e
ontinuações tem, ainda o efeito de aproximar os
usuários, de uma forma que é natural para o nosso mundo físi
o. Em nosso dia-
a-dia nos vemos em situações nas quais integramos uma
oletividade de pessoas
des
onhe
idas. Seja no nibus, ou na la para o
inema, essas pessoas nos passam
informações, mesmo que não se
omuniquem
onos
o por palavras. Um restaurante
heio pode ser um indí
io de que a
omida servida é boa; uma pessoa a nossa frente,
que desiste de esperar na mesma la em que estamos, pode indi
ar que a la está
muito lenta, et
.
Assim, essas relações fortuitas apresentadas pelo servidor podem servir de sub-
sídio para o usuário em sua bus
a por informações. Isso por denir um
ontexto
dinâmi
o de visitação por parte de seus par
eiros.
Esse aspe
to interativo do sistema é um dos que poderiam, em nosso ponto de
vista, ser melhorados. Isso porque a veri
ação desses en
ontros e
aminhos
virtuais seria muito melhor aproveitada se pudesse ser mostrada para o usuário
dentro do
ontexto de sua navegação. Ou seja, seria muito mais interessante que
o usuário pudesse entrar em um site e, imediatamente, ser noti
ado de quais
usuários lá estão e quais as direções mais
omumente seguidas a partir dali.
Essa
ara
terísti
a do sistema se rela
iona
om o
on
eito de so
ial translu-
en
e, visto em [Eri
kson and Kellogg, 2003℄ e [Eri
kson et al., 2002℄. Essa
ar-
a
terísti
a,
omo proposta pelos pesquisadores do grupo de so
ial
omputing da
IBM (http://www.resear
h.ibm.
om/So
ialComputing/) pro
ura traduzir, para o
espaço virtual, alguns aspe
tos das interações humanas.
A abordagem que o z9 apresenta para essa importante questão é restrita à
apresentação de pistas so
iais que sirvam para enrique
er a experiên
ia do usuário
durante sua navegação. Esse
ontexto de navegação estendido, que se traduz na
per
epção, durante o ato da navegação, da proximidade e das direções tomadas
por outros, serve
omo uma primeira tentativa de expor a meta-informação que
onsiste da relação dinâmi
a entre os usuários e a informação
riada/utilizada pelos
mesmos a
er
a das páginas visitadas.
91
Figura 4.7: Estatísti
as e reputação
92
é
onstruir
olaborativamente um espaço que seja relevante para
ada um, surgindo
omo resultado das ações voluntárias de pessoas que têm interesse em
ontribuir
om a
omunidade.
Dentro desse
ontexto, o serviço de estatísti
as torna públi
o o esforço da nave-
gação realizada dentro do âmbito da
olaboração
om os parti
ipantes da
omu-
nidade. Esse esforço é re
ompensado
om o
ritério de reputação, expresso na
lista de usuários que mais
ontribuem
om o sistema. Esse me
anismo é muito
usado em serviços on-line, nos quais os usuários podem utilizar o serviço de forma
gratuita, sendo, entretanto, in
entivados a
omprar o serviço. Um exemplo disso é
o site do jogo de xadrez game knot (http://gameknot.
om/). Nesse site, qualquer
pessoa pode jogar gratuitamente. Porém, se o jogador de
idir pagar uma
onta
mensal, ele tem direito a alguns benefí
ios, tais
omo poder jogar mais partidas
simultâneas, et
. Além desses benefí
ios palpáveis, o jogador pagante tem, ainda
um benefí
io que se traduz
omo elemento de status, ou reputação. Ele apare
e,
na lista de jogadores,
om a imagem de um peão dourado ao lado de seu nome.
O me
anismo da lista de usuários que mais
ontribuem
om o sistema é similar,
visto que torna públi
o, ou distingue, o usuário dos outros,
riando um objetivo
para aqueles que bus
am o status dentro da
omunidade virtual.
4.5.7 Grá os
Históri o
93
Figura 4.8: Representação grá
a do históri
o do usuário
94
identi
ar quais são as páginas que rela
ionam os usuários que são apresentados,
pelo sistema,
omo seus par
eiros.
Vamos, a seguir, dis
utir os resultados obtidos até o presente momento
om a
riação da
omunidade z9.
95
Figura 4.9: Grá
o de ligações entre usuários baseado na visitação das mesmas
páginas
96
Capítulo 5
Análise da evolução da
omunidade
de usuários do z9
O protótipo z9 foi disponibilizado no endereço http://andrers52.dyndns.org:8080/z9.
Ele en
ontra-se em utilização desde 12 de março de 2005, tendo sido utilizado, até
o momento,
om maior ou menor intensidade, por um grupo de 90 pessoas. Esse
onjunto de pessoas enviou 14825 páginas para o servidor até o dia 2 de novembro
de 2005.
Devido ao
aráter in
ipiente da
omunidade,
on
luiu-se que não haveria tempo
su
iente para avaliar, de forma minu
iosa, a utilização do serviço de sugestão de
páginas no
ontexto da duração do desenvolvimento da presente dissertação. Isso
porque a utilidade desse serviço depende diretamente da utilização do sistema,
ou seja, as primeiras pessoas a ingressarem na
omunidade de usuários somente
forne
eram páginas para o sistema, re
ebendo pou
o em tro
a, em termos de
sugestões de páginas interessantes. Nossa perspe
tiva é de que isso mude
om o
aumento no número de páginas e no número de usuários.
Considerando o que foi dito anteriormente, de
idimos utilizar uma pesquisa
qualitativa do nível de satisfação
om o serviço de sugestão de páginas ofere
ido
pelo sistema.
97
O motivo prin
ipal desta abordagem de veri
ação reside na di
uldade de se
fazer uma pesquisa direta de opinião sobre o sistema entre os usuários, de forma
generalizada. Isto porque os mesmos en
ontram-se protegidos pelos me
anismos
de priva
idade postos pelo próprio sistema. Ainda, uma outra motivação para a
análise qualitativa está,
omo já dis
utido anteriormente, no
aráter in
ipiente da
omunidade sendo
riada.
É digno de nota o fato de que metade dos usuários registraram experiên
ias
positivas quanto ao serviço de pesquisa. Esse fato torna-se mais relevante quando
se
ompara o número de páginas disponíveis para o sistema realizar sua bus
a em
relação àquelas disponíveis através dos sites de bus
a
onven
ionais. A
res
ente-se
a isso o fato de que a pesquisa do z9 é realizada somente utilizando as palavras
disponíveis nos títulos e endereços das páginas. A
reditamos que esse fato tenha
relação
om a relevân
ia das páginas armazenadas, as quais, em muitos
asos,
são o resultado líquido das pesquisas realizadas anteriormente pelos usuários.
Assim, o protótipo torna-se uma espé
ie de ferramenta própria para o usuário fazer
onsultas que representem sites que ele já visitou, e que tem interesse em visitar
novamente, mas que, por algum motivo, não se re
orda do
aminho utilizado
para al
ançar. Ainda,
onsiderando-se que a pesquisa é realizada somente no
históri
o do próprio usuário e no de seus par
eiros de navegação, é possível que
o usuário se bene
ie de páginas rela
ionadas, que foram visitadas por algum de
seus par
eiros. Essa hipótese é reforçada pelo fato de que 62, 5% dos usuários
responderam armativamente, no questionário, à pergunta sobre a relação entre
os resultados da pesquisa no sistema e a sua experiên
ia anterior de navegação.
98
5.2 Relação entre notas e distân
ia dos par
eiros
de navegação
As notas dadas ao sistema pelos usuários nos questionários foram, ainda,
ruzadas
om a distân
ia destes em relação a seus par
eiros de navegação. Para
isso foi utilizada a métri
a adotada pelo sistema, que determina que quanto mais
páginas
omuns dois usuários visitam, mais próximos um do outro eles se en
on-
tram. Essa idéia foi estendida para denir-se a proximidade de um usuário em
relação a seu grupo de par
eiros
omo sendo o número de elementos do
onjunto
formado pela interse
ção entre o
onjunto de páginas visitadas pelo usuário e o
onjunto de páginas visitadas por todos os seus par
eiros de navegação.
A essa asso
iação segue a hipótese de que, quanto mais próximo dos usuários
que formam seu grupo de par
eiros de navegação, mais satisfeito estará o usuário
om as sugestões apresentadas.
Assim, através dos depoimentos obtidos nos 8 questionários retornados foi ver-
i
ado o nível de satisfação de
ada usuário em relação ao serviço de sugestão de
páginas relevantes.
A Tabela 5.1 Apresenta a nota dada por
ada usuário para as sugestões pro-
postas pelo z9.
99
en
ontradas. A disparidade de valores retornados permite inferir que
ada usuário
utilizou
ritérios distintos, na elaboração de sua nota. Isso reforça o
aráter sub-
jetivo desse gênero de avaliação.
100
Figura 5.1: Nota e páginas
omuns
porque, quanto mais o usuário a
eita as sugestões, mais próximo ele se torna
dos seus par
eiros, sendo, entretanto, possível se aproximar ou afastar, apenas
omo resultado da variação do seu perl per
ebido pelo sistema, o que é resultado
do pro
esso normal da sua navegação. Assim, seria possível medir o quanto as
sugestões estariam inuen
iando o seu
omportamento.
uma forma de se medir a utilidade do serviço de pesquisa seria veri
ar o
número de vezes que o usuário utilizou os resultados do serviço de pesquisa. Uma
análise interessante seria veri
ar, das páginas utilizadas, dentre os links retorna-
dos, quantas se referem à experiên
ia passada do próprio usuário, e quantas são
páginas do históri
o de seus par
eiros. Isso permitiria veri
ar o quanto o sistema
de bus
a é usado para en
ontrar páginas já visitadas, e o quanto ele é usado para
en
ontrar novas páginas.
101
102
Capítulo 6
Considerações nais e trabalhos
futuros
Neste trabalho zemos um estudo de alternativas para a bus
a por informação
relevante na Web e apresentamos uma proposta própria,
om
ara
terísti
as in-
ovadoras em relação àquelas des
ritas na bibliograa. No primeiro
apítulo in-
troduzimos a questão da ne
essidade de alternativas para a bus
a e
iente de
informações na Web e apresentamos o
ontexto de pesquisa no qual este trabalho
se insere. O segundo
apítulo apresentou uma dis
ussão de aspe
tos teóri
os e
práti
os do agrupamento de dados e agrupamento de textos. Mostrou-se
omo
o agrupamento de dados e o agrupamento de textos podem auxiliar a pesquisa.
Mostrou-se, ainda, as di
uldades inerentes à apli
ação do agrupamento de textos,
prin
ipalmente devidas à quantidade de pro
essamento ne
essária asso
iada ao seu
uso. No ter
eiro
apítulo foram apresentadas abordagens para a navegação e sug-
estão de páginas e textos, utilizando os
on
eitos dis
utidos no
apítulo anterior
ou ainda outros enfoques. O quarto
apítulo apresentou uma proposta própria,
que pro
ura utilizar a relação entre os pers dos usuários
omo me
anismo para
a identi
ação de páginas relevantes para
ada um. No
apítulo
in
o foi apre-
sentada uma análise quanto às
onsiderações e avaliações forne
idas por usuários
sobre o sistema.
Apresentamos, a seguir, as prin
ipais
ontribuições deste trabalho e as perspe
-
tivas de trabalhos futuros.
103
informação é
riada pelos pro
essos vistos no
apítulo 2, a partir do agrupamento
dos pers de navegação dos usuários que utilizam o sistema.
De modo a permitir a identi
ação de pers de navegação similares e ofere
er
serviços baseados nessa meta-informação de navegação, foi
riado um protótipo
que permite a disponibilização do experimento em larga es
ala, pela obtenção e
utilização de um software
liente que qualquer pessoa possa instalar.
Questões
entrais para o desenvolvimento do protótipo foram a priva
idade
e segurança. Das formas de
aptura de informações de navegação identi
adas
na literatura: no servidor, no proxy e no
liente, a identi
ação no
liente nos
pare
e ser a mais interessante. Isso porque permite a adoção em larga es
ala,
diferente do que a
onte
e
om a
oleta no proxy, e não sofre interferên
ia devido
ao
a
he do navegador,
omo a
onte
e
om a
oleta no servidor. A
oleta no
liente, entretanto, é problemáti
a devido à per
epção do usuário de que está
sendo vigiado, e também pelo medo que este sofre de ser vítima de um software
mali
ioso. Nesse sentido, a
reditamos que a abordagem
omunitária proposta foi
algo que tornou viável o experimento. Isso reforça o
aráter so
ial do experimento,
porque ele utiliza informações de similaridades entre os pers de navegação dos
usuários e depende, para existir, de uma rede so
ial de
onança, onde uma pessoa
adota o sistema a partir da indi
ação de outra, na qual ela
ona. Devido a isso o
sistema teve seu iní
io
om a adoção por parte do próprio desenvolvedor, de seus
familiares e amigos e pela
olaboração da PUCRS, que disponibilizou o serviço
nos laboratórios do
urso de Pós-Graduação em Ciên
ia da Computação, durante
o primeiro semestre de 2005.
O ponto
entral deste trabalho foi estudar a
riação de meta-informação que
represente o históri
o so
ial de um grupo de indivíduos, a partir do registro dos
endereços de páginas visitados pelos mesmos. A prin
ipal
ontribuição deste pro-
esso foi a disponibilização de serviços que utilizem esta meta-informação, de modo
a servir
omo alternativa para a bus
a por informações relevantes na Web.
Outra
ara
terísti
a diferen
iada do trabalho está na forma
omo a relação de
transferên
ia de informações é proposta. No z9 existe uma expli
itação do
aráter
omunitário e disseminador da informação, a qual é provida e
onsumida, em um
pro
esso transparente, pelos usuários parti
ipantes. O sistema vai além, ainda,
na direção de utilizar o resultado da análise de similaridade, as sugestões,
omo
indi
ações que rela
ionam os usuários. Esse me
anismo serve para aproximar as
pessoas em termos de seus interesses, propi
iando o surgimento de interações que
ultrapassem os limites do sistema.
Ainda sobre o aspe
to
omunitário de disseminação da informação, é impor-
tante notar a diferença entre a proposta aqui apresentada e aquela do Alexa
R , ou
das novas propostas de
oleta de informação de navegação, tais
omo o Google
Tool Bar, e a nova versão do browser Nets
ape
R , que tem a opção de enviar
104
informações sobre a navegação. A diferença está na maneira
omo a informação
é utilizada. No z9 as páginas que são visitadas por um usuário são agregadas
ao seu perl, e essa informação serve para posi
ionar o usuário em relação aos
outros usuários. O que se vê nas outras ferramentas é uma relação diferente. As
pessoas
ontribuem para a
riação de uma base de dados de relações entre as
páginas. Nessa segunda forma de serviço o fo
o é
olo
ado nas páginas, sendo os
usuários meros atributos das mesmas. Por esse motivo é que es
olhemos a palavra
omunitário para des
rever o serviço disponibilizado. Essa palavra distingue as
propostas por dar a posse do perl ao próprio usuário utilizando o sistema, ao
invés de transformá-lo em uma informação de navegação disso
iada da pessoa que
a produz, num pro
esso de apropriação dessa informação.
Esse pro
esso de apropriação está, em nossa
on
epção,
ondenado ao fra
asso,
por não valorizar devidamente o papel das pessoas e suas relações na
onstrução
e evolução da Web. Têm-se a impressão de que as
ompanhias desperdiçam a
possibilidade de disponibilizar a informação tal
omo ela é utilizada neste tra-
balho, para apostar na
riação de um tesouro que se baseie no empa
otamento e
disponibilização de informações da Web, tal
omo se vê hoje nos motores de bus
a.
Esses motores utilizam um modelo
omer
ial que lembra aquele da televisão, onde
o usuário pode utilizar um serviço mas, em
ontra-partida, tem que submeter-se a
apresentação de propagandas, as quais, no
aso dos motores de bus
a, se apresen-
tam
omo links inseridos nos resultados das pesquisas. Esse modelo de negó
io é
o limitador das alternativas que podem ser apresentadas pelos grandes provedores
de serviços da Internet. Isso porque, nesse modelo, é ne
essária a existên
ia de
uma
entralização da informação, ou apropriação do mapa de direções da Web.
A
reditamos que o
res
imento da Web tornará essa proposta inviável a médio
prazo.
A diferença de perspe
tiva entre a proposta do z9 e os motores de bus
a atuais
está na ênfase dada aos diferentes elementos da Web. Nos motores de bus
a a
ênfase está na disponibilização de a
esso às páginas através da
onstrução de uma
base de dados que rela
ione as mesmas. Enquanto isso, o z9 tem uma ênfase
nos próprios usuários. Utilizando essa abordagem, o z9, ao mesmo tempo que
permite disponibilizar uma interfa
e de serviços personalizada para
ada usuário,
ria a noção de
ooperação voluntária, ou
omunitária, que possibilita a própria
evolução do sistema.
105
a partir da identi
ação de objetivos
omuns em
omunidades virtuais.
Outra questão que
a em aberto, ao en
errar-se esta etapa, é a
apa
idade
de manipulação de uma grande quantidade de informações e usuários, de modo
satisfatório, utilizando-se o me
anismo proposto de transmissão, pro
essamento
e armazenamento das informações sobre a navegação dos diversos usuários. Isso
signi
a des
obrir se as informações armazenadas, título e endereço das páginas,
são su
ientes para a des
oberta de informações relevantes em um número su-
iente de
asos. Signi
a também identi
ar
aminhos para modi
ar o protótipo
apresentado, de modo que o mesmo seja
apaz de tratar grandes quantidades de
dados.
É importante notar que outras informações poderiam ser usadas na formação
da métri
a que determina a proximidade entre usuários, além das páginas visitadas.
Exemplos de informações que poderiam ser agregadas são o texto das páginas vis-
itadas, a hora da visita, a sequên
ia de visitação (rota) e as diversas partes do en-
dereço das páginas, por exemplo, para a implementação atual, www.gremio.
om.br
é tão distante de www.gremio.
om.br/so
ios quanto de www.inter.
om.br.
A limitação fundamental do trabalho aqui apresentado está na impossibilidade
de utilização das
orrelações
riadas pelo sistema dentro de uma dinâmi
a de
interação em tempo real
om os outros usuários. Isso poderia ser resolvido
om o
uso de hardware de alto desempenho.
Assim, a
reditamos que uma
ontinuação interessante seria a implementação
de um navegador que permitisse a navegação nas páginas, integrada
om a vi-
sualização da meta-informação do z9. Esse navegador poderia mostrar a página
e forne
er informações estendidas, tais
omo páginas rela
ionadas, pessoas rela-
ionadas e
aminhos rela
ionados.
Outra possibilidade é a disponibilização da meta-informação
omo um mapa,
no qual as páginas pudessem ser exploradas dentro da perspe
tiva de proximi-
dade dada pela relação denida
om os usuários e destes entre si. Nesse espaço
da meta-informação, visualizável por um navegador apropriado, seria possível às
pessoas travarem
ontato e tro
arem experiên
ias em tempo real.
106
Apêndi
e A
Questionários
Apresentamos a seguir, os 8 questionários preen
hidos, dos 9 enviados aos
usuários que serviram de amostra para a avaliação.
Usuário 1
1. Quão úteis foram as sugestões de páginas relevantes (Resposta([1,10℄))?
5
107
Usuário 2
1. Quão úteis foram as sugestões de páginas relevantes (Resposta([1,10℄))?
3
108
do z9 o grá
o
a muito difí
il, diria que prati
amente impossível de ser
usado (apesar de uma vez ter me esforçado e ter a
hado um site que real-
mente queria). A
riação de um plug-in pro browser pra deixar mais práti
o
o a
esso às informações.
Usuário 3
1. Quão úteis foram as sugestões de páginas relevantes (Resposta([1,10℄))?
10 - Justamente pela asso
iação que o programa faz ao meu perl de páginas
e aos demais pers. A
abou indi
ando páginas que eu não
onhe
ia ou que
ainda não tinha manifestado interesse em pro
urar.
109
Usuário 4
1. Quão úteis foram as sugestões de páginas relevantes (Resposta([1,10℄))?
8
Usuário 5
1. Quão úteis foram as sugestões de páginas relevantes (Resposta([1,10℄))?
2
110
2. O sistema lhe auxiliou em alguma atividade? Se a resposta for sim, qual
(Resposta(sim|não,qual))?
Não.
Usuário 6
1. Quão úteis foram as sugestões de páginas relevantes (Resposta([1,10℄))?
1 - não re
ebi sugestões relevantes
111
4. Vo
ê
onsidera útil a pesquisa do sistema? Se a resposta for sim, por quê
(Resposta(sim|não,porque))?
Sim , pois fa
ilita a bus
a tornando-a mais fá
il e objetiva.
Usuário 7
1. Quão úteis foram as sugestões de páginas relevantes (Resposta([1,10℄))?
2
112
Usuário 8
1. Quão úteis foram as sugestões de páginas relevantes (Resposta([1,10℄))?
7
113
114
Referên
ias Bibliográ
as
[Aneiros et al., 2003℄ Aneiros, M., Estivill-Castro, V., and Sun, C. (2003). Group
unied histories: an instrument for produ
tive un
onstrained
o-browsing. In
GROUP '03: Pro
eedings of the 2003 International ACM SIGGROUP Confer-
en
e on Supporting Group Work, pages 330338. ACM Press.
[Beil et al., 2002℄ Beil, F., Ester, M., and Xu, X. (2002). Frequent term-based text
lustering. In Pro
eedings of the eighth ACM SIGKDD International Conferen
e
on Knowledge Dis
overy and Data Mining, pages 436442. ACM Press.
[Bilmes, 1997℄ Bilmes, J. (1997). A gentle tutorial on the em algorithm and its
appli
ation to parameter estimation for gaussian mixture and hidden markov
models. Te
hni
al Report ICSI-TR-97-021, University of Berkeley.
[Cabri et al., 1999℄ Cabri, G., Leonardi, L., and Zambonelli, F. (1999). Support-
ing
ooperative www browsing: a proxy-based approa
h. in pro
. of the 7th
euromi
ro workshop on parallel and distributed pro
essing. IEEE Computer
So
iety, pages 138145.
[Chang and Kim, 2004℄ Chang, J.-W. and Kim, Y.-K. (2004). An e
ient
lus-
tering method for high-dimensional data mining. In SBIA, pages 276285.
[de Jesús Hoyos-Rivera et al., 2002℄ de Jesús Hoyos-Rivera, G., Lima-Gomes, R.,
and Courtiat, J.-P. (2002). A exible ar
hite
ture for
ollaborative browsing.
In WETICE '02: Pro
eedings of the 11th IEEE International Workshops on
Enabling Te
hnologies, pages 164169, Washington, DC, USA. IEEE Computer
So
iety.
[Eri
kson et al., 2002℄ Eri
kson, T., Halverson, C., Kellogg, W. A., La, M., and
Wolf, T. (2002). So
ial translu
en
e: designing so
ial infrastru
tures that make
olle
tive a
tivity visible. Communi
ations of the ACM, 45(4):4044.
115
[Eri
kson and Kellogg, 2003℄ Eri
kson, T. and Kellogg, W. A. (2003). So
ial
translu
en
e: Using minimalist visualizations of so
ial a
tivity to support
ol-
le
tive intera
tion. In Designing Information Spa
es: The So
ial Navigation
Approa
h, pages 1742. Springer.
[Estivill-Castro, 2002℄ Estivill-Castro, V. (2002). Why so many
lustering algo-
rithms: a position paper. SIGKDD Explorations, 4(1):6575.
[Jain et al., 1999℄ Jain, A. K., Murty, M. N., and Flynn, P. J. (1999). Data
lus-
tering: a review. ACM Comput. Surv., 31(3):264323.
[Kosala and Blo
keel, 2000℄ Kosala, R. and Blo
keel, H. (2000). Web mining re-
sear
h: a survey. SIGKDD Explor. Newsl., 2(1):115.
[Kreyszig, 1978℄ Kreyszig, E. (1978). Introdu
tory Fun
tional Analysis with Ap-
pli
ations. John Wiley & Sons, New York, NY, USA.
[Lagus et al., 1996℄ Lagus, K., Honkela, T., Kaski, S., and Kohonen, T. (1996).
Self-organizing maps of do
ument
olle
tions: A new approa
h to intera
tive
exploration. In Simoudis, E., Han, J., and Fayyad, U., editors, Pro
eedings of
the Se
ond International Conferen
e on Knowledge Dis
overy and Data Mining,
pages 238243. AAAI Press, Menlo Park, California.
116
[Lagus and Kaski, 1999℄ Lagus, K. and Kaski, S. (1999). Keyword sele
tion
method for
hara
terizing text do
ument maps. In ICANN99. Ninth Inter-
national Conferen
e on Arti
ial Neural Networks (IEE Conf. Publ. No.470),
volume 1, pages 3716, London, UK. IEE.
[Lieberman, 1995℄ Lieberman, H. (1995). Letizia: An agent that assists web brows-
ing. In Mellish, C. S., editor, Pro
eedings of the Fourteenth International Joint
Conferen
e on Arti
ial Intelligen
e (IJCAI-95), pages 924929, Montreal, Que-
be
, Canada. Morgan Kaufmann publishers In
.: San Mateo, CA, USA.
[Lieberman et al., 1999℄ Lieberman, H., Dyke, N. W. V., and Viva
qua, A. S.
(1999). Let's browse: a
ollaborative web browsing agent. In IUI '99: Pro
eed-
ings of the 4th International Conferen
e on Intelligent User Interfa
es, pages
6568. ACM Press.
[Lieberman et al., 2001℄ Lieberman, H., Fry, C., and Weitzman, L. (2001). Ex-
ploring the web with re
onnaissan
e agents. Commun. ACM, 44(8):6975.
[Ma
edo et al., 2003℄ Ma
edo, A. A., Truong, K. N., Cama
ho-Guerrero, J. A.,
and da Graça Pimentel, M. (2003). Automati
ally sharing web experien
es
through a hyperdo
ument re
ommender system. In HYPERTEXT '03: Pro
eed-
ings of the Fourteenth ACM Conferen
e on Hypertext and Hypermedia, pages
4856, New York, NY, USA. ACM Press.
[Mitra, 2003℄ Mitra, Sushmita & A
harya, T. (2003). Data Mining Multimedia,
Soft Computing, and Bioinformati
s. John Wiley & Sons, New York, NY, USA.
[Pirolli et al., 1996℄ Pirolli, P., S
hank, P., Hearst, M., and Diehl, C. (1996). S
at-
ter/gather browsing
ommuni
ates the topi
stru
ture of a very large text
olle
-
tion. In Pro
eedings of the SIGCHI Conferen
e on Human Fa
tors in Computing
Systems, pages 213220. ACM Press.
[Riedl and Dourish, 2005℄ Riedl, J. and Dourish, P. (2005). Introdu
tion to the
spe
ial se
tion on re
ommender systems. ACM Trans. Comput.-Hum. Intera
t.,
12(3):371373.
117
[Shahabi et al., 1997℄ Shahabi, C., Zarkesh, A. M., Adibi, J., and Shah, V. (1997).
Knowledge dis
overy from users web-page navigation. In RIDE '97: Pro
eed-
ings of the 7th International Workshop on Resear
h Issues in Data Engineering
(RIDE '97) High Performan
e Database Management for Large-S
ale Appli
a-
tions, page 20, Washington, DC, USA. IEEE Computer So
iety.
[Srivastava et al., 2000℄ Srivastava, J., Cooley, R., Deshpande, M., and Tan, P.-N.
(2000). Web usage mining: Dis
overy and appli
ations of usage patterns from
web data. SIGKDD Explorations, 1(2):1223.
[Steinba
h et al., 2000℄ Steinba
h, M., Karypis, G., and Kumar, V. (2000). A
omparison of do
ument
lustering te
hniques. KDD Workshop on Text Mining.
[Zhong and Ghosh, 2003℄ Zhong, S. and Ghosh, J. (2003). A unied framework
for model-based
lustering. J. Ma
h. Learn. Res., 4:10011037.
118