ERK'2019, Portorož, 276-279 276 SloTex odprtokodno ogrodje za procesiranje slovenskega naravnega jezika Klara Eva Kukoviˇ ciˇ c 1 , Sonja Debevec 1 , Mark Juvan 2 , Jakob Bernik 2 , Aljaž Trebušak 3 , Peter ˇ Cebašek 3 , Simon Dobrišek 3 , Tadej Justin 4 1 Filozofska fakulteta, Aškerˇ ceva cesta 2, 1000 Ljubljana 2 Fakulteta za raˇ cunalništvo in informatiko, Veˇ cna pot 113, 1000 Ljubljana 3 Fakulteta za elektrotehniko, Tržaška 25, 1000 Ljubljana 4 Medius d.o.o, Tehnološki park 21, 1000 Ljubljana E-pošta: tadej.justin@medius.si SloTex - Open Source Framework for Slovenian Natural Language Processing High-tech companies nowadays use language technolo- gies every day. Algorithms are embedded in applica- tions that enable the processing of large amounts of data. There are many open source frameworks on the market that enable the use of language technologies for many languages. Since Slovene has a relatively small number of speakers and consequently lower market relevance, it is often neglected. In Slotex project we developed an open-source language-technology web framework that en- ables natural language processing for use in enterprise environments. The main goal of the project is not only to develop a reliable web-based system that implements open source frameworks such as OpenNLP and CoreNLP , but also to develop initial language models for Slove- nian language. In this paper we present evaluation of the Slovenian Name Entity Recognition tagging for only person tags and compare it to our own implemented so- lution based on Levenshtein distance and external lexi- cons. Proposed solution more than doubles true positive entities, but also significantly increases false negatives. 1 Uvod Procesiranje naravnega jezika se dandanes uporablja v že skoraj vsaki spletni aplikaciji, platformi ali v spletnih is- kalnikih. Tako skoraj vsak uporabnik spleta nevede upo- rablja vsaj nekaj algoritmov za procesiranje naravnega jezika. Obsežna zgodovina podroˇ cja procesiranja narav- nega jezika (ang. Natural Language Processing, NLP) je narekovala razvoj razliˇ cnih programskih orodij in knji- žnic, ki omogoˇ cajo uporabo najbolj razširjenih operacij in algoritmov. Med najbolj znanimi so Natural Langu- age Toolkit, NLTK [1], TextBlob [2], CoreNLP [3] in OpenNLP [4]. Funkcionalnosti, ki jih v doloˇ cenem ob- segu omogoˇ cajo tovrstne knjižnice, so tokenizacija, le- matizacija, korenjenje, oblikoskladenjsko oznaˇ cevanje, klasifikacija, izdelava stavˇ cnih dreves, izdelava n-gramov, dostop do korpusov besedil, funkcije za iskanje vzorcev v besedilu, štetje frekvenc besed. Veˇ cina navedenih funk- cionalnosti je odvisnih od jezika. ˇ Ce želimo uporabiti orodja in algoritme tudi za slovensko besedilo, je po- trebno v veˇ cini primerov najprej pridobiti dobro oznaˇ cen korpus slovenskega besedila. Na podlagi oznaˇ cb lahko zgradimo slovensko podporo ali jezikovne modele, ki jih lahko kasneje uporabimo pri obdelavi poljubnega sloven- skega besedila. Programske knjižnice se v raziskovalni skupnosti uporabljajo kot programska ogrodja, ki jih lahko relativno enostavno prilagodimo za specifiˇ cen jezik ob predpostavki, da razpolagamo z oznaˇ cenim korpusom. No- bena od zgoraj navedenih programskih knjižnic žal nima neposredno vgrajene podpore za slovenski jezik, zato mo- ramo vsako pred uporabo v slovenšˇ cini prilagoditi in do- datno nauˇ citi jezikovne modele za specifiˇ cno funkcional- nost. Klub temu vseeno obstaja kar nekaj knjižnic, ki so bile razvite v okviru razliˇ cnih raziskovalnih projektov in so prilagojene izkljuˇ cno za delo v slovenskem jeziku. Ena takih je sistem Obeliks, ki omogoˇ ca lematizacijo in ozna- ˇ cevanje oblikoskladenjskih oznak za slovenska besedila [5]. Nekaj programske opreme s podporo za slovenski jezik pa je ponudil tudi projekt Sporazumevanje v slo- venskem jeziku (SSJ). V tem prispevku opisujemo naša prizadevanja pri ra- zvoju odprtokodnega ogrodja za procesiranje naravnega jezika, ki je primarno namenjeno za uporabo v poslov- nih okoljih in omogoˇ ca uporabniku razvoj lastnih jezi- kovnih modelov za slovenski jezik. Predstavimo pa tudi razvoj algoritma za oznaˇ cevanje oseb v slovenskem be- sedilu in uspešnost primerjamo z implementiranim siste- mom v ogrodju OpenNLP [4]. Predstavljeni algoritem temelji na podlagi najmanjše razdalje med zunanjim le- ksikonom imen in Levenshteinovo razdaljo. S tem prin- cipom lahko omogoˇ cimo tudi v neoznaˇ cenem besedilu is- kanje imenskih oznak oseb, kar je še posebej uporabno, ˇ ce jezik, v katerem gradimo bolj napredne modele za ozna- ˇ cevanje imenskih entitet, nima obsežnega, roˇ cno oznaˇ ce- nega korpusa. 1.1 SloTex NLP Trenutno je na trgu že veˇ c priznanih odprtokodnih ogro- dij, ki omogoˇ cajo uporabo jezikovnih tehnologij v enem od svetovnih jezikov. Slovenšˇ cina je zaradi relativno majh- nega števila govorcev in poslediˇ cno manjše tržne relevan- tnosti pogosto zapostavljena. Z realizacijo aplikacije in vkljuˇ citvijo priznanih ogrodij za procesiranje naravnega jezika pa smo tudi za slovenski jezik realizirali jezikovne modele, ki omogoˇ cajo njihovo neposredno uporabo za razˇ clenitev besedil, oznaˇ cevanje besednih vrst in ozna- ˇ cevanje imenskih entitet. ˇ Ceprav pridobljeni rezultati ne 277 presegajo najbolj naprednih sistemov, ki omogoˇ cajo pro- cesiranje tudi slovenskega naravnega jezika, je kljuˇ cen prispevek pri projektu aplikacija, ki jo lahko zlahka upo- rabimo tudi v poslovnih okoljih in omogoˇ ca hitro in eno- stavno obdelavo podatkov. V okviru projekta “Po kreativni poti do znanja” (PKP), smo sestavili interdisciplinarno skupino šestih študentov/- k, dva študenta Fakultete za elektrotehniko v Ljubljani, dva študenta Fakultete za raˇ cunalništvo in informatiko v Ljubljani in dve študentki Filozofske fakultete v Lju- bljani. Ideja projekta je bila primarno udeležene študente in kasneje tudi širšo javnost navdušiti nad uporabo in ra- zvojem aplikacij, povezanih z jezikovnimi tehnologijami. Projekt smo naslovili “Razvoj slovenskih jezikovno teh- noloških rešitev za uporabo v poslovnih informacijskih sistemih” z akronimom SloTex. Cilj projekta je realizirati odprtokodno aplikacijo, ki ima prilagojene funkcije za procesiranje naravnega jezika za slovenšˇ cino in je uporabna tudi v poslovnih aplikaci- jah. V okviru projekta smo zasnovali aplikacijo na pod- lagi mikrostoritvene arhitekture, ki omogoˇ ca enostavno procesiranje podatkov, njihov pregled, uˇ cenje novih mo- delov in njihovo vrednotenje kar preko spletnega brskal- nika. Slika 1 prikazuje osnovno zgradbo mikrostoritvene arhitekture. Slika 1: Mikrostoritvena arhitektura sistema SloTex NLP. Aplikacijo smo razvili kot prosto dostopno orodje in jo objavili na spletu v treh projektih: “SloTex NLP core” 1 , “SloTex NLP web” 2 in “SloTex NLP entity” 3 . Procesira- nje besedila se izvaja neposredno v zaledni komponenti “SloTex NLP core”, ki omogoˇ ca procesiranje obsežnej- ših besedil, ali pa samo stavkov, preko spletnih servisov na podlagi REST priporoˇ cil in vmesnega pomnilniškega strežnika Redis. “SloTex NLP entity” pa je komponenta, ki vsebuje loˇ ceno hrambo podatkovnih modelov, ki jih uporablja aplikacija. Spletni uporabniški vmesnik je za- jet v projektu SloTex NLP web”, ki združuje razliˇ cna je- zikovna orodja za obdelavo slovenskega jezika. Uporabniški vmesnik sestoji iz dveh delov, in sicer Administracije (Administration) in Uˇ cenja (Train). Ad- ministracijski del uporabniku omogoˇ ca pregled že obde- lanih besedilnih dokumentov, oznaˇ cenih entitet in njihove 1 https://github.com/MediusInc/slotex-nlp-core 2 https://github.com/MediusInc/slotex-nlp-web 3 https://github.com/MediusInc/slotex-nlp-entity podrobnejše podatke ter podatke o tem, koliko dokumen- tov je še v ˇ cakalni vrsti ter koliko jih je namenjenih za obdelavo. Poslovni uporabniki priˇ cakujejo, da lahko v sistem vnesejo celotne dokumente, kot izhod pa prido- bijo oznaˇ cene entite v besedilu z vnaprej podanim šifran- tom. Tako smo tudi zasnovali sistem, ki omogoˇ ca vnos celotnih dokumentov v obliki (.doc ali .txt), ki jih upo- rabnik lahko s pomoˇ cjo enostavnega programa ali sple- tnega vmesnika naloži v sistem. Glede na vnaprej do- loˇ cen šifrant zaledna aplikacija oznaˇ ci besedilo in ponudi oznaˇ ceno besedilo uporabiku za prevzem. Uporabnik ima možnost tudi pregledati dodatno analizo, ki nudi pregled pojavnic s pripadajoˇ co besedno vrsto, lemo in oznaˇ ceno entiteto. Omogoˇ ceno je tudi roˇ cno urejanje vseh avtomat- sko doloˇ cenih kategorij. ˇ Ce si uporabnik želi, jih lahko pregleda in roˇ cno uredi oz. popravi. Tako popravljen oz. oznaˇ cen dokument lahko tudi vkljuˇ ci v uˇ cno množico in ponovno nauˇ ci jezikovni model. S tem lahko sam pri- pomore k izboljšanju natanˇ cnosti avtomatsko oznaˇ cenih kategorij. Sistem tako omogoˇ ca gradnjo modelov na ob- stojeˇ cih zbirkah, obenem pa nudi uporabniku izboljšave modelov tudi z lastnimi oznaˇ cenimi dokumenti. Slika 2 prikazuje uporabniški vmesnik za urejanje lastnega bese- dila. Slika 2: Prikaz urejanje in oznaˇ cevanja dokumentov. 2 Metodologija oznaˇ cevanja imenskih entite Za doseganje dobrih rezultatov je kljuˇ cnega pomena ob- sežna podatkovna baza. Po pregledu že obstojeˇ cih oro- dij za slovenšˇ cino, med katerimi so najvidnejši RELDI- tagger [6] in Obeliks, smo ugotovili, da se za vredno- tenje sistemov uporabljajo predvsem besedilni korpusi, ki so bili razviti za potrebe projekta Jezikoslovno ozna- ˇ cevanje slovenskega jezika (JOS) in Sporazumevanje v slovenskem jeziku (SS). Kot šolski besedilni korpus slo- venskega jezika se v zadnjem ˇ casu uporablja predvsem SSJ500k in Sloleks. Ker smo želeli pridobiti ˇ cim bolj primerljive podatke, smo se odloˇ cili, da za vrednotenje razvitega algoritma oznaˇ cevanja osebnih imenskh entite uporabimo korpus SSJ500k. To je roˇ cno pregledan kor- pus s približno pol milijona besed in je dostopen pod li- cenco Creative Commons za uˇ cenje modelov za oznaˇ ce- vanje entitet. Prepoznavanje imenskih entitet vkljuˇ cuje proces iden- 278 tifikacije imenske entitete iz besedila in klasifikacijo teh entitet v vnaprej doloˇ cene razrede razvršˇ canja [7]. Be- sedilni korpusi za ta namen ponavadi predvidevajo štiri osnovne razrede razvršˇ canja: osebe, lokacija, organiza- cija in nedoloˇ ceno. Ta prispevek se osredotoˇ ca le na raz- poznavanje kategorije oseb v slovenskem jeziku. Za pro- ces identifikacije imenskih entitet se v najsodobnejših sis- temih uporabljajo predvsem postopki strojnega uˇ cenja, kot so, na primer, skriti Markovi modeli, pogojna na- kljuˇ cna polja in principi maksimalne entropije (ang. maxi- mum entropy) [8]. Naštete metode temeljijo na nadzoro- vanem uˇ cenju, za kar je potreben korpus besedil. Drugi sistemi pa za prepoznavanje imenskih entitet uporabljajo tudi eksplicitno predznanje, ki temelji na leksikonih imen. Ker pa tovrstni sistemi ne zaznajo entitete, ˇ ce se ta ne nahaja v leksikonih, se jih v praksi pogosto kombinira s sistemom, ki je osnovan na strojnem uˇ cenju [9]. V pri- spevku se nismo posvetili optimizaciji obstojeˇ cih algorit- mov ali specifiˇ cnih prilagoditev za slovenski jezik, paˇ c pa smo si zastavili vprašanje, na kakšen naˇ cin lahko ponu- dimo obstojeˇ cim algoritmom avtomatsko oznaˇ cena bese- dila. Ta besedila pa so kasneje lahko uporabljena v uˇ cni množici pri nadzorovanem uˇ cenju. Pristop temelji na uporabi leksikonov in uporabi kla- siˇ cne metriˇ cne razdalje, ki se uporablja za primerjavo med nizi Levenshteinove razdalje [10]. Razdaljo med dvema nizoma tako doloˇ cimo s številom minimalnih operacij, ki jih potrebujemo za preoblikovanje enega niza v drugega, pri ˇ cemer so operacije definirane kot vrivanje, brisanje in zamenjave znakov, operacije so na primeru prikazane v tabeli 1. Veˇ cja vrednost razdalje ponazarja veˇ cje razlike, manjša pa veˇ cjo podobnost med primerjalnima nizoma. Tabela 1: Primer možnih operacij za izraˇ cun Levenshteinove razdalje. Operacija Niz 1 Niz 2 vrivanje Marko Markov brisanje Marko Mark zamenjava Marko Marka Zasnovali smo algoritem, ki najprej normalizira in to- kenizira besedilo. Vsako pojavnico nato primerja z imeni s seznama imen, ki ga doloˇ cimo kot parameter algoritma. Za potrebe tega prispevka smo seznama imen in priimkov pridobili iz registra imen Statistiˇ cnega urada Republike Slovenije. Seznam vsebuje 4175 moških in 4268 ženskih imen in 30667 priimkov. Algoritem na podlagi Levenshteinove razdalje za vsa- ko besedo iz besedila doloˇ ci razdaljo med pojavnico in imeni s seznama. ˇ Ce je razdalja med pojavnico in ime- nom s seznama manjša ali enaka 1, predpostavimo, da imata besedi isto lemo, poslediˇ cno pa, da je pojavnica tudi imenska entiteta, saj leksikon vsebuje le spisek imen- skih entitet. Pri preizkusih smo ugotovili, da lahko pri izraˇ cunu Levenshteinove razdalje utežimo zaˇ cetek vsake pojavnice, saj se pri pregibanju besed v slovenšˇ cini spre- minjajo le konˇ cnice. Le v nekaj redkih primerih pa tudi koreni besed. ˇ Ce je algoritem torej naletel na pojavnico “Marka”, je bila razdalja do imena ‘Marko” zaradi uteži manjša od 1, saj je bila obtežena osnova imena, torej “Mark”. Poslediˇ cno je algoritem pojavnico prepoznal kot imensko entiteto s seznama. Privzet algoritem za raˇ cunanje Levenshteinove razda- lje dovoljuje menjavo najveˇ c dveh zadnjih ˇ crk. V slo- venskem jeziku pa je pri pregibanju možna menjava tudi veˇ cjega števila ˇ crk. Zato smo implementirali izboljšavo, ki temelji na upoštevanju pogostih konˇ cnic pri pregibanju samostalnikov in svojilnih pridevnikov. Ustvarili smo se- znam vseh možnih konˇ cnic, ki se pojavljajo v slovenskem jeziku pri pregibanju samostalnikov ženskega, moškega in srednjega spola ter pri pregibanju svojilnih pridevni- kov. Seznam konˇ cnic smo pridobili iz oznaˇ cenega obli- koslovnega slovarja Sloleks, ki je oznaˇ cen z oznakami, napisanimi v okviru projekta MULTEXT-East, pri ˇ cemer se oznake samostalnikov zaˇ cenjajo s ˇ crko S, pridevniki pa s ˇ crko P. Lastno ime “Marko” bi bilo torej v Slole- ksu oznaˇ ceno s Slmei, kar pomeni, da je Marko samo- stalnik (s), lastno ime (l), moškega spola (m), v ednini (e) in se v dotiˇ cnem primeru pojavi v imenovalniku (i). V slovarju so s tovrstnimi oblikoskladenjskimi oznakami oznaˇ cene vse pojavnice, zato smo napisali preprost pro- gram, ki nam je iz besedilnih podatkov izlušˇ cil vsa lastna imena in svojilne pridevnike. Iz izlušˇ cenih podatkov smo nato pridobili vse možne konˇ cnice in jih uporabili pri do- loˇ canju imenskih entitet z Levenshteinovo razdaljo. Upo- rabljene konˇ cnice so prikazane v tabeli 2. Tabela 2: Izlušˇ cene konˇ cnice iz korpusa Slolex za samostalnike in svojilne pridevnike. Samostalniki Svojilni pridevniki -a -e -em -ema -es -ev -ga -h -i -ih -ja -je -jem -jema -jev -ji -jih -jo -ju -m -ma -mi -mu -om -oma -ov -ta -te -tem -tema -tev -ti -tih -tom -toma -tov -tu -u -v -a -e -ega -em -emu -i -ih -im -ima -imi -o Konˇ cnice smo uporabili za pravilno oznaˇ cevanje pre- gibnih oblik imen in priimkov, pri katerih pride do me- njav treh ali štirih ˇ crk konˇ cnic na koncu niza. ˇ Ce ima po- javnica veljavno konˇ cnico za ime ali priimek v tabeli 2, se vrednost konˇ cne Levenshteinove razdalje zmanjša za trimestno konˇ cnico 1,8, za štirimestne konˇ cnice pa 3,8. S tem smo omogoˇ cili menjavo treh in celo štirih ˇ crk v primerjalnih besedah. To dovoljuje detekcijo pregibnih oblik, pri katerih pride do menjave veˇ cjega števila ˇ crk, saj privzeti algoritem za raˇ cunanje Levenshteinove raz- dalje dovoljuje menjavo najveˇ c dveh zadnjih ˇ crk. 3 Rezultati Predlagan oznaˇ cevalnik imenskih entitet z oznako “ose- bašmo vrednotili na korpusu slovenskega besedila SSJ500k 279 z 10-kratnim navzkrižnim uˇ cenjem. Na vnaprej nakljuˇ cno izbranih desetih delih besedilnega korpusa SSJ500k, na- menjenih za uˇ cenje in vrednotenje, smo izdelali in vre- dnotili oznaˇ cevalnik imenskih entitet v programskem ogro- dju OpenNLP (TokenNameFinder). Z ogrodjem smo tako zgradili 10 modelov za oznaˇ cevanje imenskih entitet in jih vrednotili na pripadajoˇ cih testnih besedilih. Testne podatke (celotno zbirko SSJ500k) smo uporabili tudi za oznaˇ cevanje imenskih entitet s predlaganim algoritmom na podlagi Levenshteinove razdalje in leksikona imen in priimkov. Rezultate poroˇ camo z metriko za vrednotenje: na- tanˇ cnost, priklic in F1, ki so pogosto predpisane metrike ob razliˇ cnih tekmovanjih [11]. Tabela 3: Rezulati vrednotenja sistema za oznaˇ cevanje imen- skih entite Sistem Natanˇ cnost Priklic F 1 OpenNLP 0;466 0;169 0;248 Predlagan sistem 0;173 0;457 0;251 Tabela 3 prikazuje primerljive rezultate pri oznaˇ ceva- nju imenskih entitet oseb v besedilu. S predlaganim ozna- ˇ cevalnikom smo moˇ cno poveˇ cali število napaˇ cno oznaˇ ce- nih oseb, obenem pa smo poveˇ cali tudi število pravilno oznaˇ cenih oseb v primerjavi s privzetim oznaˇ cevalnikom za razpoznavanje besednih entitet v ogrodju OpenNLP, ki oznaˇ ci precej manj oseb pravilno, vendar ima tudi precej manjše število napaˇ cno oznaˇ cenih oseb v besedilu. 4 Zakljuˇ cek V prispevku smo predstavili odprtokodno aplikacijo za procesiranje naravnega jezika, ki ima tudi integrirano slo- vensko jezikovno podporo in uporabnikom ponuja mo- žnosti dodatnega uˇ cenja jezikovnih modelov in dostop do sodobnih funkcionalnosti ogrodja OpenNLP. V prihodno- sti se nadejamo še izboljšati uporabnost razvite aplikacije ter dodati še kakšno obstojeˇ ce ogrodje za procesiranje na- ravnega jezika z vkljuˇ ceno slovensko jezikovno podporo. Poleg spletne aplikacije za enostavno uporabo jezi- kovnih tehnologij s slovensko jezikovno podporo, name- njene za uporabo v poslovnih okoljih, smo se posvetili rezultatom udejanjenega algoritma za oznaˇ cevanje oseb s pomoˇ cjo Levenshteinove razdalje ter leksikona imen in priimkov, pridobljenem na Statistiˇ cnem uradu Republike Slovenije. Vrednotenje algoritma smo primerjali z izde- lavo osnovnega oznaˇ cevalnika imenskih entitet z ogrod- jem OpenNLP in pridobili primerljive rezultate. Ugota- vljamo, da smo pri oznaˇ cevanju oseb na korpusu sloven- skega besedila SSJ500k s predlaganim algoritmom ozna- ˇ cili 2,7-krat veˇ c pravilno oznaˇ cenih oseb, obenem pa smo tudi poveˇ cali število napaˇ cno oznaˇ cenih besed kar za fak- tor 11,2-krat. Predstavljen algoritem pa v primerjavi z algoritmom OpenNLP za oznaˇ cevanje imenskih entitet krasi dejstvo, da za oznaˇ cevanje oseb v slovenskem besedilu ne po- trebujemo obsežnega roˇ cno oznaˇ cenega besedilnega kor- pusa, paˇ c pa le prosto dostopen leksikon imen. Rezultati so pokazali, da se algoritem lahko primerja tudi z bolj na- prednimi algoritmi, osnovanimi na statistiˇ cnem modelira- nju, kot to velja za ogrodje OpenNLP. Pomanjkljivost, ki se jo zaznavamo, pa je, da se predlagan algoritem ne za- veda besedilnega konteksta, zato je še vedno moˇ cno pod- vržen oznaˇ cevanju napaˇ cnih besed. ˇ Ce nam bo v prihodnosti dodatno uspelo izboljšati oznaˇ cevanje napaˇ cno oznaˇ cenih oseb, bo algoritem ne- dvomno uporaben za avtomatsko oznaˇ cevanje oseb v be- sedilu. V kombinaciji z naprednejšimi algoritmi osnova- nimi na nadzorovanem stojnem uˇ cenju za razpoznavanje imenskih entitet pa lahko dodatno pripomore k izboljša- nju natanˇ cnosti. Zahvala Ta prispevek je rezultat interdisciplinarne skupine projekta Slo- Tex, katerega financiranje je podprl razpis Po kreativni poti do znanja 2016-2020 4 . Literatura [1] E. Loper and S. Bird, “Nltk: the natural language toolkit,” arXiv preprint cs/0205028, 2002. [2] S. Loria, P. Keen, M. Honnibal, R. Yankovsky, D. Karesh, E. Dempsey, et al., “Textblob: simplified text processing,” Secondary TextBlob: Simplified Text Processing, 2014. [3] C. Manning, M. Surdeanu, J. Bauer, J. Finkel, S. Bethard, and D. McClosky, “The stanford corenlp natural language processing toolkit,” in Proceedings of 52nd annual mee- ting of the association for computational linguistics: sy- stem demonstrations, pp. 55–60, 2014. [4] J. Baldridge, “The opennlp project,” URL: http://opennlp. apache. org/index. html,(accessed 2 February 2012), p. 1, 2005. [5] M. Di Batista, Oznaˇ cevanje imenskih entitet v pravnih be- sedilih. PhD thesis, Univerza v Ljubljani, 2013. [6] N. Ljubeši´ c and T. Erjavec, “Corpus vs. lexicon supervi- sion in morphosyntactic tagging: the case of slovene,” in Proceedings of the tenth international conference on lan- guage resources and evaluation (LREC 2016), pp. 1527– 1531, 2016. [7] J. Flisar and M. Pavlinek, “Wikipedija kot vir znanja za iskanje imenskih entitet,” Elektrotehniski Vestnik, vol. 84, no. 3, p. 108, 2017. [8] D. Fišer, T. Erjavec, A. Z. Vitez, and N. Ljubešid, “Janes se predstavi: metode, orodja in viri za nestandardno pisno spletno slovenšˇ cino,” V: Jezikovne tehnologije: zbornik, vol. 17, pp. 56–61, 2014. [9] T. Štajner, T. Erjavec, and S. Krek, “Razpoznavanje imen- skih entitet v slovenskem besedilu,” Slovenšˇ cina 2.0: em- pirical, applied and interdisciplinary research, vol. 1, no. 2, pp. 58–81, 2013. [10] V . I. Levenshtein, “Binary codes capable of correcting de- letions, insertions, and reversals,” in Soviet physics do- klady, vol. 10, pp. 707–710, 1966. [11] E. F. Sang and F. De Meulder, “Introduction to the conll- 2003 shared task: Language-independent named entity re- cognition,” arXiv preprint cs/0306050, 2003. 4 http://www.sklad-kadri.si/si/razvoj-kadrov/po-kreativni-poti-do- znanja-pkp/