Strojno prevajanje je zanič, mar ne?

Strojno prevajanje je zanič, mar ne?

Vsi radi preberemo kakšno zabavno zgodbo o slabih strojnih prevodih. Recimo tole:

V mestecu Al Pontes v španski pokrajini Galicija že od leta 1981 organizirajo festival, posvečen lokalni zelenjavi z imenom grelo. Leta 2016 so za prevod promocijskih besedil iz galicijščine v španščino uporabili Google Translate, ki pa jim jo je dobro zagodel. Šele po nekaj mesecih so opazili, da na svojih spletnih straneh oglašujejo namesto festivala grela oglašujejo ‒ festival klitoris. Google Translate je namreč naredil napako in prepoznavi jezika in besedo “grelo” prepoznal kot portugalsko, kjer “grelo” v pogovornem jeziku pomeni klitoris. Tako smo lahko na spletni strani prebrali tak stavek: Klitoris je eden izmed tipičnih produktov galicijske kuhinje.

 

rtvslo.si

Takih in podobnih zgodb je nešteto ‒ če v Googlu poiščemo izraz “google translation fails”, najdemo številne članke, ki navajajo različne primere slabih, neprimernih, zabavnih ali ponesrečenih prevodov.

ŽELIM VEČ INFORMACIJ

Pa to res drži?

Ali je res vse tako slabo? Naredimo kratek test s spodnjim odstavkom. Gre za tipično marketinško besedilo, kakršnih je na internetu ogromno.  

V Aikwitu smo mnenja, da lahko s pametnim pristopom do novih tehnologij našim strankam ponudimo boljše storitve. Najnovejši algoritmi za strojno prevajanje, ki delujejo na osnovi nevronskih mrež, predstavljajo velik preskok v kakovosti in so dovolj dobri, da lahko prevajalcem pomagajo prevajati hitreje in bolje.  Odvisno od tipa besedila, roka in ciljne skupine bralcev uporabljamo različne algoritme za strojno prevajanje v kombinaciji s človeškim pregledom – da zagotovimo pravo raven kakovosti za vsako stranko.

Ko ga skopiramo v Google Translate, dobimo tole:

In Aikwitte, we believe that with a smart approach to new technologies, we can offer our customers better services. The latest machine translation tools based on neural networks represent a great leap in quality and are good enough to help translators translate faster and better. Depending on the type of text, deadline, and target audience, we use different machine translation algorithms in combination with a human review – to ensure the right level of quality for each client.

Res je, da je takoj na začetku napaka, ker sistem ni prepoznal imena podjetja, toda od tam naprej je besedilo pravzaprav povsem sprejemljivo. Lahko bi naredili nekaj slogovnih popravkov (na primer namesto “we use different machine translation algorithms in combination with human review” bi lahko rekli “we use a combination of different machine translation algorithms and human review”), večjih pomenskih napak pa v tem prevodu ni.

Poskusimo še z Microsoftovim strojnim prevajalnikom Bing:

In Aikwitz, we believe that we can offer better services to our clients with a smart approach to new technologies. The latest machine translation algorithms that operate on neural networks represent a huge leap in quality and are good enough to help translators translate faster and better.  Depending on the type of text, deadline and target group of readers we use different machine translation algorithms in combination with human scrutiny – to ensure the right level of quality for each customer.

Tudi v tem prevodu ni večjih pomenskih napak razen imena podjetja. Oba ‒ Google Translate in Microsoft Bing ‒ dano besedilo prevedeta povsem spodobno. Potrebnih je le nekaj manjših popravkov in besedilo je primerno za objavo.

Kaj to pomeni za profesionalne prevajalce?

Poglejmo, kaj to pomeni za profesionalne ponudnike prevajalskih storitev. Očitno je, da je treba strojni prevod pregledati, da izboljšamo slog in morebitne pomenske napake, kot je napačno ime podjetja v zgornjem prevodu. Ker je zgornji strojni prevod dober, lahko domnevamo, da nam to ne bo vzelo veliko časa, 5 minut bi moralo biti več kot dovolj. Toda ali je to hitreje od prevoda brez pomoči strojnega prevajalnika?

Običajna prevajalska norma je 250 besed izvirnika na uro. Zgornji odstavek ima 81 besed, kar pomeni približno 20 minut. Ker pa ne gre za pretirano težko besedilo in ker ne vsebuje zahtevnih strokovnih terminov, ki bi jih bilo treba temeljito raziskati, lahko predpostavimo, da bi prevod vzel pol manj, torej 10 minut. To pa je vseeno še enkrat več od pregleda strojnega prevoda. Z drugimi besedami: s pregledom strojnega prevoda prihranimo 50% časa!  

S pregledom strojnega prevoda lahko prihranimo tudi 50 % časa!

Vse kaže, da ni ovir za uporabo strojnega prevajalnika kot sredstva za hitrejši profesionalni prevod. No, pozoren bralec ali izkušen prevajalec bo opazil vsaj eno: izvirno besedo “stranka” je Google Translate v prvem stavku prevedel kot “customer”, v zadnjem pa kot “client”, Microsoft Bing pa ravno obratno.

Pri marketinškem besedilu to ni težava, pri besedilih, kjer je pomembna terminološka in slogovna doslednost, pa še zdaleč ni tako. Brezplačni strojni prevajalniki namreč prevajajo stavek za stavkom in ne pazijo na doslednost, zato je njihova uporabnost omejena. Če želimo zagotoviti slogovno in terminološko doslednost strojnega prevoda moramo prilagoditi algoritem z lastnimi podatki, vendar je to že tema za naslednji blog …

Kako deluje sodoben strojni prevajalnik?

Danes praktično vsi strojni predvajalniki delujejo na osnovi nevronskih mrež, zato ta pristop imenujemo nevronsko strojno prevajanje (neural machine translation ali NMT v angleščini). Nevronske mreže v znanosti niso nov koncept, vendar so se na področju strojnega prevajanja uveljavile šele v zadnjih nekaj letih, saj učenje prevajalskih modelov zahteva veliko procesorske moči, ki še do nedavnega ni bila na voljo.

Znanost nevronskih mrež je precej zapletena in za razumevanje je potrebno napredno znanje matematike, zato si oglejmo le nekaj osnovnih značilnosti. Nevronska mreža se na velikem korpusu besedil nauči vektorskih reprezentacij oziroma vektorskih vložitev (angl. word embeddings) posameznih besed v določenem večdimenzijskem vektorskem prostoru. To dejansko pomeni, da so besede predstavljene kot zaporedje številk oziroma vektorji, s katerimi je mogoče operirati po običajnih matematičnih načelih seštevanja, odštevanja itd. Kot je opisano v tem članku, v praksi to pomeni naslednje:

Vzamemo vektor besede “kralj”, odštejemo vektor besede “moški”, prištejemo vektor besede “ženska” in dobimo vektor besede “kraljica”.

 

Lahko bi rekli, da nevronski strojni prevajalnik “izračuna” najbolj verjeten prevod izvirnega besedila.

Zanimivo je tudi dejstvo, da so nevronski prevajalski sistemi neke vrsta črna skrinjica, saj tudi znanstveniki ne razumejo, kaj natančno se dogaja v sistemu. Za take sisteme je značilno, da vemo, kakšni so vhodni podatki ter kakšne rezultate vrnejo, ne vemo pa na kakšen način različne plasti nevronskih mrež pridejo do teh rezultatov. To je tudi eden od razlogov, zakaj tudi najnaprednejši nevronski strojni prevajalniki ne morejo upoštevati terminoloških glosarjev, saj znanstveniki še niso odkrili načina, kako bi na učinkovit način lahko določili, da nevronski strojni prevajalnik termin A v izvirnem jeziku prevede s terminom B v ciljnem jeziku.

Kratka zgodovina strojnega prevajanja

Za konec si oglejmo še nekaj podatkov o razvoju strojnega prevajanja v zgodovini. Začetki segajo v 50. leta prejšnjega stoletja, ko so na univerzi Georgetown v ZDA oblikovali skupino za raziskave na področju strojnega prevajanja, podobne raziskovalne programe pa so uvedli tudi v drugih državah, na primer na Japonskem in v Rusiji. Že leta 1956 je bila v Londonu organizirana prva konferenca na to temo, oblikovale pa so se tudi različne interesne skupine in združenja za promocijo raziskav na področju MT.

Po dobrih 10 letih se je izkazalo, da je napredek počasnejši od pričakovanj, zato je zanimanje ‒ in kot posledica višina finančnih sredstev ‒ upadlo. Vseeno pa se je razvoj nadaljeval: v 70. letih so se pojavili prvi komercialni primeri uporabe strojnega prevajanja, strojno prevajanje pa so uspešno uporabili tudi med vietnamsko vojno za prevod vojaških priročnikov iz angleščine v vietnamski jezik.

Prvi sistemi so delovali na osnovi pravil, ki so posnemala slovnične in pravopisne predpise. Vokabular je bil omejen, zato so bili taki sistemi zares uporabni samo v najbolj ozkih primerih, kjer je bil struktura besedila toga in predvidljiva. V 80. so se z vse večjo procesorsko močjo pojavili novi modeli, kot je statistično strojno prevajanje, ki so postali dominantna veja raziskav. Pri tem modelu strojnega prevajanja se algoritem uči pravil na podlagi velikih zbirk dvojezičnih besedil, zato ima na voljo neprimerljivo večje število besed.

Pravi razcvet je strojno prevajanje doživelo v 90. letih ter v prvih letih novega tisočletja zaradi nadaljevanja razvoja procesorske moči in pojava interneta, kjer je bilo mogoče zbrati ogromne količine besedil. Pomemben mejnik je bila objava odprtokodnega sistema za statistično strojno prevajanje MOSES, na katerem je bila osnovana večina komercialnih sistemov za statistično strojno prevajanja. Še leto pred tem je Google predstavil storitev Google Translate, ki je pomenil pravo revolucijo na področju prevajanja.

Naslednji mejnik v razvoju strojnega prevajanja se je zgodil v letih 2015 in 2016, ko so se za strojno prevajanje začeli uporabljati algoritmi na osnovi nevronskih mrež. V primerjavi s statističnimi sistemi, ki delujejo na osnovi besed in besednih zvez, lahko nevronski strojni prevajalniki pri prevodu upoštevajo daljše sklope in tako dajo boljše rezultate. Google Translate je prve nevronske modele uvedel jeseni leta 2016, kmalu pa so mu sledili tudi ostali in v zadnjih letih smo lahko večkrat brali novice o neverjetnih dosežkih različnih nevronskih strojnih prevajalnikov. Tako je na primer Microsoft marca 2018 objavil, da je njihov sistem za prevajanje iz kitajščine v angleščino enakovreden človeškemu prevodu, ponudnik prevajalskih orodij SDL pa se je avgusta 2018 pohvalil z novico, da so profesionalni prevajalci iz ruščine v angleščino več kot 90 odstotkov stavkov, prevedenih z SDL-ovim strojnim prevajalnikom, označili kot popolne prevode.   

Danes je strojno prevajanje nepogrešljiv del internetnega vsakdana. Čeprav se pogosto pritožujemo nad kakovostjo, se uporaba strojnih prevajalnikov povečuje iz dneva v dan: samo Google Translate je leta 2018 v povprečju prevedel več kot 100 milijard besed na dan.

ŽELIM VEČ INFORMACIJ