Prosessi

Koneoppisprojektin tai kokeilun läpivienti on iteratiivinen prosessi, jossa liiketoiminta-asiantuntemukseen yhdistetään analytiikka-, koneoppimismallinnus- ja tietojärjestelmäosaaminen. Hyvään lopputulokseen päästään kun asiantuntijat ja osaaminen yhdistetään eri osa-alueilta yhteiseksi ratkaisuksi.

Businesstavoitteen asettaminen

Koneoppimisratkaisua suunnitellessa on tärkeää muodostaa liiketoiminnan kannalta oleellinen tavoite, johon pyritään. Kyseessä voi olla esimerkiksi uuden liiketoiminnan muodostaminen, prosessin optimointi, manuaalisten työvaiheiden vähentäminen, käyttäjäkokemuksen parantaminen tai tulevaisuuden ennakointi. Oleellisena osana tavoitteen asettamista on myös liiketoiminnallisten metriikoiden määrittäminen, millä voidaan analyysi- ja mallinnusvaiheissa todentaa ratkaisusta saatavia hyötyjä liiketoiminnan kannalta oleellisesta näkökulmasta.

Liiketoimintatavoitetta määritettäessä muodostetaan myös käsitys siitä mitä dataa on käytettävissä ja mikä on datan soveltuvuus ongelman ratkaisemiseen ja onko mahdollisesti tarve muille datalähteille tai ulkoiselle datalle.

Data-analyysi

Datan analysointi on koneoppimisprojektin alun työvaihe, jonka aikana dataa tarkastellaan ja siihen pureudutaan mahdollisimman tarkasti yhdessä asiakkaan kanssa. Hyvin suoritetulla data-analyysilla varmistetaan jo projektin alkuvaiheessa, että liiketoiminnan edistämiseksi määritellyt tavoitteet on mahdollista saavuttaa käytettävissä olevalla aineistolla ja aineisto on soveltuva koneoppimismallinnukseen.

Datan analysoinnin lopputuloksena asiakas ja Aiwo saavuttavat tarkan ymmärryksen datan sisällöstä. Datan rakenteen ja koon ymmärtäminen heti projektin alussa on tärkeää lähestymistavan valinnan kannalta. Aineistosta määritetään muuttujakohtaisia tunnuslukuja kattaen muun muassa jakaumat, korrelaatiot, kvartaalit, luokkamuuttujien frekvenssit sekä puuttuvien havaintojen lukumäärät. Dataa tarkastellaan lisäksi visualisointien avulla kokonaisvaltaisen ymmärryksen saavuttamiseksi ja liiketoiminnan kannalta oleellisten muuttujien oikeellisuuden varmistamiseksi.

Kun datan analysointi on suoritettu huolellisesti ja päätös koneoppimisen hyödyntämisestä voidaan tehdä, on muodostettava datan keräämiseen ja muokkaukseen tarvittava prosessi, jolla aineisto saadaan mallinnukseen soveltuvaan muotoon. Yleisiä operaatioita ovat mallinnuksessa käytettävien muuttujien valinta sekä malliin mukaan tulevien havaintojen rajaaminen esimerkiksi ajanjakson perusteella. Lisäksi on varmistettava, että datassa ei tapahdu informaation vuotamista tulevaisuudesta historiaan, koska mallin opettamisessa ja testaamisessa käytettävän datan tulee vastata tuotantotilanteessa käytettävissä olevaa dataa.

Mallinnus ja tulosten analysointi

Liiketoimintaongelma ja saatavilla olevan datan rakenne sekä koko ratkaisevat jo projektin alkuvaiheessa, millä menetelmällisillä lähestymistavoilla ongelmaa lähdetään ratkaisemaan. Mallintamiseen käytettävän datan luonteen mukaan koneoppimisen menetelmät voidaan jakaa kolmeen luokkaan: ohjaamattomaan, ohjattuun ja vahvistettuun oppimiseen. Lähestymistavan valinnan jälkeen parhaan mallin ja optimaalisten parametrien valinta suoritetaan kokemusta hyödyntäen ja iteraatioihin perustuen. Datan rakenne ja liiketoiminnan tarpeet määrittelevät lopulta sen, millä tavalla ongelma on kannattavinta muotoilla koneoppimiseen soveltuvaan muotoon.

Mallinnusprosessin lopputuloksena tiedämme, onko käytössä olevan datan informaatio riittävä määriteltyjen tavoitteiden saavuttamiseksi. Oikein tehty data-analyysi, datan prosessointi ja mallin validointi takaavat luotettavat tulokset, joiden pohjalta on mahdollista tehdä oikeita päätöksiä seuraavista toimenpiteistä liittyen tuotantoon viemiseen ja jatkokehitykseen.

Mallinnuksen onnistumisen tarkastelu on tärkeä työvaihe kehittynyttä analytiikkaa ja koneoppimista hyödyntävässä projektissa. Tilanteesta riippuen mallin tarkkuutta ja hyödyntämismahdollisuuksien riittävyyttä tarkastellaan eri tavoilla ja tätä varten valitaan asiakkaan liiketoimintaan parhaiten soveltuvat metriikat. Koneoppimismallinnuksessa on oleellista tarkastella muodostetun mallin tarkkuutta koko aineistossa sekä eri muuttujien, kuten ajankohdan, suhteen. Esimerkiksi viikonpäivän tai vuodenajan vaikutus ennustamistarkkuuteen voi olla merkittävä, koska datan sisältämä informaatio saattaa vaihdella näiden tekijöiden välillä. Kokonaisvaltainen mallinnuksesta saatavien tulosten tarkastelu on avainasemassa myös mahdollisesti tarvittavien jatkokehitystoimien valinnassa.

Liiketoimintalähtöisesti valittujen metriikoiden yhdistäminen tulosten oikeaan tulkintaan on avainasemassa luotettavien johtopäätöksien tekemisessä. Tuotantolähtöisesti toteutettu ja luotettavia tuloksia tarjoava PoC-projekti antaa hyvän lähtökohdan koneoppimisen hyödyntämiselle tuotannossa.

Tuotantoon vienti

Kun analyysi- ja mallinnusvaiheiden lopputuloksena on todettu, että koneoppiminen antaa liiketoimintatavoitteen kannalta olennaisen hyödyn, voidaan edetä kohti tuotantoon vientiä ensimmäisen version MVP:n (minimum viable product) osalta. Tuotantokäytön aloittamisen vaatimat toimenpiteet on tapauskohtaista, koska liiketoimintahyödyt voivat konkretisoitua monilla eri tavoilla:

  • Uusi web- tai mobiilisovellus
  • Integraatiot olemassa oleviin liiketoimintajärjestelmiin
  • Analytiikkatyökalu
  • Muu sovellus, käyttöliittymä tai integraatio

Tuotantoon viennissä toteutetaan myös tarvittavat tuotantokelpoiset tietovirrat ja -varannot, jos tätä ei ole tehty vielä analyysi- ja mallinnusvaiheen aikana. Lisäksi määritetään ja suunnitellaan jatkuvan oppimisen mallit sekä tuotannon aikaiset muut vaatimukset ratkaisulle.

Jatkuva kehitys

Tuotantoon viennin jälkeen palvelua ja sen käyttöä seurataan metriikoihin perustuen ja jatketaan seuraavien versioiden kehittämistä iteratiivisesti vieden uusia päivityksiä joustavasti tuotantoon.

Tuotannossa olevat koneoppimisratkaisut vaativat myös huolenpitoa, jotta ratkaisu pysyy tehokkaana ja ajantasaisena. Koneoppimisessa kerran luotujen mallien suorituskyky voi heikentyä, jos ympäröivä maailma muuttuu ja malli täytyy kouluttaa uudelleen. Aiwon ratkaisuissa jatkuva oppiminen ja mallien opettaminen on olennaisena osana toteutusta ja palvelualustalla voidaan varmistaa mallin laadukkuus sille määritettyjen metriikoiden kautta. Malleja voidaan myös automaattisesti opettaa uudelleen kertyneellä datalla, jolloin mallin tarkkuus ja luotettavuus pysyy ajantasaisena.

Ylläpidossa huomioidaan myös normaalit tietojärjestelmien ylläpitoon liittyvät seikat kuten palvelutaso, tietoturva- ja muut kriittiset päivitykset sekä jatkuva monitorointi ja proaktiivinen huolto.