Kako naj računalnik ve, kaj je pravilno postavljena vejica, manjkajoča vejica, odvečna vejica, mesto brez vejice? Odgovore na to ima dr. Peter Holozan, vodilni računalniški jezikoslovec v podjetju Amebis, ki s pregledovalnikom Besana skrbi za boljšo slovenščino.
Holozan je letos doktoriral z disertacijo Računalniško postavljanje vejic v slovenščini. Na predavanju na Filozofski fakulteti Univerze v Ljubljani Kako Besana popravlja vejice? je v torek predstavil del doktorata. Besana je slovnični pregledovalnik za slovenščino, v katerem je precejšen del namenjen popravljanju vejic v besedilih. Ta del je bil v zadnjih letih precej dopolnjen, kar je zlasti posledica uvedbe analize zgradbe povedi.
Na predavanju je Holozan predstavil osnove delovanja analize povedi in zbirko primerov rabe vejice Vejica 1.0, ki omogoča preizkušanje programov za postavljanje vejic in uporabo strojnega učenja za postavljanje vejic. Da je to pomembno, verjetno ni treba dokazovati, avtor je opozoril, da imajo Slovenci pravilno postavljanje vejic za znak višje pismenosti.
Slovnični pregledovalnik Besana (okrajšava za BESedna ANAliza) razvija podjetje Amebis, s katerim Holozan druguje že dolgo: prva zabeležena verzija programa je nastala leta 1988 kot srednješolska raziskovalna naloga (ob Holozanu sta bila soavtorja Marko Šimunovič in Iztok Grilc). Leta 2005 je nastala nova verzija Besane za okolje Windows, ki je sicer ohranila nekaj starih metod delovanja, velika večina pa je bila narejena na novo, in sicer predvsem na podlagi stavčne analize s pomočjo glagolskih predlog.
Iskanje napak v besedilih
Pregledovalnik je torej namenjen iskanju napak v besedilih, predvsem slovničnih, to je takih, ki jih črkovalnik ne more odkriti. Odkriva na primer neujemanje med pridevniki in samostalniki v sklonu, spolu in številu, napačne sklone za predlogi, napačne variante predlogov s/z oziroma k/h, napačne predloge pri krajevnih imenih, zanikanje s tožilnikom, napačno tvorbo trpnika, nekatere tipične neknjižne rabe, napačno dvojino, napačne velike/male začetnice, presledke pri ločilih ipd. Pomemben del je tudi opozarjanje na napačne vejice, in sicer tako na manjkajoče kot odvečne.
V disertaciji se je Holozan posvetil ravno temu oziroma možnosti uporabe računalnikov za postavljanje in popravljanje vejic v slovenščini. V ta namen je zbral obsežno zbirko primerov rabe vejice, v kateri so označene manjkajoče in odvečne vejice (138.626 pravilno postavljenih vejic, 17.768 manjkajočih in 4608 odvečnih).
Priprava zbirke primerov se je pokazala za močno orodje, s katerim je bilo mogoče ugotoviti, kako dobro dosedanja programa (LanguageTool in Besana) popravljata napačno postavljene vejice, prav tako je omogočilo preizkus strojnega učenja za postavljanje vejic v slovenščini. Rezultat pri postavljanju vseh vejic, poroča Holozan v sklepu disertacije, je primerljiv z obstoječima programoma, popravljanje vejic pa še ni tako uspešno.
Avtor dodaja, da sta bili za programa, ki uporabljata pravila za postavljanje oziroma popravljanje vejic, razviti dve metodi, s katerima je mogoče ugotoviti, kako je treba dopolniti pravila. Prva je iskanje besed in okolic pri pravilno postavljenih vejicah, manjkajočih vejicah, odvečnih vejicah in mestih brez vejic, druga metoda pa je bila razvita z uporabo analizatorja povedi, ki ga razvija podjetje Amebis.
Pri tej metodi je vejicam pripisana oznaka, ki pove, zakaj na tistem mestu mora biti vejica. S to metodo je po eni strani s pomočjo zbirke primerov mogoče ugotoviti, katere vrste vejic delajo največ težav pišočim, po drugi strani pa tudi, katerih vrst vejic Besana ne popravlja uspešno. S tema dvema metodama je bilo mogoče izboljšati tudi rezultat, ki ga pri popravljanju vejic doseže Besana, in sicer tako priklic (delež odkritih manjkajočih vejic) kot natančnost (delež pravilno postavljenih vejic).
Prilagajanje uporabniku
Ena od zanimivih prihodnjih možnosti pregledovalnika se zdi odločanje, čemu dati prednost, prvemu ali drugemu. Po Holozanovem mnenju je namreč zanimivo vprašanje, ali bi bilo želeno natančnost smiselno prilagoditi potencialnemu uporabniku: pri uporabniku, ki o postavljanju vejic ne ve veliko, mora biti natančnost toliko večja, saj ga drugače program lahko hitro zavede, po drugi strani pa je uporabniku, ki zna postavljati vejice, program pa uporablja bolj zato, da česa ne spregleda, mogoče ponuditi manjšo natančnost, da sam izbere pravilne popravke. Temu bi bilo upravičeno mogoče reči uporabniku prijazen program.