selitetty.com

Mitä tekoäly on

Koneoppiminen selitettynä: näin malli oppii aineistosta

Koneoppiminen on lukujen sovittamista aineistoon. Näin ohjattu, ohjaamaton ja vahvistusoppiminen eroavat ja miksi malli pettää juuri reunatapauksissa.

Lyhyt vastaus

Koneoppiminen tarkoittaa menetelmiä, joissa ohjelma etsii esimerkkiaineistosta säännönmukaisuuksia sen sijaan että ihminen kirjoittaisi säännöt käsin. Käytännössä malliin sovitetaan lukuja niin, että sen tekemä virhe opetusaineistossa pienenee, ja tulosta arvioidaan erillisellä aineistolla, jota malli ei ole nähnyt. Malli ei ymmärrä ilmiötä vaan toistaa aineiston säännönmukaisuudet, myös ne, joita kukaan ei tarkoittanut opetettavaksi.

Sisällys
  1. Oppiminen on sovittamista, ei ymmärtämistä
  2. Piirteet: mitä malli oikeasti näkee
  3. Kolme oppimistapaa ja mihin ne sopivat
  4. Häviöfunktio: miten virhe muutetaan luvuksi
  5. Opetusjoukko, validointijoukko ja testijoukko
  6. Ylisovitus ja alisovitus
  7. Miksi malli on hyvä keskimäärin ja huono reunatapauksissa
  8. Mitä kysyä, kun jokin esitellään koneoppimisena
  9. Rajat: mihin koneoppiminen ei sovi
  10. Usein kysytyt kysymykset
  11. Lähteet ja lisälukemista

Koneoppiminen tarkoittaa sitä, että ohjelman säännöt johdetaan esimerkeistä eikä niitä kirjoiteta käsin. Kukaan ei kerro roskapostisuodattimelle, mitkä sanat ovat epäilyttäviä. Suodatin saa satatuhatta viestiä, joista osa on merkitty roskapostiksi, ja se etsii itse ne piirteet, jotka erottelevat luokat parhaiten.

Tästä yhdestä valinnasta seuraa sekä koneoppimisen hyöty että sen ongelmat. Menetelmä ratkaisee tehtäviä, joihin sääntöjä ei osata kirjoittaa, mutta samalla se siirtää vastuun aineistolle, jonka sisältöä kukaan ei ole täysin katsonut läpi. Yleiskuva käsitteistä on artikkelissa mitä tekoäly oikeasti on. Tässä mennään yksi kerros syvemmälle: mitä opetuksessa tapahtuu, mitä sen aikana mitataan ja mistä mallin virheet syntyvät.

Oppiminen on sovittamista, ei ymmärtämistä

Koneoppimismalli on funktio, jossa on säädettäviä lukuja eli parametreja. Aluksi luvut ovat satunnaisia, joten malli antaa satunnaisia vastauksia. Opetus on menettely, jossa lukuja siirretään toistuvasti pieni askel siihen suuntaan, joka pienentää mallin virhettä opetusaineistossa.

Sana oppiminen on tässä vertauskuva. Malli ei muodosta käsitystä siitä, mitä roskaposti on tai miksi joku lähettää sitä. Se päätyy lukuihin, jotka erottelevat aineiston kaksi luokkaa mahdollisimman hyvin. Jos erottelu onnistuu jostain aivan muusta syystä kuin ilmiön varsinaisesta luonteesta, malli käyttää sitä syytä yhtä mielellään.

Klassinen esimerkki on lääketieteellinen kuva-aineisto, jossa sairaiden potilaiden kuvat oli otettu eri laitteella kuin terveiden. Malli oppi tunnistamaan laitteen jättämän jäljen, ei sairautta. Tarkkuus oli opetusaineistossa erinomainen ja uudessa sairaalassa surkea. Malli teki täsmälleen sen, mitä siltä pyydettiin.

Piirteet: mitä malli oikeasti näkee

Piirre (feature) on yksittäinen luku, jonka malli saa syötteenä. Asunnon hintaa ennustavassa mallissa piirteitä voivat olla pinta-ala, rakennusvuosi, kerros ja postinumero. Kuvamallissa piirteinä ovat suoraan pikselien arvot.

Piirteiden valinta on se kohta, jossa ihminen vaikuttaa lopputulokseen eniten. Malli ei voi käyttää tietoa, jota ei ole annettu piirteenä, eikä se voi jättää käyttämättä tietoa, joka on annettu. Jos aineistossa on piirre, joka korreloi vahvasti jonkin arkaluonteisen ominaisuuden kanssa, malli käyttää sitä, vaikka itse ominaisuus olisi jätetty pois. Postinumero voi toimia tulotason ja taustan välillisenä mittarina.

Syväoppimisessa piirteiden käsinvalinta on suurelta osin korvautunut sillä, että verkko muodostaa välitason piirteet itse. Tätä käsitellään tarkemmin artikkelissa neuroverkko selitettynä. Periaate ei silti muutu: kaikki mitä malli osaa, tulee siitä, mitä sen sisään annettiin.

Kolme oppimistapaa ja mihin ne sopivat

Koneoppiminen jaetaan yleensä kolmeen ryhmään sen mukaan, millaista palautetta aineisto antaa.

Oppimistapa Mitä aineistossa on Tyypillinen käyttö
Ohjattu oppiminen Syöte ja oikea vastaus pareittain Roskapostisuodatus, kuvien luokittelu, hinnan ennustaminen
Ohjaamaton oppiminen Pelkkä syöte ilman oikeita vastauksia Asiakasryhmien löytäminen, poikkeamien etsintä lokeista
Vahvistusoppiminen Ympäristö, joka antaa palkkion tai rangaistuksen Pelien pelaaminen, robotin liikeohjaus, prosessin säätö

Ohjattu oppiminen on yleisin ja helpoin arvioida, koska oikea vastaus on tiedossa ja virheen voi laskea suoraan. Sen pullonkaula on merkintätyö: joku ihminen on merkinnyt jokaisen esimerkin, ja merkitsijän tulkinnat siirtyvät malliin sellaisenaan.

Ohjaamattomassa oppimisessa oikeita vastauksia ei ole. Malli etsii rakennetta, esimerkiksi ryhmiä, jotka muistuttavat toisiaan. Tulos on aina tulkinnanvarainen, koska mikään ei kerro, oliko löydetty jako se kiinnostava jako.

Vahvistusoppimisessa malli toimii ympäristössä ja saa palkkion onnistumisesta. Se sopii tilanteisiin, joissa oikeaa siirtoa ei tiedetä mutta lopputuloksen hyvyys voidaan mitata. Kielimallien viimeistelyssä käytetty ihmispalaute on tämän sukuinen menetelmä, ja sitä kuvataan artikkelissa miten kielimalli toimii.

Jako ei ole jyrkkä. Nykyiset suuret mallit yhdistelevät kaikkia kolmea, ja lisäksi käytetään itseohjattua oppimista, jossa oikea vastaus tuotetaan aineistosta itsestään peittämällä siitä osa.

Häviöfunktio: miten virhe muutetaan luvuksi

Jotta parametreja voisi säätää, virheen pitää olla mitattavissa. Häviöfunktio (loss function) on kaava, joka antaa yhden luvun sille, kuinka pahasti malli meni pieleen. Luokittelussa se rankaisee siitä, että malli antoi väärälle luokalle korkean todennäköisyyden. Numeroa ennustettaessa se on tyypillisesti ennusteen ja oikean arvon eron neliö.

Säätö tapahtuu gradienttilaskeutumisella. Jokaisen parametrin kohdalla lasketaan, kasvattaako vai pienentääkö sen nostaminen häviötä, ja parametria siirretään pienen askeleen verran pienentävään suuntaan. Askelten koko on erikseen valittava asetus, ja se on yksi tärkeimmistä opetuksen onnistumiseen vaikuttavista säädöistä.

Häviöfunktio on mallin arvomaailma, ei tekninen sivuseikka. Se määrää, mitä pidetään virheenä ja mikä virhe on kuinka paha. Jos sairauden seulonnassa väärä hälytys ja huomaamatta jäänyt tapaus painavat yhtä paljon, malli oppii jättämään harvinaisia tapauksia huomaamatta, koska se on kokonaisluvun kannalta halpaa. Väärä mittari tuottaa väärän mallin, ja opetusaineiston kasvattaminen ei korjaa sitä.

Opetusjoukko, validointijoukko ja testijoukko

Mallin arvioiminen samalla aineistolla, jolla se opetettiin, on kuin antaisi kokelaalle kokeen, jonka vastaukset hän on juuri lukenut ulkoa. Siksi aineisto jaetaan ennen opetusta.

  1. Opetusjoukko. Tällä säädetään parametrit. Yleensä suurin osa aineistosta.
  2. Validointijoukko. Tällä verrataan eri asetuksia ja mallivaihtoehtoja keskenään ja päätetään, milloin opetus lopetetaan.
  3. Testijoukko. Tätä käytetään kerran, aivan lopuksi, arvioimaan valmis malli. Jos testijoukkoa käytetään toistuvasti valintojen tekemiseen, se muuttuu käytännössä validointijoukoksi eikä kerro enää yleistyskyvystä.

Jaon pitää vastata sitä, miten mallia käytetään. Aikasarjassa testijoukon pitää olla ajallisesti opetusjoukon jälkeen, muuten malli saa nähdä tulevaisuuden. Jos samasta henkilöstä on useita rivejä, kaikkien pitää olla samassa joukossa, muuten malli tunnistaa henkilön eikä ilmiötä. Näiden virheiden takia julkaistut tarkkuusluvut ovat usein optimistisempia kuin käytännön tulokset.

Ylisovitus ja alisovitus

Kaksi tapaa epäonnistua näkyvät suoraan siinä, miten virhe eroaa opetus- ja testijoukossa.

Tilanne Virhe opetusjoukossa Virhe testijoukossa
Alisovitus Suuri Suuri
Onnistunut sovitus Pieni Pieni
Ylisovitus Hyvin pieni Selvästi suurempi

Alisovituksessa malli on liian yksinkertainen tai opetus on jäänyt kesken. Se ei saa kiinni edes aineiston selvistä säännönmukaisuuksista.

Ylisovituksessa malli on riittävän joustava painamaan mieleen yksittäisiä esimerkkejä. Se vastaa opetusaineistoon lähes täydellisesti mutta epäonnistuu uudessa tapauksessa. Vastakeinoja ovat aineiston lisääminen, mallin yksinkertaistaminen, opetuksen lopettaminen ajoissa ja säännöllistäminen eli parametrien suuruuden rajoittaminen.

Olennaista on, että ylisovitusta ei näe mallin sisältä eikä opetusvirheestä. Se näkyy vain vertaamalla erilliseen aineistoon, ja siksi kysymys ”millä aineistolla tämä on arvioitu” on tärkeämpi kuin kysymys ”kuinka tarkka tämä on”.

Miksi malli on hyvä keskimäärin ja huono reunatapauksissa

Opetus pienentää keskimääräistä häviötä. Keskiarvon kannalta on tehokasta oppia hyvin ne tilanteet, joita aineistossa on paljon, ja tinkiä harvinaisista. Tämä ei ole vika toteutuksessa vaan suora seuraus siitä, mitä optimoidaan.

Käytännössä se tarkoittaa kolmea asiaa. Malli on tarkin siellä, missä aineisto oli tiheä. Harvinaiset tapaukset, epätavalliset kirjoitusasut, pienet kielet ja poikkeavat käyttötilanteet ovat juuri ne kohdat, joissa se erehtyy. Ja kolmanneksi malli ei kerro olevansa epävarma, koska varmuuden ilmaiseminen on eri tehtävä kuin se, johon sitä opetettiin. Kielimalleissa sama ilmiö näkyy hallusinaatioina: aukko aineistossa ei tunnu mallista aukolta.

Sama logiikka tekee pelkästä tarkkuusprosentista harhaanjohtavan mittarin. Jos sairautta esiintyy yhdellä tuhannesta, malli, joka vastaa aina ”ei sairautta”, on 99,9 prosenttia oikeassa ja täysin hyödytön. Siksi arvioinnissa katsotaan erikseen, kuinka suuri osa todellisista tapauksista löytyi (herkkyys) ja kuinka suuri osa hälytyksistä osui oikeaan (täsmällisyys). Nämä kaksi lukua liikkuvat vastakkaisiin suuntiin, kun mallin hälytyskynnystä säädetään, joten kynnyksen valinta on aina arvovalinta eikä tekninen yksityiskohta. Yksi luku ei riitä myöskään siksi, että keskiarvo peittää alleen ryhmäkohtaiset erot.

Tästä seuraa myös aineiston siirtymä (distribution shift). Malli, joka opetettiin vuoden 2023 aineistolla, kohtaa vuonna 2026 huijausviestejä, tuotteita ja sanontoja, joita aineistossa ei ollut. Tarkkuus laskee hitaasti ja huomaamatta, ellei sitä mitata uudelleen.

Mitä kysyä, kun jokin esitellään koneoppimisena

Neljä kysymystä erottaa perustellun väitteen markkinointipuheesta.

  • Mitä malli ennustaa, yhdellä lauseella? Jos vastausta ei saa, kyse ei ole mallista vaan mielikuvasta.
  • Mistä opetusaineisto on ja mitä siitä puuttuu? Aineiston kattavuus määrää sokeat pisteet.
  • Millä aineistolla tulos on mitattu ja miten se jaettiin? Ilman erillistä testijoukkoa tarkkuusluku ei tarkoita mitään.
  • Mitä tapahtuu, kun malli on väärässä, ja kuka sen huomaa? Sama kysymys on EU:n tekoälyasetuksen riskiluokittelun ydin.

Rajat: mihin koneoppiminen ei sovi

Koneoppiminen tarvitsee esimerkkejä. Tehtävään, jota ei ole tapahtunut riittävän monta kertaa, ei voi opettaa mallia, eikä syytä ja seurausta voi erottaa toisistaan pelkän havaintoaineiston perusteella. Malli löytää yhteyksiä, ei syitä, joten se ei kerro mitä tapahtuisi, jos maailmaa muutettaisiin.

Menetelmä sopii huonosti myös tilanteisiin, joissa päätös pitää perustella jälkikäteen täsmällisesti, joissa virheen hinta on hyvin korkea ja tarkistusta ei ole, tai joissa sääntö on jo tiedossa. Verotaulukkoa ei kannata opettaa aineistosta, kun sen voi ohjelmoida suoraan.

Lisäksi useimmat julkaistut tarkkuusluvut ovat mittaustuloksia tietystä aineistosta tiettynä hetkenä. Ne vanhenevat, ne vaihtelevat mittaustavan mukaan ja ne kertovat keskiarvosta. Käyttökelpoinen arvio syntyy vasta, kun malli on mitattu sillä aineistolla ja niissä olosuhteissa, joissa sitä oikeasti käytetään. Termit löytyvät tarvittaessa digisanastosta.

Usein kysytyt kysymykset

Mitä eroa on koneoppimisella ja tekoälyllä?

Tekoäly on yläkäsite, joka kattaa myös käsin kirjoitetuilla säännöillä toimivat järjestelmät. Koneoppiminen on sen osajoukko, jossa säännöt johdetaan aineistosta. Käytännössä lähes kaikki nykyään tekoälyksi kutsuttu on koneoppimista, mutta esimerkiksi reitinhakualgoritmi on tekoälyä ilman oppimista.

Kuinka paljon aineistoa koneoppiminen vaatii?

Määrä riippuu tehtävän vaikeudesta ja mallin koosta, eikä yleispätevää lukua ole. Yksinkertainen luokittelu muutamalla piirteellä voi onnistua tuhansilla esimerkeillä, kun taas syvät neuroverkot vaativat tyypillisesti satojatuhansia tai enemmän. Tärkeämpää kuin määrä on kattavuus: aineistossa pitää olla esimerkkejä myös niistä tilanteista, joissa mallia aiotaan käyttää.

Mikä on ylisovitus ja miten sen huomaa?

Ylisovitus tarkoittaa, että malli on painanut mieleen opetusaineiston kohinaa ja yksityiskohtia yleisen säännön sijaan. Sen huomaa siitä, että virhe opetusjoukossa on hyvin pieni mutta virhe erillisessä testijoukossa on selvästi suurempi. Jos testijoukkoa ei ole erotettu ennen opetusta, ylisovitusta ei voi havaita luotettavasti.

Oppiiko koneoppimismalli koko ajan lisää käytön aikana?

Ei tavallisesti. Useimmat mallit opetetaan erikseen, minkä jälkeen parametrit lukitaan ja mallia vain käytetään. Jatkuvasti päivittyviä järjestelmiä on olemassa, mutta ne ovat harvinaisempia ja vaikeampia valvoa, koska mallin käytös voi muuttua ilman että kukaan julkaisee uutta versiota.

Miksi koneoppimismalli toimii huonommin joillakin ihmisryhmillä?

Koska opetus pienentää keskimääräistä virhettä. Jos jokin ryhmä on aineistossa harvinainen, sen virheiden korjaaminen vaikuttaa kokonaislukuun vähän, ja malli oppii ne heikommin. Tämä ei vaadi tarkoitusta vaan pelkän epätasaisen aineiston, ja siksi mallia pitää arvioida ryhmittäin eikä vain yhdellä keskiarvolla.

Takaisin ylös