scieee Open visual document viewer

Lietuvių kalbos morfologija atvirojo kodo „Hunspell“ platformoje

Virginijus Dadurkevičius

Full text

BENDRINĖ KALBA 90 (2017) www.bend inekalba.l ISSN 2351-7204 VIRGINIJUS DADURKEVIČIUS Vilniaus uni e si e as LIETUVIŲ KALBOS MORFOLOGIJA ATVIROJO KODO HUNSPELL PLATFORMOJE 1 ESMINIAI ŽODŽIAI: kompiu e inė ling is ika, lie u ių kalba, g ama ika, mo ologija, mo ologinė analizė, ašybos ik inimas, eks o indeksa imas, paieška, a i asis kodas, Hunspell. ĮVADAS P ieš daugiau kaip 100 me ų Jono Jablonskio pas angomis (1901, 1918, 1922) lie u ių kalba p adė a no min i i p i aiky a bū i pag indine als ybę ienijančia p iemone. Jau pi mojoje Jono Jablonskio Lie u iškos kalbos g ama ikoje (1901) lie u ių kalbos one ika, mo ologija i sin aksė bu o o malizuo os: apib ėž os pag indinės są okos, pa eik os žodžių kai ybos i sakinio sanda os aisyklės (ž 1 pa .). 1 PAV. Iš auka iš Jono Jablonskio Lie u iškos kalbos g ama ikos 1901 2 Neįkainojamas Jono Jablonskio indėlis no minan lie u ių kalbos leksiką, aiškinan seman inius žodžių ypa umus. Ilgą laiką o isiškai pakako mokiniams i moky ojams, ašy ojams i skai y ojams, aldininkams i mokslininkams. A si adus ci ilizaciją keičiančiai naujo ei – kompiu e iams – klasikinei g ama ikai i leksikai iškilo bū inybė „apsi ilk i naują d abužį“ i ap i isa e e naujųjų 1 S aipsnis pa eng as pagal p anešimą Lie u ių kalbos g ama ika a i ojo kodo pasaulyje, skai y ą 24-ojoje a p au inėje Jono Jablonskio kon e encijoje Skai meniniai kalbos iš ekliai, jų plė os k yp ys i panaudos galimybės (2017 09 29); ją o ganiza o Lie u ių kalbos ins i u o Bend inės kalbos y imų cen as i Vilniaus uni e si e o Lie u ių kalbos ka ed a. 2 Pa eikslas iš h p://www.epa eldas.l / bspi/biReco d.do?biReco dId=25383. VIRGINIJUS DADURKEVIČIUS. Lie u ių kalbos mo ologija a i ojo kodo hunspell pla o moje |2 BENDRINĖ KALBA 90 (2017) www.bend inekalba.l ISSN 2351-7204 echnologijų dalimi. Pi miausia kalbos dalykų kompiu e iuose p i eikė koduojan eks ą (keičian aides į skaičius), au oma iškai ko eguojan į edamo eks o klaidas, skiemenuojan abipusės lygiuo ės skilčių eks ą. Kiek ėliau – in o macijos paieškai, šnekos analizei bei sin ezei, mašininiam e imui iš ienos kalbos į ki ą, au oma iniam u inio su okimui, eks o „jausminei“ analizei i . . Kalbos dalykai p i alėjo bū i smulkmeniškai o malizuo i i už ašy i ki okiu, kompiu e iams su okiamu būdu. S a biausias iš šių dalykų – mo ologija, nes ai y a be kokių nuodugnesnių kompiu e inės ling is ikos da bų (sin aksė, seman inė analizė i pan.) pag indas. Pi mą okį da bą amžių sandū oje a liko ekspe imen inės gamyklos „Bi as“ p og amuo ojas Vy au as Zinke ičius (1996, 2000). Be eik du dešim mečius ai bu o nepamainoma i ienin elė p iemonė šiuolaikiškam lie u ių kalbos y imui i kompiu e iniams aikymams. Ši sis ema bu o sėkmingai naudojama ašybos klaidoms ap ik i eks ų edaga imo p og amose, aip pa mo ologinei analizei bei sin ezei a lik i moksliniuose i aikomuosiuose da buose Lie u ių kalbos ins i u e, Vy au o Didžiojo ( en jo da bai ga o „Lemuoklio“ a dą) i Vilniaus uni e si e uose. Bu o ne gi suku as šios sis emos a ian as, p i aiky as senajai lie u ių kalbai analizuo i (Gelumbeckai ė i k . 2012). Tačiau plečian is kompiu e inės ling is ikos po eikiams p adėjo yškė i šios sis emos ūkumai: nes anda inės, neap ašy os duomenų s uk ū os; užda as kodas; ne isa e is ik inių a dų, ilia y o, d iskai os, pi minių eiksmažodžių būsimojo laiko, su umpėjusių bei e ų o mų ealiza imas. Ypač šios sis emos olimesniam plė ojimui ukdė užda as kodas – duomenis i algo i mą p ak iškai galėjo keis i ik pa s au o ius. Siekian iš eng i anksčiau ap ašy ų ūkumų i suku i naujos ka os kompiu e inę lie u ių kalbos mo ologiją, bu o iškel i šie eikala imai: 1) naudo i i ku i ik a i ąjį kodą; 2) ik duomenys, be ne jų o ma i in e p e a imas, gali u ė i speci inių lie u ių kalbos sa ybių; 3) isas p og aminis kodas u i bū i uni e salus, ik i be ku iai ki ai kalbai; 4) pasinaudo i ki oms pasaulio kalboms sėkmingai p i aiky ais sp endimais. Minė us eikala imus ge ai a i inka Hunspell pla o ma 3 . Be o, okiu būdu ap ašius kalbą, ėliau nesunkiai galima ik in i ašybos klaidas daugelyje (pe 50) aikomųjų p og amų (OpenO ice, Lib eO ice, Fi e ox, Ch ome, Sa a i, InDesign i . .), a lik i žodžių mo ologinę analizę bei sin ezę, ykdy i in elek inę eks inės in o macijos paiešką i pan. 3 P ieiga in e ne e: h ps://en.wikipedia.o g/wiki/Hunspell. VIRGINIJUS DADURKEVIČIUS. Lie u ių kalbos mo ologija a i ojo kodo hunspell pla o moje |3 BENDRINĖ KALBA 90 (2017) www.bend inekalba.l ISSN 2351-7204 Šiame s aipsnyje apž elgiamas naujas lie u ių kalbos mo ologijos ealiza imas Hunspell pla o mos pag indu. Ap a iamos su uo susijusios p oblemos i jų sp endimo būdai, pa eikiami sėkmingo es a imo i p ak inio aikymo pa yzdžiai. 1. LIETUVIŲ KALBOS APRAŠYMO HUNSPELL FORMATU YPATYBĖS 1.1. Hunspell pla o mos a si adimo p ielaidos i bend ieji p incipai A i ojo kodo Hunspell pla o ma išsiplė ojo iš pap asčiausių ašybos ik inimo p iemonių Ispell 4 , Aspell 5 , MySpell 6 i pan. Pamažu da an jas sudė ingesnes i p i aikan is į ai esnėms kalboms (ypač agliu inacinėms – suomių, eng ų, u kų i pan.), apo įmanoma sp ęs i ne ik ašybos ik inimo, be i mo ologinės analizės bei sin ezės užda inius. Šios pasaulyje i in populia ios pla o mos au o iai – daugiausia eng ų kilmės mokslininkai i inžinie iai- p og amuo ojai (T ón i k . 2005). Nenuos abu, kad jos pa adinimo pi mas dėmuo „Hun-“ y a pagal Veng ijos pa adinimą anglų kalba. Kalbos mo ologiją Hunspell pla o moje ap ašo du eks iniai ailai: plė iniu .a už ašomos kai ybos aisyklės, o plė iniu .dic už ašomas žodžių o mų žodynas su p adine mo ologine in o macija i nuo odomis į ieną a kelias kai ybos aisyklių g upes, ku ios papildomai gali bū i aikomos. A ski ą aisyklę galima įsi aizduo i kaip ins ukciją, ku ioje nu odoma: 1) Ką į ką galima keis i žodyje iš o mų žodyno. P z., aisyklėje SFX 85 čias y [^š]čias is:Masc_Sg_Voc „SFX“ žymi, kad keičiama žodžio pabaiga, o keis i galima „–čias“ į „– y“. „PFX“ žymė ų, kad keičiama žodžio p adžia. Žodžio idu io kei imai nė a numa y i. 2) Kai ybos aisyklių g upės, ku iai p iski iama ši aisyklė, nume is. G upę gali suda y i iena a ba kelios aisyklės, ku ios isada aikomos ka u. Anks esniame pa yzdyje aisyklė p iski iama g upei, ku ios nume is y a „85“. 3) Sąlygos, ku ioms esan , kei imas y a galimas ( aikomas am ik as egulia iųjų iš aiškų o malizmas). Mūsų pa yzdyje kei imas galimas ik su sąlyga, kad žodžio iš o mų žodyno pabaiga nė a „–ščias“ ( p z., „ aikiščias“). 4) Mo ologinė in o macija, susijusi su šiuo kei imu. Mūsų pa yzdyje su okiu žodžio pabaigos kei imu y a siejamas mo ologinis pažymėjimas „Masc_Sg_Voc“ ( y iškoji giminė, ienaskai a, šauksmininko linksnis, p z., „s e y“). 4 P ieiga in e ne e: h ps://www.cs.hmc.edu/~geo /ispell.h ml. 5 P ieiga in e ne e: h p://aspell.ne . 6 P ieiga in e ne e: h ps://code.google.com/a chi e/a/apache-ex as.o g/p/ooo-myspell. VIRGINIJUS DADURKEVIČIUS. Lie u ių kalbos mo ologija a i ojo kodo hunspell pla o moje |4 BENDRINĖ KALBA 90 (2017) www.bend inekalba.l ISSN 2351-7204 Išsamiau su Hunspell kai ybos aisyklių suda ymo i mo ologinės in o macijos nu odymo p incipais galima susipažin i šios pla o mos s e ainėje 7 , o į ai ų kalbų mo ologijos ap ašymo šioje pla o moje galimybės gana ge ai išnag inė os Tommi A. Pi ineno dise acijoje (2014). 1.2. Speci iniai eikala imai lie u iškajam ealiza imui Kad oks kalbos o maliza imas ik ų mo ologinei analizei, sin ezei, eks inės in o macijai indeksuo i i paieškai, eikia enkin i šiuos du eikala imus: 1) į žodžių o mų žodyną gali bū i į ašomos ik lemos (an aš inės o mos); 2) p iešdėlinė, p iesaginė i sang ąžinė da yba u i a sispindė i ne .a , o .dic aile. Pi mąjį eikala imą lie u ių kalboje nė a leng a įgy endin i dėl didelės eiksmažodžių kai ybos į ai o ės (apie 170 a ian ų), be sp ęs i šią p oblemą padėjo Hunspell pla o mos galimybė iš ienos kai ybos aisyklės k ies is ki ą. No s okių k ie imų „gylis“ gali bū i lygus ik iene ui, ai ge okai sumažina kai ybos aisyklių ailo dydį – nuo kelių milijonų iki keliolikos ūks ančių eilučių. An ojo eikala imo enkinimas kiek išplečia .dic ailo dydį, nes, p z., os pačios šaknies „im i“, „paim i“, „suim i“ i „nesiim i“ p iešdėliniai–p iesaginiai–sang ąžiniai ediniai bus į ašomi a ski omis eilu ėmis. I ai y a ne ienin elė šio eikala imo neigiama pasekmė – galima leng ai apsi ik i i neį auk i kokio no s ečiau a ojamo eiksmažodžio a būd a džio da inio. Tiesa, ši p oblema y a gana išsamiai sp endžiama lemas a enkan isų pi ma ne iš išleis ų žodynų, be iš sukaup ų eks ynų. 1.3. Lie u iškųjų .dic i .a ailų agmen ai (pa yzdžiai) Keli lie u ių kalbos .dic ailo (žodyno) agmen ai su pa yškin ais Jono Jablonskio pa yzdinių žodžių a i ikmenimis pa ody i 2 pa eiksle. 7 P ieiga in e ne e: h ps://gi hub.com/hunspell/hunspell. VIRGINIJUS DADURKEVIČIUS. Lie u ių kalbos mo ologija a i ojo kodo hunspell pla o moje |5 BENDRINĖ KALBA 90 (2017) www.bend inekalba.l ISSN 2351-7204 laukakmenis/118,122,132,137,141,145,157,159,9999 po:noun laukan po:ad e b laukas/1,3,7,10,12,14,20,21,30,9999 po:noun Lauka ičienė/738,740,745,9999 po:noun_ amily_name ... s ečias/1467,1767,1775,1781,1784,1841,9999 po:adjec i e s ečias/71,73,85,93,98,100,106,116,9999 po:noun s ečia imasis/1308,1310,1314,1315,1317,1319,9999 po:noun_ e lexi e S ečiulienė/738,740,745,9999 po:noun_ amily_name ... Gaidulis/118,122,132,141,145,157,9999 po:noun_ amily_name Gaiduly ė/738,740,745,749,754,760,9999 po:noun_ amily_name gaidys/264,268,278,280,284,288,300,302,9999 po:noun Gaidys/264,268,278,284,288,300,9999 po:noun_ amily_name ... peilinis/2036,9999 po:adjec i e peilis/118,122,132,137,141,145,157,159,9999 po:noun peiliukas/1,3,8,10,12,14,20,21,30,9999 po:noun Peipus/444,446,452,9999 po:noun_geog aphic_name 2 PAV. Žodžių o mų .dic ailo agmen as. Skaičiai po pas i ojo b ūkšnio žymi nuo odas į ad esuojamas kai ybos aisyklių g upes. Raudonai pa yškin os nuo odos į aisyklių g upes, ku ios pa ody os 3 PAV. 3 pa . pa eikiami keli lie u ių kalbos kai ybos aisyklių .a ailo agmen ai: SFX 21 Y 1 SFX 21 as uosna . is:Masc_Pl_Il ... SFX 98 Y 2 SFX 98 as ai . is:Masc_Pl_Nom SFX 98 as ų . is:Masc_Pl_Gen ... SFX 264 Y 6 SFX 264 is is . is:Masc_Sg_Nom SFX 264 ys ys . is:Masc_Sg_Nom SFX 264 is žio . is:Masc_Sg_Gen SFX 264 ys žio . is:Masc_Sg_Gen SFX 264 ai ai . is:Masc_Pl_Nom SFX 264 ai ų . is:Masc_Pl_Gen ... SFX 145 Y 12 SFX 145 is iams . is:Masc_Pl_Da SFX 145 ys iams . is:Masc_Pl_Da SFX 145 is iam . is:Masc_Pl_Da _sho SFX 145 ys iam . is:Masc_Pl_Da _sho SFX 145 is ius . is:Masc_Pl_Acc SFX 145 ys ius . is:Masc_Pl_Acc SFX 145 is iais . is:Masc_Pl_Ins SFX 145 ys iais . is:Masc_Pl_Ins SFX 145 is iuose . is:Masc_Pl_Loc SFX 145 ys iuose . is:Masc_Pl_Loc SFX 145 is iuos . is:Masc_Pl_Loc_sho SFX 145 ys iuos . is:Masc_Pl_Loc_sho 3 PAV. Kai ybos aisyklių .a ailo agmen ai. Pa yškin os kelios aisyklės, ku ios oliau naudojamos mo ologinei analizei ilius uo i. VIRGINIJUS DADURKEVIČIUS. Lie u ių kalbos mo ologija a i ojo kodo hunspell pla o moje |6 BENDRINĖ KALBA 90 (2017) www.bend inekalba.l ISSN 2351-7204 Panaudoję pa yzdžiuose pa eik ą kalbos ap ašą i s anda ines (nuo kalbos nep iklausomas) Hunspell analizės p iemones, Jono Jablonskio pa yzdiniams žodžiams gau ume okį a sakymą (ž . 4 pa .). 4 PAV. Mo ologinės žodžių analizės pa yzdys 2. DARBO EIGA IR REZULTATAI Kai jau suda omas isa e is kalbos ap ašas Hunspell o ma u ( . y. suku iami a i inkami .dic i .a ailai), a si e ia p ak iškai ne ibo os galimybės p ak iniams aikymams – p adedan ašybos a g ama ikos ik inimu i baigian išmaniosiomis in o macijos paieškos sis emomis. Dėl gana sudė ingos lie u ių kalbos mo ologijos (daug aisyklių i jų g upių) i bū inybės lemų są ašą de in i su dideliais (daugiau kaip 1 ml d. žodžių) eks ynais, a spindinčiais ealią daba inės ašy inės lie u ių kalbos būklę, p i eikė maždaug 5 me ų nuo pi mųjų bandymų iki sklandžiai eikiančio mo ologijos a ian o sukū imo. Anksčiau šiame s aipsnyje pa eik i pa yzdžiai y a labiau ilius a y ūs, ski i ik idėjai sup as i; ik o ėje aisyklės i jų g upės y a daug sudė ingesnės, ypač os, ku ios susijusios su eiksmažodžiams. Siekian pag ei in i mo ologijos sukū imo laiką i iš eng i klaidų su ašan ūks ančius aisyklių i jas p iski ian lemoms, iš p adžių bu o suku as pi minis, abs ak esnis nei Hunspell speci ikacijose eikalaujamas mo ologijos ap ašas ( aisyklės – MS Excel len elėje, lemos i jų klasi ika imas – MS Access duomenų bazėje). Taip pa bu o suku os p og aminės p iemonės šioms pi minėms, žmogui leng iau skai omoms i pap asčiau su okiamoms s uk ū oms au oma iškai pe a ky i į .a i .dic ailus a ba ki ą, aikymo speci ikos nusaky ą o mą. Naujausia lie u iškųjų .a i .dic ailų e sija pa eikiama au o iaus Gi Hub s e ainėje 8 . Viso mo ologijos o maliza imo p oceso me u bu o naudojami šie pag indiniai šal iniai: 8 P ieiga in e ne e: h ps://gi hub.com/dadu ka/hunspell_mo phology_l . VIRGINIJUS DADURKEVIČIUS. Lie u ių kalbos mo ologija a i ojo kodo hunspell pla o moje |7 BENDRINĖ KALBA 90 (2017) www.bend inekalba.l ISSN 2351-7204 1) Daba inės lie u ių kalbos g ama ika (DLKG 2006); 2) Vy au o Didžiojo uni e si e o ( oliau – VDU) Daba inės lie u ių kalbos eks ynas 9 – ~140 mln. žodžių; 3) Vilniaus uni e si e o mašininio e imo eks ynas 10 – ~800 mln. žodžių, ~4 mln. unikalių; 4) Lie u os Respublikos Seimo ( oliau – LRS) dokumen ai 11 – ~400 mln. žodžių, ~1 mln. unikalių; 5) Daba inės lie u ių kalbos žodynas (DŽ 2006) – ~60 ūks . lemų; 6) Lie u ių kalbos žodynas 12 – ~500 ūks . s aipsnių; 7) Ta p au inių žodžių žodynas (VTŽŽe) – ~22 ūks . lemų; 8) Lie u ių pa a džių žodynas (LPŽ) (~80 ūks . pa a džių). Iš iso bu o suda y a maždaug 5000 ad esuojamų aisyklių g upių (18 000 indi idualių aisyklių). Kaip aisyklių g upės pasiski sčiusios pagal kalbos dalis, pa ody a 5 pa eiksle. 5 PAV. Kai ybos aisyklių g upių pasiski s ymas pagal kalbos dalis .dic ailas (žodynas) bu o suda y as iš 171 000 lemų. Kaip lemos pasiski sčiusios pagal kalbos dalis, pa aizduo a 6 pa eiksle. 9 P ieiga in e ne e: h p:// eks ynas. du.l / eks ynas/. 10 P ieiga in e ne e: h ps://www. e s i.eu/. 11 P ieiga in e ne e: h p://www.l s.l /. 12 P ieiga in e ne e: h p://www.lkz.l /. Daik a a džiai (370) Būd a džiai (238) Skai a džiai (55) Į a džiai (64) Veiksmažodžiai (4161) P ie eiksmiai (13) VIRGINIJUS DADURKEVIČIUS. Lie u ių kalbos mo ologija a i ojo kodo hunspell pla o moje |8 BENDRINĖ KALBA 90 (2017) www.bend inekalba.l ISSN 2351-7204 6 PAV. Lemų pasiski s ymas pagal kalbos dalis Vykdan a anką bu o apsi ibojama ik ai aisyklinga šiuolaikine lie u ių kalba i engiama klaidingų, nelie u iškų, ne eik inų, įžeidžiančių, nebe a ojamų žodžių. Tik iniai daik a a džiai bu o papildomai ski s omi į pa a des, a dus, geog a inius pa adinimus i ki us a ejus. Tokia a anka paleng ina suku os mo ologijos aikymą ašybai ik in i i leidžia analizės ezul a us leng iau aiky i ėlesniuose eks o analizės e apuose (sin aksė, į a din ų esybių a pažinimas, indeksa imas i paieška). Naujai suku o mo ologinio analiza o iaus ikslumas y a apie 98 p oc., . y. idu iniškai 98 iš 100 žodžių mo ologinis analiza o ius in e p e uoja eisingai (Kapočiū ė-Dzikienė i k . 2017). Likusius 2 p oc. nea pažin ų žodžių dažniausiai suda o ašybos klaidos, ki ų kalbų žodžiai ( a dai, pa a dės, azių ci a os i pan.), ne eik ini, neno miniai žodžiai i aisyklingi žodžiai, ku ie nebu o į auk i į lemų są ašą. 3. PRAKTINIS TAIKYMAS 3.1. VDU Sin aksinės-seman inės analizės sis ema Naujai suku a lie u ių kalbos mo ologija Hunspell pla o moje 2011–2015 me ais bu o p i aiky a VDU Sin aksinės-seman inės analizės sis emoje 13 ašybai i g ama ikai ik in i, mo ologinei i sin aksinei eks o analizei a lik i (ž . 7 pa .). Mo ologinė analizė bu o papildy a miš iu s a is iniu- aisykliniu iena eikšminimu (paslėp as Ma ko o modelis, pagal auksinį s anda ą ap oksimuo os ig amų ikimybės, Vi e bio algo i mas, kelios išim ys). Plačiau apie iena eikšminimą mo ologinėje analizėje ašoma Ju gi os Kapočiū ės-Dzikienės, E ikos Rimku ės i Loïc Boizou publikacijoje (2017). 13 P ieiga in e ne e: h p://seman ika.l /Syn a icAndSeman icAnalysis/Analysis. Daik a a džiai (bend iniai) (41820) Daik a a džiai ( ik iniai) (73697) Būd a džiai (14552) Skai a džiai (153) Į a džiai (53) Veiksmažodžiai (34662) P ie eiksmiai (3850) Ki i (2290) VIRGINIJUS DADURKEVIČIUS. Lie u ių kalbos mo ologija a i ojo kodo hunspell pla o moje |9 BENDRINĖ KALBA 90 (2017) www.bend inekalba.l ISSN 2351-7204 7 PAV. Hunspell lie u ių kalbos mo ologijos aikymas VDU Sin aksinės-seman inės analizės sis emoje 3.2. LRS eisės ak ų egis o paieškos sis ema 2011–2013 me ais lygiag ečiai su naujos lie u ių kalbos mo ologijos kū imu yko jos p i aikymas Teisės ak ų egis o paieškos sis emoje LRS kancelia ijoje 14 . Pap as ai okiose sis emose da p ieš ykdan pi mąją paiešką isi dokumen ai y a indeksuojami lemuojan , . y. isi dokumen ų žodžiai keičiami į jų lemas i įsidėmima, ku kokia lema bu o. P ieš ykdan paieškos užklausą jos eks as i gi lemuojamas okiu pačiu būdu, odėl ėliau andama ne ik užklausoje už ašy a žodžio o ma, be i be ku i ki a o žodžio o ma, esan i a p ieškomų dokumen ų. Kadangi šioje sis emoje nebu o galima iesiogiai panaudo i .dic, .a duomenų, sis emai eikalingas o iginalus o ma as ( eks inis ailas, ku io kiek iena eilu ė y a [lema] [kalbos dalis]  [ o mų są ašas]) bu o gene uojamas iš anksčiau minė o pi minio mo ologijos ap ašo. No s iš šio ap ašo galima gene uo i apie 15 mln. eo iškai galimų žodžių o mų, dėl paieškos sis emos idinių ibojimų iš jų bu o panaudo os ik apie 1 mln. pačių dažniausiųjų. Toks sp endimas pasi eisino, paieška eikia gana sklandžiai i naudojama iki šiol (ž . 8 pa .). 14 P ieiga in e ne e: h ps://www.e- a .l.