Verjetno vsi uporabljamo programe za preverjanje črkovanja, ki nas opozarjajo na morebitne tipkarske napake pri pisanju. Ta priročna orodja so nam v veliko pomoč pri urejanju besedil, vendar ne zmorejo narediti kaj več kot popraviti napačno napisane ali pozabljene črke. Zato smo lahko toliko bolj navdušeni nad novimi jezikovnimi tehnologijami, ki lahko izboljšajo tudi slog in razumljivost napisanega.
Ko sem nedavno preizkušal jezikovno orodje kalifornijskega podjetja OpenAI, me ni navdušila le pestrost in zmožnost ponujenih funkcij, za katere se zdi, da dejansko razumejo zapisane besede, temveč tudi dejstvo, da jezikovna umetna inteligenca podpira slovenščino.
Pogovorni stavek »To kr neki pišem da bi vidu če me stroj razume.« je jezikovno orodje z ukazom, naj ga preoblikuje v knjižno obliko, brez težav spremenilo v: »To je nekaj, kar pišem, da bi videl, če me računalnik razume.« Seveda je opisani primer le ena od najpreprostejših funkcij, ki jih imamo na voljo. Poleg pretvorbe v knjižni jezik lahko spletno orodje z novimi stavki smiselno nadaljuje besedilo, ga prevede v drug jezik, predlaga privlačen naslov, povzame bistvo, določi ključne besede, poenostavi besedilo za otroke in podobno.
Toda kako tovrstne nove tehnologije sploh delujejo in zakaj je področje strojne obdelave naravnega jezika prav zdaj močno napredovalo? Zmogljivi računalniki so namreč na voljo že več let, raziskovalci pa si prav tako že dolgo prizadevajo, denimo, razviti orodja za strojno prevajanje, vendar do nedavnega niso bili pretirano uspešni.
Vzrok je v tem, da je v zadnjem desetletju prišlo do izjemnega napredka na področju umetne inteligence, ki temelji na tehnologiji strojnega učenja nevronskih mrež. Prav ta tehnologija je računalnikom omogočila, da vidijo, slišijo in razumejo svet okoli sebe, kar je privedlo do hitrega napredovanja na številnih področjih, na katerih stroji prevzemajo naloge, ki so jih do nedavnega lahko opravljali le ljudje.
Bistvo naprednega strojnega učenja je, da računalnikom ne predpišemo pravil, po katerih naj se ravnajo, temveč ustvarimo model nevronske mreže, ki se nato na osnovi nabora podatkov sam priuči pravil. Ključno pri tem je, da imamo: (1) veliko kakovostnih podatkov, ki so primerno strukturirani za učenje, (2) ustrezne računalnike oziroma procesorje, ki lahko hitro izvedejo veliko ponovitev vsakega koraka učenja, ter seveda (3) dober model nevronske mreže, ki se lahko učinkovito uči na osnovi poskusov in odpravljanja napak. Vsi trije potrebni pogoji so bili izpolnjeni šele pred kratkim, zato smo prav zdaj priča izjemnemu napredku na področju strojnega izvajanja nalog, pri katerih so bili računalniki še nedavno precej neuspešni.
Digitalizacija najrazličnejših podatkov in objava številnih sestavkov na spletu sta omogočili oblikovanje zelo velikega korpusa besedil, kar je bil prvi pogoj za strojno učenje jezika. Kmalu po letu 2000 je nekaj raziskovalcev začelo preučevati tudi uporabo grafičnih procesorjev za izvajanje algoritmov globokega učenja. Čeprav so bile grafične kartice prvotno zasnovane za prikaz slike na zaslonu računalnikov, so ugotovili, da lahko z njihovo pomočjo bistveno pohitrijo strojno učenje. Vzporedno z razvojem nove strojne opreme so razvili tudi odprtokodna programska ogrodja, ki so olajšala izvajanje algoritmov. Ker so lahko inženirji po vsem svetu gradili na delu drug drugega, je področje umetne inteligence začelo zelo hitro napredovati.
Za vsako od nalog, ki bi jo radi naučili računalnike, potrebujemo tudi svoj specifični pristop oziroma prilagojen model nevronske mreže. Pristopi, ki so primerni za učenje prepoznavanja slik, niso nujno enaki modelom mrež, ki so primerne za učenje prevajanja. Za takšne specifične inovacije in prilagoditve pa je potreben čas in čim več pametnih glav, zato je bila odločitev za odprto izmenjavo idej in pristopov tako pomembna.
Sistem strojnega učenja jezika poenostavljeno povedano deluje tako, da besedam pripisuje številčne vrednosti, po analizi velike količine besedil pa se nauči določiti verjetnost, da bo ena beseda v določenem kontekstu sledila drugi. Jezikovni model zna tako izračunati verjetnost, da je določeno zaporedje besed veljavno. Vendar pri tem ne gre za veljavnost v smislu slovnične pravilnosti, ampak za skladnost z naučenimi jezikovnimi vzorci. Pri strojnem učenju jezika je zato izjemno pomembno, da se nevronska mreža nauči prepoznavati tudi kontekst uporabe posameznih besed, saj ima lahko dobesedno isto zaporedje črk več različnih pomenov.
Ker se umetna inteligenca uči na množici podatkov iz resničnega življenja, je treba posebej paziti, da ne prevzame tudi predsodkov in škodljivih stereotipov. V zadnjih letih je bilo veliko energije posvečene prav odpravljanju najrazličnejših težav umetne inteligence, tako da nove različice modelov načrtno preprečujejo ustvarjanje seksističnih ali rasističnih izjav, čeprav jih najdemo v besedilih, na katerih se učijo.
Trenutno je večini uporabnikov najbolj dostopen jezikovni model GPT-3 (Generative Pre-trained Transformer) podjetja OpenAI, ki zna tudi v slovenščini ustvarjati besedila, za katera večinoma ni mogoče prepoznati, da jih ni napisal človek. Kmalu naj bi predstavili novo različico orodja GPT-4, ki bo še bolj zmogljiva, predvsem pa naj bi znala veliko bolje prepoznati želje in namere uporabnikov.
https://www.delo.si/mnenja/kolumne/napredek-jezikovne-umetne-inteligence/