Koneoppimisen käsitteitä

Päivitetty 25.8.2022

Data-analytiikan tasot

Data-analytiikka voidaan jakaa neljään tasoon seuraavasti:

koneoppiminen2

Kuvailevassa analytiikassa esitetään muuttujien jakaumia frekvenssitaulukoina ja tilastollisina tunnuslukuina. Selittävässä analytiikassa tarkastellaan muuttujien välisiä riippuvuuksia ristiintaulukoimalla, tunnuslukujen vertailulla ja korrelaatioilla. Ennakoivaan analytiikkaan käytetään koneoppimisen malleja. Ohjaava analytiikka perustuu kuvailevaan, selittävään ja ennakoivaan analytiikkaan, mutta voi sisältää myös muunlaisia laskentamenetelmiä, esimerkiksi lineaarista optimointia.

Koneoppimisen menetelmien jaottelu

Ennakoivaan analytiikkaan käytettävät koneoppimisalgoritmit voidaan luokitella  seuraavasti:

  • Ohjattu oppiminen (supervised learning): Algoritmi opetetaan opetusdatalla (training data). Esimerkiksi roskapostisuodatin opetetaan sähköpostidatalla, jossa on erilaisia tietoja kustakin sähköpostiviestistä sekä tieto siitä oliko sähköpostiviesti roskapostia. Tämän datan perusteella muodostuu malli, jota käyttäen tulevista sähköpostiviesteistä voidaan tunnistaa roskapostiviestejä.
  • Ohjaamaton oppiminen (unsupervised learning): Esimerkiksi asiakkaiden jakaminen asiakkaiden tietoja sisältävän datan perusteella asiakassegmentteihin.
  • Vahvistusoppiminen (reinforcement learning): Algoritmi suorittaa toimia ja saa niistä palautetta palkkioiden ja rangaistuksen muodoissa. Algoritmi oppii saamistaan palkkioista ja rangaistuksista. Vahvistettua oppimista käytetään esimerkiksi robotiikassa.

Seuraavassa jaotellaan ohjattu ja ohjaamaton oppiminen edelleen alatyyppeihin:

koneoppiminen1

Ohjattu oppiminen

Ohjatussa oppimisessa:

  • Algoritmi muodostaa (oppii) mallin opetusdatan (training set) avulla.
  • Opetusdata koostuu selittävien muuttujien arvoista (feature matrix) ja  kohdemuuttujan arvoista (labels).
  • Opetusdatassa kohdemuuttujan arvot ovat tiedossa!
  • Opetettu malli osaa ennustaa kohdemuuttujan arvoja uudelle datalle.

koneoppiminen3

Ohjatun oppisen prosessi etenee seuraavan kaavion mukaisesti:

koneoppiminen4

Ohjattua oppimista, jossa kohdemuuttuja on kategorinen käytetään esimerkiksi seuraavissa:

  • Roskapostisuodatin
  • Sairauden diagnosointi
  • Maksuhäiriön ennakointi
  • Vakuutuspetoksen tunnistaminen
  • Auton rekisterinumeron koneellinen lukeminen
  • Esineiden tunnistaminen valokuvasta

Tällaisissa tilanteissa kyse on luokittelusta (classification). Suosittuja luokittelumalleja ovat esimerkiksi:

  • Logistinen regressio
  • Päätöspuu (decision tree)
  • Satunnaismetsä (random forest)
  • Gradienttitehostus (gradient boosting)

Käytännössä lineaarisesti erotettavissa olevat luokat ovat helpompia erotella:

luokittelu1

Ohjattua oppimista, jossa kohdemuuttuja on määrällinen käytetään esimerkiksi seuraavissa:

  • Kysynnän ennustaminen
  • Asunnon myyntihinnan ennustaminen
  • Käytetyn auton myyntihinnan ennustaminen

Tällaisissa tilanteissa käytetään erilaisia regressiomalleja. Suosittuja malleja ovat esimerkiksi

  • lineaarinen regressio
  • satunnaismetsä regressio (random forest regressor)
  • gradienttitehostus regressio (gradient boosting regressor)

regressio1.PNG

Ohjaamaton oppiminen

Ohjaamatonta oppimista voidaan käyttää esimerkiksi asiakassegmenttien muodostamiseen. Ohjaamattomassa oppimisessa on käytössä ainoastaan selittävät muuttujat (feature matrix).

ohjaamaton1.PNG

Käytetyin menetelmä on K-means klusterointi, missä K viittaa muodostettavien klusterien lukumäärään, joka tässä menetelmässä päätetään etukäteen.

Datan yksinkertaistamiseen, havainnollistamiseen ja taustalla olevien rakenteiden tunnistamiseen voidaan käyttää pääkomponenttianalyysia (Principal component analysis). Tällä menetelmällä selittävistä muuttujista muodostetaan laskennallisesti pienempi joukko muuttujia.  Seuraavissa kuvioissa on pelkistetty alkuperäinen kolmen muuttujan asetelma kahden muuttujan asetelmaksi.

ohjaamaton2

Pääkomponenttianalyysillä voidaan esimerkiksi eri oppiaineissa menestymisen takaa tunnistaa erilaisia lahjakkuuksia (verbaalinen, matemaattinen jne.).

Neuroverkot

Edellä kuvattuja menetelmiä käytetään etupäässä strukturoidun datan (taulukkomuotoinen data) kanssa. Koneoppimista hyödynnetään myös strukturoimattoman datan kanssa. Strukturoimatonta dataa ovat esimerkiksi tekstit, äänet, kuvat ja videot. Neuroverkkomallit ovat käytännössä osoittautuneet käyttökelpoisiksi strukturoimattoman datan tapauksessa. Neuroverkkomalleja voidaan käyttää esimerkiksi:

  • Käsinkirjoitetun tekstin tunnistamiseen
  • Puheen tunnistamiseen
  • Kielen kääntämiseen
  • Positiivisten ja negatiivisten viestien tunnistamiseen keskustelualueilta
  • Esineiden ja henkilöiden tunnistamiseen kuvista tai videoista
  • Konenäköön

Neuroverkkoihin liittyvää koneoppimista kutsutaan syväoppimiseksi (deep learning).