Vous êtes sur la page 1sur 26

Anlise de Clusters Introduo Mtodo K-means

AULA 14 DATA MINING

Agrupamento -Anlise de Clusters


a1 a

F 1 0 1 1

Doena X a1 a2 a4 a3 a8 a11 a6 Doena Z Conceito = Doena a7 a10 a a9 5 Doena Y

a2 b M 0 0 1 1

. c F 1 1 1 0 . d F 1 0 0 0 . e M 1 1 0 1
Nome Sexo Sintomas

Nmero de Clusters = 3

Anlise de Clusters: Objetivos


Compreenso dos dados  Existe algum conceito inerente a cada grupo.  Que conceito este ? Utilidade em outras tarefas Cada cluster pode ser representado por um objeto prottipo que caracteriza o cluster  Sumarizao : Algoritmos aplicados em grandes volumes de dados podem ser aplicados apenas aos prottipos, reduzindo assim o tempo de execuo  Compresso : o objeto prottipo representa cada objeto dentro do seu cluster  Otimizao do clculo dos vizinhos mais prximos: Se dois prottipos esto distantes ento os objetos nos respectivos clusters tambm esto distantes. Os objetos mais prximos do objeto X devem ser procurados no cluster correspondente ao prottipo mais prximo de X.

Clusterizao versus Classificao


Classificao


Aprendizado Supervisionado
 

Amostras de treinamento so classificadas Nmero de Classes conhecido

Aprendizado por Exemplo Aprendizado No Supervisionado Aprendizado por Observao

Clusterizao
 

Tipos de Agrupamentos
Particionais versus Hierrquicos
 

Particionais: clusters so disjuntos Hierrquicos: Clusters possuem subclusters organizados em rvore Cada cluster (n interno da rvore) a unio de seus filhos Exclusivos: cada objeto pertence a um nico cluster No exclusivos: existem objetos que so associados a diferentes clusters Fuzzy : objetos so associados a um cluster com um certo grau de pertinncia

Exclusivos versus No-exclusivos versus Fuzzy


  

Completos versus Parciais  Completos: cada objeto pertence a algum cluster  Parciais: existem objetos que no esto associados a nenhum cluster (outliers, ruidos, sem interesse)

O que um cluster ?
Como definir a noo de Cluster ?
Prottipos

Bem separados Um cluster um conjunto de objetos no qual cada objeto est mais prximo (ou mais similar) a objetos dentro do cluster do que qualquer objeto fora do cluster.

Baseados em Prottipos Um cluster um conjunto de objetos no qual cada objeto est mais prximo ao prottipo que define o cluster do que dos prottipos de quaisquer outros clusters. Em geral: Prottipo = centride

Os clusters encontrados tendem a ser globulares.

O que um cluster ?
- Os dados podem ser representados por um grafo, onde os vrtices so objetos e existe aresta de a para b se a est mais perto de b do que de outros objetos no conjunto. - Estar perto significa estar diretamente conectado. - Um cluster uma componente conexa do grafo, isto , um conjunto de objetos que esto conectados um no outro, mas que no esto conectados com nenhum outro objeto de outro cluster.

Baseados em Grafos Boa definio quando os clusters so irregulares e entrelaados. Problema: quando os dados tm ruidos, Pode haver distores nos clusters Exemplo: dois clusters distintos podem se transformar num nico cluster (os dois clusters so ligados atravs de uns poucos Outliers, como mostrado na figura).

b a est perto de b d(a,b) <

O que um cluster ?
Esta definio utilizada quando os clusters so irregulares ou entrelaados e quando ruido e outliers esto presentes. Uma definio baseada em grafos no seria adequada neste caso, pois os outliers poderiam fazer uma ponte entre as regies transformando-as em um nico cluster. Os outliers seriam absorvidos nos clusters. Um cluster uma regio densa rodeada por uma regio de baixa densidade. No exemplo, temos 3 clusters = 3 regies densas A ponte de outliers ligando as duas esferas foi dissolvida nos outros outliers. Baseados em Densidade

O que um cluster ?

Clusters Conceituais Os objetos de um cluster possuem uma propriedade que derivada do conjunto total de objetos. No exemplo, podemos distinguir 3 clusters: o tringulo, o retngulo e os dois anis. Um cluster representa um conceito. Definio utilizada em Reconhecimento de Padres.

Tipos de Tcnicas de Clusterizao


Particionamento
 

K-means: K-medides: PAM, CLARA, CLARANS

Particional e baseada em prottipos. Encontra um nmero k de clusters (k fornecido pelo usurio) que so representados por seus centrides.

Particionamento
BD com n amostras K = nmero de clusters desejado ( parmetro ) Kn

Tipos de Tcnicas de Clusterizao


Hierrquicas Aglomerativas Produzem agrupamentos hierrquicos comeando com clusters unitrios e repetidamente aglutinando clusters prximos dois a dois at chegar no nmero k de clusters solicitado pelo usurio. Exemplos: BIRCH, CURE, CHAMELEON, ROCK...)

Hierrquicos Aglomerativos
BD com n amostras K = nmero de clusters desejado ( parmetro ) Kn

Tipos de Tcnicas de Clusterizao


Hierrquicas Divisrias Produzem agrupamentos hierrquicos comeando com um cluster nico contendo todo o conjunto de objetos e repetidamente dividindo os clusters em duas partes de acordo com algum critrio de similaridade at chegar no nmero k de clusters solicitado pelo usurio. Exemplo: algoritmo DIANA

Tipos de Tcnicas de Clusterizao


Por densidade
  

Adequados para identificar clusters de formato arbitrrio. Robustos com respeito a rudos e outliers. Regies densas = clusters Regies de baixa densidade = rudos e outliers Um ponto pertence a uma regio densa se numa vizinhana de raio pequeno existem pelo menos M objetos (M dado pelo usurio). O nmero k de clusters no precisa ser dado pelo usurio. determinado pelo algoritmo.

Exemplos: DBSCAN, OPTICS, DENCLUE

Dados de Treinamento
Matriz de dados padronizados
x11 x21 x31 ... xp1 x12 x22 x32 ... xp2 x13 x23 x33 ... xp3 ... ... ... ... ... x1n x2n x3n ... xpn d(x,y) =

Matriz de dissimilaridade
0
d(x1,x2)

0 0 ...

... ... ... ... ...

0 0 0 0 0

d(x1,x3) d(x2,x 3)

...

d(x1,xp) d(x2,x p)

Distncia Euclidiana

(x1-y1)2 + (x2-y2)2 + .... + (xp yp)2

Outras distncias : Manhattan, Minkowski, Ponderada

Outras distncias
Manhattan Minkowski
d(x,y) = |x1-y1|+ |x2-y2| + .... + |xp yp| d(x,y) =
m

(x1-y1)m + (x2-y2)m+ .... + (xp yp)m

Distncia em geral Qualquer funo d(x,y) propriedades:


   

N que satisfaz as seguintes

d(i,j) 0 d(i,i) = 0 d(i,j) = d(j,i) d(i,k) d(i,j) + d(j,k) (desigualdade triangular) d(x,y) = p1 (x1-y1)2 + p2 (x2-y2)2+ .... +pk (xk yk)2

Distncia poderada

Outras medidas de similaridade


Para documentos
   

p1,p2, p3, ... : vocabulrio (palavras) Um documento = vetor (n1,n2,...,nk) ni = nmero de vezes que a palavra i aparece no documento Medida de similaridade entre documentos d1,d2 d1 = cos(d1,d2) = d1.d2 |d1| |d2| d2

Exercicio
Sejam X1 = (1,2) e X2 = (4,6). Calcula as distncias euclidianas, Minkowski com m = 3 e Manhattan entre X1 e X2. Ilustre no plano xy os segmentos representando tais distncias.

Algoritmo K-means
Exemplo K = 3
+ + +

2 Iterao 1

Algoritmo K-Means
Selecione k pontos como centrides iniciais 2. Repeat 3. Forme k clusters associando cada objeto a seu centride mais prximo 4. Recompute o centride de cada cluster 5. Until Centrides no apresentam mudanas Centride = centro de gravidade do cluster Coordenada i = mdia aritmtica das coordenadas i de seus objetos constituintes.
1.

Observaes
Boa parte dos clusters j convergem nos primeiros passos do algoritmo, ficando somente uma quantidade pequena de clusters que ainda modificam. Assim, a condio 5 do algoritmo substituida por : at que somente 1% dos objetos mudam de clusters.

Objetivo
Erro (x) = d(x,ci) = distncia de x at o centride ci de seu cluster Ci Objetivo do mtodo K-means
 

Minimizar a soma dos erros (SSE = sum of square errors) Maximizar a coeso (no caso de documentos)
K i=1 x

SSE =

Ci

d(x,ci)2

Coeso

coseno(x,ci)2
Ci

i=1 x

Observao
Nem sempre o K-means consegue minimizar o SSE Isto depende muito da escolha dos centrides iniciais.

Tcnicas para inicializar os centrides


Escolha aleatria diversas rodadas do k-means at encontrar a escolha que produz o menor SSE (ou maior coeso).


Nem sempre funciona- depende dos dados e do nmero k de clusters que se quer encontrar.

Utilizar uma amostra, aplicar um mtodo de clusterizao hierrquica sobre a amostra. Centrides iniciais = centrides dos clusters das amostras.


Funciona se a amostra pequena (mtodos hierrquicos so computacionalmente caros !) e K relativamente pequeno com relao ao tamanho da amostra.

Exerccio
1 3 4 6 7 5 2 1

1 2 3 4 5 6
8

1,9 3,4 2.5 1,5 3,5 2,2 3,4 3,6 5 4,5 6 1.9 1 1.9 0,8 1,6 1

7,3 7,5 6,8 6,5 6,4 5,8 5,2 4 3,2 2,4 2,6 3 2,7 2,4 2 1,8 1

7 8
9

13

12

9
11

14 15 16 10

10 11 12 13 14

17

Achar 3 clusters utilizando o k-means

15 16 17

Vous aimerez peut-être aussi