Esittely latautuu. Ole hyvä ja odota

Esittely latautuu. Ole hyvä ja odota

Hyvä tuntea normalisoinneista/skaalauksista

Samankaltaiset esitykset


Esitys aiheesta: "Hyvä tuntea normalisoinneista/skaalauksista"— Esityksen transkriptio:

1 Hyvä tuntea normalisoinneista/skaalauksista
Data-analyysi- ja koneoppimisongelmissa on usein päätettävä normalisoinneista data, josta haetaan/opitaan rakenteita, on käytännössä aina monidimensioista = useita piirteitä per datapiste Yleensä etäisyyslaskennassa eri datapisteiden välillä valinta L2 (euklidinen etäisyys) tai L1 normi (korttelietäisyys)  Ongelma: eri piirteiden skaalat ja arvoalueet voivat erota  etäisyyksien laskennassa tarvitaan skaalaus tai normalisointi välttämätöntä mm. kNN-luokittelun ja useimpien ryvästysmenetelmien toiminnan varmistamiseksi Miten selvittäisit, mitkä oheisen kuvan datapisteistä ovat toisiaan lähinnä? piirteiden arvoalueet voidaan tosiaankin asettaa mielivaltaisesti! x1 x2 5 0.7 30 0.2 (18.2, 0.5) (18.2, 0.3) (15.5, 0.3)

2 Datanäytteiden piirteiden skaalaus/normalisointi (1)
esimerkki: tarkastellaan seuraavia lääketieteellisesti näytteistä laskettuja piirteitä ja niille laskettuja L2 ja L1 normien mukaisia keskinäisiä etäisyyksiä Näemme, että suurimman arvoalueen piirre 4 dominoi laskennassa, vaikka ei selvästi erottelekaan näytteitä yhtä tehokkaasti kuin pienimmän arvoalueen piirre3 päätämme skaalata (s) kunkin alkuperäisen (a) piirteen välille [0,1]: näytei_piirres = (näytei_piirrea-min(piirre))/(max(piirre)-min(piirre)) Toteamme, että skaalauksen jälkeen näytettä 3 lähin oleva näyte muuttui! Datanäyte Piirre 1 Piirre 2 Piirre 3 Piirre 4 1 497 340 75 7 047 2 301 387 60 6 810 3 372 405 14 7 051 311 495 1 2 1 2 L2 L1 154 256 255 305 3 3 1.60 2.95 Datanäyte Piirre 1 Piirre 2 Piirre 3 Piirre 4 1 1,00 0,00 0,98 2 0,72 0,75 3 0,36 1 2 1 2 L2 L1 1.55 1.33 2.65 2.03 3 3

3 Datanäytteiden piirteiden skaalaus/normalisointi (2)
Skaalaus, esim. välille [0,1] näytei_piirres = (näytei_piirrea-min(piirre))/(max(piirre)-min(piirre)) ongelmana on poikkeavien näytteiden (outliers) aiheuttava varsinaisten luokkanäytteiden hajonnan pieneneminen ja tätä kautta luokkaerottelun mahdollinen heikentyminen Yksikkövektorinormalisointi skaalataan kukin piirrevektori yksikön mittaiseksi näytei_piirres = näytei_piirrea/(näytevektorin pituus) pituus voi olla euklidinen tai city-block (L2 tai L1) , tms. suosittu monissa koneoppimisalgoritmeissa 0.7 1.0 x2 x2 0.2 1.0 0.05 1.7 0.0 x1 x1

4 Datanäytteiden piirteiden skaalaus/normalisointi (3)
Keskiarvon normalisointi = jokaisen piirteen keskiarvo nollataan näytei_piirres = (näytei_piirrea-keskiarvo(piirre))/(max(piirre)-min(piirre)) x2 x2 x1 x1 Jakauman normalisointi = jokaisen piirteen keskiarvo asetetaan nollaan ja varianssiksi 1 (siis kunkin piirteen jakauman parametreiksi m = 0 ja s2 = 1) tarpeellinen esikäsittely mm. neuraalilaskennassa ja perceptroneissa ja hyödyllinen mm. logistisessa regressiossa ja tukivektorikoneissa (SVM) x2 m = 0, s2 = 1 x2 x1 m = 0, s2 = 1 x1

5 Skaalaamattomat/normalisoimattomat Yksikkövektorinormalisoidut
Datanäytteiden piirteiden skaalaus/normalisointi (4) Esikäsittelytapojen soveltuvuus riippuu datasta on tavallista testata datalle useampaa kuin yhtä esikäsittelymenetelmää tarkastellaan seuraavaa lääketieteellistä dataa, joka on esimerkkinä esikäsitelty kahdella tavalla, skaalaten ja yksikkövektorinormalisoinnilla Skaalaamattomat/normalisoimattomat Skaalatut Yksikkövektorinormalisoidut Datanäyte Piirre 1 Piirre 2 Piirre 3 Piirre 4 1 498 340 75 8 047 0,99 0,19 0,18 0,97 0,06 0,04 0,01 1,00 2 201 88 34 3 310 0,40 0,03 0,08 0,37 3 355 415 14 6 005 0,70 0,24 0,71 0,07 0,00 4 33 49 428 0,11 5 374 1 369 291 5 017 0,74 0,85 0,72 0,58 0,26 0,96 6 152 1 161 304 2 358 0,30 0,75 0,44 0,89 7 505 388 80 8 317 0,22 0,05 8 266 210 35 3 777 0,53 0,10 0,42 9 376 516 20 6 136 10 70 120 479 0,14 11 386 1 602 335 5 091 0,76 0,83 0,59 0,95 12 197 1 411 390 2 597 0,39 0,87 0,27 0,47 0,13 13 678 81 7 710 0,92 0,09 73 3 689 0,17 0,41 0,02 15 444 16 5 397 0,25 0,63 110 478 17 1 606 404 5 194 0,60 0,29 18 1 480 327 2 738 0,81 ...

6 Datanäytteiden piirteiden skaalaus/normalisointi (5)
Tarkastellaan eräitä edellisen sivun skaalausten ns. scatter plot -graafeja valituille piirrepareille datan rakenteiden karkean tarkastelun motiivilla toteamme tuloksissa mahdollisia luokkarakenteita poikkeavasti paljastavia eroja huom. myöhemmin dimensionaalisuuden vähennystekniikoiden yhteydessä ei rajoituta pelkkiin piirrepareihin Skaalaus Yksikkövektorinormalisointi

7 Datanäytteiden piirteiden skaalaus/normalisointi (6)
Skaalausta/normalisointia ei välttämättä tarvita, jos käytössä naivi Bayesin luokittelu, päätöspuut, satunnaismetsät, ja tietyin edellytyksin yhdistelmäluokittelija regressiomenetelmät eivät välttämättä edellytä skaalausta/normalisointia toisaalta toteutussyistä niidenkin syötteet voi olla järkevää skaalata tai normalisoida Yleinen kardinaalimunaus esikäsittelyn käytössä on normalisoida/skaalata suunnitteluprosessin alussa koko käytettävissä oleva näytedata ennen jakamista opetus-, validointi- ja testijoukkoihin Oikea menettely on tehdä ensin jako opetus-, validointi ja testijoukkoihin ja määrittää sitten skaalaus/normalisointitekijät pelkästään opetusdatasta ja käyttää tätä tietoa sitten validointi- ja testijoukkoihin

8 Ohjaamaton oppiminen & ryvästys & dimensionaalisuuden vähentäminen (1)
Usein törmätään tilanteisiin, joissa ei ole olemassa valmiiksi luokiteltua opetusdataa tai tietoa mahdollisesta luokkarakenteesta jos luokkien määrästä on jokin käsitys, ryvästysmenetelmillä voidaan yrittää jaotella data samankaltaisten näytteiden klustereihin jos datan rakenne on arvoitus, sen selvittämiseen voi lähteä dimensionaalisuuden pudotusmenetelmin, jotka tukevat visualisointia ohjaamattoman oppimisen ongelma tieto luokista tai selitettävästä muuttujasta kategorioiden lukumäärästä edes jokin tieto klusterointi- dimensioiden pudotusongelma ...datassa saattaa olla edes jotain rakenteellisuutta koneoppimisongelma ei tietoa luokista, mutta rakennetieto olisi hyödyksi ohjatun ryvästys? häh?

9 Ohjaamaton oppiminen & ryvästys & dimensionaalisuuden vähentäminen (2)
Ryvästys on tärkeä ohjaamattoman oppimisen menetelmäjoukko, sillä vaikka syvät neuroverkot ovat erinomaisia luokittelussa, niin ryvästyksessä niihin pohjautuvat ratkaisut eivät ole (ainakaan vielä) menestyneet, ja tuollaiset ratkaisut ovat vahvasti lainanneet vakiintuneista ryvästysratkaisuista Dimensioiden vähentämisen ja ryvästyksen ero ryvästyksen motiivi on datan rakenteiden paljastaminen dimensionaalisuuden vähentämisen tarkoituksena on korkeadimensioisen datan kuvaaminen pienempään määrään dimensioita säilyttäen datan rakennetieto: käyttö usein ryvästystä edeltävänä askeleena Dimensionaalisuuden vähentämisen perusteena on havainto, että korkeadimensioinen näytedata ei sijaitse satunnaisesti data-avaruudessa, vaan on jollakin tavalla rakenteista korkeadimensioinen piirrevektori alempidimensioinen piirrevektori

10 Ryvästys (1) Koneoppimisen yhteydessä ryvästystä käytetään tutkivana
menettelynä, jolla nähdään, mitä näytteistöstä paljastuu sovelluksia mm. suositteluratkaisuissa, markkinatutkimuksissa, sosiaalisten verkostojen analysoinnissa (ja hyödyntämisessä), hakukoneissa, lääketieteen kuva-analyyseissa, yms. Tuloksiin vaikuttavat mm. datan esitystapa/käytetyt piirteet (ääretön määrä tarjolla) käytetty etäisyysmitta (muutama vaihtoehto yleisesti käytössä) ryvästysalgoritmi (tarjolla > ) Mikä ratkaisee, onko jokin alla olevista oikeampi kuin jokin muu? oletettu kaksi luokkaa oletettu viisi luokkaa oletettu kymmenen luokkaa x2 x2 x2 x1 x1 x1

11 Ryvästys (2) Ryvästysongelman ratkaisussa valittavana on
esitystapa, esim. piirteet, jotka kuvaavat ongelmaan liittyviä seikkoja mitä suurempaan piirteiden määrään päädytään, sitä enemmän datanäytteitä tarvitaan ryvästysalgoritmien onnistuneeseen toimintaan... etäisyysmitta, jonka avulla arvioidaan näytteiden samankaltaisuutta etäisyysmitan haasteena voivat olla eri piirteiden vaihtelevat dynamiikat, esim. jos näytteiden massat vaihtelevat välillä 0-512g, volyymit m3, ja reikien lukumäärät 0-3, tarvitaan skaalausta (yhteismitallistamista), jotta suurimman arvoalueen piirre ei dominoi ryvästyskriteeri, joka vastaa ymmärrystä näytedatan rakenteista juovaklusterit, ympyrät, kehärakenteet,... katso esimerkkejä alla ihmisen tulkinnan kannalta mahdollisesti järkevistä ryvästyksistä ryvästysalgoritmi, joka sopii tarkasteltavalle ongelmalle ja näytedatalle onnistumismittari, jonka avulla ryvästysongelman ratkaisuun liittyvää iterointia voidaan automatisoida x2 x2 x2 x2 x1 x1 x1 x1

12 Ryvästys (3) Etäisyysmitalla voi sovelluksessa olla aivan keskeinen merkitys alla käytetyt piirteet on skaalattu eri kerroilla hieman poikkeavasti olisiko ryvästyksessä käytettyä etäisyysmittaa myös muutettava? jos on, niin mistä sellainen tieto tulee? x2 x2 x1 x1 Ryvästysmenetelmät löytävät ryppäitä myös silloin, kun niitä ei välttämättä ole on olemassa keinoja arvioida, onko tulos sattuman tuotosta vai ei Myös ihmisellä on taipumus nähdä ryppäitä miltei missä datassa hyvänsä oikealla Oulun omakotitalokauppojen neliöhinnat 2017 vs. rakennusvuodet

13 Ryvästys (4) Esimerkkejä ryvästysongelmista kauppa
etukorttiasiakkaiden ryhmittely aiemman asiointihistoriansa perusteella markkinointikampanjoiden kohteiksi autovakuutusasiakkaiden vakuutushinnoittelu tuotteiden sijoittelu mitatun ostoskäyttäytymisen mukaisesti lääketiede poikkeavien näytteiden tai henkilöiden tunnistaminen kudosnäytteiden ryhmittely Teollisuus ja logistiikka kunnossapidon signaalianalytiikka: poikkeamien havaitseminen tilausten ryhmittely kuljetuksiin koulutus poikkeamien tunnistus toimenpiteitä varten erään sovelluksen koneellisesti analysoitava data ”ihmisystävällinen demonstraatio”

14 Ryvästys (5) Ryvästysmenetelmät jakavat datanäytteet ryhmiin, joiden sisällä ne ovat samankaltaisempia, kuin niiden välillä Ryvästysmenetelmille on useita kategorisointeja, joita voi käyttää valittaessa menetelmää sopimaan käsillä olevaan ongelmaan hierarkkiset ja osittavat menetelmät: näytteistön ryppäiden lukumäärä on pohjatasolla näytteiden määrä tai annettu etukäteen (esim k=7) yksikäsitteiset ja sumeat menetelmät: näyte voi kuulua vain yhteen tai useaan ryppääseen kerrallaan (näytteen todennäköisyys kuulua kuhunkin klusteriin on 1 tai välillä [0,1]) Miten tahansa menetellään, ryvästämisen jälkeen tarvitaan aina tarkastelu ovatko saadut ryppäät sattuman tuotosta vai todellisia rakenteita? onko ryppäiden lukumäärä sovelluksen kannalta järkeenkäypä? voisiko ryvästystulos olla jotenkin parempi? Oikealla k-means (k=2) –ryvästyksen tulos kahdelle autolle talvelta , kun piirteet ovat olleet polttoaineen kulutus, ulkolämpötila liikkeelle lähdettäessä, matka-aika ja matka, mutta ei autotietoa huom: neljä piirrettä, klusterointitulos projisoitu kaksiulotteiseen koordinaatistoon mistä tulos ehkä kertoo?

15 Ryvästysmenetelmät ja näytedata (1)
Ryväskeskusmenetelmät esim. k-means –ryvästys mittaa näytteiden samankaltaisuutta ryväksen keskustan suhteen iteratiivinen optimointi lähtien etukäteen ilmoitetusta ryväksien lukumäärästä soveltuvat suurille datamassoille, pienten näytemäärien kanssa riskaabeleita Hierarkkiset liittyvyysmenetelmät: data-avaruudessa lähellä toisiaan sijaitsevat näytteet oletetaan samankaltaisemmiksi iterointi etenee joko data-avaruuden pilkonnalla tai yhdistelemällä yksittäisistä näytteistä lähtien tuloksia helppo tulkita, mutta menettelyt skaalautuvat huonosti isoille datamassoille Bayesilaiset menetelmät esim. Gaussian mixture models ja expectation maximization –menetelmä mitataan näytteiden todennäköisyyttä olla samasta jakaumasta otettuja ylisovittumisen vaaran vuoksi edellyttävät suuria näytemääriä

16 Ryvästysmenetelmät ja näytedata (2)
K-means –menetelmä toimii karkeasti seuraavasti valitaan ryväksien lukumäärä k valitaan näytedatasta satunnaiset k näytettä ryväskeskustoiksi kytketään kukin näyte sitä lähinnä olevaan ryväskeskustaan määritetään uudet ryväskeskustat näytteiden keskiarvojen mukaisiksi jos yksikin ryväskeskusta muuttui, siirry vaiheeseen 3 Alla piirteet x1 ja x2, ja ryvästykseen k-means –menetelmällä valittu k=4; miksi kussakin tapauksessa on käynyt kuten on käynyt? x2 x2 x1 x1 x2 x2 x1 x1

17 Yksinkertainen k-means esimerkki
0. annettuna data [ ] valitaan k=2, valitaan satunnaisesti ryväskeskustoiksi m1 = 6 ja m2 = 20 kytketään datanäytteet lähimpiin ryväskeskustoihinsa R1 = [ ] ja R2 = [ ] uudet ryväskeskustat keskiarvoina m1 = 7 ja m2 = 23 todetaan ryväskeskustan muuttuneen, joten askeleeseen 3 3. kytketään datanäytteet lähimpiin ryväskeskustoihinsa todetaan ryväskeskustan pysyneen ennallaan, joten ryvästys on valmis

18 Ryvästysmenetelmät ja näytedata (3)
Hierarkkinen klusterointi voi toimia esim. seuraavasti valitaan jokainen näyte omaksi ryppääkseen, joten n:n näytteen joukosta saadaan n ryvästä haetaan valitulle ryppäälle samankaltaisuusmitan avulla lähin rypäs yhdistetään ryppäät jos jäljellä on yli yksi ryväs, mennään askeleeseen 2 Tulos voi näyttää esim. tältä, toki riippuen valitusta ryvästyksen tasosta yleensä ihminen arvioi…. x2 x2 ns. dendrogrammi x1 x1 x2 x2 x1 x1

19 Yksinkertainen hierarkkisen ryvästyksen esimerkki
0. annettuna data ensimmäiset ryppäät [2] [3] [4] [6] [8] [10] [11] [12] [20] [24] [25] valitaan tarkasteltavaksi [12]; sitä lähin on [11] nyt ryppäät ovat [2] [3] [4] [6] [8] [10] [11 12] [20] [24] [25] ryppäälle [11 12] lähin on [10], ja yhdistetään nyt ryppäät ovat [2] [3] [4] [6] [8] [ ] [20] [24] [25] Seuraavat askeleet [2] [3] [4] [6] [ ] [20] [24] [25] [2] [3] [4] [ ] [20] [24] [25] [2] [3] [ ] [20] [24] [25] [2] [ ] [20] [24] [25] [ ] [20] [24] [25] [ ] [20] [24 25] [ ] [ ] [ ] Sekvenssi on helppo visualisoida 12 11 10 8 6 4 3 2 24 25 20

20 Ryvästysmenetelmät ja näytedata (4)
Poikkeavat havainnot (outliers) toisinaan jopa yksittäiset näytteet tai muutaman datanäytteen joukot voivat vaikuttaa ryvästykseen dramaattisesti; esim. k-means –ryvästyksessä jokainen piste vaikuttaa yhtäläisesti ryväskeskustan laskennassa tällöin on analysoitava, vaikuttaako näytteiden poikkeavuuteen jokin ongelma esitystavassa, esim. puuttuuko jokin olennainen piirre hyvän selityksen löytyessä korjattu tai uusi piirre voidaan kytkeä ryvästykseen tai outlier –näytteet voidaan eliminoida materiaalista, mutta sellaisia saattaa tulla vastaan myöhemmin luokittelussa, mikä voi olla ikävä vanha tuttavuus... huom: outlier-analyysi on oma alansa   outlier-näytteet voivat vaikuttaa merkittävästi esim. luokittelijan opetusmateriaalin virheisiin Mihin ryppääseen nämä näytteet olisi sijoitettava? Ihmiselle helposti tulkittava tapaus voi olla vaikea k-means ryvästykselle x2 x1

21 Ryvästysmenetelmät ja näytedata (5)
k-means ja hierarkkisen ryvästyksen keskeinen 1. toteutusero K-means –ryvästyksen laskennallinen kompleksisuus on O(n) eli lineaarinen  skaalautuu suoraan aineiston määrään verrannollisesti hierarkkisen ryvästyksen laskennallinen kompleksisuus on O(n2) eli kvadraattinen  näytemäärän kaksinkertaistuminen nelinkertaistaa laskennan 2. tulosero K-means –ryvästyksen alkaessa satunnaisvalinnalla eri suorituskertojen tulokset voivat erota toisistaan hierarkkisen ryvästyksen lopputulos on sama Yhteisenä piirteenä on, että yhdenkin näytteen lisääminen tai poistaminen saattaa vaikuttaa lopputulokseen hyvinkin merkittävästi


Lataa ppt "Hyvä tuntea normalisoinneista/skaalauksista"

Samankaltaiset esitykset


Iklan oleh Google