95
Klaszterezés 2014. ápr. 3.

Klaszterezés

  • Upload
    karli

  • View
    10

  • Download
    1

Embed Size (px)

DESCRIPTION

Klaszterezés. 2014. ápr. 3. Cluster Analysis: Basic Concepts and Algorithms. Lecture Notes for Chapter 8 Introduction to Data Mining by Tan, Steinbach, Kumar. Klaszterek közötti távolságok maximalizáltak. Klaszteren belüli távolságok minimalizáltak. Klaszterelemzés. - PowerPoint PPT Presentation

Citation preview

Page 1: Klaszterezés

Klaszterezés

2014. ápr. 3.

Page 2: Klaszterezés

Cluster Analysis: Basic Concepts and Algorithms

Lecture Notes for Chapter 8

Introduction to Data Miningby

Tan, Steinbach, Kumar

Page 3: Klaszterezés

KlaszterelemzésAz objektumok olyan csoportjainak megtalálása felügyelet nélküli tanulási keretben, hogy az egy csoportban levő objektumok hasonlóbbak lesznek egymáshoz, mint a más csoportban levőkhöz.

Klaszterek közötti

távolságok maximalizáltak

Klaszteren belüli távolságok

minimalizáltak

Page 4: Klaszterezés

Klaszterezés alkalmazásai

Megértés– Csoportosítsuk a letöltött dokumentumokat, a hasonló

tulajdonságú fehérjéket, a hasonló változásokat mutató tőzsdei papírokat

Page 5: Klaszterezés

Tömörítés– Nagy adathalmazok méretének csökkentése

• egyes egyedek helyett klaszterreprezentánsok vagy

• meta-jellemzők

Klaszterezés alkalmazásai

Page 6: Klaszterezés

A klaszterezés nem egyértelmű

Hány klaszter?

Négy klaszter Két klaszter

Hat klaszter

Page 7: Klaszterezés

A klaszterezés típusai

• A klaszterezés klaszterek halmazát adja

• Partícionáló klaszterezésAz adatok besorolása nem-átfedő részhalmazokba

(klaszterekbe), minden elem pontosan egy részhalmazban

• Hierarchikus klaszterezésEgymásba ágyazott klaszterek, hierarchikus rendszerbe

szervezve

Page 8: Klaszterezés

Particionáló klaszterezés

Kiindulási pontok Particionáló klaszterezés

Page 9: Klaszterezés

Hierarchikus klaszterezés

p4p1

p3

p2

p4 p1

p3

p2

p4p1 p2 p3

p4p1 p2 p3

Hierarchikus Klaszterek Dendrogram

Page 10: Klaszterezés

Klaszterezés fajtái

• Kizárólagos – nem kizárólagos– Nem kizárólagosnál egy tárgy több osztályba is tartozhat

• Fuzzy, nem-fuzzy– A fuzzy klaszterezésnél minden pont valamilyen 0 és 1

közötti súllyal tartozik minden klaszterhez – A súlyok összege 1

• Részleges, teljes– Néha nem minden pontot akarunk klaszterezni

• Heterogén, homogén– A klaszterek különböző méretűek, alakúak, sűrűségűek

lehetnek

Page 11: Klaszterezés

Mitől jó egy klaszterezés?

• Jól elválasztott klaszterek• Középpont alapú klaszterek• Folytonos klaszterek• Sűrűség alapú klaszterek• Általános eset: célfüggvény

Page 12: Klaszterezés

Jól elválasztott klaszterek

– Egy klaszter olyan pontokból áll, amelyek közelebb vannak (hasonlóbbak) a saját klaszteren belüli összes ponthoz, mint a többi klaszterben levőkhöz

3 jól elválasztott klaszter

Page 13: Klaszterezés

Középpont alapú klaszterek

– Egy klaszterben levő pontok közelebb vannak saját klaszterük középpontjához, mint bármely más klaszter középpontjához

– A klaszterek középpontja gyakran a centroid, vagyis a klaszterbeli pontok átlaga, vagy a medoid, a klaszter egy reprezentatív pontja

4 középpont alapú klaszter

Page 14: Klaszterezés

• legközelebbi szomszéd, tranzitív– Egy klaszterbeli pont közelebb van a saját klaszterének

valamely pontjához, mint a nem klaszterbeli más pontokhoz

8 folytonos klaszter

Folytonosság

Page 15: Klaszterezés

Sűrűség alapú

– A klaszterek pontok nagy sűrűségű halmazai, amelyek kis sűrűségű pontokkal vannak elválasztva

– Szabálytalan alakú, egymásba fonódó esetekben használhatjuk, zaj és kiugró értékek mellett

6 sűrűség alapú klaszter

Page 16: Klaszterezés

Általános eset:Célfüggvény alapú klaszterezés

– Valamilyen célfüggvény minimalizálnak vagy maximalizálnak• pl: modularitás

– Általában az összes lehetőséget számba kellene venniük és mindegyik jóságát meg kellene határozni a célfüggvény segítségével (NP nehéz)

– Lokális és globális optimum lehet• A hierarchikus módszereknél általában lokális optimum

• Particionálóknál általában globális

– Nagyon sok esetben parametrizált modellt próbálunk az adatokhoz illeszteni

• A paramétereket az adatokból határozzuk meg

Page 17: Klaszterezés

Az input adatok jellemzői fontosak

• A hasonlóság vagy sűrűség függvény– Leszármaztatott, de alapvető fontosságú

• Ritkaság– A hasonlósági mértéket meghatározhatja– Segítheti a hatékonyságot

• Attribútum típus– Meghatározhatja a hasonlóságot

• Dimenzionalitás• Zaj és kiugró értékek• Eloszlás típusa

Page 18: Klaszterezés

k-közép klaszterező

Page 19: Klaszterezés

K-közép klaszterezés

• Particionáló eljárás • centroid : klaszter közepe• Egy pontot ahhoz a klaszterhez csatolunk, amely centroidja a legközelebb van hozzá • A klaszterek száma, K, előre definiálandó

Page 20: Klaszterezés

K-közép algoritmus - részletek• A kezdőpontokat gyakran véletlenszerűen választjuk

– Újabb futtatásnál más eredményt kaphatunk

• A centroid általában a klaszterekhez tartozó pontok átlaga • A közelséget mérhetjük euklideszi távolsággal, koszinusz távolsággal, korrelációval, …• A K-közép eljárás a fenti mértékeknél konvergálni fog egy megoldáshoz • A legtöbb esetben az első néhány lépésben megtörténik a konvergencia

– A megállási kritériumot gyakran: amikor már csak kevés pont helyzete változik-ra cserélik

Page 21: Klaszterezés

Két különböző K-közép klaszterezés

-2 -1.5 -1 -0.5 0 0.5 1 1.5 2

0

0.5

1

1.5

2

2.5

3

xy

Sub-optimális klaszterezés

-2 -1.5 -1 -0.5 0 0.5 1 1.5 2

0

0.5

1

1.5

2

2.5

3

x

y

Optimális klaszterezés

Page 22: Klaszterezés

Kezdeti középpontok jó választása

-2 -1.5 -1 -0.5 0 0.5 1 1.5 2

0

0.5

1

1.5

2

2.5

3

x

y

Iteration 1

-2 -1.5 -1 -0.5 0 0.5 1 1.5 2

0

0.5

1

1.5

2

2.5

3

x

y

Iteration 2

-2 -1.5 -1 -0.5 0 0.5 1 1.5 2

0

0.5

1

1.5

2

2.5

3

x

y

Iteration 3

-2 -1.5 -1 -0.5 0 0.5 1 1.5 2

0

0.5

1

1.5

2

2.5

3

x

y

Iteration 4

-2 -1.5 -1 -0.5 0 0.5 1 1.5 2

0

0.5

1

1.5

2

2.5

3

x

y

Iteration 5

-2 -1.5 -1 -0.5 0 0.5 1 1.5 2

0

0.5

1

1.5

2

2.5

3

x

y

Iteration 6

Page 23: Klaszterezés

-2 -1.5 -1 -0.5 0 0.5 1 1.5 2

0

0.5

1

1.5

2

2.5

3

x

y

Iteration 1

-2 -1.5 -1 -0.5 0 0.5 1 1.5 2

0

0.5

1

1.5

2

2.5

3

x

y

Iteration 2

-2 -1.5 -1 -0.5 0 0.5 1 1.5 2

0

0.5

1

1.5

2

2.5

3

x

y

Iteration 3

-2 -1.5 -1 -0.5 0 0.5 1 1.5 2

0

0.5

1

1.5

2

2.5

3

x

y

Iteration 4

-2 -1.5 -1 -0.5 0 0.5 1 1.5 2

0

0.5

1

1.5

2

2.5

3

x

y

Iteration 5

Kezdeti középpontok rossz választása

Page 24: Klaszterezés

A kezdőpontok választásának problémái

• Ha a „valódi” klaszterek száma K nagy, úgy nagyon kicsi az esélye annak, hogy mindegyikből egy kezdőpontot választunk – tfh a klaszterekben azonos számú elem van (n):

– Pl. K = 10 mellett a valószínűség = 10!/1010 = 0.00036– Néha a kezdő középpontok korrigálni tudják magukat, néha nem

Page 25: Klaszterezés

Az „5 pár klaszter” példa

0 5 10 15 20

-6

-4

-2

0

2

4

6

8

x

y

Iteration 1

0 5 10 15 20

-6

-4

-2

0

2

4

6

8

x

y

Iteration 2

0 5 10 15 20

-6

-4

-2

0

2

4

6

8

x

y

Iteration 3

0 5 10 15 20

-6

-4

-2

0

2

4

6

8

x

y

Iteration 4

Minden pár egyik elemében választott kezdőpontok

Page 26: Klaszterezés

Néhány párban 3 kezdőérték, néhánynál csak egy

0 5 10 15 20

-6

-4

-2

0

2

4

6

8

x

y

Iteration 1

0 5 10 15 20

-6

-4

-2

0

2

4

6

8

x

y

Iteration 2

0 5 10 15 20

-6

-4

-2

0

2

4

6

8

x

y

Iteration 3

0 5 10 15 20

-6

-4

-2

0

2

4

6

8

x

y

Iteration 4

Az „5 pár klaszter” példa

Page 27: Klaszterezés

Megoldások az előző problémára

• Többszörös futtatás– Hogyan átlagoljuk őket?– Segíthet néha– Használjunk hierarchikus klaszterezést a

kezdőpontok meghatározására

• Több, mint k kezdőpont választása, majd azokból további választás – Pl. a legközelebbi kezdőpontpárok

összevonása

Page 28: Klaszterezés

Klaszterezések összevetése• Négyzetes távolság (Sum of Squared Error,

SSE)– minden pontra a legközelebbi középponttól való

távolság – SSE definíciója:

– x a Ci klaszterben van, mi a Ci klasztert reprezentáló pont

• Ha adott két klaszterezésünk, a kisebb hibájút választjuk

• Az SSE általában csökken K növelésével…

K

i Cxi

i

xmdistSSE1

2 ),(

Page 29: Klaszterezés

Üres klaszterek kezelése

• A K-közép algoritmus pont nélküli centroidokat („üres klaszter”) adhat…

Page 30: Klaszterezés

Üres klaszterek kezelése

• Lehetséges stratégiák:– Az SSE-hez a legjobban hozzájáruló

pontba tesszük a pontnélküli centroidot

– Abból a klaszterből válasszunk pontot centroidnak, amelyiknek a legnagyobb az SSE-je

– Ha több üres klaszter van, ismételjük meg az előzőeket többször

Page 31: Klaszterezés

A középpontok lépésenkénti aktualizálása

• A K-közép algoritmusnál a középpontokat akkor aktualizáljuk, ha az összes pont hozzárendelése megtörtént

• Alternatív módszer, ha minden egyes lépés (hozzárendelés) után aktualizáljuk a középpontokat– Minden hozzárendelés nulla vagy két középpontot

érint – Költségesebb – Sorrendtől függőséget vezet be – Sosem ad üres klasztert

Page 32: Klaszterezés

A K-közép korlátai

• K-középnek akkor vannak problémái, ha a klaszterek nagyon különböznek – Méretben– Sűrűségben– Nem gömbszerű alakúak vagy ha sok

kiugró érték van

Page 33: Klaszterezés

A K-közép korlátai : különböző méretek

Eredeti pontok K-közép (3 klaszter)

Page 34: Klaszterezés

A K-közép korlátai : különböző sűrűség

Eredeti pontok K-közép (3 klaszter)

Page 35: Klaszterezés

A K-közép korlátai : Nem gömbszerű

Eredeti pontok K-közép (2 klaszter)

Page 36: Klaszterezés

Elő- és utófeldolgozás

• Előfeldolgozás– Normalizálás– Kiugró értékek kiszűrése

• Utófeldolgozás– Kis klaszterek kiszűrése (kiugró értékek?) – A laza klaszterek felosztása (nagy SSE

értékek mellettiek)– Fésüljük össze a közeli, kis SSE-vel

rendelkező klasztereket

Page 37: Klaszterezés

A K-közép korlátainak feloldása

Eredeti pontok K-közép klaszterek

Egy megoldás: sok klaszter keresése, majd a végén össze kell vonni őket.

Page 38: Klaszterezés

A K-közép korlátainak feloldása

Eredeti pontok K-közép klaszterek

Page 39: Klaszterezés

A K-közép korlátainak feloldása

Eredeti pontok K-közép klaszterek

Page 40: Klaszterezés

Hierarchikus klaszterezés

Page 41: Klaszterezés

Hierarchikus klaszterezés

• Egymásba ágyazott klasztereket állít elő, ezek fába rendezhetők

• Vizualizációs módszer: dendrogram– Egy olyan fa, amely az egyesítések

sorrendjét adja meg

1 3 2 5 4 60

0.05

0.1

0.15

0.2

1

2

3

4

5

6

1

23 4

5

Page 42: Klaszterezés

Hierarchikus klaszterezés erősségei

• Nem kell előzetesen feltételezni egy klaszterszámot

• Tetszőleges számú klaszter kapható a dendogram megfelelő helyen történő vágásával

Page 43: Klaszterezés

• Értelmes jelentést adhatunk neki – Pl. biológiában a filogenetikus fa:

Hierarchikus klaszterezés erősségei

Page 44: Klaszterezés

Hierarchikus klaszterezés

• Két alaptípus– Agglomeratív (összevonó):

• Kezdetben minden elem egy klaszter

• Minden lépésben a két legközelebbi klasztert vonjuk össze

– Divizív (felosztó): • Minden elem egy klaszterben van

• Minden lépésnél valamelyik klasztert felbontjuk

• A hagyományos hierarchikus módszerek hasonlósági vagy távolsági mátrixot használnak

Page 45: Klaszterezés

Összevonó klaszterezési eljárás

• Az alapalgoritmus:1. Compute the proximity matrix2. Let each data point be a cluster3. Repeat4. Merge the two closest clusters5. Update the proximity matrix6. Until only a single cluster remains

• A kulcsművelet két klaszter hasonlóságának számítása

– Ezt különbözőképpen tehetjük meg, és ettől függően többféle változat van

Page 46: Klaszterezés

Kiindulási helyzet

• Minden pont egy-egy külön klaszter, és adott a hasonlósági mátrix

p1

p3

p5

p4

p2

p1 p2 p3 p4 p5 . . .

.

.

. Proximity Matrix

...p1 p2 p3 p4 p9 p10 p11 p12

Page 47: Klaszterezés

Közbülső helyzet• Néhány lépés után vannak klasztereink

C1

C4

C2 C5

C3

C2C1

C1

C3

C5

C4

C2

C3 C4 C5

Proximity Matrix

...p1 p2 p3 p4 p9 p10 p11 p12

Page 48: Klaszterezés

Közbülső állapot• A két legközelebbi (C2 és C5) klasztert szeretnénk

összefésülni, és a mátrixot megfelelően módosítani

C1

C4

C2 C5

C3

C2C1

C1

C3

C5

C4

C2

C3 C4 C5

Proximity Matrix

...p1 p2 p3 p4 p9 p10 p11 p12

Page 49: Klaszterezés

Összefésülés után

C1

C4

C2 U C5

C3? ? ? ?

?

?

?

C2 U C5C1

C1

C3

C4

C2 U C5

C3 C4

Proximity Matrix

...p1 p2 p3 p4 p9 p10 p11 p12

Page 50: Klaszterezés

Klaszterek közötti hasonlóság?

p1

p3

p5

p4

p2

p1 p2 p3 p4 p5 . . .

.

.

.

Similarity?

MIN MAX Csoport átlag Közepek közötti távolság Célfüggvény által vezérelt módszerek

– Ward módszere négyzetes hibával

Proximity Matrix

Page 51: Klaszterezés

Klaszterek közötti hasonlóság?

p1

p3

p5

p4

p2

p1 p2 p3 p4 p5 . . .

.

.

.Proximity Matrix

MIN MAX Csoport átlag Közepek közötti távolság Célfüggvény által vezérelt módszerek

– Ward módszere négyzetes hibával

Page 52: Klaszterezés

Klaszterek közötti hasonlóság?

p1

p3

p5

p4

p2

p1 p2 p3 p4 p5 . . .

.

.

.Proximity Matrix

MIN MAX Csoport átlag Közepek közötti távolság Célfüggvény által vezérelt módszerek

– Ward módszere négyzetes hibával

Page 53: Klaszterezés

Klaszterek közötti hasonlóság?

p1

p3

p5

p4

p2

p1 p2 p3 p4 p5 . . .

.

.

.Proximity Matrix

MIN MAX Csoport átlag Közepek közötti távolság Célfüggvény által vezérelt módszerek

– Ward módszere négyzetes hibával

Page 54: Klaszterezés

Klaszterek közötti hasonlóság?

p1

p3

p5

p4

p2

p1 p2 p3 p4 p5 . . .

.

.

.Proximity Matrix

MIN MAX Csoport átlag Közepek közötti távolság Célfüggvény által vezérelt módszerek

– Ward módszere négyzetes hibával

Page 55: Klaszterezés

Klaszter hasonlóság: MIN (Single Link)

• Két klaszter hasonlósága a legközelebbi pontjának távolsága – Egyetlen pontpár határozza meg, a

hasonlósági gráfban egyetlen él

I1 I2 I3 I4 I5I1 1.00 0.90 0.10 0.65 0.20I2 0.90 1.00 0.70 0.60 0.50I3 0.10 0.70 1.00 0.40 0.30I4 0.65 0.60 0.40 1.00 0.80I5 0.20 0.50 0.30 0.80 1.00 1 2 3 4 5

Page 56: Klaszterezés

Hierarchikus klaszterezés: MIN

Dendrogram

1

2

3

4

5

6

1

2

3

4

5

3 6 2 5 4 10

0.05

0.1

0.15

0.2

Egymásba ágyazott klaszterek

Page 57: Klaszterezés

MIN előnye

Eredeti pontok Két klaszter

Nem elliptikus alakokat is jól kezel

Page 58: Klaszterezés

MIN korlátai

Eredeti pontok Két klaszter

Érzékeny a zajra és a kiugró pontokra

Page 59: Klaszterezés

Klaszter hasonlóság: MAX(Complete Linkage)

• Két klaszter távolsága a bennük levő legtávolabbi pontok távolsága – A két klaszter összes pontjának

segítségével határozhatjuk meg I1 I2 I3 I4 I5

I1 1.00 0.90 0.10 0.65 0.20I2 0.90 1.00 0.70 0.60 0.50I3 0.10 0.70 1.00 0.40 0.30I4 0.65 0.60 0.40 1.00 0.80I5 0.20 0.50 0.30 0.80 1.00 1 2 3 4 5

Page 60: Klaszterezés

Hierarchikus klaszterezés: MAX

Beágyazott klaszterek Dendrogram

3 6 4 1 2 50

0.05

0.1

0.15

0.2

0.25

0.3

0.35

0.4

1

2

3

4

5

6

1

2 5

3

4

Page 61: Klaszterezés

MAX erőssége

Eredeti pontok Két klaszter

Kevésbé érzékeny zajokra és kiugró értékekre

Page 62: Klaszterezés

MAX korlátai

Eredeti pontok Két klaszter

Nagy klasztereket hajlamos felbontani

Kör alakúakat előnyben részesit

Page 63: Klaszterezés

Klaszter hasonlóság: csoport átlag(UPGMA)

• Két klaszter hasonlósága a bennük levő pontok átlagos távolsága

||Cluster||Cluster

)p,pproximity(

)Cluster,Clusterproximity(ji

ClusterpClusterp

ji

jijjii

I1 I2 I3 I4 I5I1 1.00 0.90 0.10 0.65 0.20I2 0.90 1.00 0.70 0.60 0.50I3 0.10 0.70 1.00 0.40 0.30I4 0.65 0.60 0.40 1.00 0.80I5 0.20 0.50 0.30 0.80 1.00

1 2 3 4 5

Page 64: Klaszterezés

Klaszter hasonlóság: csoport átlag

Egymásba ágyazott klaszterek Dendrogram

3 6 4 1 2 50

0.05

0.1

0.15

0.2

0.25

1

2

3

4

5

6

1

2

5

3

4

Page 65: Klaszterezés

Klaszter hasonlóság: csoport átlag

• Kompromisszum a Single és Complete Link között

• Erősség– Kevéssé érzékeny kiugró értékekre és

zajra

• Korlát– Köralakú klaszterek irányába torzít

Page 66: Klaszterezés

Ward módszere

• A hasonlóság két klaszter összefésülésénél: a négyzetes hiba növekedése (változása)– Hasonló a csoportátlaghoz, ha ott a

távolságok négyzeteit vennénk

• Kevéssé érzékeny zajra és kiugró értékekre

• Torzít köralakú klasztereknél • Hierarchikus megfelelője a K-középnek

– Használható a K-közép inicializálására

Page 67: Klaszterezés

Hierarchikus klaszterezés: Idő- és tárigény

• O(N2) tárigény (hasonlósági mátrix) – N a pontok száma

• O(N3) idő – N lépés van, és minden lépésben a

mátrixmérettel arányos számolás

Page 68: Klaszterezés

Hierarchikus klaszterezés: problémák és határok

• Ha egyszer két klasztert összefésültünk, nem lehet visszacsinálni

• Nincs közvetlen minimalizálandó célfüggvény

• A különböző módszereknek problémái lehetnek az alábbiakkal – Zajra és kiugró értékekre való érzékenység – Különböző méretű klaszterek, konkáv

alakzatok kezelése – Nagyméretű klaszterek

Page 69: Klaszterezés

MST:Felosztó Hierarchikus Klaszterezés

MST (Minimum Spanning Tree) építése– Prim algoritmusa, O(N2)

Page 70: Klaszterezés

MST:Felosztó Hierarchikus Klaszterezés

• MSTt használ klaszterek hierarchiájának építésére

Page 71: Klaszterezés

Sűrűség alapú klaszterezés

Page 72: Klaszterezés

DBSCAN

– Sűrűség = pontok száma vizsgált pont ε környezetében

– Egy pont mag-pont (core point) ha egy konstansnál (MinPts) több pont van az ε környezetében

• Ezek a pontok vannak a klaszter belsejében

– Egy határpontnak (border point) a MinPts-nél kevesebb pont van az ε környezetében, de egy mag-pont környezetében van

– A zajos pontok (noise point) a többi pont

Page 73: Klaszterezés

DBSCAN: Mag, határ, zajos pontok

Page 74: Klaszterezés

DBSCAN: Mag, határ, zajos pontok

Eredeti pontok Pontok: core, border és noise

Eps = 10, MinPts = 4

Page 75: Klaszterezés

DBSCAN Algoritmus

Page 76: Klaszterezés

Mikor működik a DBSCAN jól

Eredeti pontok Klaszterek

Nem érzékeny a zajra

Különböző alakú és méretű klasztereket kezel

Page 77: Klaszterezés

Mikor nem jó a DBSCAN?

Eredeti pontok

(MinPts=4, Eps=9.75).

(MinPts=4, Eps=9.92)

Változó sűrűség

Page 78: Klaszterezés

DBSCAN: ε és MinPts meghatározása

• Alapötlet: a klaszterek k-dik legközelebbi pontjai közel azonos távolságra vannak

• A zajos pontoknál a k-dik legközelebbi pont messze van

• Rajzoljuk fel minden pontnál a k-dik legközelebbi pont távolságát

Page 79: Klaszterezés

Klaszterek validitása

Page 80: Klaszterezés

Klaszterek validitása (validity)

• Mennyire jók az eredményül kapott klaszterek?

• A klaszterek a szemlélőtől is függenek! • Akkor miért akarjuk kiértékelni őket?

– „Szemrevételezés”: létezik-e egyáltalán valamilyen struktúra az adatokban (klaszter tendencia) pl zajban ne találjunk mintát

– A klaszter elemzés eredményeinek összevetése előzetesen adott osztálycímkékkel (!?)

– Két különböző klaszterhalmaz összevetése, a jobb illeszkedés megállapítása

– A klaszterek valódi számának meghatározása

Page 81: Klaszterezés

Klaszterek véletlen adatokban

0 0.2 0.4 0.6 0.8 10

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

x

y

Véletlen pontok

0 0.2 0.4 0.6 0.8 10

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

x

y

K-közép

0 0.2 0.4 0.6 0.8 10

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

x

y

DBSCAN

0 0.2 0.4 0.6 0.8 10

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

x

y

Complete Link

Page 82: Klaszterezés

– Külső mérték: azt mérjük, hogy az klaszterek mennyire illeszkednek előre adott osztálycímkékhez vagy páros megkötésekhez

– Belső mérték: a jóságot a struktúrán mérjük, külső információ felhasználása nélkül → célfüggvény

• pl. össz négyzetes hiba (SSE)

– Relatív Index: Két különböző klaszterezés eredményeinek összehasonlítása

Klaszterek validitásának mérőszámai

Page 83: Klaszterezés

– Hasonlóság mátrix– Szomszédsági mátrix

• Minden pontnak egy sor és egy oszlop felel meg• Egy elem a mátrixban 1, ha az adott pontok egy klaszterben

vannak, különben 0

• Határozzuk meg a két mátrix közötti korrelációt

– Mivel a mátrixok szimmetrikusak, csak n(n-1) / 2 elem között kell a korrelációt számolni

• Magas korreláció esetén az egy klaszterbe tartozó pontok közel vannak egymáshoz

Korreláció, mint belső mérték

Page 84: Klaszterezés

• A szomszédsági és a hasonlóság mátrix korrelációja két példán (K-közép klaszterezés)

0 0.2 0.4 0.6 0.8 10

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

x

y

0 0.2 0.4 0.6 0.8 10

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

x

y

Corr = -0.9235 Corr = -0.5810

Korreláció, mint belső index

Page 85: Klaszterezés

Rendezzük a hasonlósági mátrix sorait és oszlopait a klasztereknek megfelelően, és „figyeljük meg”

Klaszter validáció: hasonlósági mátrix

0 0.2 0.4 0.6 0.8 10

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

x

y

Points

Po

ints

20 40 60 80 100

10

20

30

40

50

60

70

80

90

100Similarity

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

Page 86: Klaszterezés

Klaszter validáció: hasonlósági mátrix

Points

Po

ints

20 40 60 80 100

10

20

30

40

50

60

70

80

90

100Similarity

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

DBSCAN

0 0.2 0.4 0.6 0.8 10

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

x

y

Page 87: Klaszterezés

Points

Po

ints

20 40 60 80 100

10

20

30

40

50

60

70

80

90

100Similarity

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

K-közép

0 0.2 0.4 0.6 0.8 10

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

x

y

Klaszter validáció: hasonlósági mátrix

Page 88: Klaszterezés

0 0.2 0.4 0.6 0.8 10

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

x

y

Points

Po

ints

20 40 60 80 100

10

20

30

40

50

60

70

80

90

100Similarity

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

Complete Link

Klaszter validáció: hasonlósági mátrix

Page 89: Klaszterezés

1 2

3

5

6

4

7

DBSCAN

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

500 1000 1500 2000 2500 3000

500

1000

1500

2000

2500

3000

Klaszter validáció: hasonlósági mátrix

Page 90: Klaszterezés

• Bonyolultabb alakzatok klaszterei kevéssé szeparáltak• Átlagos SSE nagyon jó két klaszterezés

összehasonlítására• Klaszterek számának becslésére is használható

Belső mérték: SSE

2 5 10 15 20 25 300

1

2

3

4

5

6

7

8

9

10

K

SS

E

5 10 15

-6

-4

-2

0

2

4

6

Page 91: Klaszterezés

• Klaszter kohézió: Milyen közeliek az elemek egy klaszteren belül – pl: klaszteren belüli négyzetösszeg

• Klaszter elválasztás: Milyen különbözőek, jól elválasztottak a klaszterek egymástól - Elválasztás: a klaszterek közötti négyzetösszeg

– Ahol |Ci| az i.dik klaszter mérete

Általánosságban a belső mértékek

i Cx

ii

mxWSS 2)(

i

ii mmCBSS 2)(

Page 92: Klaszterezés

Belső mértékek: kohézió és elválasztás

• Példa: négyzetes hiba

1 2 3 4 5 m1 m2

m

1091

9)35.4(2)5.13(2

1)5.45()5.44()5.12()5.11(22

2222

Total

BSS

WSSK=2 klaszter:

10010

0)33(4

10)35()34()32()31(2

2222

Total

BSS

WSSK=1 klaszter:

Page 93: Klaszterezés

• Hasonlósági gráf alapú megközelítés kohézióra és elválasztásra:– Kohézió a klaszteren belüli kapcsolatok össz-súlya

– Elválasztás a két klaszter közötti kapcsolatok össz-súlya

Belső mértékek: kohézió és elválasztás

kohézió szeparáció

Page 94: Klaszterezés

• A sziluett együttható a kohézió és az elválasztás keveréke • Az i pontra

– Legyen a = az i átlagos távolsága a klaszterén belüli pontoktól – Legyen b = a többi klaszterhez tartozó pontok átlagos távolsága – A sziluett együttható

s = 1 – a/b ha a < b, (vagy s = b/a - 1 ha a b, nem tipikus eset)

– Általában 0 és 1 között. – Minél közelebb 1-hez, annál jobb

• Átlagos sziluett számolható egy klaszterre vagy egy teljes klaszterezésre is.

Belső mérték: sziluett együttható

ab

Page 95: Klaszterezés

“The validation of clustering structures is the most difficult and frustrating part of cluster analysis.

Without a strong effort in this direction, cluster analysis will remain a black art accessible only to those true believers who have experience and great courage.”

Algorithms for Clustering Data, Jain and Dubes