U vrijeme kada internet još nije bio toliko aktualan u Hrvatskoj, čovjek impresivne titule izv. prof. dr. sc. Šandor Dembitz pokrenuo je projekt Hascheck, online strojnu provjeru pravopisa hrvatskog i engleskog jezika.
Kao što ćete saznati iz detaljnog intervjua s gospodinom Dembitzom, ideja je krenula još početkom 70-ih godina prošlog stoljeća, da bi danas živjela na internetskim stranicama. Hascheck je danas nezaobilazan alat većini PR agencija, novinara, blogera, studenata, učenika i profesora, te svima onima koji trebaju provjeriti ispravnost napisanog teksta.
Ako biste nas pitali koji vam je najdraži alat za svakodnevni posao, odgovor bi svakako bio Hascheck.
Možete nam ukratko ispričati kako je nastao Hascheck?
Ideja se iznjedrila tijekom suradnje na Englesko-hrvatskom leksikografskom korpusu, prvom hrvatskom dvojezičnom megakorpusu koji je pokojni akademik Željko Bujas dao izraditi kao podlogu za svoju leksikografsku djelatnost. Kreiranje Korpusa započelo je početkom 70-tih godina prošloga stoljeća. Podaci su se unosili putem flexowritera, pisaćega stroja kojemu je izlaz bila bušena papirnata traka. Jasno je da ovakav unos podataka proizveo veliki broj grešaka, tako da je nakon prebacivanja Korpusa s papirnih na magnetsku traku trebalo obaviti njegovo čišćenje. To je bio krvav posao, koji je u razdoblju od rujna 1975. do konca veljače 1976. angažirao nekoliko desetaka korektora u punom radnom vremenu. Ja sam taj posao vodio s tehničke strane i, promatrajući korektorsku muku, počele su mi navirati ideje kako im posao olakšati putem tehnologije. No, put od zamisli do izvedbe bio je dug i trnovit.
Hascheck je zaživio davne 1993. godine kad još mnogi nisu imali internet. Koja je ideja bila u to vrijeme?
Već tada je bilo izvjesno da će se Internet naglo širiti i poprimati oblike sve primjerenije korisnicima. Kako se prirodni jezik uči cijeli život, tako i tehnološki alati, koji se bave prirodnim jezikom, moraju u sebi imati ugrađenu komponentu učenja. Internet je nudio jedinstvenu priliku da se putem interakcije korisnika i sustava izgradi sustav visoke jezične funkcionalnosti. Hascheckova funkcionalnost je već koncem 90-tih značajno nadmašila funkcionalnost konvencionalnih pravopisnih provjernika za hrvatski jezik. Kako je vrijeme dalje išlo, razlike su se povećavale u Hascheckovu korist.
U kojem se programskom jeziku napravio Hascheck?
Jezgreni dio sustava je modularan i stalno se dopunjava novim funkcijama (modulima), odnosno postojeći se moduli dorađuju. Zbog toga se u programiranju koriste uglavnom prototipni jezici (perl, awk i sed), jer se u njima jednom napisano lako mijenja i dopunjuje. Korisničko sučelje izvedeno je u Javascriptu.
U kratkim crtama, možete nam opisati kako funkcionira Hascheck?
Prvo se iz teksta izdvajaju sve poznanice, bile one riječi i već „prožvakane“ greške. Valja istaknuti da je opseg rječnika pogrešaka dvostruko veći od opsega rječnika valjanih riječi. Ostatak, odnosno nepoznanice, podvrgava se grafemskoj klasifikaciji i morfologizaciji, čiji je cilj utvrditi je li nepoznanica tvorbeno moguća u hrvatskome. Ako jest, označava se takvom i za nju se ne nude ispravci. Neoznačene nepoznanice i greške-poznanice podliježu postupku traženja najvjerojatnijih ispravaka prema bliskosti s riječima u pravopisnom rječniku.
Hascheck uči nove riječi iz tekstova svojih korisnika. Na koji način to funkcionira?
Na početku su sve nepoznanice prolazile evaluaciju radi li se o valjanim riječima ili pogreškama. Danas takav postupak prolaze samo označene nepoznanice, kao i nepoznanice za koje sustav ne može ponuditi ispravak. Premda je klasifikacija i morfologizacija vrlo pouzdana, zbog očuvanja visoke preciznosti rječnika nužan je ljudski nadzor nad onim što je sustav izdvojio kao potencijalno zanimljivo za učenje. U najnovije vrijeme, zbog poraslog opsega poslova oko održavanja sustava i razvoja novih aplikacija, učenje se zna preskočiti, ali se podatci pripremljeni za učenje pohranjuju za bolja vremena.
Ponekad Hascheck ne želi “probaviti” tekst. Radi li se o nekom bugu ili možda mi korisnici radimo nešto krivo?
To se zna dogoditi na sučelju http://hascheck.tel.fer.hr/ kada tekst sadrži neke „neprobavljive“ znakove, najčešće posebne znakove iz skupa UTF-8, no takvih je sve manje i manje. Ako se to dogodi, odnosno ako korisnik ne dobije odziv sustava u očekivanome vremenu, treba prijeći na http://hascheck.tel.fer.hr/stari/, koji će sigurno probaviti i neprobavljivo, ali neće upozoriti na moguće kontekstualne pogreške u tekstu. Ovaj problem je potakao izradu nove verzije sučelja na kojoj će se moći odabrati želi li se tekst kontekstualno provjeriti, što dulje traje, ili ne. Na novom sučelju problem s „probavljanjem“ teksta ne bi se smio pojavljivati.
Postoje dvije verzije Haschecka, koja se više koristi, starija ili novija?
Omjer korištenja novog (kontekstualnog) i starog (nekontekstualnog) sučelja je 7:3.
Koliko je velika baza riječi u Haschecku?
U trenutku pisanja pravopisni rječnik je brojao ravno 2.096.191 različnicu. Od tog broja 52,9% pripada hrvatskom općejezičnom fondu, 43,7% hrvatskom posebnojezičnom, dominantno imenskom fondu, dok 3,4% pripada engleskom općejezičnom fondu. Engleski dio rječnika postoji zbog navade korisnika, posebno onih iz akademske zajednice, da u hrvatske tekstove ubacuju brojne engleske izraze. Na samome početku Hascheckov je rječnik brojao oko 100.000 različnica hrvatskog općejezičnog fonda.
Koliko posjeta ima stranica Haschecka i koliko korisnika trenutno postoji?
Glavna Hascheckova stranica bilježi između 3 i 4 tisuće posjeta dnevno. U lipnju 2014. dnevno se u prosjeku obrađivalo oko 8.000 tekstova, odnosno korpus od preko 2 milijuna pojavnica. Prema zabilježenim cookiejima procjenjujemo da je uslugu do sada koristilo oko pola milijuna korisnika diljem svijeta. Od 249 IP-domena, na koje je svijet danas podijeljen, njih 125 dalo je Hascheckove korisnike. Razmjeri korištenja u Hrvatskoj dadu se iskazati i putem zabilježenih IP-adresa s kojih su hrvatski korisnici do sada pristupali usluzi. Takvih je u trenutku pisanja bilo ravno 582.379, što je četvrtina svih IP-adresa dodijeljenih Hrvatskoj (https://www.maxmind.com/en/techinfo).
Jeste li kad razmišljali o prodaji projekta?
Takva opcija nije isključena, no o tome ima smisla razgovarati ako pristigne ozbiljna ponuda za preuzimanje usluge. Nju do sada nismo zaprimili.
Koji su sljedeći koraci za ovaj servis? Može li se on razviti u jedan profitabilan projekt ili će zauvijek ostati ovako?
Hascheck se već pokazao vrlo profitabilnim projektom, ne u smislu kako to pitanje implicira, već na jedan puno bitniji način. Hrvatski je u tehnološkome smislu jedan od najzapuštenijih europskih jezika (vidi http://www.meta-net.eu/whitepapers/key-results-and-cross-language-comparison) i da bi se to stanje u razumnom roku promijenilo nužna je podatkovna podloga u obliku bogate i pouzdane leksičke n-gramske infrastrukture, bez koje je suvremeno jezično modeliranje nezamislivo. Zahvaljujući Haschecku, hrvatski danas takvu podlogu ima, dapače po tom se pitanju može uspoređivati i s jezičnotehnološki najnaprednijim jezicima. Međutim, da bi se dobivena big data infrastruktura – radi se o milijardama leksičkih zapisa – na pravi način iskoristila, potrebna su ozbiljna ulaganja u opremu i ljude, što je za sada izostalo. Već smo pokazali uporabljivost n-gramske infrastrukture i bez lipe potpore. Hascheck je postao kontekstualni provjernik s omjerom 4:1 kod prijavljivanja konvencionalnih (zatipkovno-pravopisnih) i gramatičko-stilskih pogrešaka, što ga svrstava uz bok najboljih provjernika takve vrste u svijetu. Razvijeni su uporabljivi sustavi za strojnu tvorbu i strojno prepoznavanje hrvatskoga govora. U tijeku je projekt strojnoga prevođenja za francusko-hrvatski jezični par, u kojemu Francuzi besplatno ulažu svoj know-how, želeći tako promovirati svoj jezik putem tehnologije. No, sve su to početci, jer ni govorne tehnologija, ni strojno prevođenje, kao ni daljnje unapređivanje Haschecka nisu razvojno održivi bez gore spomenutih ulaganja. Hrvatska mora prepoznati da se jezik u internetskoj eri brani tehnologijom, jer u protivnome hrvatskom jeziku s vremenom prijeti opasnost gubljenja funkcionalnosti u svim njegovim pojavnim oblicima, što je put prema izumiranju.
Hoće li možda biti mobilne verzije ili aplikacije za tablet uređaje?
Da, u planu su obje verzije. Kako su u implementaciji dijelova usluge uvijek sudjelovali naši studenti, tako je i ovaj zadatak zadan kroz završne i diplomske studentima preddiplomskog i diplomskog studija FER-a.
Hascheck će ostati besplatan ili postoji neka opcija naplate usluge?
U jezicima s relativno malim brojem korisnika, kakav je hrvatski, osnovni jezičnotehnološki alati moraju biti javno dobro. Svima je u interesu, i autorima i čitateljima, da tekstovi budu dobro uređeni, bez grešaka koje sramote prve a iritiraju druge. To je razlog zašto je Hascheck besplatna usluga za „male“ korisnike. Onima koji ga rabe u profesionalne svrhe već dulje naplaćujemo uslugu, jer im korištenje Haschecka podiže produktivnost i garantira kvalitetu proizvoda (teksta), što je vrijedno minimalne naknade. Profesionalni korisnici za tu naknadu dobivaju i skrb o leksici koju rabe putem nadziranoga učenja, što „malim“ korisnicima danas zbog manjka ljudstva više ne možemo garantirati.
U nastavku možete pogledati staru emisiju eHrvatska u kojoj je također objašnjen Hascheck.