Tekoälypohjaiset sovellukset saattavat tuntua kovin inhimillisiltä, varsinkin luovat tekoälyt, botit ja virtuaaliavustajat. Me puhumme tai kirjoitamme niille kuin ihmiselle ja ne vastaavat kuin ihmiselle. Mutta miten ne toimivat? Otetaan esimerkiksi virtuaaliavustaja, joista tunnetuimmat ovat Applen Siri, Google Assistant ja Amazonin Alexa. Näistä suomeksi toimii kunnolla vain Siri, mutta toki muita suomenkielisiä avustajia on mm. autoissa.
Virtuaaliavustaja on hyvä esimerkki, sillä se yhdistää monta erilaista tekoälyn mallia. Suunnittelet lähtöä kaupungille, ja kysyt avustajalta ”Millainen sää on Lahdessa iltapäivällä?” Vaikka yksityiskohdat vaihtelevat, kaikkien firmojen virtuaaliavustajat toimivat jotakuinkin seuraavalla tavalla:
Ensimmäinen tehtävä on muuttaa puhe tekstiksi, jotta tekoäly ymmärtää mitä pitäisi tehdä. Tässä teknologiana on puheentunnistus. Puhetta analysoidaan yleensä spektrimuodossa: Tekoälylle on opetettu miltä mikäkin äänne spektrillä näyttää ja mitä kirjainta tai kirjainyhdistelmää se tarkoittaa. Tämä on koko prosessin vaikein vaihe. Meillä jokaisella on hieman erilainen tapa puhua ja murteet voivat vaikuttaa lausumiseen paljonkin. Jos puheen tunnistusta ei ole hyvin koulutettu, virheitä syntyy helposti.
Suomen kieli on lähtökohtaisesti helppo, sitä kirjoitetaan samoin kuin lausutaan. Lisäksi meillä on vähän erilaisia äänteitä, vain reilut 20. Englannin tai saksan kielet ovat jo huomattavasti vaikeammat tulkita. Lausumisesta ei aina suoraan tiedä miten sana kirjoitetaan.
Myös kielten murteet ovat kovin erilaisia. Puheentunnistuksen pitäisi ymmärtää yhtä lailla Berliinin, Baijerin ja Sveitsin saksaa tai Lontoon, Manchesterin ja Skotlannin englantia. Kiinan kielessä yhdellä tavalla lausuttu sana voi merkitä kymmentäkin eri asiaa, lisäksi murteet ovat niin erilaisia että eri alueiden ihmisetkään eivät ymmärrä toisiaan. Miten sitten kone? Ja, jos suomen kielessä on nuo reilut 20 perusäännettä, hindissä niitä on 140 ja siihen murteet päälle. Siksi virtuaaliavustajan ensimmäinen lause on usein ”en tainnut ymmärtää, voitko toistaa”.
Kun puhe on saatu muutettua tekstiksi, alkaa tekstin analysointi. Lauseesta ”millainen sää on Lahdessa iltapäivällä” erotellaan oleellinen asia. ”Millainen” tarkoittaa että tulossa on kysymys eikä esimerkiksi käsky (kuten ”Soita äidille”). ”Sää” viittaa säätilaan, ”Lahdessa” antaa paikkatiedon ja ”iltapäivällä” antaa aikatiedon. Jos jättäisit kysymyksestä paikan pois, avustaja etsisi säätilaa siellä missä juuri nyt olet ja aikatiedon puuttuessa säätiedot etsittäisiin tälle hetkelle.
Avustaja tekee nyt haun sääsovelluksessa ja etsii sieltä Lahden sääennusteen. Iltapäivä on laaja käsite, ja jos säätilassa ennustetaan iltapäivän mittaan muutoksia, nekin otetaan huomioon.
Nyt löydetty sääinfo pitää sitten kertoa kysyjälle. Tekstimuotoinen tieto pitää muuttaa puheeksi, eli Tekstistä puheeksi-systeemi lähtee käyntiin. Se toimii kahdessa vaiheessa: Ensin teksti muutetaan sarjaksi äänteitä ja sitten äänteet syntetisoidaan puheeksi. Äänteiksi muuntaminen tapahtuu käänteisesti puheen tunnistukseen verrattuna. Avustajalle on opetettu (tai siihen on koodattu) miten mikäkin äänne lausutaan. Lopuksi avustaja puhuu ääneen vastauksen ”Sääennusteen mukaan…”.
Nykyiset avustajien äänet ovat muuten yleensä täysin synteettisiä, vaikkakin koulutettu oikeilla ihmisäänillä. Ne eivät oikeasti ”puhu” vaan tuottavat sarjoja äänteitä, jotka me käsitämme puheeksi. Hyvin koulutetut äänet osaavat jo matkia ihmisten äänenmuodostusta ja luontaista puhetapaa niin hyvin, että synteettisen erottaminen aidosta voi olla hyvinkin vaikeaa.
Jokainen vaihe on koodattu ja koulutettu erikseen eivätkä eri vaiheet välttämättä ole mitenkään toisistaan riippuvaisia. Voi siis olla, että puheentunnistus ymmärtää ulkomaisen nimen vain suomalaisittain äännettynä, mutta tekstistä puheeksi lausuu sen täydellisesti. Tai karttasovellus lukee ulkomaalaisetkin paikannimet suomalaisittain. Ainakin itselleni musiikin pyytäminen autossa puhekomennoilla tuottaa hyvinkin villejä biisivalintoja. Jos ei muuta, niin musiikin tuntemus sen kun lisääntyy.
Otan mielelläni vastaan kommentteja, kysymyksiä ja kritiikkiä. Itse olen ollut tällä tutustumismatkalla siitä alkaen kun 2019 aloitin Applella, eli mikään huippuasiantuntija en ole. Mutta jonkinlainen käsitys on syntynyt jo siitä, mikä on totta ja mikä toiveunta – ja mihin ehkä ollaan pitkässä juoksussa matkalla.
Juha Pihanen