Title: Forma
1Formação de agrupamentos conceitos básicos e
algoritmos (parte 2)prof. Luis Otavio
AlvaresINE/UFSC
- Parte desta apresentação é baseada em material do
livro - Introduction to Data Mining de Tan, Steinbach,
Kumar - e de material do prof. José Leomar Todesco (UFSC)
2Clustering hierárquico
- Produz um conjunto de clusters aninhados,
organizados como uma árvore - Pode ser visualizado como um dendrograma
- Um diagrama em forma de árvore que registra a
sequencia de uniões ou divisões
3Pontos fortes do clustering hierárquico
- Não precisa assumir nenhum número particular de
clusters - Qualquer número desejado de clusters pode ser
obtido cortando o dendograma no nível adequado - Podem corresponder a taxonomias
- Exemplo em biologia o reino animal
4Clustering hierárquico
- Dois tipos principais
- Aglomerativo
- Inicia com cada ponto como um cluster individual
- A cada passo une o par de pontos mais próximos
até que reste somente um cluster (ou k clusters) - Divisivo
- Inicia com um cluster contendo todos os pontos
- A cada passo divide um cluster até que cada
cluster contenha apenas um ponto (ou até que haja
k clusters) - Os algoritmos tradicionais usam uma matriz de
similaridade ou de proximidade (distância) - Unem ou dividem um cluster de cada vez
5Como definir a similaridade entre clusters
Similaridade?
- MIN
- MAX
- Média do grupo
- Distância entre centróides
- Outros métodos dirigidos por uma função objetivo
- método de Ward
Matriz de proximidade
6Como definir a similaridade entre clusters
- MIN
- MAX
- Média do grupo
- Distância entre centróides
- Outros métodos dirigidos por uma função objetivo
- método de Ward
Matriz de proximidade
7Como definir a similaridade entre clusters
- MIN
- MAX
- Média do grupo
- Distância entre centróides
- Outros métodos dirigidos por uma função objetivo
- método de Ward
Matriz de proximidade
8Como definir a similaridade entre clusters
- MIN
- MAX
- Média do grupo
- Distância entre centróides
- Outros métodos dirigidos por uma função objetivo
- método de Ward
Matriz de proximidade
9Como definir a similaridade entre clusters
?
?
- MIN
- MAX
- Média do grupo
- Distância entre centróides
- Outros métodos dirigidos por uma função objetivo
- método de Ward
Matriz de proximidade
10Algoritmo Geral de Agrupamento Hierárquico
Aglomerativo
- Passo 1 Iniciar o agrupamento formado por grupos
Unitários (cada ponto é um cluster) - Passo 2 Encontre, no agrupamento corrente, o par
de grupos de dissimilaridade (distância) mínima
( similaridade máxima) - Passo 3 Construa um novo grupo pela fusão desse
par de grupos de dissimilaridade mínima - Passo 4 Atualize a matriz de dissimilaridades
suprima as linhas e as colunas correspondentes
aos grupos fusionados e adicione uma linha e uma
coluna correspondente as dissimilaridades entre o
novo grupo e os grupos antigos - Passo 5 Se todos os objetos estão grupados,
pare senão vá para o passo 2
11Similaridade MIN ou Single Link
- A similaridade entre dois clusters é baseada nos
dois pontos mais similares (mais próximos) dos
dois clusters diferentes - Determinada por um par de pontos, i.e., por um
link na matriz de proximidade.
12Clustering Hierárquico MIN
Clusters aninhados
Dendrograma
13Métodos hierárquicos aglomerativos
Para ilustrar os procedimentos de diversos
algoritmos vamos usar o seguinte exemplo.
Exemplo pretende-se investigar, de forma
exploratória, o histórico de crescimento corpóreo
das pessoas. O pesquisador gostaria de escolher
representantes típicos da população para tentar
traçar diferentes históricos. O objetivo
operacional passou a ser o de agrupar os
indivíduos da população alvo segundo as variáveis
peso e altura. Os dados de seis pessoas foram
14Métodos hierárquicos aglomerativos
Como temos duas variáveis com unidades
diferentes, usar-se-á a normalização dos dados,
onde cada valor será subtraído da média de todas
as observações e dividido pelo desvio padrão de
todas as observações. A nova tabela fica
15Exemplo Single Link (MIN)
- Método do vizinho mais próximo (Método da ligação
simples- Single Link) - Para o nosso exemplo suponha a seguinte matriz de
distâncias
A
B
C
D
E
B
Sempre é uma matriz quadrada e simétrica
C
D
E
F
16Exemplo Single Link
- Passo 1 inicialmente, cada caso forma um grupo,
isto é, temos 6 grupos iniciais. - Passo 2 olhando-se a matriz de distâncias,
observa-se que as duas observações mais próximas
são D e F, corresponde a uma distância de 0,37,
assim, esta duas observações são agrupadas,
formando o primeiro grupo. Necessita-se, agora,
das distâncias deste grupo aos demais. A partir
da matriz de distâncias iniciais têm-se
Com isso, temos a seguinte matriz de distâncias
17Exemplo Single Link
A
B
C
E
B
C
E
DF
- Passo 3 Agrupar A e B ao nível de 0,67, e
recalcular
A matriz resultante será
18Exemplo Single Link
C
E
DF
E
DF
AB
- Passo 4 Agrupar AB com E ao nível de 0,67, e
recalcular
Matriz resultante
C
DF
DF
ABE
19Exemplo Single Link
- Passo 5 Agrupar C com ABE ao nível de 0,74, e
recalcular
Matriz resultante
DF
ABCE
- Passo 6 O último passo cria um único
agrupamento contendo os 6 objetos, que serão
similares a um nível de 0,77.
20Exemplo Single Link
Resumindo-se, temos
Dendograma
1,0
0,9
0,8
0,7
0,6
Distância
0,5
0,4
0,3
0,2
0,1
0,0
D
F
A
B
E
C
21Pontos fortes da MIN
Pontos originais
- Pode tratar formas não-elípticas
22Limitações da MIN
Pontos originais
- Sensível a ruído e outliers
23Similaridade MAX ou Complete Linkage
- A similaridade entre dois clusters é baseada nos
pontos menos similares (mais distantes) entre os
dois clusters (mas escolhe-se a menor distância
máxima) - Determinada por todos os pares de pontos dos dois
clusters
24Clustering hierárquico MAX
Clusters aninhados
Dendrograma
25Exemplo Complete Linkage
- Método do vizinho mais longe (Método da ligação
completa Complete Linkage)
Define-se a distância entre os grupos X e Y como
Convém ressaltar que a fusão de dois grupos ainda
é feita com os grupos mais parecidos (menor
distância).
- Passo 1 inicialmente, cada caso forma um grupo,
isto é, temos 6 grupos iniciais. - Passo 2 olhando-se a matriz de distâncias,
abaixo, observa-se que as duas observações mais
próximas são D e F, corresponde a uma distância
de 0,37, assim, estas duas observações são
agrupadas, formando o primeiro grupo.
Necessita-se, agora, das distâncias deste grupo
aos demais. A partir da matriz de distâncias
iniciais tem-se
A
B
C
D
E
B
C
D
E
F
26Exemplo Complete Linkage
A
B
C
E
B
C
E
DF
- Passo 3 Agrupar A e B ao nível de 0,67, e
recalcular
27Exemplo Complete Linkage
Temos
C
E
DF
E
DF
AB
28Exemplo Complete Linkage
- Passo 4 Agrupar AB com E ao nível de 0,79, e
recalcular
Matriz resultante
C
DF
DF
ABE
29Exemplo Complete Linkage
- Passo 5 Agrupar C com DF ao nível de 1,13, e
recalcular
Matriz resultante
CDF
ABE
- Passo 6 O último passo cria um único
agrupamento contendo os 6 objetos, que serão
similares a um nível de 2,49.
30Exemplo Complete Linkage
Resumindo-se, temos
Dendograma
2,5
1,3
1,2
1,1
1,0
0,9
0,8
0,7
0,6
Distância
0,5
0,4
0,3
0,2
0,1
0,0
D
F
A
B
E
C
31Ponto forte da MAX
Pontos originais
- Menos suscetível a ruído e outliers
32Limitações da MAX
Pontos originais
- Tendência a quebrar clusters grandes
- Tendência a formar clusters esféricos
33Similaridade Média do grupo
- A proximidade de dois clusters é dada pela média
da distância entre pares de pontos dos dois
clusters.
34Clustering hierárquico Média do grupo
Clusters aninhados
Dendrograma
35Exemplo Clustering hierárquico Média do grupo
Dada a matriz de distâncias
A
B
C
D
E
B
C
D
E
F
- Passo 1 inicialmente, cada caso forma um grupo,
isto é, temos 6 grupos iniciais. - Passo 2 olhando-se a matriz de distâncias,
observa-se que as duas observações mais próximas
são D e F, corresponde a uma distância de 0,37,
assim, esta duas observações são agrupadas,
formando o primeiro grupo. Necessita-se, agora,
das distâncias deste grupo aos demais. A partir
da matriz de distâncias iniciais tem-se
36Exemplo Average Linkage
A
B
C
E
B
C
E
DF
Com a obtenção da matriz de distâncias conclui-se
o passo 2, que reuniu os pontos D e F, num nível
igual à 0,37.
37Exemplo Average Linkage
- Passo 3 Analisando a nova matriz de
similaridade, nota-se que existem dois pares com
a mesma proximidade A com B e B com E.
Recomenda-se selecionar aleatoriamente um dos
pares e criar o novo grupo. Então, neste caso,
agrupa-se A com B.
Temos
C
E
DF
E
DF
AB
38Exemplo Average Linkage
- Passo 4 Agrupar AB com E ao nível de 0,73, e
recalcular
Matriz resultante
C
DF
DF
ABE
39Exemplo Average Linkage
- Passo 5 Agrupar C com DF ao nível de 0,95,
obtendo-se a partição (ABE, CDF) e recalcular
Matriz resultante
CDF
ABE
- Passo 6 O processo encerra reunindo num único
grupo os conjuntos ABE e CDF, que são similares a
um nível de 1,64 .
40Exemplo Average Linkage
Resumindo-se, temos
Observando o gráfico em forma de árvore
(dendograma), notamos que o maior salto é
observado na última etapa, sugerindo a existência
de dois grupos homogêneos (A,B,E) e (C,D,F).
Dendograma
1,6
1,5
1,4
1,3
1,2
1,1
1,0
0,9
0,8
0,7
0,6
Distância
0,5
0,4
0,3
0,2
0,1
0,0
D
F
A
B
E
C
41Clustering hierárquico Média do grupo
- Compromisso entre MAX e MIN
- Ponto forte
- Menos suscetível a ruído e outliers
- Limitação
- Tendência de gerar clusters esféricos
42Método de Ward (Wards method)
- A similaridade de dois clusters é baseada no
aumento do erro quadrado quando dois clusters são
unidos - Similar a média do grupo se a distância entre os
pontos é a distância ao quadrado - Menos suscetível a ruído e outliers
- Tendência de gerar clusters esféricos
- Clustering Hierárquico análogo ao K-médias
- Pode ser usado para inicializar o K-médias
43Clustering Hierárquico uma comparação
MIN
MAX
Método de Ward
Média do grupo
44Clustering Hierárquico necessidades de tempo e
espaço
- O(N2) para espaço usando matriz de proximidade.
- N é o número de pontos.
- O(N3) para o tempo em muitos casos
- Tem N passos e em cada passo a matriz de tamanho
N2 tem que ser atualizada e percorrida - A complexidade pode ser reduzida para O(N2
log(N) ) em algumas abordagens
45- DBSCAN
- Clustering baseado em densidade
46DBSCAN (1996)
- DBSCAN é um algoritmo baseado em densidade
- Densidade número de pontos dentro de um raio
especificado (Eps) - Um ponto é um core point se ele tem mais de um
número especificado de pontos (MinPts) dentro do
círculo de raio Eps - Estes são pontos que pertencem a um cluster
- Um border point tem menos do que MinPts dentro
do círculo de raio Eps, mas ele está na
vizinhança (definida por Eps) de um core point - Um noise point é todo ponto que não é nem core
point nem border point.
47Core and border points
DBSCAN (Ester 1996)
minPts 5 Eps 1
Core point
Border point
noise
48DBSCAN Algorithm
- Eliminate noise points
- Perform clustering on the remaining points
49DBSCAN example
50Identifying core, border and noise points
51(No Transcript)
52(No Transcript)
53DBSCAN Core, Border and Noise Points
Pontos originais
Point types core, border and noise
Eps 10, MinPts 4
54Quando o DBSCAN funciona bem
Pontos originais
- Tolerante a ruído
- Pode tratar clusters de diferentes formas e
tamanhos
55Quando o DBSCAN não funciona bem
(MinPts4, Eps9.92).
Pontos originais
- Variação de densidades
- Dados com muitas dimensões
(MinPts4, Eps9.75)
56OPTICS - Ordering Points to Identify the
Clustering Structure
Utilizado para analisar a estrutura dos
agrupamentos baseados em densidade, através da
variação do Eps para um mesmo número mínimo de
pontos (minPoints)
Eps
57Referências
- MacQueen, J. B. (1967). "Some Methods for
classification and Analysis of Multivariate
Observations". Proceedings of 5th Berkeley
Symposium on Mathematical Statistics and
Probability. University of California Press.
pp. 281297 - L. Kaufman and P.J. Rousueeuw. (1990) Finding
Groups in Data an Introduction to Cluster
Analysis, John Wiley Sons - Raymond T. Ng, Jiawei Han(1994) Efficient and
Effective Clustering Methods for Spatial Data
Mining. Proceedings of the 20th VLDB Conference,
Santiago, Chile. pp 144-155 - M. Ester, H-P. Kriegel, J. Sander, X. Xu. A
Density-Based Algorithm for Discovering Clusters
in Large Spatial Databases with Noise. Proc. KDD
1996. - Mihael Ankerst, Markus M. Breunig, Hans-Peter
Kriegel, Jörg Sander (1999). "OPTICS Ordering
Points To Identify the Clustering Structure". ACM
SIGMOD international conference on Management of
data. ACM Press. pp. 4960 - N. Jardine, R.Sibson. Mathematical
Taxonomy.Wiley, New York, 1971.
K-means PAM CLARANS DBSCAN OPTICS
Hierárquicos
58Exercícios
- Para o quadro abaixo, aplique o algoritmo
aglomerativo MIN (single link) e apresente o
dendograma final com o passo a passo.
59Passo 1 calcular a tabela de distâncias iniciais
A B C D
B 4
C 6 2
D 6 4 2
E 7 3 3 5
d(A,B) 3-4 2-5 4 d(A,C) 3-4 2-7
6 .