Rss

  • linkedin

Archives for : Algoritmit

Analytiikan alalajit

Sijoittajamestari Ray Dalio kokosi elämässään oppimansa asiat teokseen Principles ja päätökseen tekoon liittyvä ensimmäinen periaate kuuluu näin:

”Recognize that 1) the biggest threat to good decision making is harmful emotions, and 2) decision making is a two-step process (first learning and then deciding).”

Ray Dalio

Datan analysointi tai datatieteily liityy nimenomaan ympäristöstä oppimiseen ilman tunteiden aiheuttamia vääristäviä tunteita niin että voitaisiin tehdä mahdollisimman valistuneita päätöksiä.

Kun tehdään liiketoimintaa tukevaa analyysiä, datan analysointi jaetaan tyypillisesti neljään alalajiin riippuen, mitä työllä tavoitellaan. Eri konsultit voivat järjestellä ne hieman eri tavoilla, mutta itse mielelläni järjestäen ne seuraavasti analyyttisen haastavuuden mukaan helpoimmasta vaikeimpaan:

  1. Kuvaileva analytiikka (Mitä tapahtui?)
  2. Ennakoiva analytiikka (Mitä tulee tapahtumaan?)
  3. Diagnosoiva analytiikka (Miksi jotain tapahtui?)
  4. Ohjaileva analytiikka (Mitä kannattaisi tehdä?)

Kolme ensimmäistä liittyy oppimiseen ja viimeinen päätöksentekoon opitun pohjalta.

Hukkuvat jäätelönsyöjät

Avataan sitten näitä alalajeja esimerkin avulla. Hukkuvat jäätelönsyöjät on monelle jo liiankin tuttu esimerkki riippuvuussuhteista, mutta ratsastetaan nyt vielä kerran sillä, koska se kaikessa tomppeluudessaan kuitenkin hyvin demonstroi oleellisia pointteja.

Olkoon meillä toimeksiantona jäätelökioskiyrittäjän auttaminen ja myyntiä ilmiönä kuvaa seuraava graafi.

Lämpötilan nousu aiheuttaa enemmän sekä jäätelön myyntiä että hukkumiskuolemia. Hukkumisen ja jäätelön myynnin välillä ei ole syy-seuraus-yhteyttä.

Graafissa olevien syy-seuraus-yhteyksien pohjalta olen nyt simuloinut 300 havaintoa, jonka kanssa seuraavissa esimerkeissä operoidaan.

Kuvaileva analytiikka

Kuvaileva analytiikka vastaa siis kysymykseen ”Mitä tapahtui?”. Vastaus löytyy raporteista, joissa on tilastollisista tunnuslukuja ja graafisia kuvioita. Yritysmaailmassa tätä analytiikan alalajia kutsutaan termillä Business Intelligence (BI). Meidän dataa 300 aiemmasta viikkohavainnosta kuvaavat esim. seuraavat tunnusluvut.

TEMP (C)SALES (EUR)DROWNED
Keskiarvo19.6130351.15
Keskihajonta5.3413153.52

Lisäksi mielenkiinnon mukaan tunnuslukuja voisi vertailla eri ryhmien, esim. viikonpäivien tai jäätelömakujen, välillä.

Keski- ja hajontalukujen lisäksi havaintoja voi kuvata muuttujien välisillä korrelaatiokertoimilla ja graafisilla kuvaajilla. Seuraava graafi ei ole välttämättä kauneimmasta päästä, mutta minulle sen piirtäminen on osa perusprosessia uuteen aineistoon tutustuttaessa. Siinä on paljon informaatiota tiiviisti ilmaistuna ja sen saa tulostettua R-ohjelmistolla yhdellä komennolla.

Lävistäjällä ovat jokaisen muuttujan omat jakaumat. Vasemmalla alhaalla ovat parittaiset sirontakuviot. Oikella ylhäällä ovat parittaiset korrelaatiokertoimet ja niiden merkitsevyystasot tähtinä.

Kuvaajasta nähdään mm. seuraavaa:

  • Lämpötilan ja myynnin havainnot ovat jakautuneet symmetrisesti keskiarvon ympärille ja muistuttaa normaalijakaumaa. Hukkumisten lukumäärän jakauma on vino.
  • Kaikkien muuttujien väliset korrelaatiokertoimet (luvut oikealla ylhäällä) ovat positiivisia, joten muuttujilla on ollut taipumus saada isoja arvoja yhtäaikaa.
  • Kaikki muuttujien väliset korrelaatiokertoimet ovat tilastollisesti erittäin merkitseviä (punaiset tähdet), joten ei ole uskottavaa että korrelaatiokertoimet poikkeavat nollasta vain sattumalta.
  • Suora viiva kuvaa hyvin myynnin ja lämpötilan välistä yhteyttä. Hukkumisen ja muiden muuttujien välisen yhteyden kuvaamiseen suora viiva ei ole paras mahdollinen (kuviot vasemmalla alhaalla).

Kuvaileva analytiikka keskittyy kuvailemaan historian tapahtumia, mutta vastuu siitä, mitä tulee tapahtumaan tulevaisuudessa jää täysin raportin lukijalle.

Ennakoiva analytiikka

Vaikka historiakin on mielenkiintoista, vielä kiinnostavampaa liiketoiminnan kannalta on se mitä on odotettavissa tulevaisuudessa. Mennyt ei ole tae tulevasta, mutta historiaan perustuen voi tehdä valistuneita arvioita eri tulevaisuuden skenaarioiden todennäköisyyksistä.

Esimerkissämme mielenkiinnon kohteena on ennustaa tulevan viikon jäätelön myyntimäärä. Pelkään BI-raporttiin (kuvaileva analytiikka) perustuen paras arvaus olisi historiallinen keskiarvo 13035 euroa. Simuloin tässä 100 uutta havaintoa tulevista viikoista ja historialliseen keskiarvoon perustuva arvaus ei ole hassumpi: keskimäärin ennuste on 7.3% pielessä.

Olisimme voineet kuitenkin ottaa askel eteenpäin ennakoivan analytiikan puolelle ja muodostaa regressiomalli, jossa hyödynnetään tietoa päivän lämpötilasta. Lämpötilan ja myynnin välinen korrelaatiokerroinhan oli varsin suuri, 0.62. Tällaisen mallin tarjoama paras arvaus seuraavan viikon myynnistä menee nyt uusilla havainnoilla keskimäärin 6.5% pieleen.

Vaikka hukkumisilla ei ole syy-seuraus-suhdetta myyntiin, ei sen hyödyntämiselle ennustamisessa ole estettä. Jos sen lisää toiseksi selittäjäksi samaan regressiomalliin lämpötilan kanssa ei siitä iloa kuitenkaan ole, koska lämpötila jo yksinään selittää hukkumisten ja myynnin välisen yhteyden. Mutta mikäli vahingossa olisimme hukanneet historian lämpötilahavainnot, olisi hukkumiskuolemat hyvä apumuuttuja. Pelkästään edellisen viikon hukkumisiin perustuvat ennusteet ovat tässä tapauksessa 6.7% pielessä. Lopuksi vielä yhteenveto, kuinka tarkasti saatiin 100 uutta myyntihavaintoa ennustetttua.

EnnustajaKeskimääräinen virhe
Oma historia7.33%
Lämpötila6.45%
Hukkumiset6.73%
Lämpötila+Hukkumiset6.43%

Regressiomallien lisäksi muita ennustamisen työkaluja ovat aikasarja-analyysi silloin kun kiinnitetään erityistä huomiota ajassa systemaattisesti toistuviin kuvioihin. Sitten kun käsillä on ajassa stabiili ilmiö, mutta paljon potentiaalisia selittäjiä sekä paljon dataa, arvoon arvaamattomaan nousevat erilaiset koneoppimisalgoritmit kuten neuroverkot tai päätöspuut. Mikäli useiden potentiaalisten selittäjien lisäksi meillä on hieman ymmärrystä näiden selittäjien keskinäisistä riippuuvuussuhteista, voidaan dataa ja asiantuntemusta yhdistää Bayes-verkkojen avulla tai simuloimalla maailman menoa ymmärryksemme rajoissa.

Käyttipä mitä tahansa näistä ennustusmenetelmistä tai jotain niiden yhdistelmää, meillä on kaksi ikävää kiusaa:

  • Ylisovittaminen: tietämättämme yritämme tulevaisuutta ennustaa sellaisilla historiallisilla piirteillä, jotka ovat toteutuneet aiemmin vain sattumalta eivätkä kuvaa ilmiötä tulevaisuudessa. Tätä ongelmaa olen ruotinut aiemmin tässä kirjoituksessa.
  • Pysyvät muutokset muuttujissa, joita ei olla aiemmin mitattu. Esimerkiksi lakimuutokset voivat ohjata ihmisiä käyttäytymään tulevaisuudessa eri tavalla kuin mihin aiemmin olemme tottuneet. Tätä ongelmaa olen käsitellyt tarkemmin tässä kirjoituksessa.

Kiitos mm. edellä mainittujen haasteiden ennakoivassa analytiikassa vaaditaan jo huomattavasti korkeamman tason koulutusta kuin kuvailevassa analytiikassa.

Diagnosoiva analytiikka

Diagnosoivalla analytiikalla pyritään löytämään asioiden välisiä syy-seuraus-yhteyksiä. Tieteellisen uteliaisuuden lisäksi liiketoiminnan kannalta kiinnostavaa voisi olla selvittää, mitä asioita muuttamalla saisimme myyntiä kasvatettua. Ennakoivan analytiikan maailmassa korrelaatiokertoimet antoivat hyviä vinkkejä, mitä muuttujia voisimme hyödyntää ennustamisessa. Kun tavoitteena on puuttua itse peliin asioiden muuttamiseksi, vain korrelaatioita tuijottamalla voisimme päätyä raportoimaan jäätelöyrittäjälle: ”Myynnin edistämiseksi kannattaa alkaa hukuttamaan ihmisiä”. Tämähän ei alkuunkaan pidä paikkansa niinkuin kohta tullaan näkemään.

Varmin tapa syy-seuraus eli kausaaliyhteyden selvittämiseksi on tehdä satunnaisettu koe riittävällä määrällä toistoja. Näistä klassinen esimerkki on antaa satunnaisesti toisille koehenkilöille oikeaa lääkettä ja toisille koehenkilöille lumelääkettä. Vaikutuksia vertailemalla voidaan saada selville, onko lääkkeessä oikeasti tehoa. Modernimpi esimerkki on verkkokaupan käyttöliittymän A/B-testaus, jossa satunnaisesti toisille asiakkaille nettisivulle näytetään punainen nappi ja toisille sininen nappi ja vertaillaan vaikuttaako napin väri sen klikkausten määrään.

Mikäli satunnaistetut kokeet eivät ole mahdollisia, voidaan yrittää metsästää luonnollisia kokeita. Esimerkiksi voidaan ottaa seurantaan henkilöt, jotka ovat juuri ja juuri päässeet läpi lääkiksen pääsykokeista ja vertailla tätä joukkoa niihin jotka jäivät niukasti ulos lääkiksestä. Voidaan olettaa että pienet erot pääsykokeen pistemäärissä jouhtuvat suurelta osin satunnaistekijöistä ja näin ollen on luotettavaa tehdä päätelmiä lääkiksen kausaalivaikutuksista loppuelämän onnellisuuteen.

Viimeisimpien vuosikymmenien aikana on erityisesti Judea Pearlin johdolla kehitetty kausaalimalleja, jotka auttavat tekemään kausaalipäätelmiä myös silloin kun käytössä havaittua dataa, mutta ei voida tehdä satunnaistettuja kokeita. Niissä aluksi pitää pystyä aiempiin tutkimuksiin perustuen rakentamaan graafi, josta näkee mitkä muuttujat vaikuttavat mielenkiinnon kohteina oleviin muuttujiin. Mikäli tärkeimmät näistä taustamuuttujista on mitattu, kausaalipäätelmät voivat olla mahdollisia.

Meidän kolmen muutttujan tapauksessa ilmiötä kuvaava graafi on esitelty kirjoituksen alussa. Tässä hyvin yksinkertaisessa maailmassa pystymme tutkimaan hukkumisten kausaalityhteyttä myyntiin. Kun laitamme sekä lämpötilan, että hukkumiset samaan regressiomalliin selittämään myyntiä, hukkumisella ei ole mitään selitysvoimaa, koska lämpötila on kaiken juurisyy. Näin ollen data näyttää, että ihmisiä on aivan turha alkaa hukuttamaan myynnin edistämiseksi.

Monimutkaisempien ilmiöiden tutkiminen kausaalimalleihin tukeutuen on itselläni vielä vaiheessa, joten ei kannata puhua tässä siitä sen enempää. Silti osa omaa analyysiprosessia on hahmotella graafiksi erilaisia potentiaalisia taustalla lymyileviä syy-seuraus-yhteyksiä, joita voi sitten asiaan paremmin vihkiytyneet haastaa. Mikäli mielenkiinto kausaalimalleihin heräsi, kannattaa aloittaa Judea Pearlin tietokirjasta ”The book of why”, josta Kimmo Pietiläinen on tehnyt myös suomenkielisen käännöksen: ”Miksi – syyn ja seurauksen uusi tiede”.

Ohjaileva analytiikka

Ohjaileva analytiikka on tässä lajittelussa laitettu viimeiseksi, koska pohjalla pitää olla alemman tason analytiikkaa päätöksenteon tueksi. Täältä huipulta kannattaa kuitenkin aina aloittaa pohtimalla, mitä halutaan tehdä. Mihin liittyviä päätöksiä analytiikalla halutaan parantaa? Esimerkkejä:

  • Halutaan kehittää jäätelönmyynnin logistiikkaa: miten paljon mitäkin makua pitäisi toimittaa kioskille, että asiakkaat saavat mitä haluavat, mutta jäätelöä ei tarvitsisi kohtuuttomia määriä pakastimessa varastoida. – > Ratkaisu: Päätöksenteon tueksi tarvitsemme ennakoivaa analytiikkaa, jolla arvioidaan kuinka paljon mitäkin makua menee ensi viikolla.
  • Halutaan lisätä jäätelön kysyntää. -> Ratkaisu: Diagnosoiva analytiikka. Johtopäätös on se, että korkeammat lämpötilat johtaisivat korkeampaan myyntiin. Mutta koska kaikki säiden hallitsemiseen kykenevät tahot ovat niin kallispalkkaisia, ei tällaista hanketta kannata toteuttaa. Laitetaan resurssit muun toiminnan kehittämiseen.

Kun pohjalla on riittävästi oppia analytiikan alemmilta tasoilta, ohjaileva analytiikka on pääasiassa erilaisia optimointialgoritmeja. Lisäksi on olemassa itseoppivia päätöksentekoalgoritmeja, jotka päivittävät omaa ymmärrystä aina päätöksestä tulleen palautteen perusteella.

Päätöksenteon optimointi on liian laaja aihe alkaa tässä syvemmin käsiteltäväksi, mutta se vaanii kaiken liiketoiminta-analytiikan taustalla. Ennen hosumista liian pitkälle datan kanssa, olisi hyvä ymmärtää mitä päätöksiä halutaan parantaa. Se mahdollistaa, että analytiikan alimmalta portaalta ponnistaessa edetään oikeaan suuntaan. Toisinaan matkalla opitaan jotain uutta, jonka vuoksi kurssia joudutaan kääntämään. Tämä tekee seikkailusta kuin seikkailusta entistä jännempää.

Lopputurinat

Dataan pohjautuvalla analytiikalla on useita eri tasoja ja niiden sisällä eri etenemispolkuja. Jotta varmistetaan datan penkomisen hyödyllisyys, aluksi pitäisi kirkastaa, mitkä päätöksentekoprosessit yrityksessä kaipaavat hiomista. Sitten valitaan sellainen polku, jota olemassa olevan datan pohjalta on mahdollista edetä. Lopulta päätöksenteko on kaksivaiheista: ensin opitaan, sitten päätetään.

Facebooktwitterredditpinterestlinkedinmail

Etäisyydet puolueista vaalikoneessa

Helsingin Sanomien vaalikoneen ympärille syntyi pientä hässäkkää kun kansanedustaja Jyrki Kasvi huomasi, ettei hän nouse äänestäjän suosituslistalla ylimmäksi, vaikka äänestäjä vastaisi kaikkiin kysymyksiin täsmällisesti samoin kuin itse Kasvi.

Hesari lähti julkisesti avaamaan tätä ilmiötä ja selvisi että Jyrki Kasvi on Hesarin käyttämän algoritmin mielestä puolueista lähempänä Feministipuoluetta kuin edustamaansa Vihreää liittoa. Ehdokassuositukset taas jäljittelevät Suomen vaalikäytäntöä ja se antaa ensimmäisiksi suosituksiksi parhaat yksittäiset osumat ”lähimmästä” puolueesta ja vasta alempana puolueriippumattomasti lähimmät yksittäiset ehdokkaat. Kohun myötä Hesari tässä kirjoituksessa avasi käyttämänsä algoritmin toimintaa ja tarjosi dataa Uudenmaan vaalipiirin Feministipuolueen sekä Vihreän liiton ehdokkaiden vastauksista.

Seuraavassa esitellään muutamia vaihtoehtoisia tapoja ehdokkaiden sekä puolueiden läheisyyden mittaamiseen, käydään läpi Hesarin algoritmissa tehdyt valinnat ja katsotaan, kuinka Jyrki Kasville olisi käynyt vaihtoehtoisilla algoritmeilla.

Kahden yksittäisen ehdokkaan välinen etäisyys

Ehdokkat vastaavat Hesarin vaalikoneessa 30 kysymykseen, joten ehdokkaiden vastausten välistä etäisyyttä toisistaan mitataan 30-ulotteisessa avaruudessa. Tämä ei suinkaan ole yksiselitteinen tehtävä. Moniulotteisten etäisyyden mittaamiseen on olemassa useita eri mittareita. Näistä tunnetuimmat ovat Euklidinen-etäisyys (katso kaava) ja Manhattan-etäisyys (tai ”taksimetriikka”,katso kaava ja havainnollistus). Kun etäisyyttä mitataan Euklidisella etäisyydellä, peruskoulussa opitut geometrian lait pätevät. Datan analysointi ei kuitenkaan ole eksaktia matematiikkaa. Manhattan-etäisyydellä on se etu, ettei se ole niin herkkä reagoimaan yksittäisiin poikkeaviin havaintoihin.

Alla olevassa kuvaajassa on (kuviteltuna) esimerkkinä kahdelta ehdokkaalta vastaukset kahteen kysymykseen. Ensimmäinen ehdokas on antanut molempiin kysymykseen vastauksen 1 (”Täysin eri mieltä”). Toinen ehdokas on vastannut 1. kysymykseen 4 (”Jokseenkin samaa mieltä”) ja 2. kysymykseen 5 (”Täysin samaa mieltä”). Näiden kahden pisteen euklidinen etäisyys (punainen jana) on 5. Tämän voi varmistaa Pythagoraan lauseen avulla: $3^2 + 4^2 = 25 = 5^2 $. Eli kaikista janoista muodostuvan kolmion kateettien neliöiden summa on sama kuin hypotenuusan neliö. Geometrisessa tulkinnassa on kuitekin muistettava, että siinä täytyy olettaa vastausvaihtoehtojen välimatkat yhtä pitkiksi. Eli esimerkiksi ero ”Täysin eri mieltä” ja ”Jokseenkin erimieltä” välillä on sama kuin ”En osaa sanoa” ja ”Jokseenkin samaa mieltä” välillä.

Kahden pisteellä merkityn ehdokkaan välinen etäisyys eri mittareilla 2-ulotteisessa koordinaatistossa.

Manhattan-etäisyys taas määritellään mustien janojen määrittelemän ”kiertoreitin” pituutena. Tämä on 3 + 4 = 7. Hesari on päätynyt käyttämään vaalikoneen algoritmissaan tätä Manhattan-etäisyyttä kahden yksittäisen ehdokkaan välisen etäisyyden mittaamiseen.

Lopuksi vielä huomio, että kumpikaan esitellyistä etäisyysmittareista ei ota huomioon kysymysten välistä korrelaatiota. Mikäli usea kysymys liittyy samaan teemaan, tämä teema tulee korostumaan myös etäisyysmittarissa.

Etäisyys ryhmästä

Kun kahden ehdokkaan välinen etäisyysmittari on päätetty, pitää seuraavaksi päättää kuinka etäisyys puolueeseen mitataan. Hesari on laskenut etäisyyden jokaiseen puolueen ehdokkaaseen erikseen ja ottanut näistä keskiarvon. Toinen vaihtoehto olisi määritellä ensin puolueryhmän keskipiste 30-ulotteisessa avaruudessa ja laskea sitten etäisyys tähän yhteen pisteiseen. Ryhmän keskipisteenkin voi määritellä usealla eri tavalla, mutta pitäydytään nyt yksinkertaisimmassa: lasketaan kaikkien vastauksien keskiarvo ryhmän sisällä.

Ero usean yksittäisen ehdokkaan etäisyyden laskemisen ja keskipisteen laskemisen välillä on ainakin se, että yksittäisten etäisyyksien tapa rankaisee vaihtelusta puolueen sisällä. Otetaan esimerkiksi kaksi kahden hengen puoluetta. Puolueen 1 edustajat ovat molemmat vastanneet kysymykseen saman vastauksen 2. Puolueen 2 edustajista toinen on vastannut samaan kysymykseen 1 ja toinen 3. Mikäli Jyrki Kasvi olisi vastannut kysymykseen myös 2, etäisyyttä puolueeseen 1 kertyy 0 + 0 = 0. Etäisyyttä puolueeseen 2 taas kertyy 1 + 1 = 2. Molempien puolueiden keskiarvo on kuitenkin sama 2, joten keskiarvoon ei etäisyyttä kerry kumpaankaan puolueeseen lainkaan. Alla oleva taulukko vielä kokoaa yhteen em. esimerkin tulokset.

Puolue Ehdokas1Ehdokas2KAEtäisyys
yksilöihin
Etäisyys
keskiarvoon
Puolue122200
Puolue213220

Yllä olevan eron syntyminen kuitenkin vaatii, että Jyrki Kasvi on vastannut kysymykseen juuri 2. Muilla vastauksilla eroa mittaustapojen välillä ei tässä esimerkissä synny.

Hesari on päätynyt algoritmissaan mittaamaan etäisyyttä yksilöiden etäisyyksien kautta.

Vastausten vaihtelu puolueen sisällä

Kun Hesarin algoritmi mittaa etäisyyttää koko puolueesta tavalla, joka oletettavasti suosii sisäisesti saman mielistä ryhmää, on kiinnostavaa kuinka yhdenmielisiä Feministipuolueen ja Vihreiden jäsenet ovat. Alla olevassa kuvaajassa on lasketty yksittäisen ehdokkaiden vastaajien etäisyydet Manhattan-etäisyydellä. Mitä punaisempi väri, sitä lähempänä kyseiset ehdokkaat ovat toisiaan. Jokainen ehdokkaan etäisyys itsestään on luonnollisesti 0, mikä näkyy punaisena halkaisijana vasemmasta alanurkasta oikeaan ylänurkkaan.

Ehdokkaat 1-10 kuuluvat feministipuolueeseen ja ehdokkaat 11-40 Vihreisiin. Vasemmassa alanurkassa oleva yhtenäinen punainen neliö (tai oikeammin Tanskan lippu yhden yksittäisen sooloilijan ansiosta) kertoo, että Feministipuolueen jäsenet ovat hyvin yhdenmielisiä keskenään. Vihreiden joukossa nähdään sekä punaista että sinistä, mikä viestii vastauksien eroista puolueen sisällä.

Ehdokkaiden etäisyys toistaan Manhattan-etäisyydellä mitattuna. Punainen väri viittaa samankaltaisuuteen ja sininen eroihin vastauksissa.

Tulokset eri mittareilla

Lopuksi kiinnostavaa on, että olisiko tulokset erilaisia, mikäli algoritmin kehityksessä olisi tehty erilaisia valintoja. Nykyinen algoritmi antaa tulokseksi, että Jyrki Kasvin läheisyys Feministipuolueen kanssa on 79.3% ja Vihreiden kanssa 77.4%. Tein laskelmat vaihtoehtoisilla aiemmin tässä blogitekstissä esitetyillä menetelmillä hyödyntäen muilta osin Hesarin käyttämää ajatusta samankaltaisuuden laskemiseen. Tulokset ovat alla olevassa taulukossa. Alkuperäisen menetelmän tulokset ovat vasemmassa ylänurkassa.

Yksilöetäisyys ->
Ryhmämittari
ManhattanEuklidinen
Yksittäiset ehdokkaatFem 79.3%, Vih 77.4%Fem 65.6%, Vih 65.5%
RyhmäkeskiarvoFem 79.8%, Vih 78.9%Fem 67.6%, Vih 71.8%

Ennakko-oletukseni oli, että siirryttäessä mittaamaan ryhmän etäisyyttä ryhmäkeskiarvolla Vihreät menisivät Feministien ohi, koska puolueen sisäisistä eroista ei enää rankaistaisi. Olin väärässä. Todellisuudessa Vihreät hieman kirivät, mutta häviävät edelleen Feministipuolueelle 0.9 % -yksiköllä.

Siirtyminen alkuperäisestä algoritmista Euklidiseen etäisyyteen tasoittaisi tilannetta enemmän. Feministipuolue voittaisi enää olemattomalla 0.1% – yksikön erolla. Mikäli muutettaisiin molempia mittaustapoja, lopulta Vihreät menisivät Feministipuolueen ohi paalupaikalle prosentein 71.8% – 67.6%.

Kehitysehdotuksia

Tässä Jyrki Kasvin tapauksessa oli hyvin pienestä kiinni, tuleeko Feministipuolue vai Vihreät voittajaksi puolueen läheisyyden vertailussa. Itse olisin algoritmin kehityksessä todennäköisesti lähtenyt liikkeelle etäisyydestä puolueen keskipisteeseen ja ainakin pohtinut puolueiden erilaisten kokojen ja kysymysten välisten korrelaatioiden huomioimista jollain tavalla. Oma tämän hetken ymmärrys aiheesta ei kuitenkaan riitä painavasti kritisoimaan algoritmin kehittäjän valintoja käytetyissä etäisyysmittareissa.

Huoleni koskee lähinnä vaalikoneen tapaa suosia ronskisti voittaja-puoluetta esiin nostetuissa ehdokkaissa nyt kun voittajapuolueen voi tiukoissa kisoissa ratkaista valinnat algoritmin kehityksessä tai muut satunnaistekijät.

Kun itse tein Hesarin vaalikoneen, klikkasin kolmen ylimmäksi nousseen ehdokkaat lisätiedot uusiin välilehtiin ja siirryin tutkimaan niitä. Ainakin itseltäni on mennyt täysin ohi, että alempana on saattanut olla muista puolueista ehdokkaita, jotka osuvat vielä paremmin omiin valintoihin. Ensimmäinen kehityskohde voisikin olla tämän asian selkeämpi viestiminen kiireiselle käyttäjälle.

Yleisemmällä tasolla tämä esimerkki havainnollistaa, kuinka todellisessa maailmassa, eksaktin matematiikan ulkopuolella, algoritmien kehitys on aina jossain määrin taidetta ja kehittäjän tekemät valinnat vaikuttavat jossain määrin tuloksiin. Tässäkin tapauksessa voittaja olisi ollut Vihreät, mikäli olisi käytetty ryhmäkeskiarvoja ja Euklidista etäisyyttä.

Mitä enemmän algoritmilla on vaikutusta ihmisiin, sitä tärkeämpää on niitä julkistaa ja altistaa kritiikille sekä kehotusehdotuksille. Tästä ryhdikäs hatun nosto Hesarille.

Facebooktwitterredditpinterestlinkedinmail

Itseään toistavat algoritmit

Ikääntymisen myötä olen tullut koko ajan laiskemmaksi etsimällä etsimään uusia bändejä kuuneltavaksi. Eräs syy, miksi tykkään Spotifyn musiikkipalvelusta on heidän ”Viikon suositukset” listansa.  Tälle listalle valikoituu biisejä, joista saattaisin heidän algoritmiensa mukaan tykätä viime aikojen musiikinkuuntelun perusteella. Tämä on erittäin kätevä tapa löytää uusia itselleen iskeviä bändejä. Tälläkin hetkellä luukutan lupaavan kuuloista metalliorkesteria ”Fight the Fight”, mihin en ihan heti olisi törmännyt ilman Spotifya.

Dataa omista ennusteista

”Viikon suositukset” -listaa tulee kuunneltua usein taustamusiikkina ilman, että skippailisin yli biisejä, vaikka ne eivät maistu eli ovat ns. vikasuosituksia. En tiedä, käsitteleekö Spotifyn algoritmi loppuunkuunneltuja biisejä todellisina musiikkimakuani kuvaavana havaintona, vaikka ne tulisi soittoon sen oman suosituksen kautta. Tämän takia olen hieman vainoharhaisesti pitänyt taukoja huonosti osuneiden viikkojen jälkeen ja kuunnellut vain itse valitsemaa musiikkia, ettei algoritmi vaan alkaisi opettaman itseään omilla virheillään.

Mitä haittaa siitä sitten oikeasti olisi, mikäli joku algoritmi ei tunnista itsensä syöttämiä havaintoja? Tätä lähdetään nyt selvittämään asuntohinta-aineiston avulla.

Hinta-arviot algoritmilla

Siinä ei varmaan ole mitään yllättävää että iso osa pörssissä tehtävästä kaupankäynnistä tulee automaattisesti hinnoittelua suorittavien algoritmien toimesta. Sama ajatus asuntokaupassa tuntuu hieman etäisemmältä, mutta leikitellään vähän ajatuksella.

Olen ollut kehittämässä muutama vuosi sitten ASLA -asuntolaskuria, joka pyrkii antamaan kerrostaloasunnoille markkinahinta-arvioita julkisen datan perusteella. Asuntojen hinnat määräytyvät lukuisten ihmisten mieltymysten ja preferenssien perusteella. ASLAn taustalla oleva algoritmi pyrkii käytettävissä olevan datan avulla muuttamaan kaupankävijöiden keskimääräisiä mieltymyksiä matemaattisiksi kaavoiksi. Mitä tapahtuisi, jos osassa kaupoista normaali tinkimisprosessi jäisi pois ja sekä myyjä että ostaja luottavat ASLAn arvioon tehden kauppansa mukisematta kyseisillä arvioilla?

Seuraavassa olen simuloinut tällaista prosessia niin että vuodesta 2014 alkaen osassa todellisista asuntokaupoista hinta korvataankin ASLAn käyttämän algoritmin arviolla (korvattavat valitaan satunnaisesti) ja joka vuoden päätteeksi algoritmi kouluttaa itseään lisää uudella kertyneellä datalla. Aineistona käytetään Helsingin yksiöitä ja otoskoko-ongelmien välttämiseksi mukana on vain kymmenen kaupankäyntimäärältään suosituinta postinumeroaluetta.

Kuvaajassa olevat viivat kuvaavat kolmea eri virheprosenttia vuosina 2014-2017:

  • Ristiinvalidointi (punainen): Etukäteisarvio algoritmin hinta-arvion ja todellisten hintojen keskimääräisestä prosentuaalisesta erosta. Ristiinvalidoinnin ideasta lisää tällä videolla.
  • Todellinen (vihreä): Algoritmin hinta-arvioiden ja todellisten, ihmisten määrittelemien hintojen, keskimääräinen prosentuaalinen ero
  • Näennäinen (sininen): Hinta-arvioiden ja havaittujen hintojen keskimääräinen prosentuaalinen ero, kun mukana on myös algoritmin avulla määritellyt kauppahinnat

Ensimmäisessä kuvaajassa (ylhäällä) kukaan kaupankävijä ei käytä ASLAa vaan kaikki myyntihinnat ovat aitoja ihmisten preferensseihin perustuvia hintoja. Sekä ennalta arvioidut että todellisuudessa kohdatut virheprosentit pyörivät lähellä toisiaan 8% – 9% välimaastossa.

Seuraavissa kuvissa aina tietyn vuoden vuoden oikeita kauppahintoja korvataan ASLAn ennusteilla. Ensin satunnaisesti 25%, sitten puolet, sitten 75% ja viimeisessä kuvaajassa kaikki. Huomataan että ajan kuluessa algoritmin itsevarmuus kasvaa, eli punainen ristiinvalidointiin perustuvat virhearvioennusteet pienenevät. Mutta todellinen kyky arvioida ihmisten preferenssejä kuitenkin laskee, koska vihreä käyrä kasvaa kohti suurempia lukemia. Efekti on sitä selvempi, mitä isompi osuus kauppahinnoista tulee algoritmin perusteella. Ääritapauksessa oikealla, missä kaikki kauppahinnat tulevat suoraan algoritmista, havaitut ennustevirheet ovat nollassa (sininen käyrä), mutta kyky arvioida ihmisten preferenssejä (vihreä käyrä) on aivan jotain muuta.

Omat ennusteet eivät ole aitoja havaintoja

Kun asuntoja hinnoitellaan suoraan algoritmin perusteella, alkaa algoritmin satunnaiset virheet toistumaan ja erityisesti se ei osaa sopeutua ajan tuomiin muutoksiin. Esimerkiksi algoritmi ei ymmärrä, että asuntojen hintoihin kohdistuu laskupainetta, mikäli korot tai kiinteistöverot nousevat äkillisesti. Nyt jos näitä muutoksia ei korjata aidolla uudella datalla, algoritmi alkaa irtaantumaan todellisista ihmisten preferensseistä.

ASLAa ei ole missään nimessä tarkoitettu automaattiseksi hinnoittelijaksi korvaamaan täysin kiinteistövälittäjiä vaan kauppaa käyvän ihmis-olion apuvälineeksi. Se antaa tukea erityisesti kokemattomalle kaupankävijälle uudella paikkakunnalla, mutta jättää huomioimatta monia tärkeitä asioita, kuten tehdyt taloyhtiöremontit ja tonttien omistusoikeudet. Algoritmi tehostaa ja tarkentaa ihmisen työtä tiivistämällä kaiken datassa olevan tiedon sekunnissa ilman että tarvitsee manuaalisesti (silmin selaimella tai Exceliä yötä myöden hakkaamalla) yrittää datasta ottaa tolkkua. Ihminen voi käyttää omat resurssinsa siihen, mitä kone ei osaa eli tässä tapauksessa esimerkiksi arvioida tulevia remontteja ja havainnoida esteettisiä kokemuksia paikan päällä.

Itse luotujen havaintojen siivoaminen

Palaten alkuperäiseen pohdintaan algoritmien omien havaintojen käyttämisessä sen opettamisessa, meillä on kädessä ongelma. Kuten asuntohintojen tapauksessa huomattiin, sitä mukaa kun itse luotua dataa kertyy lisää, algoritmin ”itseluottamus” kasvaa samalla kun todellinen performanssi heikkenee.

Spotifyn algoritmin on mahdollista (ja omasta vainoharhaisuudesta huolimatta näin mahdollisesti tekeekin) kehäpäätelmät välttää, koska jossain heidän tietokannassaan luulisi olevan tieto, valitsiko käyttäjä jonkin kappaleen soimaan omatoimisesti vai tuliko se suosituksen kautta automaattisesti. Jälkimmäiset tulee putsata pois datasta, jolla algoritmia jatkokoulutetaan. Asuntohinta-esimerkki on kinkkisempi, koska emme tiedä, onko joku tietty kaupankävijä käyttänyt algoritmia vai ei.

Mitä tulee ASLAn tulevaisuuteen, herää kysymys: ”Kannattaako laskurin näkyvyyttä yrittää lisätä, jos riskinä on, että siitä tulee sitä epätarkempi, mitä useampi sitä käyttää?” Kaupallinen käyttökin on kielletty taustalla käytettävän datan käyttöehtojen takia.

Statistickon steesit:

  • Algoritmin kouluttaminen sen itse luomalla datalla on kehäpäätelmä
  • Ajan myötä taustaolosuhteiden muuttuessa algoritmit tuppaavan irtaantumaan todellisuudesta, ellei niitä kouluteta uusilla, aidoilla havainnoilla
  • Omien ennusteiden käyttäminen opetusdatana vielä huonontaa tilannetta antamalla valheellisen illuusion tarkentuvista ennusteista

Facebooktwitterredditpinterestlinkedinmail

Datan määrä ei korvaa ymmärrystä

Kun valtamedioista lukee jotain big dataan tai tekoälyyn liittyvää, mielikuvaksi datan ennakoivasta analyysistä voi usein jäädä jotain seuraavaa: ”pitää vaan olla massiivinen läjä dataa niin neuroverkot ja muut koneoppimisalgoritmit kyllä taikovat automaagisesti suurta viisautta”. Tähän väliin ajattelin tuoda nyt esiin vähän toista puolta sopan aineksista. Jossain kohtaa nimittäin edelleen tarvitaan tutkittavan ilmiön ymmärtämistä dataa pursuavista tietokannoista ja fiksuista koneoppimisalgoritmeista huolimatta.

Kurssisuoritusten ennustaminen

Viestin havainnollistamista auttakoon meitä kuvitteellinen tarina kahdesta Data Scientististä, Laiska-Latesta ja Nysvä-Niilosta. Molemmille on annettu tehtäväksi kehittää algoritmi, joka ennustaa etukäteen ketkä pääsevät läpi erään opiston valinnaisen kurssin kokeesta. Koe on vaikea ja se on pisteytetty niin, että vain puolet yrittäjistä pääsevät läpi. Opisto kouluttaa naisvaltaiselle alalle ja opiskelijoiden sukupuolijakauma on vuodesta toiseen suurin piirtein 80% naisia ja 20% miehiä.

Laiska-Late löytää opiston nettisivuilta kurssilaisista valmista dataa menneiltä vuosilta seuraavista tiedoista:

  • kokeen läpäiseminen
  • kurssin aikana kerätyt harjoituspisteet
  • sairauspoissaolot oppitunneilta

Tietosuojasyistä oppilaiden nimiä tai muita taustatietoja ei ole kuitenkaan tallennettu. Kaikki henkilötiedot on vain korvattu ID-numerolla. Havaintoja on kuitenkin iso  määrä tähän tarkoitukseen.

Erilaisten mallien kokeilun ja validointien jälkeen Latelle jää vielä 5000 havaintoa lopulliseen parametrien optimointiin. Hän päätyy logistiseen regressiomalliin, jossa kokeen läpäisyä (kyllä/ei) ennustaa kurssin aikana kerätyt harjoituspisteet. Sairauspoissaolo-tiedosta ei ollut hyötyä ennustamisessa.

Harjoituspisteiden ja kokeen läpäisemisen riippuvuussuhdetta kuvaa oheinen viiksilaatikko – kuvaaja, mistä näkyy että kokeen läpäisseillä on keskimäärin VÄHEMMÄN kerättyjä harjoituspisteitä. Late ei tähän takerru, koska data puhuu  tämän puolesta ja ero on selvästi tilastollisesti merkitsevää. Tähän riippuvuussuhteeseen perustuu hänen ennustusmallinsa ja siinä on kaikki mitä näillä tiedoilla on tehtävissä.

Nysvä-Niilo lähestyy ongelmaa hieman eri polkua. Hän aloittaa tutkimalla tarkemmin, mitä kurssi ja erityisesti loppukoe pitää sisällään ja jalkautuu opistolle jututtamaan opiskelijoita. Tässä alkukartoituksessa selviää ensinnäkin, että koe sisältää myös fyysistä nopeutta ja voimaa sisältäviä osuuksia. Näin ollen voisi veikata, että opiston miesopiskelijoilla olisi etulyöntiasema naisiin nähden. Toinen keskusteluissa esiin tullut huomio on, että naiset vaikuttavat miehiä tunnollisemmilta tekemään harjoitustehtäviä. Niilokin tietää nettisivuilla tarjolla olevasta datasetistä, mutta koska näkee sukupuolen niin tärkeänä tekijänä ilmiön kokonaisuutta hän päättää alkaa nysväämään ja keräämään seurantatutkimuksella dataa opiskelijoiden harjoituspisteitä, koemenestyksestä ja sukupuolesta. Rajallisten resurssien ja aikataulun vuoksi hän saa kasaan vain 200 havaintoa. Nämä havainnot kuitenkin tukevat Niilon alustavaa hypoteesia siitä, että sukupuoli selittää sekä koetulosta, että harjoituspistemääriä. Oheinen graafi kuvaa Nysvä-Niilon näkemystä oleellisista ilmiöön liittyvistä oleellisista riippuvuussuhteista.

Niilo käyttää myös ennustealgoritminaan logistista regressiota, mutta Laten malliin lisäyksenä on sukupuoli toisena selittäjänä ja dataa vain 200 havaintoa.

Niilon datalla piirretään harjoituspisteiden ja läpäisyjen yhteyttä kuvaava graafi, mutta sukupuolittain eriteltyinä niin huomataan, että sukupuoliryhmissä kokeessa hyväksytyt ovat tehneet keskimäärin hieman ENEMMÄN harjoituksia. Tämähän vaikuttaa ristiriitaiselta Laiska-Laten tulokseen verrattuna. Onko se vain sattumaa, koska Nysvä-Niilon aineisto on niin pieni? Sekin voisi olla mahdollista, mutta tässä tapauksessa ei (tiedän, koska olen itse simuloinut aineiston). Harjoituspisteet ennustavat kyllä parempaa menestystä kokeessa, mutta koska fyysisten elementtien takia kokeessa alakynnessä olevat naiset ovat paljon tunnollisempia harjoitusten tekijöitä, näyttäytyy riippuvuussuhde päinvastaisena silloin kun sukupuolta ei huomioida. Tällaista kolmen muuttujan riippuvuussuhdetta kutsutaan Simpsonin paradoksiksi (linkki Wikipedian artikkeliin).

Kuinkas sitten käykään Laten ja Niilon ennusteille tositoimissa? Meneekö Laten ennusteet täysin päin mäntyä? Ei välttämättä. Vanha viisaus (en muista kenen) sanoo, että ”Vaikkei joku korrelaatio johtuisi kausaliteetista, voi siitä silti olla hyötyä ennustamisessa”. Seuraavana vuonna kurssille osallistuu 500 henkilöä ja näille ennustetarkkuudet ovat seuraavat:

Laiska – Late: 65%

Nysvääjä – Niilo: 68%

Unelmatilanteessa meillä olisi paljon sekä ymmärrystä että dataa. Nyt molemmilla on vain toinen puoli kunnossa. Sen minkä Niilon ennusteet voittavat hyödyllisen sukupuoli-muuttujan on mittaamisella, hän häviää siinä, että vain 200 hengen otoksella hänen mallinsa parametreissa on epätarkkuutta. Molemmat kuitenkin pärjäävät selvästi kolikonheittoa paremmin, joten jotain lisäarvoa he ovat tuoneet.

Iso uutinen tulee kuitenkin vasta seuraavana vuonna. Voimaan tulee uusi asetus, jonka johdosta tasa-arvon nimissä opiston on otettava sisään yhtä paljon miehiä ja naisia. Tämän uudistuksen jälkeisellä 500 kurssilaisen ennusteilla ennustealgoritmien erot repeävät.

Laiska – Late: 58%

Nysvääjä – Niilo: 67%

Algoritmeissa oli piilotettuna oletus ”kaikki muut ilmiöön vaikuttavat asiat pysyvät samankaltaisena”. Nyt sukupuolijakauman muutos rikkoo tämän oletuksen Laten algoritmin kohdalla ja tältä algoritmilta lähti matto alta. Se voittaa lantinheiton enää vaivoin. Niilon syy-seuraus -suhteita paremmin ymmärtävässä mallissa sukupuoli oli huomioitu, joten se ei uudesta asetuksesta juuri hetkahda.

Mitä pitää vähintään tietää?

Edellä kerrottu esimerkki oli tarkoitushakuinen ja äärimmäistapaus. Toivottavasti se kuitenkin havainnollisti vaaranpaikkoja silloin kun emme ymmärrä havaintojen muodostumisen taustaprosessia. Sen lisäksi, että algoritmin kehittäjä hehkuttaa ennusteiden tarkkuutta käytössä olevalla datalla, hänen pitäisi pystyä vastaamaan myös ainakin seuraaviin kysymyksiin:

  • Missä olosuhteissa algoritmia on turvallista soveltaa ja missä ei?
  • Osaako algoritmi opettaa itseään ja milloin algoritmi pitää kouluttaa täysin uusiksi?

Hyödyllisiä työkaluja

Tarkoitukseni ei ole kuitenkaan yleisesti mollata suurten datamassoja ja niiden päälle rakennettujen koneoppimisalgoritmien hyötyjä. Nämä nimittäin mahdollistavat todella siistejä työkaluja kuten vaikka eläinlajin tunnistamista kuvasta tai kielen koneellista ymmärrystä. Molemmat ilmiöt sopivat hyvin ”black-box” algoritmien (soveltaja ei ymmärrä tarkalleen mihin algoritmi ennusteensa perustaa) maailmaan, koska ne ovat hyvin stabiileja. Vaikka kieli pikkuhiljaa kehittyy ja joidenkin sanojen merkitys vuosikymmenten saatossa muuttuu, on vaikea kuvitella miksei tänään koulutettu puheentunnistaja voisi toimia lähes yhtä hyvin myös vuoden päästä. Kissan ja koiran piirteiden muuttumista joutuu odottamaan vieläkin kauemmin.

Weapons of math destruction

Suurimmat vaarat pelkkään isoon datamassaan ja sen korrelaatioihin luottavaan ”black-box”-algoritmiin tulevat esille, kun se koskee ihmisen luokittelua tai arvottamista. Silloin meillä on käsillä kohonnut riski, että olemme luomassa algoritmia, jota matemaatikko Cathy O’Neil kutsuu termillä ”Weapon of math destruction” (TED-talk aiheesta). Tällaiset tuho-algoritmit ovat rasistisia tavalla, jota algoritmin käyttäjät eivät ymmärrä. Esimerkiksi USA:laisessa pankissa voitaisiin arvioida asiakasehdokkaiden luottokelpoisuutta automaattisesti heidän lainahakemustensa perusteella. Algoritmi mm. hyödyntää isossa datamassassa havaittua korrelaatiota hakemusten kirjoitusvirheiden määrän ja maksuhäiriömerkintöjen välillä. Nyt lainaa voisi olla hakemassa suomalainen insinööri, joka on 23-vuotiaana muuttanut USA:han suorittamaan jatko-opintoja. Hän on erittäin tunnollisesti aina hoitanut velvoitteensa, mutta joutuu syrjityksi asuntolainamarkkinoilla vain koska hän tekee maahanmuuttajataustaisena keskimääräistä amerikkalaista enemmän kielioppivirheitä.

Kielioppivirheet tuskin kuitenkaan ovat aito syy maksuhäiriöille vaan näiden takaa löytyy yhteisiä taustatekijöitä. Kun kaikkia aitoja selittäjiä taustalla ei pystytä mittaamaan, auttavat näennäisetkin korrelaatiot parantamaan ennustetarkkuutta isossa joukossa. Harmi vaan niille jotka joutuvat aiheetta kärsimään siitä, että juuri tähän näennäiskorrelaatioon sattui algoritmi tarraamaan.

Loppusanat

Ennustusalgoritmien rakentamisessa toivottavaa olisi olla hyvä tieteellinen ymmärrys ilmiöstä ja paljon tarkasti mitattua dataa kaikista oleellisista muuttujista. Käytännössä tutkittavat ilmiöt tuppaavat olemaan niin monimutkaisia, ettei kaikkien oleellisten muuttujien mittaaminen ole aina mahdollista. Suurikaan havaintojen määrä ei pysty täysin korvaamaan puutteita muuttujissa, mutta ajassa stabiileihin ilmiöihin voi silti rakentaa korrelaatioihin perustuvia hyödyllisiä algoritmeja. Nämä algoritmit ovat kuitenkin vain työkaluja, joiden ohjaksissa olevien pitää ymmärtää työkalunsa rajoitteet.

Ymmärrykseen pyrkivän analytiikan nostaminen jalustalle voi olla osaltani vääristynyttä hehkutusta, koska oma osaamiseni ja mielenkiintoni on sinne päin kallellaan. On siitä kuitenkin puhuneet muutkin Data Scientistit, vaikkakin lähinnä marginaalisimmissa medioissa. Tässä blogikirjoituksessa Manish Tripathi maalailee datan analysoimisen tulevaisuutta ja viesti tiivistettynä kuuluu: koneoppimisalgoritmin koulutus tulee automatisoitumaan ja pelkästään sen parissa työskentelevät Data Scientistit alkavat kohtapuoliin menettämään työpaikkojaan. Sen sijaan syy-seuraus-suhteita ymmärtävistä Data Scientisteista tulee olemaan pulaa.

Ja loppuksi vielä lainaus Hilary Masonilta tästä podcastista: ”You cannot do AI without machine learning, you cannot do machine learning without data science and you cannot do data science without analytics”Facebooktwitterredditpinterestlinkedinmail