Sunteți pe pagina 1din 23

Analiza cluster

ANALIZA CLUSTER
o Concepte necesare:
o Distanța
 dintre 2 obiecte
 dintre 2 clase de obiecte
o Descompunerea variabilității
 Variabilitate intra clasă
 Variabilitate inter clasă

17 decembrie 2018. Analiza datelor


Analiza cluster

Recunoașterea formelor
- scopul de a identifica apartenența unor forme sau obiecte (unități,
fenomene, evenimente, acțiuni, procese etc.) la anumite clase

Forma- cunatificarea principalelor caracteristici sub forma unui vector

Clasa, clusterul- este formată din totalitatea obiectelor ale căror


caracteristici sunt asemănătoare și care sunt semnificativ diferite de
caracteristicile obiectelor care formează alte clase

17 decembrie 2018. Analiza datelor


Analiza cluster

Analiza cluster= tehnică de recunoaștere nesupervizată/necontrolată

Metode de clusterizare ierarhică (comasare, agregare)

- Metoda agregării simple


- Metoda agregării complete
- Metoda agregării medii
- Metoda lui Ward

Metode bazate pe algoritmi de partiționare

- Algoritmul celor K medii

17 decembrie 2018. Analiza datelor


Analiza cluster

Criteriu general de clasificare: Clasificarea obiectelor în clase :


asigure o variabilitate minimă în interiorul claselor și o variabilitate
maximă între clase

Proximitatea/disimilaritate

 Distanța dintre obiecte

Distanța euclidiană (în linie dreaptă)

𝑝 2

𝑑(𝑜𝑖 , 𝑜𝑗 ) = √ ∑(𝑥𝑖𝑘 − 𝑥𝑗𝑘 )


𝑘=1

17 decembrie 2018. Analiza datelor


Analiza cluster

Distanța Mahalanobis

𝑑(𝑜𝑖 , 𝑜𝑗 ) = (𝑥 𝑖 − 𝑥 𝑗 )𝑇 Σ𝑝𝑥𝑝
−1 (𝑥 𝑖 − 𝑥 𝑗 )

Obs: dacă matricea de covarianță este matricea unitate, distanța


euclidiană pătrată

- Acest tip de distanță consideră și gradul de dispersare și corelare al


variabilelor
- Se recomandă atunci când variabilele sunt correlate între ele

17 decembrie 2018. Analiza datelor


Analiza cluster

 Evaluarea distanțelor dintre clustere

 Metoda celor mai apropiați vecini= distanța dintre cele mai


apropiate obiecte
 Metoda celor mai depărtați vecini= distanța dintre cele mai depărtate
2 obiecte
 Metoda distanței medii dintre perechi= media distanțelor dintre
oricare 2 obiecte

17 decembrie 2018. Analiza datelor


Analiza cluster

 Metoda centroidului= distanța dintre centroizii celor 2 clase


 Metoda lui Ward= sumă totală a pătratelor abaterilor la nivelul
configurației cluster rezultate din comasarea celor două clustere
pentru care se evaluează distanța

17 decembrie 2018. Analiza datelor


Analiza cluster

Descompunerea variabilității
n= numărul obiectelor analizate
p= numărul caracteristicilor
t= numărul claselor
tk= numărul obiectelor din clasa k
2
∑𝑝𝑗=1 ∑𝑛𝑖=1(𝑥𝑖𝑗 − 𝑥̅ 𝑗 ) =
2
∑𝑡𝑘=1 ∑𝑝𝑗=1 ∑𝑡𝑘
𝑖=1 (𝑥𝑖
𝑗

𝑗
𝑥̅(𝑘) )
𝑝 𝑗
+∑𝑡𝑘=1 𝑡𝑘 ∑𝑗=1(𝑥̅(𝑘) − 𝑥̅ 𝑗 )2

Variația totală=variabilitate intraclasă+variabilitate interclasă

17 decembrie 2018. Analiza datelor


Analiza cluster

Dacă p=1
𝑛

∑(𝑥𝑖 − 𝑥̅ )2
𝑖=1
𝑡 𝑡𝑘 𝑡 𝑡𝑘
2 2
= ∑ ∑(𝑥𝑖(𝑘) − 𝑥̅ ) = ∑ ∑(𝑥𝑖(𝑘) − 𝑥̅ (𝑘) + 𝑥̅ (𝑘) − 𝑥̅ ) =
𝑘=1 𝑖=1 𝑘=1 𝑖=1

2 2
= ∑𝑡𝑘=1 ∑𝑡𝑘
𝑖=1(𝑥𝑖 (𝑘) − 𝑥̅ (𝑘) ) + ∑𝑡𝑘=1 ∑𝑡𝑘
𝑖=1(𝑥̅ (𝑘) − 𝑥̅ ) +
2
2 ∑𝑡𝑘=1 ∑𝑡𝑘
𝑖=1(𝑥𝑖 (𝑘) − 𝑥̅ (𝑘) )(𝑥̅ (𝑘) − 𝑥̅ ) = ∑𝑡𝑘=1 ∑𝑡𝑘
𝑖=1(𝑥𝑖 (𝑘) − 𝑥̅ (𝑘) ) +
𝑡 2
∑𝑘=1 𝑡𝑘(𝑥̅(𝑘) − 𝑥̅ )

17 decembrie 2018. Analiza datelor


Analiza cluster

 Inițial, când fiecare din cele n instanțe constituie câte un cluster, varianța intra-
clasă este nulă în timp ce varianța inter-clasă este maximă.
 Dacă se agregă două clustere, varianța intra-clasă crește (clusterul format fiind mai
puțin omogen) iar varianța inter-clasă scade.
 Când toate obiectele sunt grupate într-un singur cluster, varianța intra-clasă crește
la valoarea maximă în timp ce varianța inter-clasă scade la 0.

17 decembrie 2018. Analiza datelor


Analiza cluster

Algoritmi ierarhici (agregare)


Inițializare: Numărul claselor = numărul obiectelor (fiecare obiect i este
repartizat în clasa i). Matricea distanțelor D0 (conține distanța dintre
oricare 2 clase= distanța euclidiană dintre oricare două obiecte).
𝜔1 … 𝜔𝑛
Se comasează cele mai apropiate 2 clase, 𝜔𝑖 și 𝜔𝑗 . Se formează clasa
𝜔𝑖𝑗 . Se recalculează matricea distanțelor (D1), folosind una dintre
metodele de evaluare a distanțelor dintre 2 clase de obiecte. Numărul
claselor se reduce cu 1.
Se repetă operațiile anterioare până când toate obiectele se agregă în
aceeași clasă.

17 decembrie 2018. Analiza datelor


Analiza cluster

Această procedură de agregare/comasare este sintetizată prin


intermediul unui grafic denumit dendrogramă care reprezintă ierarhia
construită
Graficul surprinde distanțele de agregare la care s-au realizat
comasările
În funcție de metoda de evaluare a distanțelor dintre două clase, avem
următoarele metodele de grupare ierarhică:
1. Simplă
2. Completă
3. Medie
4. Centroid
5. Ward

17 decembrie 2018. Analiza datelor


Analiza cluster

Exemplu

Caracteristicile Matricea distanțelor


obiectelor

17 decembrie 2018. Analiza datelor


Analiza cluster

Ierarhia (metoda agregării simple)

Distanțele de agregare: 0.10, 0.18, 0.41, 0.46, 2.17

17 decembrie 2018. Analiza datelor


Analiza cluster

Alegerea soluției cluster

Variația distanței de agregare. Se alege partiția care corespunde


diferenței maxime de distanță. Se efectuează tăietura acolo unde există
cel mai mare salt

17 decembrie 2018. Analiza datelor


Analiza cluster

Graficul Silhouette
𝒂(𝒊)
𝟏− , 𝒂(𝒊) < 𝒃(𝒊)
𝒃(𝒊)
𝒃(𝒊) − 𝒂(𝒊)
𝒔(𝒊) = = 𝟎 , 𝒂(𝒊) = 𝒃(𝒊)
{ ( )
𝒎𝒂𝒙 𝒂 𝒊 , 𝒃(𝒊)}
𝒃(𝒊)
− 𝟏, 𝒂(𝒊) > 𝒃(𝒊)
{𝒂(𝒊)

−𝟏 ≤ 𝒔(𝒊) ≤ 𝟏

a(i) este o măsură medie a ”distanțelor” dintre obiectul i și celelalte obiecte din
clusterul în care a fost încadrat. Cu cât valoarea este mai mică cu atât asocierea a fost
făcută mai corect.

b(i) este minimul mediei ”distanțelor” dintre forma i și oricare alt cluster (diferit de
cel în care a fost repartizat). Indică cel mai apropiat cluster de obiectul i.

17 decembrie 2018. Analiza datelor


Analiza cluster

17 decembrie 2018. Analiza datelor


Analiza cluster

Reprezentarea grafică a soluției

17 decembrie 2018. Analiza datelor


Analiza cluster

Algoritmi de partiționare (Kmeans)

Pas 1 Iniţializarea : se aleg aleator k observaţii din setul de date reprezentând mediile
iniţiale

Pas 2: Alocarea obiectelor: fiecare observaţie va fi alocată unei clase minimizând


distanţa faţă de centroidul clasei

Pas 3: Se recalculează mediile (centroizii claselor)- noile medii

Pas 4: Se reia de la pasul 2. Paşii 2 şi 3 se repetă până când nu se mai întâlnesc variaţii
în alocarea obiectelor pe clase.

17 decembrie 2018. Analiza datelor


Analiza cluster

Funcții R
library(cluster)
d <- dist(m)
?hclust()
ierarhie <- hclust(d,method="single") ## comparati cu centroid
ierarhie$height # distantele de agregare
ierarhie$labels # etichetele obiectelor
windows()
plot(ierarhie) # dendrograma

## Soluția cu 2 clase

17 decembrie 2018. Analiza datelor


Analiza cluster

rect.hclust(ierarhie, k = 2, border = 2:3)


solutie2 <- cutree(ierarhie,k=2) ## apartenenta obiectelor la clase
table(solutie2)
aggregate(m, list(solutie2), mean) # media claselor pentru cele 2
variabile, variabilele care prezinta diferente mai mari au putere
discriminatorie mai mare
?cutree()
install.packages("factoextra")
library(factoextra)
fviz_cluster(list(data=m,cluster=solutie2))
### Graficul silhouette
s <- silhouette(solutie2,d)
17 decembrie 2018. Analiza datelor
Analiza cluster

plot(s)

## Kmeans
km <- kmeans(m,2)
clase <- km$cluster # apartenenta la clase
s <- silhouette(clase,d)
plot(s)
?kmeans()
km$centers# centroizii
km$totss # variabilitate totala
km$withinss # variabilitate intra clasa

17 decembrie 2018. Analiza datelor


Analiza cluster

km$tot.withinss # variabilitate intra clasa totala


km$betweenss # variabilitate inter clasa

17 decembrie 2018. Analiza datelor

S-ar putea să vă placă și