monimuuttujamenetelmiin, 5 op syksy 2018 Matemaattisten tieteiden laitos
Ryhmittelyn perusperiaate Tästä lähdetään liikkeelle: Tähän pyritään: a b c bc d e f de def bcdef abcdef monimuuttujamenetelmiin, 5 op 27. marraskuuta 2018 2 / 32
K:n keskiarvon ryhmittelyanalyysi (K-means clustering) Ryhmittelyanalyysin tavoitteena on aineiston havaintojen ryhmittely siten, että samaan ryhmään kuuluvat havainnot ovat mahdollisimman samankaltaisia keskenään ja eri ryhmät poikkeavat toisistaan mahdollisimman paljon. Ryhmittelymenetelmää valittaessa on määriteltävä mitä kahden tai useamman havainnon samankaltaisuus (tai erilaisuus) on. Ryhmittelyanalyysi on ohjaamatonta oppimista, koska sen tavoitteena on etsiä aineiston rakenteita. Varsinaista vastetta ei ole. Muodostettavat ryhmät vastaavat usein joitakin mielekkäitä ennalta määriteltyjä/muodostuneita luokkia. monimuuttujamenetelmiin, 5 op 27. marraskuuta 2018 3 / 32
K:n keskiarvon ryhmittelyanalyysi on yksinkertainen menetelmä havaintoaineiston jakamiseksi K:hon toisistaan täysin erilliseen ryhmään. Ensimmäiseksi määritellään muodostettavien ryhmien lukumäärä K. Seuraavaksi käytettävä algoritmi määrää jokaisen havainnon täsmälleen yhteen muodostettavista ryhmistä. Merkitään jatkossa havainnot sisältäviä ryhmiä (joukkoja) merkinnöillä C 1, C 2,..., C K. Näiden ryhmien tulee toteuttaa seuraavat ominaisuudet: C 1 C 2... C K = {1,..., n} eli jokainen aineiston havainto kuuluu ainakin johonkin ryhmistä k (k = 1,..., K). C k C k = k k eli mikään aineiston havainto ei kuulu useampaan kuin yhteen ryhmään k (k = 1,..., K). monimuuttujamenetelmiin, 5 op 27. marraskuuta 2018 4 / 32
Merkitään havainnon i merkinnällä i C k. (i = 1,..., n) kuulumista ryhmään k Ideana on muodostaa K ryhmää siten, että ryhmien sisäinen vaihtelu on niin pientä kuin mahdollista. Ryhmien sisäistä vaihtelua ryhmässä C k mittaavan tunnusluvun ollessa W (C k ), k:n keskiarvon ryhmittelyanalyysin tavoitteena on ratkaista minimointiongelma { K } minimum C 1,...,C k k=1 W (C k ) (1) Tavoitteena on siis ryhmitellä aineiston havainnot siten, että muodostettavien ryhmien sisäisten vaihtelujen summa on mahdollisimman pieni. monimuuttujamenetelmiin, 5 op 27. marraskuuta 2018 5 / 32
Ryhmien sisäisen vaihtelun määrä voidaan mitata usealla eri tavalla, mutta yleisimmin mittarina käytetään neliöityä Euklidista etäisyyttä (vrt. K:n lähimmän naapurin menetelmä). Tällöin W (C k ) = 1 C k i,i C k j=1 p (x ij x i j )2, (2) missä C k kuvaa ryhmään k kuuluvien havaintojen lukumäärää. K:n keskiarvon ryhmittelyanalyysin määrittelee edellä esitettyjen kaavojen (1) ja (2) nojalla minimointiongelma minimum C 1,...,C k K k=1 1 C k i,i C k j=1 p (x ij x i j )2. (3) monimuuttujamenetelmiin, 5 op 27. marraskuuta 2018 6 / 32
Minimointiongelman (3) tarkka ratkaiseminen on erittäin vaikeaa, sillä n havaintoa voidaan ryhmitellä K ryhmään K n /K! eri tavalla. Jos esimerkiksi n = 20 ja muodostettavia ryhmiä on kolme, voidaan havainnot ryhmitellä tarjolla oleviin ryhmiin 581130734 eri tavalla! Havaintoaineistossa n on usein huomattavasti suurempi kuin 20 ja muodostettavia ryhmiä voi olla enemmän kuin yllä mainitun esimerkin kolme ryhmää Kaikkien kombinaatioiden läpikäyminen ryhmien sisäisten vaihteluiden laskentaa varten on käytännössä mahdotonta. Ryhmittelyn määrittelevään minimointiongelmaan ei (yleensä) kannata hakea globaalia ratkaisua. monimuuttujamenetelmiin, 5 op 27. marraskuuta 2018 7 / 32
Minimointiongelmaan on kuitenkin löytettävissä yksinkertainen iterointiin perustuva algoritmi, joka antaa ongelmaan paikallisen minimin. Tämä algoritmi toimii seuraavasti: 1. Arvotaan jokainen havainto satunnaisesti yhteen tarjolla olevaan ryhmään k (k=1,...,k) 2 (a). Lasketaan jokaisen ryhmän keskiö (centroid), joka on k:nnen ryhmän osalta p-ulotteinen keskiarvovektori, jonka arvot lasketaan ryhmään k määriteltyjen havaintojen joukosta. 2 (b). Sijoitetaan kukin havainto siihen ryhmään, jonka keskiö on kyseistä havaintoa lähinnä (etäisyysmittana käytetään Euklidista etäisyyttä. Kyllä Muuttuiko yhdenkään havainnon ryhmä kohdassa 2 (b)? Ei Ryhmittely valmis monimuuttujamenetelmiin, 5 op 27. marraskuuta 2018 8 / 32
Seuraava kuva havainnollistaa edellä esitellyn algoritmin toimintaperiaatetta: Lähde: Gareth James & All: An Introduction to Statistical Learning with Applications in R monimuuttujamenetelmiin, 5 op 27. marraskuuta 2018 9 / 32
Koska edellä esitelty algoritmi löytää minimointiongelman paikallisen ratkaisun, ryhmittelyn lopputulos riippuu algoritmin toimintakaavion kohdassa 1 tehtävän arvonnan lopputuloksesta. Siksi algoritmi on syytä ajaa aineistolla läpi useita kertoja ja valita havaintojen lopulliseksi ryhmittelyksi sen toistokerran ryhmittely, joka jättää ryhmien sisäisen vaihtelun suuruutta kuvaavan summan K 1 minimum C 1,...,C k C k k=1 pienimmäksi. i,i C k j=1 p (x ij x i j )2 monimuuttujamenetelmiin, 5 op 27. marraskuuta 2018 10 / 32
Alla esitetty kuva havainnollistaa ryhmittelyalgoritmin eri toistokertojen tuottamien ryhmittelyjen lopputuloksia, kun havainnot luokitellaan kolmeen ryhmään (K = 3). Kunkin kuvan päällä oleva lukuarvo kuvaa ryhmien sisäisen vaihtelun summaa. Lähde: Gareth James & All: An Introduction to Statistical Learning with Applications in R monimuuttujamenetelmiin, 5 op 27. marraskuuta 2018 11 / 32
Huomioitavia asioita analyysissä Muodostettavien ryhmien lukumäärä K joudutaan määrittämään itse K:n valinnassa kannattaa kokeilla useita eri vaihtoehtoja, koska esimerkiksi Vaikka K:n arvo 'tiedettäisiin' etukäteen, otoksesta voi puuttua arvot jostain harvinaisesta ryhmästä Jos aineistossa on poikkeava havainto, jossain ryhmässä havainnot voivat olla kaukana toisistaan Sopivan K:n arvon etsimisessä voidaan käyttää ns. elbow-menetelmää (katso esimerkki/r-harjoitus) Pisteiden välisen etäisyyden/erilaisuuden (ja ryhmien sisäisen vaihtelun) mittaamiseen joudutaan valitsemaan tilanteeseen sopiva mitta Yleisin valinta on Euklidinen etäisyys Muita vaihtoehtoja ovat mm. Manhattanin etäisyys ja Minkowskin etäisyys monimuuttujamenetelmiin, 5 op 27. marraskuuta 2018 12 / 32
Kun a ja b ovat kaksi pistettä p-ulotteisessa avaruudessa siten, että a = (a 1, a 2,..., a p ) ja b = (b 1, b 2,..., b p ), pisteiden välinen Euklidinen etäisyys d(a, b) = (a 1 b 1 ) 2 + (a 2 b 2 ) 2 +... + (a p b p ) 2 Manhattanin etäisyys d(a, b) = a 1 b 1 + a 2 b 2 +... + a p b p = Minkowskin etäisyys ( p ) 1/c d(a, b) = a i b i c i=1 p a i b i i=1 Huom.: kun c = 1 ja c = 2, Minkowskin etäisyys vastaa Manhattanin etäisyyttä ja Euklidista etäisyyttä. monimuuttujamenetelmiin, 5 op 27. marraskuuta 2018 13 / 32
Edellä esitetyt mitat toimivat hyvin, kun ryhmät ovat hyvin erottuvia ja 'tiiviitä' ovat usein ongelmallisia, kun muuttujat ovat eri skaalassa K:n keskiarvon ryhmittelyanalyysin Hyviä puolia Tehokas menetelmä Helppo toteuttaa tietokoneella Huonoja puolia Vaikea soveltaa laadulliselle aineistolle ja (seka)aineistolle, jossa mukana sekä määrällisiä että laadullisia muuttujia Ei sovi suuridimensioiselle aineistolla (vaatisi suuren n:n toimiakseen hyvin) On ainakin jossain määrin herkkä outlier-havainnoille Lisäksi on syytä muistaa, että menetelmä luo aineistoon ryhmittelyn, vaikkei sitä todellisuudessa olisikaan! monimuuttujamenetelmiin, 5 op 27. marraskuuta 2018 14 / 32
K:n keskiarvon ryhmittelyanalyysi ja R K:n keskiarvon ryhmittelyanalyysi voidaan suorittaa stats paketin funktiolla kmeans(). Analysoidaan lyhyesti aiemmissa esimerkeissä käsitelty kurjenmiekka-aineisto ko. funktiolla. monimuuttujamenetelmiin, 5 op 27. marraskuuta 2018 15 / 32
Funktiolle kmeans() määritellään (vähintään) analyysissä käytettävät muuttujat muodostettavien ryhmien lukumäärä (K ) Talletetusta malliobjektista voidaan poimia mm. muodostettujen ryhmien keskiöt eli keskipisteet komponentilla centers (esim. iriscluster$centers) ryhmittelyn lopputulos kullekin havainnolle komponentilla cluster ryhmien sisäisiä vaihteluita kuvaavat neliösummat komponentilla withinss ryhmien sisäisten vaihteluiden summaa kuvaava neliösumma komponentilla tot.withinss eri luokkiin ryhmitettyjen havaintojen lukumäärät komponentilla size monimuuttujamenetelmiin, 5 op 27. marraskuuta 2018 16 / 32
Ryhmittelyn lopputulos johti seuraavaan ryhmittelyyn: 1 2 3 4 5 6 7 0.5 1.0 1.5 2.0 2.5 Ryhmittelyn lopputulos Terälehden pituus (cm) Terälehden leveys (cm) 1 2 3 monimuuttujamenetelmiin, 5 op 27. marraskuuta 2018 17 / 32
Alla vastaava kuva kurjenmiekkojen todellisten lajimääritysten mukaan. Näyttääkö tutulta edelliseen kuvaan verrattuna? Muuttujien välinen sirontakuvio eri lajeittain Terälehden leveys (cm) 2.5 2.0 1.5 1.0 0.5 setosa versicolor virginica 1 2 3 4 5 6 7 Terälehden pituus (cm) monimuuttujamenetelmiin, 5 op 27. marraskuuta 2018 18 / 32
Hierarkkinen ryhmittelyanalyysi (Hierarchical clustering) K:n keskiarvon ryhmittelyanalyysin yksi potentiaalinen heikkous on siinä, että menetelmää varten joudutaan etukäteen määrittelemään muodostettavien ryhmien lukumäärä. Hierarkkisessa ryhmittelyanalyysissä vastaavaa etukäteisvaatimusta ei ole. Analyysin tulokset voidaan esittää puukuviomaisessa esitysmuodossa, jota kutsutaan dendrogrammiksi. Menetelmän tavoitteena on edelleen löytää havaintojen välisiä ryhmityksiä. monimuuttujamenetelmiin, 5 op 27. marraskuuta 2018 19 / 32
Tarkastellaan hetki seuraavaa dendrogrammia. Cluster Dendrogram Height 0 5 10 15 20 Finland Norway Denmark Sweden Hungary USSR Poland Czechoslovakia E_Germany Switzerland Austria Netherlands Ireland Belgium W_Germany France UK Albania Bulgaria Romania Yugoslavia Greece Italy Portugal Spain d hclust (*, "ward.d") Mitä kuvion avulla voidaan päätellä? monimuuttujamenetelmiin, 5 op 27. marraskuuta 2018 20 / 32
Kuviossa yksi lehti kuvaa yhtä havaintoyksikköä. Dendrogrammin alimmalla rivillä jokainen havainto (tässä esimerkkitapauksessa valtio) muodostaa oman ryhmän. Kuviossa ylöspäin mentäessä lehdet yhdistyvät oksiin ja oksat alkavat yhdistyä toisiin oksiin. Yhdistyvät lehdet/oksat kuvaavat yhdistyvien havaintojen samankaltaisuutta. Mitä alempana dendrogrammia yhdistyminen tapahtuu sitä samankaltaisempia yhdistyvät havainnot ovat. Toisaalta mitä ylempänä kuviossa havainnot yhdistyvät sitä etäämmällä/erilaisempia havainnot ovat toisiinsa verrattuna. Havaintojen horisontaali läheisyys kuviossa ei tarkoita havaintojen samankaltaisuutta! monimuuttujamenetelmiin, 5 op 27. marraskuuta 2018 21 / 32
Edellä esitellyn periaatteen mukainen dendrogrammi on muodostettu ns. pohjalta-ylös eli agglomeratiivisen (yhdistelevän) ryhmittelyanalyysin periaatteella. Muodostettavien ryhmien lukumäärä voidaan säädellä leikkaamalla dendrogrammi halutulta korkeudelta Cluster Dendrogram Height 0 5 10 15 20 Finland Norway Denmark Sweden Hungary USSR Poland Czechoslovakia E_Germany Switzerland Austria Netherlands Ireland Belgium W_Germany France UK Albania Bulgaria Romania Yugoslavia Greece Italy Portugal Spain d Esimerkissä dendrogrammin leikkaaminen hclust (*, "ward.d") korkeudelta 6 johtaa viiden ryhmän muodostumiseen. 12 johtaa puolestaan kahden ryhmän muodostumiseen. monimuuttujamenetelmiin, 5 op 27. marraskuuta 2018 22 / 32
Analyysin lopussa muodostettuja ryhmiä voi olla yhdestä n:ään kappaletta. Muodostettavien ryhmien lukumäärälle ei ole edelleenkään olemassa oikeaa arvoa. Menetelmän nimessä oleva termi hierarkkinen viitaa siihen, että alemmalla tasolla tehdyn dendrogrammin leikkauksen seurauksena saadun ryhmät yhdistyvät välttämättä jossain vaiheessa leikattaessa dendrogrammia riittävän korkealta tasolta (ts. ne pesäistyvät). Samoin kuin K:n keskiarvon menetelmässä, myös hierarkkisen ryhmitettelyanalyysin tulosten tulkinnassa on syytä pitää mielessä, ettei aineistossa ole välttämättä todellisuudessa mitään (hierarkkista) ryhmärakennetta! monimuuttujamenetelmiin, 5 op 27. marraskuuta 2018 23 / 32
Hierarkkisen ryhmittelyn algoritmi 1. Dendrogrammin alimmalla rivillä jokainen havainto muodostaa oman ryhmän (ryhmien lkm = n) 2 (a). Kaksi toisiaan lähintä ryhmää yhdistetään toisiinsa, jonka jälkeen ryhmien lukumäärä pienenee yhdellä. 2 (b). Yhdistetään muodostuneista ryhmistä kaksi toisiaan lähintä ryhmää, jonka jälkeen ryhmien lukumäärä pienenee jälleen yhdellä. Ei Onko muodostuneiden ryhmien lukumäärä yksi? Kyllä Ryhmittely valmis monimuuttujamenetelmiin, 5 op 27. marraskuuta 2018 24 / 32
Ryhmittelyn ensimmäisessä vaiheessa (algoritmin kohta 1) ryhmien eli havaintojen samankaltaisuuden/erilaisuuden mittana käytetään yleisimmin Euklidista etäisyyttä Miten kahden ryhmän samankaltaisuutta/erilaisuutta tulisi mitata, jos jommassa kummassa tai molemmissa ryhmistä on useampia havaintoja? Ryhmien samankaltaisuuden/erilaisuuden mittaamisen määrittely edellyttää ns. linkin (linkage) määrittelemistä Yleisimmin käytettyjä linkkejä ovat Kaukaisimman naapurin menetelmä (complete) Keskiarvomenetelmä (average) Lähimmän naapurin menetelmä (single) ja Painopistemenetelmä (centroid) monimuuttujamenetelmiin, 5 op 27. marraskuuta 2018 25 / 32
Linkkien toimintaperiaatteet: Linkki Complete Kuvaus Lasketaan kaikki mahdolliset parittaiset erilaisuusmitan arvot ryhmiin A ja B kuuluvien havaintojen välillä. Näistä arvoista suurin arvo edustaa ryhmien A ja B välistä etäisyyttä. Single Lasketaan kaikki mahdolliset parittaiset erilaisuusmitan arvot ryhmiin A ja B kuuluvien havaintojen välillä. Näistä arvoista pienin arvo edustaa ryhmien A ja B välistä etäisyyttä. Average Lasketaan kaikki mahdolliset parittaiset erilaisuusmitan arvot ryhmiin A ja B kuuluvien havaintojen välillä. Näiden arvojen keskiarvo edustaa ryhmien A ja B välistä etäisyyttä. Centroid Ryhmän A keskiön (p-ulotteinen keskiarvovektori) ja ryhmän B keskiön erilaisuusmitan arvo edustaa ryhmien A ja B välistä etäisyyttä. monimuuttujamenetelmiin, 5 op 27. marraskuuta 2018 26 / 32
Ryhmittelyanalyysin vaiheet Ryhmittelyn ensimmäisessä vaiheessa jokaista havaintoa pidetään omana ryhmänä ja lasketaan jokaisen havaintoparin erilaisuusmitan arvo (yhteensä ( n 2) = n(n 1)/2 kappaletta) Laskennassa erilaisuusmittana käytetään yleensä Euklidista etäisyyttä. Pienimmän erilaisuusmitan arvon omaava havaintopari yhdistetään yhdeksi ryhmäksi. Ryhmittelyn seuraavilla kierroksilla lasketaan kaikkien mahdollisten ryhmäparien erilaisuusmitan arvo valitulla linkillä. Valitaan se ryhmäpari, johon liittyvän erilaisuusmitan arvo valitulla linkillä on pienin. Kyseiset ryhmät yhdistetään dendrogrammissa erilaisuusmitan arvon korkeudella. Ryhmittelyä jatketaan siihen saakka, kunnes kaikki havainnot ovat samassa ryhmässä. monimuuttujamenetelmiin, 5 op 27. marraskuuta 2018 27 / 32
Hierarkkinen ryhmittelyanalyysi ja R Analysoidaan lyhyesti aineistoa, joka sisältää mittaustietoja proteiinin kulutuksesta 25 Euroopan eri maassa. Alkuun lyhyt kuvaus aineiston sisällöstä. monimuuttujamenetelmiin, 5 op 27. marraskuuta 2018 28 / 32
Hierarkkinen ryhmittelyanalyysi voidaan suorittaa stats-paketin funktiolla hclust(), joka vaatii (vähintään seuraavat) määritykset Ensimmäiseksi argumentiksi tarvitaan funktiolla dist() tuotettu etäisyysmatriisi Seuraava argumentti määrittelee ryhmien samankaltaisuuden/erilaisuuden mittaamisessa käytettävän linkin. Funktiolla hclust() aikaansaadusta objektista voidaan tulostaa dendrogrammi funktiolla plot() monimuuttujamenetelmiin, 5 op 27. marraskuuta 2018 29 / 32
hierarkinen ryhmittely: complete linkki Height 0 10 20 30 40 Romania Bulgaria Yugoslavia Finland Norway Denmark Sweden UK Belgium France Austria Ireland Switzerland Netherlands W_Germany E_Germany Portugal Spain Hungary Czechoslovakia Poland Albania USSR Greece Italy etaisyydet hclust (*, "complete") monimuuttujamenetelmiin, 5 op 27. marraskuuta 2018 30 / 32
On syytä muistaa, että ryhmittelyn lopputulokseen vaikuttaa oleellisesti käytetyn erilaisuusmitan lisäksi käytössä oleva linkki! hierarkkinen ryhmittely: single linkki Height 4 5 6 7 8 9 10 11 Finland Portugal Spain Albania E_Germany Norway Denmark Sweden Austria W_Germany Netherlands Ireland Switzerland UK Belgium France Romania Bulgaria Yugoslavia Hungary USSR Greece Italy Czechoslovakia Poland etaisyydet hclust (*, "single") monimuuttujamenetelmiin, 5 op 27. marraskuuta 2018 31 / 32
hierarkkinen ryhmittely: average linkki Height 0 5 10 15 20 25 Romania Bulgaria Yugoslavia Hungary Czechoslovakia Poland Albania USSR Greece Italy E_Germany Portugal Spain Finland Norway Denmark Sweden UK Belgium France Austria Ireland Switzerland Netherlands W_Germany etaisyydet hclust (*, "average") monimuuttujamenetelmiin, 5 op 27. marraskuuta 2018 32 / 32