Escolar Documentos
Profissional Documentos
Cultura Documentos
Tcnicas de agrupamento
3.1.
Tipos de agrupamento
De acordo com a necessidade da aplicao os dados a serem agrupados
podem ser interpretados de diferentes maneiras. Deste modo, Tan et al. [5]
apresentam alguns dos mais importantes e conhecidos tipos de agrupamento
utilizados.
Hierrquico versus Particionado: No agrupamento particionado, os
exclusivo quando cada objeto de uma massa de dados est atribudo apenas a
um cluster. Caso um objeto possa coexistir em diferentes clusters ento dizemos
que no-exclusivo ou sobreposto. J no agrupamento fuzzy cada objeto
pertence a cada cluster de acordo com um grau de pertinncia, onde um objeto
24
3.2.
Algoritmos de agrupamento
Algoritmos de agrupamento tm como objetivo particionar uma massa de
objetos em grupos ou clusters de objetos similares. Esta tarefa pode ser dividida
em agrupamento supervisionado, onde algum mecanismo externo (humano)
PUC-Rio - Certificao Digital N 0711262/CA
3.2.1.
Agrupamento supervisionado
De acordo com Sebastiani [6], o problema do agrupamento supervisionado
definido como:
Dado um grupo de D documentos e um grupo de C categorias prdefinidas, o objetivo atribuir um valor booleano para cada par (di, cj) D x C,
onde di D e cj C.
Muitos algoritmos de aprendizagem tm sido utilizados para ajudar nesse
tipo de classificao, como por exemplo, k-Nearest Neighboor(k-NN) [7-9],
Support Vector Machines(SVM) [10], Neural Networks(Nnet) [11, 12], Linear
Least Squares Fit(LLSF) [13] e Naive Bayes(NB) [14, 15]. A seguir veremos o
funcionamento de alguns dos algoritmos mais conhecidos.
25
3.2.1.1.
K-Nearest Neighbor
Este algoritmo considerado o mais simples dentre os algoritmos de
machine learning (ML) e o seu propsito classificar um novo objeto baseado
nos exemplos de treinamento e em seus atributos.
Dado um objeto x sem classificao,
verifica-se os k vizinhos treinados mais prximos
a ele. A categoria atribuda ao objeto x a que
possui o maior nmero de ocorrncias (kocorrncias) prximas a ele.
y di, cj . cos ,
(1)
26
3.2.1.2.
Classificador Naive Bayes
Este classificador, provavelmente, o mais utilizado em machine learning.
Ele denominado ingnuo (naive) por assumir que os atributos so
condicionalmente independentes, ou seja, a informao de um evento no
informativa para nenhum outro evento. Mesmo considerado ingnuo, este
algoritmo tem o melhor desempenho em vrias tarefas de classificao,
conforme pode ser visto em [16,17].
Existem dois modelos comuns para a classificao utilizando o mtodo de
Bayes, modelo multivariado de Bernoulli e modelo multinomial. Em ambos os
modelos a classificao de teste feita aplicando o teorema de Bayes vide form.
(2).
(2)
3.2.1.3.
Support Vector Machine (SVM)
A SVM foi proposta inicialmente por Vapnik [18] para resolver problemas
two-class, achar a superfcie de deciso que separa maximamente as amostras
27
margin
(1)
3.2.2.
Agrupamento no-supervisionado
Ao contrrio do agrupamento supervisionado, a utilizao de categorias
pr-definidas desnecessria. O grande objetivo desta tcnica agrupar objetos
com alto grau de semelhana, onde a similaridade alguma funo de distncia,
por exemplo, distncia euclidiana.
De acordo com [19], a classificao no supervisionada pode ser dividida
em dois tipos: algoritmos de agrupamento hierrquico e algoritmos de
agrupamento particionado.
28
3.2.2.1.
Algoritmos Particionados
3.2.2.1.1.
K-Means
O algoritmo K-means [19] foi apresentado por J.B. MacQueen em 1967 e
um dos mais famosos algoritmos de agrupamento de dados, este algoritmo tenta
fornecer uma classificao de acordo com os prprios dados, sendo a
classificao feita por similaridade de grupos, onde o objeto atribudo ao grupo
Algoritmo K-means
29
Os
objetos
so
prximo.
Os centrides so re-
Os passos 2 e 3 se
3.2.2.1.2.
K-Medide
Esse algoritmo uma variao do algoritmo K-Means e ao contrrio deste
o K-medide escolhe objetos existentes como centrides. Ao final do
agrupamento obteremos um objeto como o elemento central, normalmente
classificado como o prottipo do agrupamento, o medide.
Uma vantagem do algoritmo K-Medide em relao ao K-Means sobre
os rudos ou outliers (dados classificados erroneamente ou sem classificao)
contidos no agrupamento, pois as estratgias na escolha do centride e do
medide so diferentes. No K-Means, o centride dado pela mdia de todos os
objetos dentro de um agrupamento. Desta maneira, se o agrupamento possuir
um objeto muito distante dos outros, o centride ser influenciado erradamente.
J no K-Medide, o algoritmo utiliza a mdia do erro quadrado para validar a
escolha de um medide ento ao escolher um medide que esteja mais prximo
30
3.2.2.2.
Algoritmos hierrquicos
3.2.2.2.1.
Diviso
O algoritmo de diviso [20] inicia-se com um cluster contendo todos os
objetos disponveis e a cada iterao o cluster mais apropriado no
momento(cluster que possui a maior distncia entre seus pares de objetos)
selecionado e dividido, o algoritmo pra quando algum critrio pr-determinado
do cluster escolhido)
4
5
6
31
3.2.2.2.2.
Aglomerao
Ao contrrio do algoritmo de diviso, no
incio, cada objeto corresponde a um cluster. A
cada iterao os clusters com maior similaridade
so agrupados at que algum critrio de parada
seja identificado. A representao clssica desse
algoritmo dada por uma rvore, tambm
chamada de dendograma (figura 7). Vejamos o
exemplo a seguir, onde temos vrios objetos e a
distncia euclidiana a medida de similaridade de Figura 6 Objetos a serem
aglomerados.
Na figura 7, temos seis elementos {a}, {b}, {c}, {d}, {e} e {f}. O primeiro
passo foi determinar quais elementos deveriam ser aglomerados (pares de
elementos com a menor distncia). Este passo iterado at o grau de
generalizao desejado.
3.3.
Medidas de similaridade e dissimilaridade
As medidas de similaridade e dissimilaridade so fundamentais para a
organizao de objetos, seja para adicionar objetos a um determinado grupo ou
retir-los, respectivamente. As medidas mais comuns so:
Distncia euclidiana
32
d ( x, y ) =
(x
i =1
yi ) 2
(3)
Distncia de Manhattan
o
d ( x , y ) = ( xi y i )
(4)
i =1
Similaridade do Cosseno
o
CosSim ( A, B ) =
A B
A B
(5)
33
3.4.
Mtodos de ligao sobre grupos
Os mtodos de ligao so utilizados para determinar se a distncia entre
grupos insuficientemente grande para que sejam reagrupados ou para agrupar
os grupos mais prximos dentre todos os outros. Esses mtodos so usualmente
utilizados em algoritmos hierrquicos de aglomerao.
3.4.1.
Single Linkage Clustering Method (SLINK)
A proximidade entre dois grupos definida como a mnima distncia entre
dois objetos de dois diferentes grupos. Para isso, computada a distncia entre
Figura 8 SLINK
3.4.2.
Group Average Method ou Unweighted pair-group Method using
Arithmetic Averages (UPGMA)
A proximidade entre dois grupos definida como a mdia das distncias
entre cada objeto de um grupo e cada objeto do outro grupo, ver figura 9.
Figura 9 UPGMA
3.4.3.
Complete Link Clustering Method (CLINK)
A medida de proximidade do CLINK exatamente a oposta do SLINK, aqui
a proximidade definida como a mxima distncia entre dois objetos de dois
diferentes grupos, ver figura 10.
34
Figura 10 CLINK
3.4.4.
Wards Method
A proximidade entre dois grupos definida como o agrupamento de dois
grupos no qual o aumento da perda seja mnimo. A perda definida em termos
da soma do erro quadrado. Calcula-se a soma do erro quadrado da juno de
cada par de grupos e os que obtiverem o menor erro so agrupados.
3.5.
Mtodos de validao de grupos
Para verificar a qualidade da estrutura de um grupo (cluster) necessrio
informaes sobre ele, estas informaes podem ser obtidas atravs de mtodos
no-supervisionado, supervisionado ou relativo.
O mtodo no-supervisionado mede a qualidade do grupo sem nenhuma
informao externa, ou seja, usam-se apenas informaes contidas no prprio
grupo de dados, as medidas podem ser divididas em coeso e separao. A
coeso valida a solidez dentro de um grupo e a separao valida o isolamento
entre grupos, onde essas validaes podem ser feitas atravs de medidas de
proximidade de objetos. No caso dos sistemas baseados em prottipos a
separao pode ser medida atravs da distncia entre os prottipos e a coeso
pode ser medida atravs da distncia entre os objetos do grupo e seu prottipo,
conforme ilustra a figura 11.
35
3.6.
Tratamento de tipos de dados
Para que haja um agrupamento de dados importante que sejam definidos
os tipos de dados com os quais o algoritmo ir trabalhar. Para isso, Han e
Kramber [21], especificaram em seu trabalho alguns tipos de variveis para
3.6.1.
Variveis escaladas em intervalos
Unidades de medida, como por exemplo: quilograma, litro, metro, entre
outras. As medidas so escaladas para a unidade correta antes de serem
aplicadas a medida de similaridade entre objetos.
3.6.2.
Variveis booleanas
Variveis que possuem apenas dois tipos de valores (0,1), que
representam se determinado objeto possui, ou no, determinada caracterstica.
3.6.3.
Variveis nominais
Variveis que possuem um conjunto finito de valores e no possuem uma
ordem especfica. Ex.: estado civil: (solteiro, casado, vivo, divorciado).
3.6.4.
Variveis ordinais
Variveis que possuem um conjunto finito de valores e uma ordem
especfica podendo assumir valores discretos ou contnuos. A avaliao deste
36
3.6.5.
Variveis livres
Varivel sem estrutura, texto livre.
3.7.
Determinao do nmero de grupos
Embora muitos algoritmos de agrupamento sejam no-supervisionados, a
maioria deles necessita de parmetros de inicializao que estejam diretamente
ou indiretamente ligados determinao do nmero de grupos (clusters). Achar
ou supor este nmero no trivial, mesmo que tenhamos um conhecimento
3.7.1.
Cross Validation
Mtodo estatstico de particionamento de uma amostra de dados em
subgrupos. Esses grupos serviro para treinar, validar e testar os grupos de
dados formados.
3.7.2.
Penalized likelihood estimation
Mtodo que cria modelos para tentar ajustar os dados adequadamente,
alm de tentar diminuir sua complexidade.
3.7.3.
Permutation tests
Mtodo estatstico em que uma distribuio referencial obtida atravs
do clculo de todas as possibilidades dos objetos de dados amostrados.
37
3.7.4.
Resampling
A tcnica utiliza vrias amostras do grupo de dados e tenta descobrir o
nmero de grupos que mais estvel dentre essas amostras.
3.7.5.
Finding the knee of error curve
Mtodo que tenta descobrir um nmero apropriado de grupos analisando
a curva gerada a partir deste mtodo; geralmente um teste realizado para cada
possvel nmero de grupos e uma mtrica para avaliao de cada grupo.
3.8.
Concluso