Suomenkielinen chatbot – mistä sellaisen saa?

Aidosti suomenkielinen chatbot on saatavilla

Olet varmasti kuullut:

  • ”Tekoäly ei toimi suomeksi”
  • ”Kaikki taivutusmuodot pitää erikseen syöttää”
  • ”Suomenkieli on vaikea tekoälylle”
  • ”Älä anna käyttäjälle mahdollisuutta kirjoittaa, vaan käytä nappeja”

Höpön pöpön, sanomme me. Suomen kieli on ihanteellinen tekoälylle, ja sille on helppo rakentaa hyvin toimivia tekoälyjä. Tai ainakin yhtä hyviä kuin englanniksi…

Chatbotteja voi tosiaan toteuttaa nappipohjaisina, jolloin käyttäjälle ei tarvitse antaa mahdollisuutta antaa vapaavalintaisia tekstejä. Jos kuitenkin halutaan hyödyntää chat-käyttöliittymän mahdollistava vapaamuotoisuus ja monipuoliset ilmaisutavat, suomenkielinen chatbot vaatii mysö aitoa kielianalyysiä.

Suomenkieli on ihanteellinen tekoälylle

Suomen kieli on erittäin hyvä kieli koneellisesti analysoitavaksi. Joitain esimerkkejä suomen kielen erityispiirteistä, joista on myös samalla hyötyä tekoälylle – tai ainakin vaatii erilaista lähetysmistapaa.

  • Yksittäisestä sanasta saadaan erittäin paljon tietoa esim. taivutusmuodoista. Näin voidaan ymmärtää mitkä ovat tärkeimpiä sanoja, tai voidaan poimia esimerkiksi tekemisen tapaa korostavat sanat.
  • Yhdyssanat tarkentavat kontekstia. Monissa kielissä ei ole yhdyssanoja, ja niiden löytämiseksi täytyy täytyy analysoida useiden sanojen sanaluokka, jotta löydetään perättäiset substantiivit.
  • Sanajärjestyksellä on vähemmän merkitystä kuin monissa muissa kielissä. Sanajärjestyksen sijaan suomen kieli hyödyntää taivutuksia, ja analysointi siirtyykin lauserakenteesta yksittäisen sanan analysointiin.

Siinä missä monissa kielissä lauserakenteen analyysi on oleellista tarkalle ymmärrykselle, voidaan suomen kielessä jopa yksittäisestä sanasta päätellä paljon. Kumpikaan tapa ei ole triviaali, muttei myöskään toistaan vaikeampi.

Kaikki nämä ovat etuja tekoälylle. Toisaalta se tarkoittaa, että suomen kieli vaatii erilaista lähestymistapaa kuin monet muut kielet.

Voiko englantiin pohjautuvalla tekoälyllä rakentaa suomenkielisen chatbotin?

Suomenkielisen chatbotin voi rakentaa myös englannin kieleen pohjautuvalla tekoälyllä. Näin myös usein tehdään, koska markkinoiden tunnetuimmat tekoälyratkaisut, eivät tue suomea tai monita skandinaavisia kieliä.

Näin rakennetulla chatbotilla on kuitenkin merkittävästi heikompi ymmärrysprosentti, koska tekoälyn on vaikea tunnistaa yhteenliittyviä sanoja tarkasti, lauserakenteesta ei saada apua ymmärrykseen, ja yhdyssanat esiintyvät tekoälylle eri sanoina.

  • Suomenkielessä on paljon taivutuksia. Ne voivat esiintyä tekoälylle joko eri sanoina tai niitä yritetään yhdistää typistämällä päätteitä pois. Typistäminen taas lisää riskiä, että eri sanoja luokitellaan yhteen. Vähintäänkin taivutuksesta saatu lisäinformaatio katoaa.
  • Yhdyssanat esiintyvät myös tekoälylle eri sanana. Joskus sillä ei ole merkitystä, mutta usein on tärkeää, että esimerkiksi ”kesämekko” ymmärretään kuuluvan alaluokaksi mekolle. Tätä voi ratkaista englanninkielisessä tekoälyssä tekemällä luokittelu manuaalisesti, mutta käyttäjien kaikkien yhdyssanojen kerääminen vaatii merkittävää työtä.
  • Lauserakenteesta ei saada apua ymmärtämiseen, koska se on kielikohtaista. Suomen kielen lauserakenne pohjautuu enemmänkin taivutuksiin kuin sanajärjestykseen.
  • Taivutuksista saatava lisäinformaatio menetetään.

 

Kieliriippumaton vai kielikohtainen tekoäly?

Markkinoilla on kieliriippumattomia, ns. kieliagnostisia ratkaisuja, jotka toimivat esimerkiksi analysoimalla sanoja, tavuja, tai pelkistetyimmällään merkkien peräkkäisyyttä. Niillä voidaan saada kohtuulisia tuloksia, kun halutaan luokitella syötteitä opetusdatassa olevan luokittelun mukaisesti.

Rajoituksena kuitenkin on, ettei kielianalyysin avulla voida tehdä monipuolisempia toimintoja. Tätä voidaan yrittää ratkaista poimimalla syötteestä avainsanoja (entity extraction), jolla voidaan esimerkiksi poimia kaikki kaupungit. Ongelmana kuitenkin on, että tällainen avainsanaluettelo vaatii kaikki taivutusmuodot, joita suomenkielessä on tuhansia – ja päivittäin käytettyjäkin kymmenittäin – jokaiselle avainsanalle. Toisaalta taivutuksesta saatu lisäarvo menetetään.

Mistä saa suomenkielisen chatbotin?

No… tästähän se löytyy. Chatbot Pack on Kwork Innovaatioiden tekoälyalusta, jossa on aito suomenkielinen analyysikone.

Voit rakentaa chatbotin alustallamme, tai hyödyntää kielikonettamme syötteen analysoimiseksi. Lue lisää suomenkielisestä chatbot-teknologiastamme!