Kolo 4, 2017.

Tema broja: Bulcsú László ‒ uz 95. obljetnicu rođenja (1922.-2016.)

Šandor Dembitz

Strojna obrada hrvatskog jezika – mađarski doprinosi


1. Uvod

Bulcsú László je za mene bio i ostao Profesor. Tako ću ga i imenovati u ovome radu, izbjegavajući time sporenje s pismenijima od mene, koji njegovo prezime sklanjaju i pišu Lászlóa, Lászlóu, Lászlóom, Lászlóov, dok ja, koji sam odrastao među izvornim govornicima mađarskoga, to činim ovako: Lászla, Lászlu, Lászlom, Lászlov.

S Profesorom me je polovicom 70-ih upoznao Željko Bujas. Prije toga sam od Bujasa dobio nekoliko radova hrvatskih autora o strojnom prevođenju, uključujući i Profesorovo »Strojno prevođenje i statistika u jeziku«. Nakon upoznavanja, Bujas me je upitao: »Onda, što mislite o njemu?«. Misleći pritom na spomenuti rad, odvratio sam kratko: »Sanjar!«. Sjećam se da se Bujas slatko nasmijao, doživjevši vjerojatno moju opasku i osobno. U tom trenutku nisam znao da će me njihovo mladenačko sanjarstvo doživotno zaraziti.

Naše intenzivnije druženje započelo je osnivanjem Društva mađarskih znanstvenika i umjetnika u Hrvatskoj (DMZUH) početkom 90-ih. Spajao nas je i interes za strojnu obradu prirodnog jezika. Želim naglasiti da je Profesor bio jedan od rijetkih u Hrvatskoj koji je postavljao suvisla pitanja vezana uz moj rad. Polovicom 90-ih pokušali smo, unutar djelatnosti DMZUH-a, pokrenuti projekt ciljan prema stvaranju podatkovnih podloga potrebnih u strojnom prevođenju hrvatsko-mađarskog jezičnog para, no naš je prijedlog od nadležne institucije odbijen. Odbijenica je obojicu nasmijala, jer je bila neoborivi dokaz da njezin potpisnik, vrhunski hrvatski ekspert za mozak, ponekad znade zaboraviti čemu ljudski mozak služi.

Okolnosti su htjele da smo se najučestalije sretali pred sam kraj Profesorova života, ispred ambulante doktorice Vanje Gojak-Marjanović na Vrbiku, u blizini Filozofskog fakulteta u Zagrebu. Ovi susreti više nisu imali žar onih prethodnih, jer njemu snaga to više nije dopuštala, što sam s tugom prihvatio.

Znanstveno gledano, najprimjereniji naslov ovome radu bio bi: »Od statistike u jeziku prema strojnom govornom prevođenju«. Međutim, svjestan činjenice da je hrvatski jedan od tehnološki najzapuštenijih europskih jezika [1], naslovio sam ga kako sam ga naslovio, da usput podsjetim Hrvate kako im za tu zapuštenost drugi nisu krivi. Budući da je Profesor jako držao i do svoga mađarstva, vjerujem da bi mu se odabrani naslov svidio.

U radu je prikazano ono što sam tijekom radnoga vijeka inženjerski napravio u prostoru u kojem smo dijelili interese. U području strojne obrade prirodnoga jezika Profesor je, premda inženjerski izobražen, bio teoretičar. Teoretičar je valjan ako iz njegovih zamisli, na bilo koji način, nastane nešto što obični ljudi mogu koristiti u svakodnevnom životu. Profesorov teorijski utjecaj na moj rad opravdava plural u naslovu.


2. Kako je nastao Hašek

Hašek je pohrvaćeni oblik akronima Hascheck, nastalog iz naziva Hrvatski akademski spell checker, i označava jezgrenu komponentu sustava koji već više od 20 godina u raznim oblicima, danas na adresi https://ispravi.me/, služi za strojnu pravopisnu provjeru tekstova pisanih hrvatskim jezikom. O njemu je ponešto pisano, čak i na hrvatskome [2], tako da će ovo poglavlje biti posvećeno onome što se manje zna.

U ljeto 1975. godine Željko Bujas me je zamolio da mu pružim inženjersku pomoć u korekciji njegova Englesko-hrvatskog leksikografskog korpusa [3], prvog dvojezičnog megakorpusa kreiranog u Hrvatskoj. U rujnu Bujas je otišao na jednosemestralni sabbatical u Houston, Teksas. Maja Bratanić, koja je vodila jezično-organizacijski dio, i ja primili smo se posla poduprti timom od nekoliko desetaka pomoćnika raznih profila, s ciljem da Bujasa, čiji je povratak bio planiran za veljaču 1976., dočeka očišćeni Korpus. Tako se i dogodilo.

Izvorni Korpus vrvio je zatipkovno-pravopisnim pogreškama (preko trećine zapisa bila je njima pogođena), jer se prilikom unosa podataka koristio flexowriter, pisaći stroj koji kao izlaz daje bušenu papirnatu traku. Na njemu je sve zatipkano neispravljivo. Promatrajući mjesecima muku onih koji su Korpus kolacionirali s izvornim tekstom kako bi otkrili, potom i ispravili pogreške unosa, u meni je sve više sazrijevala misao da probam tu muku olakšati tehničkim sredstvima.

Prvi operativni spell checker pojavio se u SAD-u početkom 70-ih [4], no njegov rječnički konstrukcijski pristup bio je neprimjenjiv u hrvatskome. Procijenio sam, naime, da za jedan engleski ulaz Gorinova spell checkera njegov hrvatski pandan treba najmanje deset ulaza, što zbog onovremenih memorijskih ograničenja jednostavno nije bilo izvedivo. Srećom, u to se vrijeme pojavio i prvi Unixov spell checker typo [5], koji je radio bez ikakvog rječnika. Typo je na temelju brojnosti digrafa i trigrafa u obrađivanome tekstu izračunavao indeks čudnosti za svaki alfabetski niz u njemu, te je nakon toga alfabetske nizove poredao po pripadajućim vrijednostima indeksa i tako ih prikazivao korisniku. Na vrhu popisa u pravilu su se nalazili zatipci i pravopisne pogreške.

Zašto ovu analizu ne proširiti s teksta na jezik i pritom potražiti za koju se vrijednost n dobiva najbolja selektivnost n-grafske statistike u razdvajanju riječi od neriječi? Očišćeni Korpus mogao je glumiti dva jezika, jer je mogućnost usporedbe – referenciram se na učinkovitost typo-a – u znanosti važna, dok je izvorni, neočišćeni, sigurno mogao dati dovoljno opsežan i reprezentativan uzorak neriječi, kako za engleski tako i za hrvatski jezik. Sve pretpostavke za provođenje eksperimenta su postojale, ali ...

»Kakve to veze ima s telekomunikacijama?«, pitali su me pretpostavljeni kada sam im izložio čime se želim baviti. »Telekomunikacije i prirodni jezik su nerazdruživi!« bio je po njihovu mišljenju vrlo drzak odgovor, tako da sam eksperimente morao provoditi kao aktivnost u slobodnom vremenu. I takvo eksperimentiranje dalo je obećavajuće rezultate za hrvatski jezik, pa mi je početkom 80-ih prihvaćena tema »Automatizacija postupka otkrivanja grešaka u tekstu u novim telekomunikacijskim službama« za doktorsku disertaciju. Doktoriranje je iznimno dugo potrajalo, do 1993. Zbog toga sam se tada srdio, ali danas više ni za čim ne žalim, naprotiv.

Osamdesete su godine u telekomunikacijama bile vrlo zanimljivo vrijeme. Svi su znali da se računala, koja su postajala sve manja, sve brojnija i sve moćnija, moraju nekako globalno umrežiti, ali malo tko je znao kako to ostvariti. Istraživaču na periferiji zbivanja nije preostajalo ništa drugo do da prati što veliki dečki rade. Koncem 80-ih je Robert Tappan Morris [6], sin autora typo-a [7], pokazao da je ARPANET [8] sigurnosno šupalj kao sir ementaler, što je nagnalo Amerikance da do tada štićenu tehnologiju otvore svijetu, i tako je rođen internet. Morris mlađi je zbog svog studentskog »nestašluka« i kazneno gonjen. Priča je za njega prilično bezbolno završila, budući da su u njegovu obranu stali mnogi ljudi neupitnoga profesionalnog integriteta, uključujući i Douglasa McIlroya [9, 10], autora Unixova spell-a [11], spell checkera koji je potisnuo typo u kasnijim distribucijama unix-like operacijskih sustava.

Typo je dao statističke okvire Hašeka, u smislu razvrstavanja općejezičnih nepoznanica na riječi i neriječi na temelju n-grafske statistike izvedene iz valjanog općejezičnog hrvatskog leksika. Spell mu je dao algebarske okvire kroz analizu sufiksa. Hašekov leksik je podijeljen na općejezični i posebnojezični, dominantno imenski dio, a analiza sufiksa po uzoru na spell omogućila je razvrstavanje obje vrste nepoznanica na dopustive, odnosno nedopustive hrvatske obličnice. Ove dvije osobine, združene na internetu, učinile su Hašek učećim sustavom.

Prva knjiga koju je Hašek pročitao i pomogao urediti, prije nego što sam doktorirao, jest monografija [12] posvećena utemeljitelju katedre na kojoj sam dočekao mirovinu. Slična je usluga kasnije, u javnoj fazi usluge, pružena i brojnim drugim knjigama. Neki su autori, odnosno urednici, tu činjenicu istaknuli u impressumu, što doživljavam kao vid priznanja za svoj trud. Ipak, najdraže mi je priznanje, jer je krajnje jednostavno i osobno, stiglo s drugog kraja svijeta (sl. 1). Ono može poslužiti i kao potvrda koliko je bila opravdana odluka da se Hašek implementira kao mrežni pravopisni provjernik.

Strojnu provjeru teksta don Antine knjige [13] obavili su kroz niz sesija pokrenutih s Novog Zelanda Jasmina i Slaven Bačić, Hrvati izbjegli 90-ih iz Subotice. Bez Hašekove pomoći njihov tvrdi izbjeglički kruh bio bi sigurno još tvrđi.


3. Prikaz usluge

Od 21. ožujka 1994., kada je postao javnom uslugom, do danas Hašek je obradio 18,5 milijuna tekstova, koji tvore korpus od preko 5 milijardi pojavnica. Prema evidenciji HTTP cookieja koristilo ga je najmanje 700.000 osoba. Tekstovi su poslani s više od 1,1 milijun IP-adresa iz 163 vršne IP-domene (zemlje). Iz Hrvatske je generirano 88% prometa, 6% iz BiH, a SAD, Njemačka i Srbija doprinijele su s blizu 1%, svaka. Zahvaljujući učenju, leksik je od inicijalnih 100.000 različnica narastao na više od 2 milijuna; omjer općejezičnih/posebnojezičnih različnica je otprilike 1:1. Kako učenje kontinuirano poboljšava kvalitetu odziva, Hašekov promet ima eksponencijalnu karakteristiku rasta. Za ilustraciju je dovoljno navesti da će u tekućoj godini sigurno biti obrađeno više od 4 milijuna tekstova, odnosno korpus od preko milijardu pojavnica.

Budući da u Hrvatskoj ima puno više pravopisâ nego pravopisnih provjernika, Hašek je tolerantan prema različitim pravopisnim rješenjima, počevši od Londonca naovamo. To mu je i prednost i mana, kako se uzme. Premda su najnoviji pravopisi, onaj posljednji Matice hrvatske, te Instituta za hrvatski jezik i jezikoslovlje, nastali u internetskoj eri, navedene institucije nisu svoje uratke ni pokušale opredmetiti putem odgovarajućih programskih pomagala, za razliku od npr. Francuza ili Nijemaca, čije su novije pravopisne reforme, one iz iste ere, bile promptno praćene novim pravopisnim provjernicima. U obje zemlje telekomunikacijski operateri, posebice oni koji u nazivu nose (Deutsche Telekom), ili su nosili nacionalni predznak (France Télécom se danas zove Orange), poznati su po sustavnim ulaganjima u strojnu obradu svojih jezika, dok Hrvatski Telekom, još od vremena PTT-a, ni pare ni lipe nikada nije uložio u strojnu obradu hrvatskog jezika. Ovo navedenim institucijama daje nekakav alibi, ali, bojim se, razlozi nečinjenja su ipak nešto dublji.

Prosječno trajanje Hašekove obrade drži se u granicama od oko 2 sekunde, jer je iskustvo pokazalo da je ovo vrijeme korisnicima prihvatljivo za odziv na strojnu obradu jedne autorske kartice teksta s prosječnim udjelom pogrešaka od 1 do 2%. Ovo znači da je unapređivanje funkcionalnosti sustava ovisilo o mogućnosti nabave novih poslužitelja. Kako su se nadležni višekratno oglušili na sve upućene zamolbe, premda se radi o infrastrukturnoj usluzi namijenjenoj svim korisnicima hrvatskoga, ovaj problem je riješen prvo zahvaljujući potpori Agrokora, a u najnovije vrijeme putem naknada za pruženu uslugu koju plaćaju profesionalni korisnici, što je Hašek učinilo samoodrživim sustavom. Izostanak institucionalne potpore na koncu se prometnuo u prednost, jer me je natjerao da sa suradnicima razvijem pametan, robustan, lako održiv, lako nadogradiv i visokoraspoloživ sustav, sposoban pružati uslugu praktički neograničenom broju korisnika 24 sata na dan kroz svih 7 dana u tjednu.

Iz navedenih brojaka slijedi da su poslužitelji, provjeravajući tekstove, do sada odradili više od 10.000 sati računanja. Nema računala koje će toliko raditi a da iza toga ne stoji i primjerena količina ljudskoga rada. Zainteresirani neke detalje mogu pronaći u [2]. No, u svemu je najvrjednije vrijeme što ga je Hašek uštedio svojim korisnicima, oslobađajući ih višestrukog sričućeg čitanja vlastitih (ili tuđih) tekstova radi otkrivanja zatipkovno-pravopisnih (i drugih) pogrešaka. Ovu dimenziju dobro ilustriraju riječi Sande Ham, suautorice jednog od hrvatskih pravopisâ, upućene mi nakon obrade prilično zahtjevnog teksta opsega od oko 200 autorskih kartica: »Ono što bih inače radila danima, zahvaljujući Hašeku napravila sam u 10 minuta, i to sa svim dodatnim provjerama!«. Navedeno strojno vrijeme treba, dakle, množiti s dvoznamenkastim ili troznamenkastim brojem da bi se dobilo kumulativno vrijeme ušteđeno korisnicima usluge. Napomena za one koji se žele upustiti u računanje uštede: po europskim standardima rada čovjek-godina broji 1.720 sati.


4. Hašek nije sâm sebi svrhom

Projekt Google Translate [14] započeo je 2006. godine, kad se pojavio i Googleov n-gramski sustav za engleski jezik [15] kao jedna od njegovih podatkovnih podloga. Nekoliko mjeseci nakon objave ove činjenice na Google Research Blogu [16] započelo je, s osloncem na Hašekove obrade, prikupljanje usporedivih hrvatskih n-grama. Pored engleskog n-gramskog sustava, Google je u narednih par godina objavio n-gramske sustave za japanski [17], kineski [18] i deset europskih jezika [19], pobrojanih ovdje onako kako su ih autori sustava naveli: švedski, španjolski, rumunjski, portugalski, poljski, nizozemski, talijanski, francuski, njemački i češki. Navedenim Googleovim sustavima zajednički je WaC (Web as Corpus) pristup u formiranju korpusa iz kojega se izvode n-grami i frekvencijski kriterij za njihovo uvrštavanje u n-gramsku bazu. Naime, ako je učestalost n-grama u korpusu manja od neke predefinirane vrijednosti, takvoga n-grama u bazi nema.

Po modelu »vidjela žaba kako potkivaju konja pa i sama digla nogu« – provincijske znanstvene sredine znaju patiti od takvih pristupa – kreiran je i hrvatski WaC [20], opsegom višestruko manji od Hašekovog korpusa. Iz hrvatskog WaC-a nikakav n-gramski sustav nije izveden, pa se onda nameće inženjersko pitanje: Čemu taj trud uopće? Ne treba tehnička pismenost da bi se zaključilo kako WaC pristup u engleskome i WaC pristup u hrvatskome, zbog razlike u brojnosti web-korisnika koji se navedenim jezicima služe, ne mogu voditi do usporedivih rezultata kada su u pitanju n-gramske baze kao big-data infrastruktura za visokozahtjevne jezičnotehnološke zadatke. Strojno prevođenje, strojna tvorba i strojno prepoznavanje govora, još uvijek otvoreni izazovi kada je hrvatski jezik u pitanju, najbolji su primjeri tih zadataka. Ali, ako se kriterij učestalosti zamijeni kriterijem leksičnosti, tj. da je u bazi legitiman samo onaj n-gram čiji su svi konstituenti po pravopisnom provjerniku verificirane riječi, što je, zahvaljujući Hašeku, bilo moguće u hrvatskom slučaju, legitimno je očekivati da će se, uz nešto strpljenja, doći do baze opsega sličnog onom engleske baze. Protegne li se strpljenje na 10 godina, dobivaju se podatci prikazani u tablici 1.

Dakle, iz neusporedivih korpusa, uz nešto vlastite pameti, hrvatski je jezik dobio n-gramski sustav po opsegu usporediv s najvećima. Oslanjanje na Hašek pokazalo se i ekonomski opravdanim, jer deriviranje n-grama ne zahtijeva posebne izdatke niti pretjerani radni angažman [21], dok kreiranje WaC-a, pa i za najmanji jezik, traži kako materijalna tako i ljudska naprezanja.

10 europskih jezika

WaC

1,3 Tpojavnica

Kineski

WaC

883 Gpojavnica

Engleski

WaC

1,025 Tpojavnica

Hrvatski

Hašekov korpus

4,7 Gpojavnica

1-grama

95 998 281

1 616 150

13 588 391

5 227 896

2-grama

646 439 858

281 107 315

314 843 401

195 683 360

3-grama

1 312 972 925

1 024 642 142

977 069 902

638 624 784

4-grama

1 396 154 236

1 348 990 533

1 313 818 354

929 492 670

5-grama

1 149 361 413

256 043 325

1 176 470 663

956 766 161

Ukupno

4 600 926 713

3 912 399 465

3 795 790 711

2 725 794 871

Tablica 1: Usporedba hrvatskog s tri najveća Googleova n-gramska sustava

Iz tablice 1 namjerno je izostavljen najmanji Googleov sustav, japanski, izveden iz korpusa od 256 Gpojavnica. Lako je uočiti (tab. 1) da su kod Googlea najbrojniji 4-grami, dok su u hrvatskome najbrojniji 5-grami; oni su najbrojniji i u japanskome. Ovo je otvorilo pitanje: zbog čega je hrvatski po pitanju ponašanja brojnosti n-grama bliži japanskome nego li drugim indoeuropskim jezicima, kojima pripada? Treba istaknuti da je japanski sustav jedini Googleov sustav kod kojeg se n proteže do 7, upravo zbog promjene zakonitosti mijenjanja brojnosti n-grama.

Zbog traženja odgovora na navedeno pitanje skupljanje hrvatskih n-grama prošireno je od početka 2013. na paralelni n-gramski sustav u kojem n ide do 7. Ovaj tzv. sustav višeg reda izveden je iz korpusa od 3,6 Gpojavnica, 70 puta manjeg od japanskoga, ali je ukupni broj n-grama u njima gotovo identičan, 3.331.208.802 u hrvatskome naspram 3.220.714.390 u japanskome. I zakoni mijenjanja brojnosti n-gama u oba jezika gotovo su identični. Pearsonov koeficijent korelacije R iznosi 0,9829. Iz svega slijedi da su na razini n-gramskih statistika hrvatski i japanski gotovo identični jezici, premda su po svim drugim osobinama miljama daleko.

Razlog zbog kojeg je brojnost n-grama u japanskome najveća za n = 5, dok je u drugim Googleovim sustavima ona najveća za n = 4, na koncu je ispao jednostavan. Prosječna duljina rečenice u europskim jezicima, kao i u kineskome, iznosi oko 9 pojavnica, u engleskome je ona oko 10, dok je u japanskome ona veća od 12 pojavnica. Budući da se kod deriviranja n-grama ne prelazi granica rečenice, širina – prostor deriviranja, limitira mogućnost rasta njihove brojnosti s porastom n-a. Da su rečenice beskonačno duge, što one u prirodnim jezicima srećom, nisu, brojnost bi rasla po geometrijskoj progresiji. Hrvatski je iznimka u odnosu na druge indoeuropske jezike s kojima dijeli srednju duljinu rečenice zbog visokog udjela n-gramskih hapax legomena – n-grama s jediničnom pojavnošću u cijelom korpusu – u sustavu. Hapax legomene leksički kriterij odabira n-grama dopušta, dok ih frekvencijski odbacuje. Odatle potječe opisana »identičnost« hrvatskoga i japanskoga. Usputna napomena: hapax legomene su jezikoslovcima puno zanimljivije nego inženjerima, što mi je i Profesor jednom prigodom potvrdio.

Nekoga možda čudi velika brojnost unigrama u tab. 1, pogotovo zato što je bilo rečeno da Hašekov leksik broji nešto više od 2 milijuna različnica, pa se legitimno otvara pitanje: odakle onda preko 5 milijuna unigrama u hrvatskome? Slično bi se pitanje moglo postaviti i za druge jezike, npr. odakle 13 milijuna unigrama u engleskome, kada svi znamo da se radi o niskoflektivnome jeziku?Čisto numeričke različnice (brojevi) »pumpaju« brojnost unigrama. U hrvatskom sustavu čisto brojčanih unigrama je preko 50%. Slično je i u drugim n-gramskim sustavima. Međutim, zbog načina korištenja brojeva u tekstovima, od n ≥ 2, n-grami su – ovdje se referiram samo na hrvatski sustav – u 98% slučajeva čisto leksički, tj. sastoje se samo od riječi u konvencionalnom značenju pojma.


5. Korištenje hrvatskog n-gramskog sustava

Premda hrvatski jezični tehnolozi već dulje znaju za postojanje hrvatskog n-gramskog sustava [22], nikada nisu iskazali interes za njega. Zato su interes pokazali Francuzi, smatrajući ga dobrom podlogom za brzi razvoj sustava za strojno prevođenje s francuskoga na hrvatski, i obrnuto. Francuski kolege bili su voljni svoj dugogodišnji know-how [23] staviti hrvatskoj strani besplatno na raspolaganje, jer im je u interesu da svoj jezik promoviraju i putem tehnologije, ali je zamisao ostala nerealizirana zbog nemogućnosti dobivanja potpore s hrvatske strane za pokrivanje materijalnih troškova predloženoga projekta. Kada su se stekli uvjeti da se ideja francusko-hrvatskog strojnog prevođenja upakira u širi međunarodni projekt bez hrvatskoga utjecaja na financiranje, prijedlog svojih francuskih kolega sam odbio jer sam se nalazio pred mirovinom. Čovjek treba znati kada za njega nastupa vrijeme da se neostvareni mladenački snovi prepuste zaboravu...

Polazeći od načela da se problemi rješavaju od jednostavnijeg prema složenijima, naglasak u korištenju dobivenog n-gramskog sustava stavljen je na razvoj govornih tehnologija za hrvatski jezik. Strojno prepoznavanje govora i strojno prevođenje počivaju na istim metodološkim osnovama, jer se radi o povezivanju govornog i paralelnog pisanog sadržaja, odnosno povezivanju paralelnih pisanih sadržaja u dva jezika, što se rješava vrlo sličnim algoritmima. Međutim, prvi je problem monolingvalan i za njega sam imao najvažniju podatkovnu podlogu potrebnu za kreiranje poučavajućih uzoraka, dok za drugi, bilingvalni, iz malo prije navedenog razloga, nisam imao. Metodološka sličnost vrijedi i za strojnu tvorbu govora, koja je, zbog manje razine složenosti, prva napadnuta.

Danas neke jednostavnije govornotehnološke proizvode u Hrvatskoj trže Slovenci i Srbi. Opečen iskustvom ogluha na projektne prijedloge ciljane prema razvoju vlastitih govornotehnoloških proizvoda – upućene davno Hrvatskoj radioteleviziji, Hrvatskom Telekomu i Hrvatskoj zakladi za znanost, odlučio sam se u razvoju osloniti isključivo na rad svojih studenata. Moj izborni kolegij »Obrada prirodnog jezika«, kojega sam nastavio držati i u mirovini, dobro je prihvaćen od studenata diplomskih studija FER-a i PMF-a zbog projektnog načina vođenja. Naime, upisnici na početku kolegija dobivaju projektne zadatke, timske ili individualne, i o onome što po svom zadatku naprave ovisi njihov uspjeh na kolegiju. Evo najzanimljivijih rezultata odabranoga pristupa.

Prvi javni hrvatski sintetizator govora, Haschek Voice (http://hascheck.tel.fer.hr/voice), stavljen je na web 2011. godine. On je rezultat diplomskoga rada [24], dakle individualnog posla čije se trajanje broji mjesecima. Ovakvo trajanje rješavanja problema omogućio je n-gramski sustav, iskorišten da se konstruira minimalni skup rečenica s potrebnom fonetskom reprezentativnošću za hrvatski jezik, iz kojih je nastao 17-minutni govorni uzorak potreban da stroj nauči govoriti hrvatski. Nakon jedne javne usporedbe Hascheck Voicea sa stranim proizvodom za strojnu sintezu hrvatskoga (http://www.alfanum.co.rs/index.php/en/demo/tts-demo), koja je išla na našu štetu, idejni tvorac boljega sustava mi je prišapnuo: »Svaka čast, kolega, na uzorku od 17 minuta ni magare ne može naučiti njakati!«

Premda Hascheck Voice tvori govor prihvatljive razumljivosti, još je uvijek daleko od onoga što bi trebao biti. Jedna od osobina hrvatskoga jest ta da u njemu postoji veliki broj istopisnica-raznozvučnica, za razliku od brojnih drugih jezika sa složenijom ortografijom. Stoga stroj treba poučiti kada se pojavnica »žena« mora izgovoriti kao žèna a kada kao žénā. I početnik u hrvatskome zna da se po ovom modelu ravna izgovor popriličnog broja riječi. Valjano izgovaranje pojavnice »žena«, da ne širim dalje, ne ide bez analize konteksta u kojem se ona pojavljuju. Rješavanje navedenog problema započeto je gramatičkim anotiranjem n-grama [25], ali još nije privedeno kraju. Srećom, autor Hascheck Voicea nedavno se vratio na FER kao novak-doktorand, pa se treba nadati da će taj zadatak (uz neke slične) obaviti u konačnom roku.

Prvi sustav za strojno prepoznavanje kontinuiranoga hrvatskoga govora proizveden je 2013. godine [26]. On je rezultat rada skupine polaznika kolegija »Obrada prirodnog jezika« u zimskom semestru akademske 2012/13. godine. Ograničen je na uporabu 15.000 najučestalijih riječi u hrvatskome, koje tvore 75% uporabnoga hrvatskoga u pismu. Ponovno je n-gramski sustav iskorišten za konstrukciju minimalnoga skupa rečenica potrebnog u produkciji govornih uzoraka, koji su sada ispali višesatni. Uz navedeno leksičko ograničenje, slobodno konstruirane rečenice, neovisno o govorniku, prepoznaju se s točnošću od 85% na razini ispravno dekodiranih riječi. Profesionalni sustavi sličnih karakteristika traže točnost od 90%, ili veću, pa se moji studenti ne trebaju sramiti svoga uratka. Nažalost, tvorci su se nakon diplomiranja razbježali po bijelome svijetu, tako da daljnji razvoj čeka novi tim studenata koji će nastaviti gdje su njihovi prethodnici stali. Timski zadatci u odabranome pristupu – prepoznavanje govora se samo tako dade napadati – traže da se po slučaju odabira izbornoga predmeta u istoj godini na njemu stvori kritična masa onih koji znaju, mogu i hoće prihvatiti ozbiljan izazov. Očito sam 2012. imao puno sreće.

Očekivani utjecaj umjetne inteligencije – u nju ulazi, uz mnogo toga drugoga, i govornotehnološki segment – na skoru budućnost plauzibilno prikazuje urednički članak [27] objavljen u prošlogodišnjem broju The Economista. Naslov »Povratak na pitanje uloge strojeva« referira se na početak 19. stoljeća, kada su radnici u Engleskoj znali razbijati strojeve po tvornicama. Naime, robotomanija, koja je zahvatila i Hrvatsku, kod jednih izaziva euforiju, kod drugih zebnju. Nedvojbeno je, međutim, da roboti – oni nepokretni nazivaju se internetskim asistentima – sve više ulaze u svakodnevni život, zamjenjujući ljude u nizu poslova, uključujući i kućne. No, s njima treba komunicirati da bi im se naložilo što moraju raditi. Uzimajući u obzir da je komuniciranje govorom najlakši oblik ljudskog komuniciranja, legitimno je nakon svega postaviti pitanje: hoćemo li mi u Hrvatskoj sa svojim kućnim robotima, odnosno internetskim asistentima, razgovarati na engleskome, ili ćemo se, za razliku od drugih, s njima dopisivati? Volio bih čuti kako na ovo pitanje danas odgovaraju oni, kojima sam prije desetak godina upućivao prijedloge da treba razvijati hrvatske govornotehnološke proizvode. Bojim se jedino da odgovore neću doživjeti.

Na koncu, valja napomenuti da je n-gramski sustav iskorišten i za pretvaranje Hašeka iz konvencionalnog u kontekstni pravopisni provjernik. Prvi je takve vrste u slavenskim jezicima. Do sada je osposobljen da za blizu 700 gramatičko-stilskih uzoraka (ovdje se pod uzorkom misli na lematizirani oblik niza), konstruiranih od individualno dopustivih riječi, kaže jesu li kontekstno upitni, odnosno nedopustivi, te da u slučaju nedopustivosti predloži ispravak. Omjer prijavljivanja konvencionalnih i kontekstnih pogrešaka dosegao je već razinu od 4:1. Unutar kontekstnih, omjer prijavljivanja gramatičkih i stilskih, dominantno pleonastičkih pogrešaka iznosi 20:3. Zahvaljujući unigramima, danas se velik broj pogrešaka nastalih omaškom ispuštanja razmaka između dvije riječi – run-on errors na razini riječi znaju se označavati i kao run-on words – također uspješno ispravlja.

Što se kontekstnih provjera tiče, mnoga toga već pripremljenoga čeka nabavku sljedećeg poslužitelja, jer ove provjere jednostavno »žderu« računalno vrijeme. Jedan od kontekstnih problema jest, primjerice, uporaba glagolskog oblika zahtijeva i imeničkog oblika zahtjeva. Pronađeno je tristotinjak parova gdje samo jedno slovo unutar pravopisno osjetljive grafijske skupine -ije-/-je- mijenja značenje riječi. Polazeći od n-grama, navedeni primjer je primjenom čiste statističke metode dosta dobro riješen [28], u smislu uspješnog razlikovanja gdje je, zbog nepažnje ili neznanja, glagol zamijenjen imenicom, ili obratno, ali i sami autori priznaju da im za kompletiranje rješenja još predstoji parsiranje okolnog konteksta, dakle dodavanje algebarske dimenzije da bi postignuto rješenje postalo produkcijski zrelo. Čitatelju je, nadam se, predočivo koliko je računalno vremenski zahtjevno ono što treba napraviti da bi se razmrsilo sve što je uključeno u ovakve provjere. Jezične petljancije nisu gordijski čvor da bi dopustile da se na njima mač primijeni.


6. Zaključak

San o strojnome prevođenju novovjekovni je pandan Dedalovogsna o letenju, s tim da je vrijeme danas puno zgusnutije, pa nećemo milenijima čekati njegovo ostvarenje, koliko smo čekali na letjelice za svakodnevno služenje. Profesor je u nekrologu [29] nazvan »Šulekom naših dana«, premda je primjerenije zvati ga novovjekim hrvatskim Dedalom. Njegovom šulekovskom trudu prijeti zaborav, ne pretvori li se baklja strojnoga prevođenja, što ju je upalio, u sveobasjavajuću svjetlost. Možda će nakon ovoga netko mene proglasiti njegovim Ikarom, jer su dobni, interesni i etnički odnosi odgovarajući. Svjestan svih implikacija, imenovanje bih prihvatio, uz opasku da sam tehnički nešto pismeniji od izvornoga glede konstrukcije elemenata strojnoprevodilačkih krila i motora. Nadam se da sam u ovom radu to i pokazao.

San o strojnom prevođenju dobio je u internetskoj eri novu artikulaciju, iskazanu u Al Goreovoj »Digitalnoj deklaraciji međuovisnosti« [30], čija druga točka, od ukupno pet, glasi: Moramo prevladati naše jezične barijere razvijajući stvarnovremenske sustave za strojno govorno prevođenje, tako da svatko na Svijetu može razgovarati s bilo kim drugim. Obrazlažući ovaj »Moramo ...«, Gore je kao važan razlog naveo i očuvanje jezičnog i kulturnog nasljeđa, svjestan brzine s kojom danas u Svijetu jezici, s njima i kulture, umiru.

Hrvatski još nije u skupini najugroženijih, ali će ga internetska era toj skupini brzo približiti, ne učine li sami Hrvati nešto u vezi s ovdje otvorenim pitanjima. I hrvatski Dedal i hrvatski Ikar su pali, prvi stvarno, drugi virtualno. Bilo bi preoptimistično očekivati da će i hrvatska braća Wright biti slična njima, manjinci voljni svoj život posvetiti dobrobiti većinaca. Problemi su interdisciplinarni, tako ih treba i napadati a ne svojatati, što se u Hrvatskoj često radi, na štetu svakog svojatanog problema. Na koncu želim naglasiti da je programiranje jezičnotehnoloških proizvoda puno teže, time i vremenski puno zahtjevnije, od, recimo, programiranja robota. Samo ljudi govore, dok se i mnoge druge vrste kreću, neke puno bolje od čovjeka.

Referencije:

1. META-NET White Paper Series (2013): Key Results and Cross-Language Comparison, http://www.meta-net.eu/whitepapers/overview-hr
2. Dembitz, Š. (2012): Funkcionalna leksikografija mrežnog pravopisnog provjernika. Filologija 58:55-97
3. Bratanić-Čimbur, M. (1975): Englesko-hrvatski leksikografski korpus. Bilten Instituta za lingvistiku – Filozofski fakultet Sveučilišta u Zagrebu1:71-73.
4. Wikipedia: Spell checker, https://en.wikipedia.org/wiki/Spell_checker
5. Morris, R., Cherry, L. L. (1975): Computer Detection of Typographical Errors. IEEE Transactions on Professional Communications18(1):54-64
6. Wikipedia: Robert Tappan Morris, https://en.wikipedia.org/wiki/Robert_Tappan_Morris
7. Wikipedia: Robert Morris (cryptographer), https://en.wikipedia.org/wiki/Robert_Morris-_(cryptographer)
8. Wikipedia: ARPANET, https://en.wikipedia.org/wiki/ARPANET
9. Markoff, J. (1988): Author of Computer ‘Virus’ Is Son Of N.S.A. Expert on Data Security. The New York Times, November 5, 1988, pg. 7. http://www.nytimes.com/1988/11/05/us/-author-of-computer-virus-is-son-of-nsa-experton-data-security.html?pagewanted=all
10. Wikipedia: Douglas McIlroy, https://en.wikipedia.org/wiki/Douglas_McIlroy
11. McIlroy, M. D. (1982): Development of a spelling list. IEEE Transactions on Communications COM-30(1):91-99
12. Bego, V., Butorac, J., ur. (1993): Josip Lončar – život i djelo. HAZU-ETF, Zagreb
13. Klarić, A. (2000): Povijest hrvatske katoličke misije u Aucklandu (Novi Zeland) (1904. – 1999.). CUS, Auckland-Split
14. Wikipedia: Google Translate, https://en.wikipedia.org/wiki/Google_Translate
15. Brants, T., Franz, A. (2006): Web 1T 5-gram Version 1.Linguistic Data Consortium, Philadelphia, PA, https://catalog.ldc.upenn.edu/LDC2006T13
16. Brants, T., Franz, A. (2006):All Our N-gram are Belong to You. Google Research Blog, https://research.googleblog.com/2006/08/all-our-n-gram-are-belong-to-you.html
17. Kudo, T., Kazawa, H. (2009): Japanese Web N-gram Version 1.Linguistic Data Consortium, Philadelphia, PA, https://catalog.ldc.upenn.edu/LDC2009T08
18. Liu, F., Yang, M., Lin, D. (2010): Chinese Web 5-gram Version 1. Linguistic Data Consortium, Philadelphia, PA, https://catalog.ldc.upenn.edu/LDC2010T06
19. Brants, T., Franz, A. (2009): Web 1T 5-gram, 10 European Languages Version 1. Linguistic Data Consortium, Philadelphia, PA, https://catalog.ldc.upenn.edu/LDC2009T25
20. Ljubešić, N. (2014): Web corpora of Bosnian, Croatian and Serbian top-level domain published, http://nlp.ffzg.hr/web-corpora-of-bosnian-croatian-and-serbian-top-level-domain-published/
21. Dembitz, Š., Gledec, G., Sokele, M. (2014): An Economic Approach to Big Data in a Minority Language. Procedia Computer Science 35:427-436
22. Dembitz, Š., Gledec, G., Randić, M.(2012): Croatian N-gram System. PPT presentation at the 8th International Conference on Formal Approaches to South Slavic and Balkan Languages (FASSBL 2012), September 19-21, 2012, Dubrovnik
23. Vauquois, B., Boitet, C. (1985): Automated Translation at Grenoble University. Computational Linguistics – Special Issue on Machine Translation11(1):28-36
24. Šoić, R. (2010): Sinteza hrvatskog govora uporabom sustava Festival (diplomski rad br. 74). FER, Zagreb
25. Antolović, A.M. (2014): Pretvorba leksičkih u gramatičke n-grame (diplomski rad br. 732). FER, Zagreb
26. Bajo, D., Turković, D., Dembitz, Š. (2014): Rapid Prototyping of a Croatian Large Vocabulary Continuous Speech Recognition System. Proceedings of the IARIA, pp. 13-18. Curran Associates, Red Hook, NY
27. *** (2016): The return of the machinery question. The Economist, June 25th 2016, pp. 1-14. http://www.economist.com/sites/default/files/ai_mailout.pdf
28. Srdić, I., Gledec, G. (2017):Contextual Spellchecking Based on N-grams. Proceedings of the 28thCECIIS, September 27th – 29th2017, Varaždin (prihvaćeno za objavljivanje)
29. Tadić, M. (2016): László je samo jedan. Vijenac 571:9
30. Gore, A. (1998): Digital Declaration of Interdependence. In: Remarks from Vice President Al Gore, 15th International Plenipotentiary ITU Conference, Minneapolis, MN; October 12, 1998, http://www.itu.int/newsarchive/press/PP98/Documents/Statement_Gore.html

Kolo 4, 2017.

4, 2017.

Klikni za povratak