Koneoppiminen

Wikipediasta
Siirry navigaatioon Siirry hakuun

Koneoppiminen on tekoälyn osa-alue, jonka tarkoituksena on saada ohjelmisto toimimaan entistä paremmin pohjatiedon ja mahdollisen käyttäjän toiminnan perusteella. Koneoppimisessa ohjelmistolle ei ole välttämättä määritetty toimintamenetelmää (algoritmia) jokaista tilannetta varten, vaan kone oppii itsenäisesti päätymään haluttuun lopputulokseen. Esimerkiksi hakukoneet pyrkivät tarjoamaan mahdollisimman osuvia - ja oikeita - hakutuloksia käyttäjälleen. Hyvä hakukoneohjelmisto osaa esimerkiksi tunnistaa kirjoitettua tekstiä mm. kirjoitusvirheiden varalta, tunnistaa synonyymeja tai eri kirjoitusmuotoja. Koneen oppiminen kehittyy itsestään sitä mukaa, kun tietoa lisätään tietokantaan. Toinen käytännön esimerkki ovat roskapostisuodattimet.

Oppimista on kahdenlaista: induktiivista ja deduktiivista. Induktiiviset koneoppimismenetelmät muodostavat sääntöjä ja malleja suurista tietojoukoista. Koneoppimisella on paljon yhteistä tilastotieteen kanssa, koska molemmissa tehdään päätelmiä aineistosta, mutta koneoppimisessa selvitetään ohjelmallisten toteutusten laskennallista vaativuutta. Monet päättelyongelmat ovat NP-kovia tai vaikeampia, joten koneoppimistutkimukseen kuuluu myös likimääräisten päättelyalgoritmien kehittäminen.

Syväoppiminen on oppimista neuroverkkoon perustuen, jäljittelemällä karkeasti ihmisaivojen tapaa oppia. Syväoppimisessa virtuaaliset neuronit mallintavat todellista aivotoimintaa kerros kerrokselta.[1]

Algoritmityypit[muokkaa | muokkaa wikitekstiä]

Koneoppimisalgoritmit luokitellaan niille annettavan opetusdatan luonteen perusteella. Yleisimmät algoritmityypit ovat:

  • Ohjattu oppiminen — opetusdatasta tiedetään ennalta haluttu ulostulo[2]
  • Vahvistusoppiminen — oppiminen tapahtuu mallin ja ympäristön jatkuvan vuorovaikutuksen seurauksena, kun ympäristöä havainnoiva agentti arvioi mallin tuottaman ulostulon hyvyyden
  • Ohjaamaton oppiminen — opetusdatasta ei tiedetä mitään ennalta[2]

Yhteydet muihin tieteenaloihin[muokkaa | muokkaa wikitekstiä]

Koneoppiminen käsittelee samankaltaisia kysymyksiä kuin matemaattinen tilastotiede, informaatioteoria, optimointiteoria ja tietojenkäsittelytiede. Toisaalta koneoppiminen voidaan nähdä myös yhtenä tekoälyn osa-alueena. Toisaalta ero perinteiseen tekoälyyn on se, että ei yritä matkia ihmisen älykästä käytöstä, vaan enneminkin ratkoo tiukasti määriteltyjä tehtäviä, jotka ovat ihmisen älykkyyden vahvuusalueiden ulkopuolella. Esimerkiksi koneoppimisalgoritmit löytävät helposti sellaisia säännönmukaisuuksia isoista aineistojoukoista, joita ihminen ei löydä.[3] Tällainen säännönmukaisuus voi olla esimerkiksi tekstimassassa piilevä semanttinen piirre, joka voidaan etsiä Aihemallinnuksen avulla.

Verrattaessa koneoppimista perinteiseen tilastotieteeseen, koneoppiminen on yleisempää ja enemmän painottunut algoritmien kehitykseen. Perinteisessä tilastotieteessä myös usein oletetaan aineistojoukon noudattavan tiettyä jakaumaa, kuten normaalijakaumaa, mutta koneoppimisessa ei tavallisesti tehdä mitään oletuksia aineiston jakautumisesta. [3]

Optimointiteoriaa koneoppiminen käyttää tavallisesti algoritmin opetusvaiheessa. Optimointiteorian avulla voidaan valita parametrit, jotka minimoivat virheen ja toisaalta välttää ylisovitustaselvennä. Myös useat ongelmat, joiden ratkomiseen käytetään koneoppimista, ovat luonteeltaan optimointiongelmia.[4]

Sovelluskohteet[muokkaa | muokkaa wikitekstiä]

Koneoppimista sovelletaan muun muassa hakukoneissa[5], lääketieteellisissä diagnooseissa[5], bioinformatiikassa[5], luottokorttipetosten havaitsemisessa[5], osakemarkkinoiden analysoinnissa, DNA-sekvenssien luokittelussa, puheentunnistuksessa[5], käsinkirjoituksen tunnistamisessa, konenäössä, dokumenttien luokittelussa, tietokonepeleissä ja robottien liikuttamisessa.

Katso myös[muokkaa | muokkaa wikitekstiä]

Lähteet[muokkaa | muokkaa wikitekstiä]

  • Shai Shalev-Shwartz & Shai Ben-David: Understanding Machine Learning: From Theory to Algorithms. Cambridge: Cambridge University Press, 2014. ISBN 978-1-107-05713-5. (englanniksi)

Viitteet[muokkaa | muokkaa wikitekstiä]

  1. Marko Hamilo: Hermoverkkoja matkivat tietokoneet oppivat tunnistamaan esineitä Suomen Kuvalehti. 12.5.2013. Viitattu 19.5.2018.
  2. a b Shai & Shai, luku 1.3. Types of learning, sivu 4
  3. a b Shai & Shai, luku 1.4. Relations to other fields, sivu 7.
  4. Paul Rubin: What is the relationship between machine learning and mathematical optimization? Quora. 4. kesäkuuta 2016. Viitattu 9.8.2017. (englanniksi)
  5. a b c d e Shai ja Shai, Preface, sivu xv

Kirjallisuutta[muokkaa | muokkaa wikitekstiä]

Yliopistotason oppikirjoja[muokkaa | muokkaa wikitekstiä]

Muuta[muokkaa | muokkaa wikitekstiä]

Aiheesta muualla[muokkaa | muokkaa wikitekstiä]