Hallusinaatiot ja virheet
Miksi tekoäly laskee väärin? Matematiikka ja kielimallin rajat
Kielimalli ei laske vaan jatkaa tekstiä, ja numerot ovat sille merkkijonoja muiden joukossa. Tästä seuraa virheitä, jotka toistuvat aina samoissa kohdissa.
Lyhyt vastaus
Kielimalli ei suorita laskutoimitusta vaan ennustaa, miltä laskun vastaus todennäköisesti näyttää. Numerot pilkkoutuvat paloiksi, joilla ei ole paikka-arvoa, joten pitkissä luvuissa muistinumeroiden siirtäminen ja sarakkeiden kohdistus eivät toimi luotettavasti. Pienet ja tavalliset laskut menevät yleensä oikein, koska ne on nähty aineistossa valmiina. Kun malli saa käyttöönsä laskimen tai koodityökalun, tulos muuttuu luotettavaksi, koska laskun tekee ohjelma eikä malli.
Sisällys
- Malli ei laske vaan jatkaa lukujonoa
- Numero pilkkoutuu paloiksi, joilla ei ole paikka-arvoa
- Missä virhe syntyy ja kuinka vakava se on
- Prosentti on kielellinen ansa ennen kuin se on laskutoimitus
- Yksiköt ja päivämäärät: kaksi virhettä samassa vastauksessa
- Kun malli saa laskimen, tilanne muuttuu
- Välivaiheet auttavat mutta eivät takaa
- Mitkä laskut kannattaa tehdä itse
- Usein kysytyt kysymykset
- Lähteet ja lisälukemista
Tekoäly kirjoittaa moitteettoman perustelun, listaa välivaiheet siististi ja päätyy summaan, joka on väärin. Sama kysymys uudestaan antaa toisen summan, joka on myös väärin, mutta eri tavalla. Tämä hämmentää, koska laskeminen tuntuu tietokoneelle helpolta tehtävältä. Taskulaskin on tehnyt sen virheettömästi vuosikymmeniä.
Selitys on siinä, että kielimalli ei ole laskin eikä sisällä laskinta. Se on tekstin jatkamiseen opetettu järjestelmä, ja aritmetiikka on sille yksi tekstilaji muiden joukossa. Mekanismi on kuvattu tarkemmin artikkelissa miten kielimalli toimii, mutta laskemisen kannalta olennaista on yksi asia: malli tuottaa vastauksen, joka näyttää oikealta, eikä tarkista sitä miltään.
Malli ei laske vaan jatkaa lukujonoa
Kun annat mallille laskun, se ei siirrä lukuja rekistereihin eikä suorita yhteenlaskualgoritmia. Se ennustaa, mikä merkki seuraa edellisiä. Vastaus syntyy samasta koneistosta kuin runo tai sähköpostin luonnos.
Tämä selittää kaksi havaintoa, jotka muuten näyttävät ristiriitaisilta. Ensinnäkin tavalliset pienet laskut menevät melkein aina oikein: ne esiintyvät opetusaineistossa valmiina niin usein, että oikea vastaus on selvästi todennäköisin jatko. Toiseksi harvinaiset laskut menevät pieleen juuri niissä kohdissa, joissa yleistäminen ei riitä. Malli ei osaa yhteenlaskua sääntönä vaan kuviona, ja kuvio pettää heti kun luvut ovat riittävän epätavallisia.
Virhe ei ole sattuma vaan tuotannon luonne. Sama malli voi antaa saman kysymyksen eri kerroilla eri vastauksen, koska tuotanto sisältää satunnaisuutta. Laskimessa sellaista ei tapahdu, ja siinä on koko ero.
Ristiriita on näennäinen myös toisesta syystä. Tietokone, jolla malli pyörii, laskee tietysti virheettömästi: koko mallin toiminta on suunnattomia määriä kerto- ja yhteenlaskuja. Ne laskut vain eivät ole niitä, jotka sinä esitit. Ne ovat mallin sisäisiä laskuja, joiden lopputulos on arvio seuraavasta tokenista. Sinun laskusi elää tekstikerroksessa mallin päällä, eikä se kerros pääse käsiksi alla olevaan tarkkuuteen.
Numero pilkkoutuu paloiksi, joilla ei ole paikka-arvoa
Malli ei näe tekstiä kirjaimina vaan tokeneina eli paloina. Sanat pilkkoutuvat paloihin, ja niin pilkkoutuvat myös luvut. Pitkä luku voi jakautua useaan palaan, ja jako riippuu siitä, mitkä numeroyhdistelmät ovat yleisiä. Suomen kielen puolella samaa ilmiötä käsitellään artikkelissa tokenit ja suomen kieli.
Ihmisen laskutaito perustuu paikka-arvoon. Tiedämme, että kolmas numero oikealta on satoja, ja allekkain laskiessa sarakkeet on kohdistettava. Kun luku on pilkottu paloiksi, tätä rakennetta ei ole näkyvissä. Malli joutuu päättelemään paikka-arvon epäsuorasti siitä, miltä vastaava lasku on aineistossa näyttänyt.
Tästä seuraa kolme tyypillistä oiretta:
- Muistinumero katoaa. Yhteenlaskussa siirto seuraavaan sarakkeeseen unohtuu, ja tulos heittää kymmenellä tai sadalla.
- Numeroiden määrä muuttuu. Vastauksessa on yksi numero liikaa tai liian vähän, jolloin virhe on kertaluokan kokoinen.
- Alku on oikein ja loppu väärin. Pitkässä kertolaskussa ensimmäiset numerot osuvat ja loppupää ei, koska alkupää on ennustettavampi.
Merkittävää on, että virhe on tyypillisesti lähellä oikeaa. Vastaus ei ole mieletön vaan uskottava, ja juuri siksi se menee läpi silmäilystä.
Missä virhe syntyy ja kuinka vakava se on
Kaikki laskeminen ei ole yhtä altista. Tämä taulukko kertoo, mihin kannattaa varautua.
| Laskutyyppi | Miksi se on vaikea | Riski |
|---|---|---|
| Pienet yhteen- ja vähennyslaskut | Nähty aineistossa valmiina | Pieni |
| Pitkät kerto- ja jakolaskut | Vaatii paikka-arvon ja muistinumerot | Suuri |
| Prosenttilaskut | Vaatii tulkinnan siitä, mistä prosentti otetaan | Suuri |
| Yksikkömuunnokset | Kerroin on muistettava oikein, ja kertoimia on monta | Keskisuuri |
| Päivämäärät ja määräajat | Epäsäännölliset kuukaudet ja karkausvuodet | Suuri |
| Taulukon summat ja keskiarvot | Monta lukua pidettävä samanaikaisesti mielessä | Suuri |
| Suuruusluokka-arviot | Tarkkuutta ei vaadita | Pieni |
Viimeinen rivi on hyvä uutinen. Kun kysyt, riittääkö tietty tallennustila tai onko jokin määrä lähempänä sataa vai tuhatta, malli on usein hyödyllinen. Kun vastauksen pitää olla tarkka, tilanne on toinen.
Taulukkorivi ansaitsee erillisen varoituksen, koska se on arjessa yleisin. Kun liität vastaukseen kuitteja, tuntikirjauksia tai laskuerittelyn ja pyydät summan, tehtävässä on kaksi vaihetta: lukujen poimiminen tekstistä ja niiden laskeminen yhteen. Kumpikin voi mennä pieleen erikseen, ja yhdistelmä on erityisen petollinen, koska poimittu luku näyttää oikealta ja summa näyttää oikealta. Jos rivejä on kymmeniä, tarkistaminen vie yhtä kauan kuin laskeminen itse, jolloin taulukkolaskenta on nopeampi tie.
Prosentti on kielellinen ansa ennen kuin se on laskutoimitus
Prosenttivirheet eivät johdu pelkästä laskemisesta vaan siitä, että prosentti vaatii tulkintaa. Mistä luvusta prosentti otetaan, ja mihin sitä verrataan.
Kolme kohtaa toistuu:
- Prosentti ja prosenttiyksikkö sekoittuvat. Jos osuus nousee kymmenestä prosentista kahteentoista prosenttiin, nousu on kaksi prosenttiyksikköä mutta kaksikymmentä prosenttia. Molemmat ovat oikein, ja väärä valinta muuttaa merkityksen.
- Alennus ja korotus eivät kumoa toisiaan. Sama prosentti pois ja takaisin ei palauta alkuperäistä lukua, koska jälkimmäinen lasketaan pienemmästä pohjasta.
- Verollisen ja verottoman hinnan suunta. Veron lisääminen hintaan ja veron erottaminen hinnasta ovat eri laskuja. Malli valitsee usein sen, joka näyttää kysymyksessä tutummalta.
Näissä kannattaa pyytää mallilta kaava eikä lukua. Kaavan voi tarkistaa silmällä, ja luvun voi laskea itse.
Yksiköt ja päivämäärät: kaksi virhettä samassa vastauksessa
Yksikkömuunnos vaatii oikean kertoimen ja oikean suunnan. Kertoimet ovat mallille muistitietoa, ja tavallisimmat menevät oikein. Ongelma alkaa siitä, että sama sana tarkoittaa eri asioita eri yhteyksissä. Tallennustilan yksiköissä tämä on jokapäiväistä, ja syy on kuvattu artikkelissa tavut, megatavut ja gigatavut. Malli voi laskea oikein ja silti käyttää väärää kerrointa, jolloin virhettä ei näe laskutoimituksesta.
Päivämäärälaskenta on vielä hankalampi, koska siinä yhdistyy kaksi eri virhelähdettä. Ensimmäinen on aritmetiikka: kuukausissa on eri määrä päiviä, karkausvuodet toistuvat säännöllä jota malli ei sovella vaan muistaa, ja viikonpäivän laskeminen vaatii oikean lähtöpisteen. Toinen on se, että malli ei tiedä luotettavasti tämän päivän päivämäärää. Siitä seuraa virheitä myös silloin, kun laskutoimitus itse on oikein, ja asiaa käsitellään erikseen artikkelissa tiedon katkaisupäivä.
Käytännön sääntö: älä koskaan laske määräaikaa mallilla ilman että kerrot sille päivämäärän, josta lasketaan. Ja tarkista tulos kalenterista, jos määräajalla on seurauksia.
Kun malli saa laskimen, tilanne muuttuu
Nykyiset assistentit osaavat monessa tapauksessa siirtää laskun ohjelmalle. Malli kirjoittaa lyhyen laskentakomennon, ohjelma suorittaa sen, ja tulos palautetaan vastaukseen. Tällöin lasku on deterministinen: sama syöte antaa aina saman tuloksen. Sama periaate laajenee laajemmin työkalujen käyttöön, jota käsitellään artikkelissa tekoälyagentit.
Työkalun käytön tunnistaa yleensä näistä merkeistä:
- Vastauksessa näkyy koodia tai maininta laskennan suorittamisesta.
- Käyttöliittymä näyttää erillisen välivaiheen, jota voi klikata auki.
- Tulos on tarkka viimeistä desimaalia myöten, myös epätavallisilla luvuilla.
Työkalulaskennassakin kannattaa katsoa pyöristys. Ohjelma laskee tarkasti, mutta esitysmuoto voi pyöristää tuloksen, ja rahassa pyöristyksen suunta ja vaihe ratkaisevat lopputuloksen. Jos summaa käytetään laskutukseen, tarkista onko pyöristys tehty rivikohtaisesti vai vasta loppusummasta.
Jos mitään näistä ei näy, lasku on todennäköisesti tuotettu tekstinä. Voit myös pyytää työkalua suoraan: ohje muodossa "laske tämä ohjelmallisesti ja näytä käyttämäsi laskutoimitus" tekee erosta näkyvän. Työkalu ei silti korjaa väärin ymmärrettyä tehtävää. Jos malli valitsee väärän kaavan, ohjelma laskee väärän kaavan virheettömästi.
Välivaiheet auttavat mutta eivät takaa
Kun malli kirjoittaa laskun auki vaihe vaiheelta, tarkkuus paranee. Syy on rakenteellinen: jokainen välivaihe on lyhyempi tehtävä kuin koko lasku kerralla, ja aiemmat vaiheet ovat näkyvissä seuraavaa tuotettaessa. Tähän perustuvat myös päättelymallit, jotka tuottavat välivaiheita automaattisesti.
Välivaiheiden näkyminen ei kuitenkaan todista mitään. Perustelu on sekin tuotettua tekstiä, ja se voi olla siisti, looginen ja silti johtaa väärään lukuun. Vielä tavallisempaa on, että yksi välivaihe on väärin ja loput lasketaan sen päälle oikein. Lopputulos on väärä, mutta virhettä ei näy mistään muualta kuin siitä yhdestä rivistä.
Tästä syystä välivaiheiden lukeminen kannattaa: et tarkista päättelyketjua vaan etsit sen yhden rivin, jossa luku muuttuu. Sama ilmiö tunnetaan laajemmin nimellä hallusinaatio, ja laskuissa se on poikkeuksellisen helppo havaita, koska oikean vastauksen voi todeta itse.
Mitkä laskut kannattaa tehdä itse
Nyrkkisääntö on yksinkertainen: jos luvulla on seurauksia, älä jätä sitä mallin varaan. Nämä kuuluvat aina omaan tarkistukseen.
- Raha. Laskut, verot, korot, tarjousten vertailu ja mikä tahansa summa, joka siirtyy tililtä toiselle. Käytä viranomaisen omaa laskuria silloin kun sellainen on, esimerkiksi veroasioissa.
- Terveys ja annostelu. Lääkeannokset ja niiden muunnokset kuuluvat ammattilaiselle, eivät kielimallille.
- Määräajat. Valitusajat, takuuajat ja irtisanomisajat lasketaan kalenterista ja tarkistetaan alkuperäisestä ehdosta.
- Mitoitus ja turvallisuus. Rakenteiden, kuormien ja sähkön mitoitus on ammattilaisen työtä, ja virheellä on fyysisiä seurauksia.
- Kaikki taulukot, jotka päätyvät eteenpäin. Summat ja keskiarvot kannattaa laskea taulukkolaskennalla, joka näyttää kaavan.
Käytännön työjärjestys on tämä: pyydä mallilta kaava ja selitys siitä, mitkä luvut siihen kuuluvat, ja tee itse laskutoimitus. Näin saat sen mitä malli osaa parhaiten eli tehtävän jäsentämisen, ja jätät pois sen, mitä se tekee huonoiten. Jos tarvitset vastauksen suoraan mallilta, pyydä lasku työkalulla ja tarkista suuruusluokka päässälaskulla. Suuruusluokka riittää yllättävän usein paljastamaan virheen, koska mallin virheet ovat harvoin pieniä pyöristyksiä ja usein kokonaisia kertaluokkia.
Usein kysytyt kysymykset
Osaako tekoäly laskea prosentteja oikein?
Yksinkertaiset prosenttilaskut menevät usein oikein, mutta virhe syntyy tulkinnasta. Malli voi ottaa prosentin väärästä luvusta tai sekoittaa prosentin ja prosenttiyksikön. Pyydä kaava ja laske itse, jos luvulla on merkitystä.
Miksi sama lasku antaa eri vastauksen eri kerroilla?
Vastaus tuotetaan todennäköisyyksien perusteella, ja tuotannossa on satunnaisuutta. Laskin antaa aina saman tuloksen, koska se suorittaa algoritmin. Kielimalli tuottaa joka kerta uuden tekstin, joten myös virhe voi olla joka kerta erilainen.
Auttaako se, että pyydän mallia laskemaan vaihe vaiheelta?
Auttaa, koska lyhyet välivaiheet ovat helpompia kuin koko lasku kerralla ja aiemmat vaiheet näkyvät seuraavaa tuotettaessa. Tarkkuus paranee mutta ei muutu varmaksi. Välivaiheet kannattaa lukea siksi, että virheellinen rivi löytyy niistä helposti.
Mistä tiedän, käyttikö tekoäly oikeasti laskinta?
Työkalun käyttö näkyy yleensä vastauksessa koodina, erillisenä laskentavaiheena tai avattavana välilehtenä. Voit myös pyytää mallia laskemaan ohjelmallisesti ja näyttämään käytetyn laskutoimituksen. Jos mitään merkkiä ei näy, lasku on todennäköisesti kirjoitettu tekstinä.
Voiko tekoälyä käyttää kirjanpitoon tai veroilmoitukseen?
Jäsentämiseen ja ohjeiden selittämiseen kyllä, lopullisten lukujen laskemiseen ei. Käytä Verohallinnon omia laskureita ja palveluita, ja tarkista summat kirjanpito-ohjelmasta. Vastuu ilmoituksen oikeellisuudesta on aina ilmoittajalla.
Miksi malli laskee väärin mutta selittää laskun oikein?
Selitys ja luku syntyvät samasta tekstintuotannosta, mutta selitys on aineistossa paljon yleisempi kuvio kuin juuri tämä lukuyhdistelmä. Siksi perustelu voi olla täysin oikea ja silti johtaa väärään summaan. Selitys ei ole todiste laskun oikeellisuudesta.
Kannattaako laskutoimitus antaa mallille kuvana tai taulukkona?
Kuvasta tai kopioidusta taulukosta lukeminen tuo mukaan yhden lisävirheen mahdollisuuden, koska luvut on ensin tunnistettava oikein. Jos käytät kuvaa, pyydä malli ensin luettelemaan lukemansa luvut ja tarkista ne ennen laskua.