Skip to main content

Keeleminutid. Kui masin õpib inimkeelt

Eesti Keele Instituut 2. mai 2023

Pea kõik teavad, milline väljakutse on võõrkeele õppimine. Tundub lausa uskumatu, et inimlaps suudab sellise keeruka ebatäiusliku süsteemi omandada, kuid arvuteid ikka veel õpetame. Arvutid ei ole võimelised mõistma sõnu – nende “keel” on ühed ja nullid. Kuidas aga saada sõnadest, lausetest ja tekstidest ühtegi olulist aspekti kaotamata ühed ja nullid (ja vastupidi), küsis EKI keeletehnoloog Tiiu Üksik “Keeleminutites”.

programmeerimine

Esimesed süstemaatilised keelekirjeldused pärinevad Indiast 6. sajandist eKr, esimene eesti keelt kirjeldav grammatika 17. sajandist. Koos arvutite arenguga pärast Teist maailmasõda hakkas levima mõte õpetada masinatele inimkeelt ja unistus masintõlkest. Kõige esimesed katsed selles vallas tähendasid, et püüti programmeerimiskeeles reeglitena ära kirjeldada kogu grammatika ja õigekiri ning näiteks tõlkemootori puhul lisada sõnapaarid lähte- ja sihtkeeles. Aastal 1954 toimus esimene masintõlke eksperiment, mille käigus tõlgiti üle kuuekümne lause vene keelest inglise keelde. Peagi mõisteti aga, et reeglipõhine meetod ei ole keerulisemate tekstide puhul efektiivne. Masintõlkele prognoositud kiire areng jäi tulemata, valdkonna rahastus tõmmati koomale ja teadustöö jäi paarikümneks aastaks soiku.

1980ndate alguses võeti kasutusele statistiline masintõlge: tõlkimine vastavalt tõenäosusjaotusele. Et selliseid mudeleid arendada, tekkis vajadus koguda masinloetavaid paralleelkorpuseid ehk tekstikogusid, kus sama tekst on esitatud kahes keeles.

Masintõlge on kõigest üks valdkond, kus keeletehnoloogia saab inimkeele töötlusel appi tulla. Enamasti on vaja, et masin lihtsalt ükskeelset teksti mõistaks, et sellest kokkuvõtte teha vms. Mõnes mõttes on ikkagi tegemist tõlkega – inimkeelest numbrite keelde. Selleks on leiutatud erinevaid meetodeid.

Nn kotitäis sõnu (ingl Bag of Words) meetodi puhul antakse igale tekstis esinevale sõnale number, kusjuures sõnade järjekorda arvesse ei võeta. Seda lihtsat mudelit kasutatakse näiteks teksti klassifitseerimiseks.

Paljudel juhtudel on siiski oluline teada sõna konteksti. Siin tulevad appi sõnavektorid (ingl Word Embeddings) – sageli koos esinevad sõnad on ka “ruumis” teineteisele lähemal. Kuid samakujulisel sõnal võib ju olla mitu erinevat tähendust! Õige tähenduse peavad suutma valida näiteks vestlusrobotid ja tõlkemootorid. Seega peab mudel aru saama, millist tähendust parajasti silmas peetakse.

Polüseemia ja homonüümia tõlgendamise probleem tõukas takka järgmisi arendusi, millest sündisid närvivõrkudel põhinevad süsteemid (nt RNN). Esimeste selliste süsteemide probleemiks oli aga “unustamine” pikemate tekstilõikude puhul. Võtame näiteks lõigu: “Kui ta tahtis kassile süüa andma hakata, märkas ta, et krõbinad on otsas. Ta läks poodi, et neid juurde osta. [—] Lõpuks jõudis ta koju, avas kõbinapaki ja ______ sai süüa.” Kui paluda mudelil ennustada puuduvat sõna, ei pruugi see enam ära tunda seost lõigu alguses mainitud kassiga.

Üheks tõhusamaks lahenduseks sellele probleemile on osutunud 2017. aastal loodud transformer-tehnoloogia. Selline mudel ei vaata enam sõnu lauses esinemise järjekorras, vaid suudab analüüsida kogu teksti tervikuna. See mõistab oluliselt paremini sõnade konteksti ja suudab tähelepanu najal luua seoseid ka pikemates lausetes või tekstides. Kõik tänapäevased tipptasemel suured keelemudelid (nt GPT, LLaMA, Bloom jt) põhinevad transformeritel.

Suurte keelemudelite kasutusvaldkond on märksa laiem eelpool kirjeldatud reeglipõhiste mudelite omast. Ühte mudelit võib kasutada tõlkimiseks, uute tekstide genereerimiseks, kokkuvõtete tegemiseks, vestluspartnerina ja palju muud. Mõned funktsioonid vajavad siiski peenhäälestust väljundi parendamiseks.

Arengud keeletehnoloogias ja masinatele inimkeele õpetamises on meie elu palju lihtsustanud – alustades masintõlkest ja lõpetades tohututest tekstimassiividest automaatselt info leidmisega. Tänu keeletehnoloogiale peame üha vähem kasutama programmeerija abi, kes “tõlgiks” inimkeele masinale arusaadavaks koodiks. Inimlikult seostame keeleoskust intelligentsusega. Millegipärast tundub meile inimkeelt rääkiv masin palju intelligentsem kui masin, kes oskab kõiki mõeldavaid matemaatikatehteid lahendada. Uusimate mudelite puhul võib näha märke, justkui mõistaks nad muuhulgas ka irooniat, mis on alati masinatele raskusi valmistanud. Kas nende reaktsioon on vaid matemaatiline tõenäosus või saavad nad päriselt kirjutatust aru, jäägu igaühe enda otsustada.

Lugu on ilmunud ERRi kultuuriportaalis 02.05.2023.

Kas leidsid, et sisu on kasulik?

Jah
Ei
Sinu tagasiside on meieni jõudnud. Aitäh!