Eesti keele ja kultuuri toetusest suurtes keelemudelites

12 minutit
Kuula

Viimaste aastate jooksul on keeletehnoloogia hüppeliselt arenenud ja suurte keelemudelite, nagu ChatGPT, tulek on seda suunda tähelepanuväärselt mõjutanud. Varasemalt tegeles keeletehnoloogia mitut laadi ülesannetega ühekaupa ning arendati eraldi lahendusi näiteks masintõlke, küsimustele vastamise, tekstidest kokkuvõtete tegemise, juturobotite, digitaalsete assistentide jmt jaoks. Suured keelemudelid tõid selles osas kaasa murrangu. Ühtäkki olid olemas mudelid, mis suudavad korraga lahendada mitmeid ülesandeid ja seda sageli paremini kui spetsiaalselt arendatud süsteemid. ChatGPT on ka esimene keeletehnoloogiline lahendus, mis on leidnud või leidmas elus laia kasutust ning mille alusel on loodud arvukalt kommerts- ja vabavaralisi rakendusi. Seega võib öelda, et ChatGPT tõi tehisintellekti (nii, nagu me seda praegu mõistame) suurte keelemudelitena massidesse ja see on muutnud märkimisväärselt nii keeletehnoloogia teadusharu, paljude asutuste ja ettevõtete töövooge, pakutavaid tooteid-teenuseid jne ning nende muutuste sisu ja mõju saab selgeks alles aja jooksul.

Suurte keelemudelite võimekus sõltub nende treeningandmestikust. Mudelid teavad ja oskavad neid keeli, mille sõnavara ja grammatikaga on neid treenitud. Kuigi paljud suured keelemudelid on mitmekeelsed, võib kindlalt väita, et kõige võimekamate mudelite keeleoskus on siiski parim inglise keeles. Samal ajal oskas juba pea kaks aastat tagasi avalikustatud ChatGPT varaseim versioon veidi ka eesti keelt ning praeguseks on tema oskused selles vallas märgatavalt paranenud. Lisaks on olemas vaba litsentsiga keelemudeleid, näiteks Meta LLaMa perekonna mudelid, Mistral AI mitmekeelsed mudelid ning Google Gemma mudelid, mis samuti oskavad mõnevõrra eesti keelt. Kõigi nende mudelite eesti keele oskus tuleneb sellest, et nende treeningandmestikus on olnud ka eestikeelseid tekste. Eestikeelsete tekstide valik treeningandmetes pole aga olnud teadlik ega sihipärane, vaid on juhuslikult sõltunud sellest, kui palju eestikeelseid tekste ja millised on sattunud veebist kogutud andmestiku hulka, millest mitmekeelne treening­andmestik on koostatud.

Eeldatavasti tehnoloogiaettevõtted jätkavad uute suurte keelemudelite treenimist, kasutades selleks üha suuremaid tekstimassiive. Näiteks Meta LLaMa perekonna esimese versiooni mudeleid treeniti andmestikul, mis sisaldas umbes 1,4 triljonit sõna.* LLaMa 2 versiooni mudelite treeningandmestik kasvas juba ca 1,8 triljoni sõnani ning hiljuti avalikustatud LLaMa 3 mudelid on treenitud andmestikul, milles on umbes 15 triljonit sõna. Nendest ligikaudu 5% ehk umbes 0,75 triljonit sõna pärines mitteingliskeelsetest tekstidest. Kui LLaMa 1 ja LLaMa 2 mudelitel eesti keele oskus peaaegu puudus, siis LLaMa 3 eesti keele oskus peaks olema vabavaraliste mudelite seas parim.

Seega võib eeldada, et kui see suundumus jätkub, paraneb tulevastes mudelites ka eesti keele toetus.

Eesti keele ja kultuuri teadmiste hindamine

Tunnetuslikult ei ole keeruline hinnata, kui hästi mõni mudel eesti keelt oskab. Need, kes on kasutanud OpenAI mudeleid, eriti uusimat GPT-4o versiooni, nõustuvad tõenäoliselt, et selle eesti keele oskus on väga hea. Kuidas aga süstemaatiliselt hinnata, kui hea on mingi mudeli eesti keele valdamise tase ning kui hästi tunneb mudel eesti kultuuri? See ei ole sugugi lihtne ülesanne. Keelemudelite võimekust hinnatakse tavaliselt spetsiaalsete testandmestikega, mis sisaldavad mitmesuguseid ülesandeid ja küsimusi. Tihti kasutatakse järeldamist nõudvaid ülesandeid, kus mudelile antakse lühike olukorra kirjeldus ja seejärel esitatakse küsimus. Hindamise lihtsustamiseks antakse mudelile ette mitu vastusevarianti, millest mudel peab õige valima. Selliste ülesannete puhul on tulemusi lihtne kokku võtta – loendatakse õigesti vastatud küsimuste arv ja arvutatakse nende protsent. Ilmselt võiks mudel, mis oskab eesti keelt, vastata sellistele eestikeelsetele küsimustele paremini kui mudel, mis eesti keelt ei valda. Kui vastusevariantide arv on neli, siis juhusliku arvamise täpsus on 25%, ja iga mudel, mis on saavutanud sellest kõrgema tulemuse, midagi eesti keele kohta ilmselt teab. Ometi on seda tüüpi järeldamisülesannete kasutamine vaid kaudne viis keeleoskuse hindamiseks. Kui soovitakse täpsemat ülevaadet mudeli eesti keele ja kultuuri tundmisest, on vaja spetsiifilisemaid testandmestikke, mis kataksid esinduslikult eesti keele ja kultuuri olulised nähtused.

ChatGPT vastus juhisele „tee sõnapilv eesti keelest ja kultuurist“ – „Siin on sõnapilv, mis sisaldab eesti keele ja kultuuriga seotud sõnu. See esindab mitmekesist kultuurilist pärandit ja keelelisust, mis on osa eesti identiteedist.“

Üks võimalus mudeli keeleoskuse hindamiseks on testida, kui hästi mudel tunneb eesti nimisõnade käänamist. Näiteks ChatGPT uusim versioon tunneb eesti keele eripära hästi ja genereerib harva grammatiliselt vigast teksti. Aga kui paluda mudelil esitada näiteks sõna „pauk“ ainsuse vormid kõigis neljateistkümnes käändes, ilmnevad mõningad vead. Näiteks pakub mudel sisseütleva käände küsimuseks lisaks „kellesse?“ ka „kusse?“ tavalise „kuhu?“ asemel. Samuti pakub mudel alaltütleva käände vormiks „paukult“ korrektse „paugult“ asemel. Eesti keeles moodustatakse ainsuse nimisõna käänete vormid alates sisseütlevast omastava käände tüve kasutades. Seega kui omastava tüvi on teada, on ülejäänud käänete vorme alates sisseütlevast lihtne moodustada. Praeguse näite puhul on mudel korrektselt teinud omastavas käände tüves sulghääliku muutuse „pauk“ → „paugu“, aga pole suutnud üldistada, et sama tüve tuleks kasutada ka kõikides ülejäänud käänetes. See väike test näitab, et ChatGPT viimasel versioonil ei ole veel piisavalt head arusaama eesti keele morfoloogiast, et seda süstemaatiliselt ja veatult rakendada. Selliste aspektide täpseks hindamiseks on vajalikud spetsiifilised testandmestikud, vastasel juhul võivad jääda mudeli puudujäägid märkamatuks.

Kui eesti keele morfoloogia testimiseks mõeldud ülesannete koostamine võib olla suhteliselt lihtne, siis eesti kultuuri tundmist hindava andmestiku loomine on tõenäoliselt palju keerulisem. See eeldab põhjalikku läbimõtlemist, millised on kõige tähtsamad kultuurivaldkonnad ning millised sündmused, faktid ja teadmised on igas valdkonnas kesksed. Sellele arusaamale tuginedes saaks koostada andmestiku, mis püüaks hõlmata esinduslikku valimit esmatähtsatest kultuuriteadmistest. Tõsi, selline andmestik ei saa kunagi olla täielikult representatiivne ega kõikehõlmav, vaid saaks ainult püüelda selle eesmärgi poole. Kuid ka osaliselt kultuurinähtusi kattev andmestik oleks vajalik, sest praegu puudub eesti keeles teadaolevalt igasugune süsteemne kultuuriteadmisi hindav andmestik.

Võtame näiteks ChatGPT viimase versiooni. Küsisin mudelilt, millised teosed võitsid 2021. aasta Eesti Kirjanike Liidu romaanivõistluse. Vastuseks sain (eestikeelsele küsimusele küll inglise keeles), et võitjad olid Loone Otsa romaan „Armastus“ ja Juta Kivimäe „Suur tuba“. Mudel ei teadnud neid fakte ise, vaid leidis selle info veebipäringu kaudu Eesti Päevalehes ilmunud artiklist. Kui siis jätkuks küsisin, millised teosed kuuluvad Loone Otsa loomingusse, andis mudel nimekirja, mille tõeväärtus oli kahtlane – selles sisaldus nii teoseid, mida ei leidu üheski Eesti raamatukogu andmebaasis ja mis on suure tõenäosusega mudeli enda välja mõeldud ehk hallutsineeritud, kui ka teoseid, mille autor on tegelikult keegi teine.

Võib tekkida küsimus, kas suured keelemudelid peaksid üleüldse teadma selliseid fakte eesti kultuuri kohta nagu näiteks kirjanikud ja nende teosed. Siiski on mitu põhjust, miks seda tähtsaks pidada:

1. Suurte keelemudelite kasutusvaldkond laieneb tõenäoliselt paljudesse valdkondadesse, kus neid hakatakse üha kasutama tavapäraste otsingumootorite kõrval ja asemel. Seetõttu on tähtis, et mudel annaks tõest infot või vähemalt tunnistaks, kui ta ei tea vastust.

2. Suured keelemudelid pakuvad võimalust säilitada eesti keelt ja kultuuri käsitlevat infot. Teatud mõttes võib suuri keelemudeleid vaadelda kui andmebaasi, kus infot hoitakse mittesümboolsel kujul. Kuigi seda ei saa tavapärasel viisil pärida, võimaldab mittesümboolne esitus mudelil sünteesida infokildude alusel järeldusi, mida tavalised andmebaasid ei suuda.

3. Kuna hallutsineerimine ehk väljamõeldud vastuste andmine on praegustes mudelites lahendamata probleem, on ainus toimiv lahendus mudelite parem informeeritus, mis vähendaks valeinfo tekkimise riski.

Kas me peame eestlastena midagi tegema ja mida me teha saame?

Suuremate ja võimekamate keelemudelite treenimine maailmas jätkub ning võib eeldada, et aja jooksul paraneb neis mudelites ka eesti keele tugi ja paranevad kultuuriteadmised. Tekib küsimus, kas meie eestlastena peaksime ise midagi tegema selleks, et eesti keel ja kultuur oleksid nendes mudelites paremini esindatud. Üks võimalus on loota, et suured tehnoloogiaettevõtted ja muud keelemudelite treenimise algatused, olgu siis kommerts- või vabavaraliste mudelite arendajad, parendavad oma mudeleid ning seeläbi paraneb aja jooksul ka eesti keele tugi ja mudelite kultuuri tundmine. Selline arusaam jätab meid passiivsesse rolli, kus jääme toimuvas kõrvaltvaatajaks. Alternatiivina võiks kaaluda järgmisi samme:

1. Saame koostada hoolikalt kureeritud andmestikke, mille abil võib hinnata keelemudelite teadmisi eesti keele ja kultuuri kohta.

2. Saame koguda eestikeelseid tekste, mida võib kasutada mudelite treenimisel. Neid tekstikorpuseid saaks pakkuda nii suurtele tehnoloogiaettevõtetele kui ka mitmekeelseid mudeleid treenivatele teaduskonsortsiumidele, et eesti keele sisaldus mudelite treenimiseks kasutatavas andmestikus ei oleks juhuslik, vaid hoolikalt kureeritud. Saame neid andmestikke kasutada ka ise, et jätkutreeningu kaudu olemasolevate vabavaraliste mudelite eesti keele oskust parandada.

3. Saame luua kõrge kvaliteediga eestikeelseid instruktsiooni- ja eelistusandmestikke, mida kasutatakse suurte keelemudelite treenimise lõppjärgus. Neid andmestikke võib pakkuda tehnoloogiaettevõtetele ja teaduskonsortsiumidele, et nende mudelites parandada eesti keele kajastust. Samuti saaksime neid andmeid kasutada ka ise vabavaraliste mudelite järeltreeninguks.

Kuigi suured keelemudelid on kõrgtehnoloogilised ja nende treenimine nõuab spetsiifilisi tehnilisi teadmisi ning märkimisväärset arvutusressurssi, on suurimad proovikivid eesti keele ja kultuuri esindatuse osas neis mudelites seotud andmetega. See puudutab nii andmeid, millega mudeleid treenitakse, kui ka andmeid, mille abil hinnatakse mudelite teadmisi ja oskusi. Nende andmestike loomisse saavad Eesti humanitaarteadlased ja -spetsialistid anda märkimisväärse panuse.

Kuidas keelemudelid töötavad

Keelemudelite peamine tööpõhimõte tugineb sellele, et sõnad on lauses kindlas mõtestatud järjekorras ja laused on omakorda tekstis loogilises järjestuses. Keelemudeli treenimiseks kogutakse suur hulk tekste, mille põhjal õpetatakse mudelit eelnevate sõnade alusel ennustama iga järgmise sõna tõenäosust. Näiteks lause „Me õpetame keelemudelile eesti keelt“ puhul õpetatakse mudelile, et lause võib alata sõnaga „Me“, sõna „õpetame“ võib järgneda sõnale „Me“, sõna „keelemudelile“ võib järgneda sõnajadale „Me õpetame“. Seejärel jätkatakse sõnaga „eesti“, mis võib järgneda sõnajadale „Me õpetame keelemudelile“ ja nii edasi. Suurtes keelemudelites võib eelnev sõnajada ehk kontekst, mille alusel järgmise sõna ennustamine toimub, olla küllalt pikk, ulatudes mitme tuhande sõnani. Seega, kui mudelit treenitakse paljudel lühematel ja pikematel tekstidel, suudab see õppida andma mõistlikke ennustusi ka sellistes kontekstides, mida treenimise käigus varem kohanud ei olnud.

Keelemudelid, mis ennustavad järgmist sõna eelneva konteksti põhjal, on olemas olnud juba üle 40 aasta. Tänapäeva suurtel keelemudelitel on aga võrreldes nende vanemate mudelitega kaks märkimisväärset erinevust. Esiteks oli vanemate mudelite konteksti pikkus lühem, ulatudes tuhandete sõnade asemel tüüpiliselt vaid 3–5 sõnani. Teine suur erinevus tänapäeva mudelite puhul seisneb tekstide esitamises mudeli sees. Kui vanemates mudelites esinesid treenimisel nähtud sõnajadad sümbolite kujul ehk arvutused mudeli sees toimusid sõnade enestega, siis tänapäeva keelemudelid muundavad sõnad kõigepealt reaalarvude jadadeks ehk vektoriteks. Seejärel toimuvad mudeli tehisnärvivõrgu arhitektuuri kümnetes kihtides vektorite ja maatriksite korrutamisel põhinevad arvutused, mille tulemusena luuakse sõnade vektoritest kogu sõnajada konteksti esindav vektor, mis reaalarvuliste numbrite kujul võtab kokku selle konteksti semantilise tähenduse. Tulemuseks on see, et kui mudelile esitada kaks teksti, mille tähendus on väga sarnane, siis arvutatakse nendele tekstidele mudeli poolt sarnased reaalarvulised vektorid, isegi kui need tekstid kasutavad sama tähenduse edastamiseks eri sõnu.

Seega toimuvad mudeli sisemised arvutused reaalarvuliste numbritega ning kogu info treenitust salvestatakse miljonitesse või miljarditesse reaal­arvulistesse parameetritesse. Need parameetrid esindavad treeningtekstide üldistatud infot viisil, mida mudel suudab kasutada, kuid mis on inimesele praktiliselt hoomamatu. Seetõttu nimetatakse suuri keelemudeleid ja tehisnärvivõrgumudeleid üldiselt nn musta kasti mudeliteks, mille sisendeid ja väljundeid suudame jälgida, kuid aru saada, kuidas täpselt ja miks mingile sisendile ennustatakse konkreetne väljund, on tavaliselt võimatu.

Suurte keelemudelite treeningu­tsükkel koosneb enamasti kolmest sammust. Esimene neist on eeltreenimine, mis on arvutuslikult kõige mahukam. Eel­treenimise käigus esitatakse mudelitele väga suuri tekstimahtusid, mille käigus õpib mudel sõnade representatsioone selliselt, et sarnase tähendusega sõnade representatsioonid oleksid omavahel sarnased. Samuti kohandatakse mudeli miljardeid parameetreid, et järgmine treeningtekstis esinev sõna oleks ennustatud võimalikult suure tõenäosusega. Selle protsessi tulemusena muutuvad ka sarnase tähendusega tekstide representatsioonid sarnaseks. Teiseks sammuks on juhistega õppimine. Selleks kasutatakse instruktsiooniandmestikke, mis koosnevad juhis-vastus paaridest. Juhis on ülesanne või küsimus, mille kohta kasutatakse sageli anglitsismina terminit prompt ja vastus on sellele küsimusele või ülesandele antud lahendus. Selliste andmestike koostamine nõuab aega, kuna inimesed peavad kirjutama nii juhise kui ka sobiva vastuse. Tavaliselt sisaldab instruktsiooniandmestik mitukümmend tuhat juhise-vastuse paari. Sellise andmestiku abil on võimalik mudelile õpetada nii kultuurispetsiifilisi teadmisi, mida eeltreenimiseks kasutatud andmestik ei sisaldanud kui ka erinevatele ülesannetele sobivaid vastuse formaate. Kolmandaks ja viimaseks sammuks on eelistusandmetel treenimine. Selleks kasutatavad andmestikud koosnevad juhisest ja kahest või enamast mudeli genereeritud vastusest, mille kohta inimene annab hinnangu, milline vastus talle kõige rohkem meeldib. Selliste andmete abil on võimalik mudelile õpetada konkreetseid keele- ja kultuurispetsiifilisi stiilieripärasid.

Kairit Sirts on Tartu ülikooli arvutiteaduse instituudi keeletehnoloogia kaasprofessor.

* Tegelikult ei opereeri mudelid otseselt sõnadega, vaid sõnadest mõnevõrra väiksemate tekstiühikutega.

Jaga

Samal teemal

Jaga
Sirp