Tulisipa Terminaattori tekemään minunkin työni

Varusmies opettamassa tekoälylle, miltä ryömiminen näyttää.
Varusmies opettamassa tekoälylle, miltä ryömiminen näyttää.
Kuva:
Martti Kirkko-Jaakkola

Nykypäivänä puhutaan paljon tekoälystä ja sen tuomista muutoksista työelämään. Odotuksena on, että joidenkin vuosien kuluttua tekoäly ja robotit syrjäyttävät ihmiset esimerkiksi tuotanto- ja asiakaspalvelutehtävissä. Hurjimmissa visioissa se Teko Äly ottaa ja ratkaisee kaikki mahdolliset pienet ja suuret ongelmat ihan vain pyytämällä. Toiset taas pelkäävät Teko Älyn ja robottien maailmanvalloitusta ja ihmiskunnan tuhoutumista. Itse en vielä varsinaisesti pidätä hengitystäni näitä muutoksia odotellessa.

Kerron seuraavassa tekoälyä hyödyntäneestä tutkimusprojektistamme, jossa oli sen verran monia käänteitä, että olisin mielihyvin ottanut Terminaattorin tekemään sen puolestani.

Jo päättyneessä INTACT-projektissa (lyhenne sanoista Infrastructure-free Tactical Situational Awareness) kehitimme puettaviin sensoreihin perustuvaa paikannusjärjestelmää. Puetuilla sensoreilla mitataan mihin suuntaan ja kuinka pitkän matkan henkilö liikahtaa lyhyttä aikayksikköä kohden. Kun näitä liikahduksia lasketaan yhteen, saadaan selville mihin henkilö päätyi lähdettyään liikkeelle tunnetusta sijainnista. Järjestelmän periaatteena on, että se toimii itsenäisesti ilman satelliittipaikannusjärjestelmiä kuten GPS:ää tai Galileoa, tai ilman mitään kiinteään infrastruktuuriin kuten WiFi:in perustuvaa sisätilapaikannusjärjestelmää.

Tällainen järjestelmä lisää esimerkiksi palomiesten turvallisuutta heidän suorittaessaan sammutustöitä palavassa rakennuksessa. Haastavissa olosuhteissa toimiva paikannusjärjestelmä takaa, että yllättävissäkin tilanteissa palavasta rakennuksesta löydetään reitti takaisin ulos. Samanlainen paikannusjärjestelmä hyödyttää myös sotilaita, ja INTACT-projektissa tehtiinkin yhteistyötä Suomen Puolustusvoimien kanssa.

Tekoälylle täytyy kertoa, miltä kävely näyttää

Infrastruktuurista vapaan paikannusjärjestelmän perustana on kiihtyvyyttä ja kulmamuutosta mittaava inertiasensori. Sellaisia käytetään myös esimerkiksi älypuhelimissa kertomassa näytölle, mihin suuntaan kuva on käännettävä, ja älykelloissa laskemassa päivän mittaan otettuja askelia. Paikannusjärjestelmä vaatii kuitenkin myös muita sensoreita tuekseen, näistä esimerkkinä videokamera tai ilmanpainetta mittaava barometri.

Jotta paikannusjärjestelmä toimisi kaikissa tilanteissa, sen täytyy mukautua vaihtuviin olosuhteisiin. Yksi osa muuttuvia olosuhteita on paikannusjärjestelmän liikekonteksti, toisin sanoen juokseeko, käveleekö, ryömiikö tai kiipeääkö järjestelmän käyttäjä. Ensimmäinen askel on tunnistaa, miten käyttäjä kullakin hetkellä liikkuu. Tähän voidaan käyttää tekoälyä, tarkemmin hahmontunnistusta joka on osa tekoälyn laajempaa konseptia. Hahmontunnistusta hyödyntää myös esimerkiksi sähköpostin roskapostisuodatin lajitellessaan viestejä, sekä älypuhelimen kamera tunnistaessaan kuvasta kasvot, jotta pupunkorvat saadaan lisättyä oikeaan paikkaan kuvassa.

No, miten se tekoäly sitten saadaan kertomaan, miten käyttäjä kulloinkin liikkuu? Ensin sille täytyy kertoa, miltä erilaiset liikkeet näyttävät. Käytännössä tämä tarkoittaa sitä, että paikannusjärjestelmä on puettava päälle ja on liikuttava niillä tavoilla, joita halutaan tunnistaa. Useimmiten se on tutkijaparka itse, joka juoksee, ryömii ja kiipeilee riittävän datamäärän keräämiseksi.

INTACT-projektin kohdalla onneksi saimme kuitenkin hyödyntää Utin varusmiehiä järjestelmän testaamisessa ja datan keräämisessä, joten tällä kertaa tutkijoiden tehtäväksi jäi ainoastaan varusmiesten komentaminen.

Erilaiset sensorit tuovat sekä hyötyä että haasteita

Kunhan data on kerätty, syötetäänkö kaikki vain uusimpaan neuroverkkotekniikkaan ja nautitaan tuloksista? No ei. Mikäli haluamme tietää esimerkiksi sekunnin tarkkuudella miten käyttäjä liikkuu, mittaukset eri sensoreilta on ensin jaettava sekunnin mittaisiin lohkoihin. Tämäpä onkin yllättävän haastavaa, kun käytetään eri valmistajien sensoreita, jotka keräävät dataa eri tahdissa ja tallentavat eri laitteille.

Mikäli laitteiden kellot ovat vaikkapa sen sekunninkin verran eri ajassa, eri datalähteiden synkronointi kellonajan perusteella ei onnistu. Olemmekin todenneet, että tässä tilanteessa parasta on, että laitteiston käyttäjä hyppää ilmaan kerran ennen varsinaista datan keruun aloittamista. Hyppy näkyy selkeänä piikkinä kiihtyvyysanturien mittauksissa ja on helppo tunnistaa myös kameran kuvaamalta videolta.

Mitään varsinaista edistynyttä tekniikkaa tämä ei silti kyllä ole… Työstämmekin tällä hetkellä muun muassa eri sensorien yhdistämistä samaan laitteeseen, joka tulee helpottamaan vähintäänkin eri sensorimittausten synkronointia. Hankaluuksista huolimatta erityyppisiä sensoreita tarvitaan, sillä ne kompensoivat toistensa huonoja ominaisuuksia. Inertiasensori ei esimerkiksi ole kovin hyvä mittaamaan korkeuden muutosta, joten mittaukseen tarvitaan tueksi barometriä.

Opetusnäytteet luokitellaan käsityönä

No jokos nyt se neuroverkko? Valitettavasti ei. Kun data on onnistuttu jakamaan toisiaan vastaaviin sekunnin lohkoihin, joita myös opetusnäytteiksi kutsutaan, jokainen näyte täytyy merkitä sillä liikkeellä jota data edustaa. Muutoin tunnistusmenetelmällä on käytössään vain kasa näytteitä, joista se ei mitenkään tiedä mitä liikettä ne edustavat.

Käytännössä teimme tämän siten, että katsoimme testin aikana kuvattua videota käyttäjän hyppäyksestä eteenpäin sekunnin pätkissä ja kirjoitimme joka sekunnin kohdalla käsin ylös, miten paikannuslaitteiston käyttäjä liikkui. Useimmiten tekoälyyn liittyvässä kehitystyössä tämä vaihe, opetusnäytteiden kerääminen ja luokittelu, onkin se vaativin ja työläin homma.

Kun meillä nyt on sekunnin mittaisia opetusnäytteitä joiden liikekonteksti tiedetään, voimme kertoa tekoälylle, miltä mikäkin liike näyttää sensoreilla katsottuna. Pääsemme vihdoin sen neuroverkon opetukseen… ehkä. Ilmaisia lounaita ei ole olemassa, eikä tässäkään tapauksessa ole mitään takeita siitä, että mikään yksittäinen neuroverkko tai muukaan menetelmä voisi oppia tunnistamaan eri liikkeet hyvin.

Siispä eri menetelmiä täytyy opettaa ja testata, ja sitten tarkastella menetelmällä saatuja tuloksia, jotta saamme selville, mikä vaihtoehto pystyy parhaiten tunnistamaan eri liikkeet. Tunnistustarkkuuden lisäksi puettaviin sensoreihin perustuvassa järjestelmässä täytyy huomioida myös tunnistusmenetelmän vaatima prosessointikapasiteetti ja virrankulutus. Vaikka meillä olisi tunnistusmenetelmä, joka tunnistaa kaikki liikkeet sadan prosentin tarkkuudella, siitä ei ole mitään hyötyä, jos tunnistuksessa kestää useita sekunteja ja järjestelmän akku hupenee minuuteissa.

Yksilölliset kävelytyylit hämäävät tekoälyä

Löydettyämme ja opetettuamme sen sopivan liikkeentunnistusmenetelmän voisimme ehkä vain kopioida sen koodin kaikkiin laitteisiin ja hyödyntää tulosta paikannusmenetelmän parantamisessa, mutta tässä on vielä yksi ongelma. Meillä kaikilla on se yksi kaveri, jonka tunnistaa hassusta kävelytyylistä jo pitkän matkan päästä, eikö vain?

Liikkeentunnistusjärjestelmää kehittäessä on osoittautunut, että eri ihmisten hiukan erilaiset tyylit liikkua tekevät järjestelmän kehittämisestä hiukan haastavampaa. Jos keräämme opetusnäytteitä vain yhdeltä henkilöltä, näillä näytteillä opetettu järjestelmä tunnistaa hyvin tämän saman henkilön liikkeet. Kuitenkin jonkun toisen päälle puettuna laitteisto ei enää tunnistakaan eri liiketyyppejä yhtä hyvin, ja järjestelmä saattaa luulla vaikkapa paikallaan seisomista kävelyksi, koska käyttäjällä on tapanaan liikehtiä seistessään tavalla, joka muistuttaa toisen henkilön kävelyä.

Erilaisten liikkumistapojen vuoksi liikkeentunnistusmenetelmän kehittämiseen tarvittaisiin joko valtavat määrät testinäytteitä eri ihmisiltä realistisista tilanteista, tai vaihtoehtoisesti jokaiselle henkilölle tulisi opettaa oma liikkeentunnistin.

Liikkeentunnistusjärjestelmää kuitenkin usein tarvitaan sellaisissa tilanteissa, joissa näytteiden keräämiselle ei käytännössä ole aikaa. Puettavan paikannusjärjestelmän on toimittava heti, kun käyttäjä sen pukee päälleen. Palomiehillä kun on yleensä parempaakin tekemistä kuin liikkeentunnistajan opettaminen, kun vieressä liekehtii jonkun koti.

Myöskään suurten näytemäärien kerääminen realistisista tilanteista useilta eri henkilöiltä ei välttämättä ole, no, realistista. Tästä syystä tavoitteenamme on huolellisen datan prosessoinnin ja menetelmäkehityksen kautta kehittää henkilöstä riippumaton liikkeentunnistin. Tutkimuksen viimeisimpiä tuloksia olemme julkaisseet kesällä 2018.

Parempi terminaattori on työn alla

Ihminen kykenee asiaa juuri pohtimatta kertomaan, käveleekö, juokseeko vai ryömiikö joku henkilö. Jotta saisimme tekoälyn tekemään saman hyvin yksinkertaisen tehtävän, joudumme käymään läpi monia eri vaiheita datan keruusta menetelmien testaamiseen. Tällöinkään ei aina ole takeita siitä, että sinun liikkeesi tunnistamaan opetetulla tekoälyllä olisi aavistustakaan siitä, mitä se hassusti kävelevä kaverisi puuhaa. Sama tekoäly ei myöskään osaa tehdä mitään muuta kuin kertoa mitä liikettä se mielestään sensoreilla katselee. Niillä taidoilla tekoälyparan maailmanvalloituksesta voi tulla vähän vaikeaa.

Erilaisia tekoälytekniikoita kehitetään kuitenkin jatkuvasti, ja ehkäpä tulevaisuudessa Terminaattori hoitaa tämänkin homman ja tutkijoiden aika vapautuu näytteiden manuaalisesta luokittelusta johonkin kiinnostavampaan.

PS. Terminaattoria odotellessa kannattaa tutustua Reaktorin ja Helsingin Yliopiston ilmaiseen verkkokurssiin tekoälyn perusteista!

PPS. Seuraa myös FGI:n ja yhteistyökumppaneiden tutkimusta liittyen tekoälyn hyödyntämiseen laivojen navigoinnissa.

 

Maija Mäkelä

Maija Mäkelä
tutkija
Twitter @maija_makela

Kirjoittaja on tutkija Paikkatietokeskuksen Navigoinnin ja paikannuksen osastolla. Hän työskentelee Sensoreiden ja Sisätilanavigoinnin tutkimusryhmässä erityisesti infrastruktuurista riippumattomien paikannusmenetelmien, verkottuneen paikannuksen sekä koneoppimista hyödyntävän tilannetietoisuuden parissa.

 

 

 

 

 

 

 

.

 

Kommentit

Rajattu HTML

  • Sallitut HTML-tagit: <a href hreflang> <em> <strong> <cite> <blockquote cite> <code> <ul type> <ol start type> <li> <dl> <dt> <dd> <h2 id> <h3 id> <h4 id> <h5 id> <h6 id>
  • Rivit ja kappaleet päätetään automaattisesti.
  • Verkko- ja sähköpostiosoitteet muutetaan automaattisesti linkeiksi.

Uusimmat uutiset ja blogit