Norbert Petrovici - Analiza Cluster

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

Sunteți pe pagina 1din 18

Analiză Cluster

Gruparea cazurilor
sau
a variabilelor
Când utilizăm această
metoda?

Avem un set de date şi vrem să ştim cum


anume se grupează cazurile sau
variabilele
de ex. vrem sa ştim cum anume se grupează oraşele
Romaniei în funcţie de cateva variabile demografice
(mortalitate infantilă, natalitate, speranţa de viată la
naştere)
de ex. vrem să ştim ce variabile demografice au
valori asemănătoare pentru cazurile cu care lucăm
Specificul acestei metode

Dorim să detectăm clasele “NATURALE” în


care itemii sau variabilele se plasează nu
să creem noi o ordine în structura datelor

Clasele nu sunt date din punct de vedere


statistic, precum se întâmplă în alte
metode (de ex. analiza discriminantă), ci
trebuie descoperite
Tipuri de analiză cluster
Metode non-ierarhice
cea mai cunoscută metoda de acest fel este k-means
(metoda celor k-medii): se porneşte de la k valori (de
obicei aleatoare) şi în functie de ele se construiesc
clusterele
Metode ierarhice
aglomerative: se porneşte de la n clase (câte cazuri
avem) şi se ajunge la o clasă care le cuprinde pe toate
celălate anterioare ei
divizive: se porneşte de la o clasă şi se ajunge la n
clase (câte cazuri avem) cuprinse în clasa de pornire
Algoritm ierarhic aglomerativ

2. Selectarea perechii
de itemi care este cea
mai apropiată şi
unirea lor într-o clasă

1. Calcularea distanţelor
între itemi

4 (2 din nou). Selectarea


perechii de itemi care
este cea mai apropiată
şi unirea lor într-o clasă

3. Recalcularea distantelor
faţă de celelte clase, itemi
Algoritm ierarhic aglomerativ

1. Calcularea distanţelor între itemi


2. Selectarea perechii de itemi care este
cea mai apropiată şi unirea acelei perechii
într-o clasă
3. Recalcularea distantelor faţă de celelte
clase, itemi
4. Se reia punctul (2.) până când se
obţine o singură clasă (cluster)
Calcularea distantelor
partea I

Calcularea distanţelor între itemi se poate face


în mai multe moduri: X
X Distanţa
1
Euclidiană
Euclidienă ( (xi-yi)2)1/2 Y
Y2
Manhatan  lxi-yil
Chebyshev maxi lxi-yil X Y2
1

Minkovsky ( lxi-yilp)1/p X
X 1
Putere ( lxi-yilp)1/r
Y2 Y

Distanţa X1 Y2
Manhatan
Calcularea distantelor
partea II

Când calculăm distanţe între variabile folosim în


general:
Corelaţia Pearson
Corelaţia între vectori
Nota: aceste distanţe se pot folosi si pentru gruparea cazurilor
variabila 2

cazul 2
variabila 1 cazul 1
Putem reprezenta cazurile ca Sau putem reprezenta variabi-
puncte în spaţiul trasat de lele ca vectori în spaţiul trasat
variabile ca şi coordonate de cazuri ca şi coordonate
Calcularea distantelor
un exemplu partea III

rezolv singur
Nu e cazul, le
apela
Nu am la cine
Rude

Prieteni

vecini
Colegi de cameră,

Colegi de şcoală

Profesori

Altele
Cs. La cine ai apela dacă ai avea nevoie
de…?

a. Intervenţii la Decanat sau Rectorat 33.49 7.36 6.95 8.85 1.55 6.09 41.52 2.87

b. Informaţii legate de bibliografie/ surse 8.10 .63 2.07 13.90 7.76 40.09 64.44 3.16
suplimentare
c. Lămurirea unor neclarităţi legate de 4.82 .29 1.72 10.62 6.67 37.09 71.29 1.49
domeniile studiate
d. Intervenţii la secretariat/ serviciu 51.58 8.79 3.04 9.02 1.90 7.69 15.79 7.29
social
e. Ajutor în contestarea unei note 41.82 7.01 1.55 3.04 .75 6.55 39.69 2.93
Calcularea distantelor
Matricea de disimilaritate partea IV

 Matricea de disimilaritate este matricea distanţelor între


cazuri (variabile). Este o matrice simetrică
 Pentru ex.de mai sus, distanţa euclidiană între cazul 1 şi
2 este calculată astfel:
a. Intervenţii la Decanat sau Rectorat 33.49 7.36 6.95 8.85 1.55 6.09 41.52

b. Informaţii legate de bibliografie/ surse 8.10 .63 2.07 13.90 7.76 40.09 64.44
(ai - bi)2
suplimentare
i t

n
Distanta
1 2 (1,2)
2 = 644.6521
3 +4
45.29295 + 23.8144 + C
3
9
6
6 1
3
6
0
2
25.5025 + 38.5641 + 1156 + 2
9
6
6
4 525.3264 + 0.0841 = 2459.237 3
6
0
6
3 4
Distanta (1,2) = 49.59069 5
6
2
4
3
T
Calcularea distanţelor faţă
de un cluster partea I

 După unirea a doi itemi apropiaţi şi formarea unui


cluster nou se pune problema recalculării distanţelor
dintre noul cluster şi ceilalţi clusteri (itemi). În acest
sens avem mai multe metode:
 Nearest neighbor sau Single linkage:

1 3 1 2
2 d31

 Furtest neighbor sau Complete linkage:


1 3 1 2
2 d12
Calcularea distanţelor faţă
de un cluster partea II

 Average linkage between groups


2
1 1
2 (d11+ d12+ d21+ d22+ d31+ d32)/6
3

 Average linkage whithin groups


2
1 1
2
3

(d11+ d12+ d21+ d22+ d31+ d32 + d`12+ d`13+ d`32 +d``12)/10
 Centroid

1 2
1
3 m1
2 dm1m2,
m2
unde m1, m2 sunt mediile clusterilor
Calcularea distanţelor faţă
de un cluster partea III

 Ward’s Method
urmăreşte minimizarea PIERDERII DE INFORMAŢIE: suma
pătratelor abaterilor fiecărui item din cluster de la
media, eroarea sumei pătratelor

ESPtotal = ESP1 + ESP2 + … + ESPk, 1...k clusteri

la fiecare pas este luat în considerare fiecare pereche


care ar putea fi unită într+un cluster, iar perechea care
conduce la cele mai mici pierderi de informaţie este
unificată
Gruparea cazurilor: dendograma

Grafic 1. Exporturile ţărilor CEFTA în CU (dendogramă) 1996-1998


Distanţe rescalate de unire a clusterilor
0 5 10 15 20 25

+++++
+
România 
Slovenia


Slovacia  
Cehia  
Ungaria 


Polonia 

Sursă: calculele autorului pe baza informaţilor disponibile la www.cfta.org.


Date: valoarea în mii de dolari a exportaturilor fiecărei ţări CEFTA în CU.
Metoda: analiză ierarhică cluster, metoda Ward, distanţe euclidiene pătrate.
Un exemplu

1 2 3 4 5
1 0
 Pornim de la o matrice de similaritate. 2 9 0
Cea mai mică distanţă este între perechea 3 şi 5 3 3 7 0
4 6 5 9 0
5 11 10 2 8 0
 Recalcularea distanţei între noul cluster format şi
ceilalţi itemi se face prin metoda single linkage (35) 1 2 4
 d(35)1= min (d31, d51) = min (3, 11) = 3 (35) 0
1 3 0
 d(35)2= min (d32, d52) = min (7, 10) = 7 2 7 9 0
 d(35)4= min (d34, d54) = min (9, 8) = 8 4 8 6 5 0
Cea mai mică distanţă este între perechea (35) şi 1

 Distanţa între clusterul (351) şi ceilalţi itemi (351) 2 4


(351) 0
 d(351)2= min (d (35)2, d 12) = min (7, 9) = 7 2 7 0
 d(351)4= min (d (35)4, d 14) = min (8, 6) = 6
4 6 5 0
Cea mai mică distanţă este între perechea 2 şi 4
Un exemplu
continuare

 Distanţa între clusterul (351) şi clusterul (24) (351) (24)


(351) 0
 d(351)(24)= min (d (351)2, d (351)4 ) = min (7, 6) = 6 (24) 6 0

6
5
4 Dendograma arată programul de
3 aglomerare a clusterilor: valoarea
2
la care s-au unit clasele
1
0 1 3 5 2 4
Câţi clusteri să păstrăm?
 Nu există un criteriu statistic puternic, precum ar fi
testele de semnificaţie, care sa ne indice cu o anumită
probabilitate care este structura datelor. Totuşi pentru a
decide câţi clusteri să pastrăm putem sa folosim
următoarele strategii:
6
raţiuni teoretice 5
4
utilizarea şi a metodelor non-ierarhice 3
analize de varianţă 2
1
graficul aglomrarilor 0 1 2 3

Distanţa la care
s-au unit clusterele
Algoritm non-ierarhic

1. Partiţionarea itemilor în k clase iniţiale


2. Unifică itemul cu clusterul a cărui
centroid (medie) este cel mai aproape
3. Recalculează centroidul
atât pentru clusterul care a înglobat itemul
cât si pentru clusterul care l-a pierdut
4. Reia pasul 2 şi 3 până nu mai au loc
modificări

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