Vieraskynä: Tekoälyn hyödyntäminen ESCO-osaamisten haussa
Taustaa
ESCO on ”eurooppalainen monikielinen taito-, osaamis-, tutkinto- ja ammattiluokitusjärjestelmä”, jonka tarkoituksena on mm. kuvata mitä ammatteja on olemassa ja millaisia taitoja ja osaamista eri ammateissa tarvitaan.
Kun sekä työnantajan tarve että työntekijän osaaminen on määritelty kieliriippumattomasti, saadaan työpaikat ja työntekijät kohtaamaan tarvittaessa yli rajojenkin. Gofore on mukana rakentamassa Työmarkkinatoria, joka hyödyntää ESCO-luokittelua mm. työpaikkahaussa.
Vaikka tällainen luokittelu on ajatuksena erinomainen, sen soveltaminen tavallisen tallaajan elämään on toisinaan haasteellista. Työnhakijalla voi esimerkiksi olla hyvinkin paljon monipuolista osaamista, mutta juuri tiettyä osaamista ESCO-luokitus ei ehkä tunne tai osaaminen on nimetty siten, että sen löytäminen on hankalaa.
Lähdimme tutkimaan, voisiko tekoälymenetelmien avulla löytää helpommin ESCO-luokituksen mukaisia osaamisia. Käytännössä voisimme siis hyödyntää käyttäjän kirjoittamaa tekstiä työhistoriastaan ja osaamisestaan ja ehdottaa sen perusteella ESCO-luokituksen mukaisia osaamisia.
Yksinkertaisesti liikkeelle
Yleensä tekoälysovellusten kanssa kannattaa lähteä liikkeelle jostain mahdollisimman yksinkertaisesta ja kehitellä mutkikkaampia malleja ymmärryksen kasvaessa.
Tässä on hyvä huomata, että sanoja ei käsitellä sellaisinaan vaan lyhyemmissä palasissa. Tällä on sikäli merkitystä, etteivät suomen kielen taivutusmuodot vaikuta kovinkaan paljon. Myöskään satunnaisilla kirjoitusvirheillä ei ole merkitystä haun onnistumiselle.
Kokeillaanpa antaa algoritmille jokin osaamista kuvaava syöte ja katsotaan, millaisia ESCO-luokituksen mukaisia osaamisia se löytää (kolme kärkiehdotusta):
"Jakaa postia"
- kirjata postia
- käsitellä postia
- hakea posti
Hyvältä näyttää tähän saakka. ”Posti” toki on sanana sellainen, joka ohjaa helposti oikeaan suuntaan. Kokeillaanpa jotain muuta:
"Osaan auttaa pyörätuolin käytössä"
- neuvoa asiakkaita silmälasien käytössä
- avustaa koneiden ja välineiden käytössä
- neuvoa asiakkaita uusien laitteiden käytössä
Nyt käykin niin, että sana ”käytössä” alkaa dominoida hakua, sillä ”pyörätuoli” ei esiinny missään ESCO-osaamisessa sellaisenaan.
Lisää dataa konekäännöksellä
Haun parantaminen olisi helppoa, jos osaamiset olisi kuvattu vähän laveammin. Itse asiassa ESCO-osaamisilla on kyllä parin lauseen kuvaus, joka kertoo mitä osaaminen tarkoittaa. Tätä tietoa ESCOssa ei kuitenkaan ole suomeksi, vaan vain englanniksi. Yli 13000 kuvaustekstin kääntäminen suomeksi olisi kuitenkin hidasta ja kallista. Ehkäpä tekoälytekniikat voisivat auttaa tässäkin?
Teimme muutamia kokeiluja ja totesimme, että monien tuntema Googlen käännöspalvelu tekee nykyään suorastaan hyviä suomennoksia:
Alkuperäinen kuvaus
Negotiate with the customers the precise terms at which the service will be sold.
Konekäännös
Neuvottele asiakkaiden kanssa tarkat ehdot, joilla palvelu myydään.
Alkuperäinen kuvaus
Various processing methods on precious metals such as gold, silver and platinum.
Konekäännös
Eri jalometallien, kuten kullan, hopean ja platinan, käsittelymenetelmät.
No, aivan kaikki käännökset eivät ole vielä täydellisiä:
Alkuperäinen kuvaus
Put adhesive on plies by operating the cement stick on drum edge.
Konekäännös
Pane liima kerroksiin käyttämällä sementtikeppää rummun reunalla.
Alkuperäinen kuvaus
The joining of two pieces of metal together by deforming one or both so they fit into each other.
Konekäännös
Kahden metallikappaleen liittäminen toisiinsa muuttamalla muotoaan yksi tai molemmat siten, että ne sopivat toisiinsa.
Meidän käytössämme pienet epätarkkuudet eivät kuitenkaan haittaa, koska konekäännettyä tekstiä ei näytetä lainkaan käyttäjälle, sitä käytetään vain apuna oikeaa osaamista etsittäessä. Kokeillaanpa nyt uudelleen aiempaa tapausta, kun konekäännetyt kuvaukset ovat mukana opetusaineistossa:
"Osaan auttaa pyörätuolin käytössä"
- neuvoa erikoisvälineiden käytössä päivittäisissä toimissa
- antaa esteettömyysratkaisuihin liittyviä neuvoja
- erikoisvälineiden käyttö päivittäisissä toimissa
Huomattavasti parempi! Nyt sana ”pyörätuoli” osataan yhdistää apuvälineisiin ja esteettömyyteen, koska se esiintyy osaamisten kuvaustekstissä.
Olisiko ammatista apua?
Edellä oleva algoritmi toimii jo aika mukavasti tapauksessa, jossa etsitään jotain nimenomaista osaamista. Jos sen sijaan syötteeksi annetaan jotain epämääräisempää, esimerkiksi viittauksia aiempaan työkokemukseen, saadaan selvästi huonompia tuloksia:
"Olen ollut kirjakaupassa harjoittelijana"
- järjestää harjoitukset
- ottaa osaa harjoituksiin
- osallistua urheiluharjoituksiin
Koska osaamisten kuvauksissa ei puhuta kirjakaupasta, algoritmi tarraa ”harjoittelija”-sanaan ja antaa ehdotuksia sen pohjalta.
Pohdimme, voisiko ongelman ratkaista unohtamalla osaamiset hetkeksi ja etsimällä sen sijaan ammatin, joka vastaisi syötettä. ESCOssa on kuhunkin ammattiin liitetty joukko osaamisia, joten ammattiin liittyvät osaamiset saamme kyllä listattua kätevästi.
Ammattipulmaa ratkoimme kahdella tavalla. Ensinnäkin ESCOssa on listattu kolmisentuhatta ammattia ja näille on olemassa parin lauseen mittainen (englanninkielinen) kuvausteksti, kuten osaamisillekin.
Vedimme nämäkin Googlen käännöskoneen läpi ja saimme näin aineistoa ammatin hakuun.
Toiseksi, Työmarkkinatorilla on yksityiskohtaiset kuvaukset noin kuudestasadasta ammatista. Näitä datoja ei ole mielekästä yhdistää, joten teemme ammattihaun molemmille datajoukoille ja yhdistämme tulokset. Kokeillaanpa nyt hakea ammattia syötetekstin perusteella:
"Työskentelin ennen päiväkodissa, niin ja koulun keittiöllä"
- keittiöapulainen
- keittiöpäällikkö
- lastenhoitaja
Ei hassumpaa! Ja kun huomioimme useampaan ammattiin kuuluvia osaamisia, ei haittaa niin paljon, vaikka jokin yksittäinen ammattiehdotus olisikin huono.
Ammatit kuitenkin osoittavat suunnilleen, miltä kantilta osaamisia kannattaa etsiä. Kokeillaanpa nyt aiempaa esimerkkiä:
"Olen ollut kirjakaupassa harjoittelijana"
- pysyä ajan tasalla viimeisimmistä kirjajulkaisuista
- myydä kirjoja
- suositella asiakkaille kirjoja
Paljon parempi! Puhtaasti ammatin perusteella tehtynä haku tuottaa toki joukon relevantteja osaamisia, mutta yksittäiset ammattiin liittyvät osaamiset tulevat satunnaisessa järjestyksessä. Käytännössä parhaaseen lopputulokseen päästäänkin yhdistämällä eri algoritmien tuottamia tuloksia sopivasti painottaen.
Tällainen yhdistelmäalgoritmi toimii myös silloin, kun ammattia ei pystytä määrittämään; silloin haku kohdistuu suoraan osaamisten nimiin ja kuvausteksteihin.
Johtopäätökset
Edellä kuvatuilla periaatteilla toimiva ”osaamissuosittelija” on jo käytössä Työmarkkinatorilla profiilin täytössä, ja uusia sovelluskohteita löytyy koko ajan. Syöteteksti kun voi olla periaatteessa mitä vain yksittäisestä hakusanasta henkilön itsensä kirjoittamaan esittelytekstiin ja CV:stä työpaikkailmoitukseen. Kehitystyö jatkuu.
Heikki Niittylä
Data Scientist Gofore
Katso myös