Upload
others
View
1
Download
0
Embed Size (px)
Citation preview
SVEUČILIŠTE U ZAGREBU
FAKULTET ELEKTROTEHNIKE I RAČUNARSTVA
STROJNO POTPOMOGNUTO INDEKSIRANJE
DOKUMENATA STUDENTI FER-A ZA E-HRVATSKU U E-EUROPI
http://textmining.zemris.fer.hr/rektor
AUTORI Mladen Kolar, apsolvent studija računarstva
Frane Šarić, apsolvent studija računarstva
Igor Vukmirović, apsolvent studija računarstva
MENTOR prof. dr. sc. Bojana Dalbelo-Bašić,
Zavod za elektroniku, mikroelektroniku, računalne i inteligentne sustave
Zagreb, travanj 2006.
Posebno se zahvaljujemo prof. dr. sc. Bojani Dalbelo-Bašić za pruženu priliku za
sudjelovanje na ovom projektu. Takoñer, zahvaljujemo joj za svu pruženu pomoć
i podršku, kako tokom samog razvoja sustava, tako i tokom pisanja ovog rada.
Zahvaljujemo se na pomoći dipl. ing. Janu Šnajderu koji je autor sustava za
morfološku normalizaciju hrvatskog jezika, bez kojega ne bi bilo moguće
napraviti SPID.
Zahvaljujemo se i dr. Ralfu Steinbergeru iz Zajedničkog istraživačkog centra
Europske komisije u Ispri, Italija za sugestije pri izradi sustava.
Autori rada
Sustav za poluautomatsko indeksiranje dokumenata
1
PREDGOVOR
U radu je opisan sustav strojno potpomognutog indeksiranja dokumenata (SPID),
nastao kao rezultat našeg rada u interdisciplinarnom timu Fakulteta elektrotehnike i
računarstva, Filozofskog fakulteta Sveučilišta u Zagrebu, Hrvatske informacijsko-
dokumentacijske referalne agencije i Zajedničkog istraživačkog centra Europske
komisije u Ispri, Italija. Rad je započeo u okviru i-projekta „Text mining system –
Sustav za automatsko indeksiranje, kategorizaciju i semantičko pretraživanje teksta“
Ministarstva znanosti, obrazovanja i športa (2003-082).
Primarna zadaća sustava jest olakšavanje postupka indeksiranja službenih
dokumenata Republike Hrvatske deskriptorima iz Eurovoc pojmovnika (EUROpean
VOCabulary), a u svrhu olakšavanja računalne pretrage i dohvata dokumenata.
Korištenje upravo Eurovoc pojmovnika, službenog pojmovnika Europskih zajednica,
pa tako i Europske unije, jedan je od segmenata procesa usklañivanja državne uprave
Republike Hrvatske sa standardima Europske unije. Iz tog razloga ovaj sustav
vidimo kao naš skromni doprinos približavanju Hrvatske standardima Europske
unije, pa otuda i podnaslov rada.
Cjelovit rad, kao i sam sustav nalaze se na Internetu, na adresi
http://textmining.zemris.fer.hr/rektor
Sustav za poluautomatsko indeksiranje dokumenata
2
SADRŽAJ
Predgovor ............................................................................................................................................... 1 Sadržaj ................................................................................................................................................... 2 1. Uvod .............................................................................................................................................. 3 2. Dubinska analiza teksta i indeksiranje dokumenata pojmovnikom Eurovoc .......................................... 5
2.1. Dubinska analiza podataka i teksta ........................................................................................... 5 2.2. Automatsko indeksiranje dokumenata ....................................................................................... 5 2.3. Pojmovnik Eurovoc .................................................................................................................. 6 2.4. Osnovni pojmovi računalne obrade prirodnog jezika .................................................................. 7 2.5. Kompleksnost i morfološko bogatsvo hrvatskog jezika ............................................................... 9
3. Opis sustava SPID ......................................................................................................................... 10 3.1. Srodni radovi ......................................................................................................................... 10 3.2. Ulaz u sustav ........................................................................................................................ 11 3.3. Poluautomatski Eurovoc indeksator(PEI) ................................................................................. 13
3.3.1. Statistika različnica i lema .............................................................................................. 13 3.3.2. Statistika n-grama ......................................................................................................... 16 3.3.3. Identifikacija Eurovoc pojmova u tekstu .......................................................................... 17 3.3.4. Pridjeljivanje deskriptora ................................................................................................ 19
3.4. Izlaz iz sustava ...................................................................................................................... 19 3.5. Preglednik Eurovoc pojmovnika (PEP) ..................................................................................... 20
3.5.1. Hijerarhijski pregled ....................................................................................................... 20 3.5.2. Pretraživanje ................................................................................................................. 21
4. Implementacija ............................................................................................................................. 23 4.1. Vizualna rekonstrukcija dokumenta ......................................................................................... 23 4.2. Unutarnja struktura ............................................................................................................... 24 4.3. Generiranje vizualne rekonstrukcije na temelju unutarnje strukture .......................................... 27 4.4. Ekstrakcija kolokacija ............................................................................................................. 29
4.4.1. Rješenje problema ekstrakcije kolokacija ........................................................................ 29 4.4.2. Prijenos na SPID ........................................................................................................... 30
4.5. Podržani zapisi Eurovoc pojmovnika ........................................................................................ 32 4.6. Implementacija lematizacije ................................................................................................... 33 4.7. Ekstrakcija Eurovoc deskriptora iz dokumenta ......................................................................... 37
4.7.1. Formalni opis ekstrakcije ................................................................................................ 37 4.7.2. Greške kod ekstrakcije deskriptora ................................................................................. 39 4.7.3. Implementacija ekstrakcije ............................................................................................. 39 4.7.4. Povećanje broja nañenih deskriptora nakon korištenja lematizacije ................................... 42
5. Višejezičnost sustava SPID ............................................................................................................. 43 6. Zaključak ...................................................................................................................................... 46 7. Literatura ...................................................................................................................................... 47 O studentima ........................................................................................................................................ 49 Prilog .................................................................................................................................................... 50
Sustav za poluautomatsko indeksiranje dokumenata
3
1. UVOD
U današnje vrijeme sveprisutnih računala, neizmjernog prostora za pohranu podataka
te sveprisutnog Interneta, informacija prestaje biti rijetko bogatstvo već sve više
postaje neizbježan resurs s kojim se mora učinkovito raspolagati.
Pravni akti, kao što su zakoni, propisi, odluke i slično, odličan su primjer.
Zakonodavac i pravne institucije ih generiraju u vrlo velikim količinama, a na brigu
nesretnom malom broju pojedinaca ostavljeno je njihovo čuvanje, pretraga i
učinkovit pristup. Takav problem rješava se postupkom sadržajnog označavanja
dokumenata ili indeksiranja u kojem se svakom dokumentu pridjeljuje skup
indeksnih pojmova ili deskriptora iz kontroliranog rječnika, tzv. pojmovnika.
Pridijeljeni deskriptori služe kao svojevrsne ključne riječi i omogućuju brzu i
učinkovitu računalnu pretragu te pristup dokumentima.
Na žalost, sam proces inicijalnog pridjeljivanja deskriptora i dalje moraju obavljati
ljudi, ručnim pregledom svakog novogeneriranog dokumenta. Očito, postoji potreba
da se ljude oslobodi ovog mukotrpnog, sporog i, prije svega, skupog posla.
Prepoznavši izazov i odgovorivši na njega, skupina mladih ljudi prionula je na posao
izrade sustava za automatiziranje procesa indeksiranja dokumenata.
Sam povod izradi sustava dala je Hrvatska informacijsko-dokumentacijska referalna
agencija (Hidra), agencija Vlade Republike Hrvatske čija je osnovna zadaća
prikupljanje, obrada i osiguravanje dostupnosti javnih službenih informacija
Republike Hrvatske.
Računalnu realizaciju projekta na sebe je uzeo tim sa Zavoda za elektrotehniku,
mikroelektroniku, računalne i inteligentne sustave Fakulteta za elektrotehniku i
računarstvo Sveučilišta u Zagrebu, dok je za lingvistička pitanja bio odgovoran tim
sa Zavoda za lingvistiku Filozofskog fakulteta Sveučilišta u Zagrebu.
Sustav je razvijan od rujna 2004. godine do travnja 2006. godine, a primarna ideja
bila je razviti sustav koji će olakšati Hidri proces indeksiranja službenih dokumenata
Republike Hrvatske deskriptorima iz Eurovoc pojmovnika. U prvoj fazi projekta
sustav je uspješno razvijen i predan na korištenje. Već su prve reakcije vrlo pozitivne
i zaključeno je da je proces indeksiranja dokumenata znatno ubrzan, iako se i dalje
većina posla oslanja na ljude, indeksatore, koji obavljaju proces indeksiranja.
U drugoj fazi projekta, koja je u trenutku pisanja ovog rada već počela, planirana je
izrada u potpunosti automatskog sustava metodama strojnog učenja, značajno veći i
u konačnici korisniji i značajniji projekt koji će, nadamo se, biti s uspjehom okončan.
Sustav za poluautomatsko indeksiranje dokumenata
4
Kao tri studenta iz tima sa Fakulteta elektrotehnike i računarstva, u ovom radu
prikazat ćemo rezultat prve faze projekta – sustav za strojno potpomognuto
indeksiranje dokumenata (SPID).
Neke od značajki sustava jesu specifično razvijena unutarnja struktura, proces
leksičke i statističke obrade učitanog dokumenta, te implementirani algoritmi za
ekstrakciju n-grama i Eurovoc pojmova u učitanom dokumentu.
Jedna od bitnih značajki sustava jest i njegova višejezičnost. Naime, već u ovako
ranoj fazi sustav u potpunosti podržava rad na hrvatskom i engleskom jeziku i to s tri
aspekta: jezik učitanog dokumenta, jezik sučelja sustava, te jezik Eurovoc
pojmovnika.
Ovaj rad nastojali smo pisati na način da je razumljiv što širem krugu čitatelja.
Nakon uvoda, u drugom poglavlju dali smo uvod u problematiku dubinske analize
teksta i indeksiranja dokumenata, te opis pojmovnika Eurovoc. U trećem poglavlju
donosimo opis sustava sa korisničkog stajališta, dok peto poglavlje ulazi u dubinu
problema s računalnog stajališta i daje detaljniji opis algoritama i struktura podataka
korištenih u sustavu. Šesto poglavlje donosi opis višejezičnosti sustava SPID.
Na koncu, ali ne i najmanje važno, željeli bi se zahvaliti ostatku tima na Fakultetu
elektrotehnike i računarstva: voditeljima prof. dr. sc. Bojani Dalbelo-Bašić i dipl.
ing. Janu Šnajderu, te kolegama studentima Hrvoju Ekliću, Matiji Jančencu, Goranu
Jovanovu i Juri Mijiću, koji su dali veliki obol prilikom nastajanja sustava. Nadalje,
zahvala je upućena prof. dr. sc. Marku Tadiću sa Filozofskog fakulteta na iscrpnoj i
uvijek dostupnoj pomoći oko lingvističkih pitanja, te prof. Nedi Erceg i mr. sc. Maji
Cvitaš iz Hidre koje su svojim sugestijama doprinijeli većoj korisnosti sustava za
krajnjeg korisnika. Posebna zahvala mr. sc. Jasminki Novak iz Ministarstva vanjskih
poslova i europskih integracija na ustupljenim dokumentima prevedenima sa
engleskog jezika na hrvatski i obratno.
Sustav za poluautomatsko indeksiranje dokumenata
5
2. DUBINSKA ANALIZA TEKSTA I INDEKSIRANJE DOKUMENATA
POJMOVNIKOM EUROVOC
2.1. DUBINSKA ANALIZA PODATAKA I TEKSTA
Dubinska analiza podataka (engl. data mining) je pojam koji se u zadnje vrijeme
često pojavljuje u naslovima članaka poslovnih i računalnih časopisa. Meñutim, do
prije nekoliko godina, vrlo malo ljudi je uopće čulo o pojmu dubinska analiza
podataka, iako je on rezultat evolucije područja koja imaju dugu povijest. Pojam kao
takav uveden je relativno nedavno, početkom 90-ih.
Korijeni dubinske analize podataka mogu se pratiti duž tri linije. Najduža od njih je
klasična statistika, bez koje ne bi ni postojalo niti dubinske analize podataka jer je
statistika temelj većini tehnika na kojima je izgrañena. Klasična statistika obuhvaća
deskriptivnu statistiku, inferencijalnu statistiku (testiranje, intervali pouzdanosti i dr.)
multivarijantnu statistiku (analizu grupa, regresija, faktorsku analizu i dr.) koje se
koriste u analizi podataka i njihovih odnosa. U tom smislu može se reći da u srcu
današnje dubinske analize podataka statistika igra vrlo važnu ulogu.
Druga vrlo važna grana na kojoj se zasniva dubinska analiza podataka je umjetna
inteligencija, disciplina koja je u velikoj mjeri zasnovana na heuristici i logici, a
pokušava primijeniti čovjeku sličan pristup rješavanju problema.
Treće područje na kojem se zasniva dubinska analiza podataka je strojno učenje, koje
se može opisati kao spoj statistike i umjetne inteligencije. Strojno učenje je područje
računarstva koje se bavi razvojem algoritama koji imaju sposobnost učenja na
primjerima.
Dubinska analiza teksta obuhvaća dio problema kojim se bavi dubinska analiza
podataka, a odnosi se na obradu teksta. Pod dubinskom analizom teksta misli se na
inteligentnu obradu teksta, otkrivanje znanja u tekstu, općenito izvlačenje
netrivijalnih i zanimljivih informacija i znanja iz nestrukturiranog teksta. Osim grana
na kojima se zasniva dubinska analiza podataka, za dubinsku analizu teksta bitno je
poznavanje lingvistike.
2.2. AUTOMATSKO INDEKSIRANJE DOKUMENATA
Tekstovni dokumenti stvaraju se svakodnevno u velikim količinama. Zbog toga su
potrebni i veliki prostori za njihovo skladištenje. Da bi se omogućio brz pristup
Sustav za poluautomatsko indeksiranje dokumenata
6
pohranjenim dokumentima, potrebno je pažljivo odabrati deskriptore kojima će se
indeksirati dokument.
Mnoge organizacije koriste strukturirane pojmovnike za konzistentno indeksiranje,
pohranu i dohvat elektroničkih i papirnatih dokumenata iz svoje knjižnice i
dokumentacijskih centara. Popis pažljivo odabranih deskriptora omogućava
korisniku brzi uvid u sadržaj dokumenta i omogućava pretragu dokumenata po
područjima. Strukturirana priroda pojmovnika omogućava pretraživanje dokumenata
po područjima bez potrebe da se upisuju svi pojmovi za pretragu. Npr. upit
'radioaktivni materijal' će uključiti u pretragu i pojmove 'uran', 'pluton' i dr. Kod
korištenja višejezičnog pojmovnika poput Eurovoca, korištenjem činjenice da postoji
jedan-na-jedan prijevod za svaki deskriptor, moguće je postavljati upite na jednom
jeziku, a dohvaćati radove na drugom.
Ručno dodjeljivanje deskriptora iz pojmovnika je vremenski zahtjevan i skup
postupak. Profesionalnom indeksatoru koji koristi u svom radu Eurovoc pojmovnik,
po danu indeksira oko 30 dokumenata. Zbog te činjenice, traže se automatska ili
barem poluautomatska rješenja. Ta rješenja se koriste kao pripomoć indeksatorima u
njihovom poslu. Njihov zadatak je da na temelju analize dokumenta predlože popis
deskriptora koji indeksatori modificiraju kako bi što bolje označavao dokument. Iako
su napravljeni znatni pomaci u automatskom indeksiranju, postojeći sustavi još
uvijek su daleko od kvalitete profesionalnih indeksatora i za sada služe samo kao
pripomoć pri ubrzanju procesa indeksiranja.
Osim kao pripomoć organizacijama koje ručno indeksiraju dokumente, automatsko
indeksiranje dokumenata može biti korišteno za katalogiziranje drugih tipova
dokumenata i u više drugih svrha: prikaz sadržaja dokumenta pomoću popisa
višejezičnih deskriptora omogućava višejezičnu klasifikaciju i grupiranje, računanje
semantičke sličnosti meñu dokumentima, čak i na različitim jezicima. Povezivanje
teksta s pojmovnikom je prijeko potrebno za realizaciju semantičkog weba.
2.3. POJMOVNIK EUROVOC
Pojmovnik Eurovoc (EUROpean VOCabulary) je hijerarhijski organizirani,
multidisciplinarni pojmovnik sastavljen od 21 područja i 127 potpodručja koje
obuhvaćaju sve djelatnosti Europske unije u obliku strukturiranoga i kontroliranoga
popisa naziva za sve važne pojmove koji se javljaju u najrazličitijim dokumentima
EU-a [17]. Eurovoc je preveden na 20 službenih jezika EU-a, a dodatno su ga
prevele i neke druge zemlje, meñu kojima je i Hrvatska [18]. Hidra je napravila
dodatak pojmovniku kako bi se lakše indeksirali dokumenti vezani uz Hrvatsku.
Sustav za poluautomatsko indeksiranje dokumenata
7
Dodan je niz pojmova vezanih uz županije, političke stranke, razne institucije kojih
nema u Eurovocu, itd.
Slika 1. Na službenoj stranici Eurovoca, http://europa.eu.int/celex/eurovoc/, nudi se izbor jednog od 20 jezika zemalja EU-a čije institucije koriste Eurovoc. Takoñer, ponuñeni su i jezici nečlanica Rumunjske i Hrvatske, kao posebno priznanje dvjema zemljama za napore koje ulažu u uvoñenje Eurovoca u svakodnevnu praksu.
Pojmovi ili termini u Eurovocu često se nazivaju deskriptori (engl. descriptor) jer se
odabirom odreñenih deskriptora opisuje (engl. describe) dokument. Ponekad se neki
pojam u tekstu nalazi u različitim oblicima, pa zato odreñeni deskriptori imaju uz
sebe vezane asocijate – različite termine kojima se opisuje isti pojam. Asocijati nisu
zasebni elementi pojmovnika, već su uvijek vezani uz točno odreñeni deskriptor.
Eurovoc sadrži brojne relacije (veze) meñu pojmovima, od kojih je najvažnija
hijerarhijska. Na vrhu hijerarhije nalazi se 21 područje, zatim 127 potpodručja, pa tek
onda dolaze na red deskriptori. Često deskriptori sadrže veze na srodne deskriptore,
srodne, ali uže pojmove, i sl. Koriste se i veze prije i poslije, tako da se npr. staro ime
stranke može povezati sa novijim imenom.
2.4. OSNOVNI POJMOVI RAČUNALNE OBRADE PRIRODNOG
JEZIKA
Oblici su različiti likovi u kojima se jedna riječ može pojaviti i koji se razlikuju
gramatički, ali ne i po osnovnom značenju. Npr. hoda i hodam su oblici iste riječi.
Za svaku vrstu riječi moguće je dogovorno odrediti kanonski, polazni oblik - lemu.
Lema neke imenice je njezin nominativ jednine, a lema glagola infinitiv. Npr. neki
od oblika leme hodati su: hodam, hodao, hodamo, itd.
Sustav za poluautomatsko indeksiranje dokumenata
8
Ponekad nije moguće jednoznačno odrediti lemu neke riječi. Na primjer, riječ vode
ima sljedeće leme: vod, voda, voditi.
Općenito kada dva oblika imaju isti pisani oblik, a različito značenje, onda govorimo
o homografiji. Postupak nalaženja leme zovemo lematizacija.
MSD ili morfosintaktički deskriptor sadrži informacije o gramatičkim kategorijama,
tj. vrsti riječi, te dodatne informacije vezane uz tu riječ (npr. rod, broj i padež za
imenice).
Engl. stemmer (od engl. stem - korijen) je program ili algoritam kojim se odreñuje
korijen (najčešće leksički, tj. korijenski morfem) neke riječi. Na primjer, stemmer bi
mogao naći da je korijen riječi osjećajnost osjeć, ili da je korijen riječi noga nog.
Većina stemmera po odreñenim pravilima uklanja sufikse zadane riječi te često
rezultat nije ispravan korijen, već samo aproksimacija korijena. Npr. stemmeri za
engleski jezik javiti će drie umjesto dry za riječ "dries".
Najpoznatiji algoritam za engleski jezik jest algoritam Martina Portera [19]. To je
ujedno i najčešće korišten engleski stemmer te je postao de facto standard. Valja
napomenuti da je stemmer morfološki siromašnog jezika poput engleskog znatno
lakše napraviti od stemmera morfološki složenog jezika poput hrvatskog.
Pojavnica je svako pojedinačno pojavljivanje riječi u nekom tekstu, a različnica je
jedinstveni oblik pojavnice u istom tekstu. Na primjer, rečenica "Tko se mača laća,
od mača će i stradati." ima 9 pojavnica, ali samo 8 različnica jer se različnica mača
ponovila dva puta. Rečenica "Čovjek čovjeku vuk." sadrži tri različnice i tri
pojavnice.
Zaustavne riječi su riječi koje imaju gotovo isključivo gramatičku funkciju, ili se
javljaju vrlo često u nekom dokumentu. Zaustavne se riječi ne prikazuju u popisu
lema, niti u popisu različnica. Takoñer, lematizacija i stemming neće se obavljati nad
takvim riječima. Primjeri zaustavnih riječi su engleske riječi the, a, I i hrvatske riječi
je, pa, to.
Ignorirane riječi su riječi uglavnom specifične za neko područje koje ne donose
gotovo nikakve dodatne informacije indeksatoru. Na primjer, riječ članak nije od
velike koristi indeksatoru koji radi na skupu dokumenata „Narodnih novina“. Nad
tim riječima obavlja se lematizacija, ali se ne prikazuju u popisima lema i različnica.
Sustav za poluautomatsko indeksiranje dokumenata
9
2.5. KOMPLEKSNOST I MORFOLOŠKO BOGATSVO
HRVATSKOG JEZIKA
Hrvatski jezik je morfološki vrlo bogat, a to predstavlja dodatnu teškoću pri
računalnoj obradi teksta. Rješavanje problema lematizacije te korjenovanja (engl.
stemming) preduvjet je za bilo kakvu strojnu obradu prirodnog jezika pa tako i za naš
sustav SPID. Za većinu svjetskih jezika, a pogotovo za engleski, postoji niz javno
dostupnih alata i razrañenih algoritama [19]. Za hrvatski jezik takvi su alati u
postupku nastajanja. Postoji kvalitetan servis za lematizaciju hrvatskoj jezika [31],
ali ga zbog njegove orijentiranosti Internetu nismo mogli ugraditi u sustav. Zbog toga
je za potrebe ovog sustava razvijen MOLEX [20], morfološki leksikon koji je
ugrañen kao modul za lematizaciju hrvatskog jezika.
Sustav za poluautomatsko indeksiranje dokumenata
10
3. OPIS SUSTAVA SPID
U ovom poglavlju dan je detaljan opis sustava SPID. Poglavlje započinjemo sa
pregledom srodnih radova.
3.1. SRODNI RADOVI
Automatsko indeksiranje dokumenata je već poznat problem. Početkom njegovog
rješavanja smatra se Luhnov rad [24] iz 1957. godine u kojem se predlaže statistički
pristup problemu. Luhnovo rješenje sastojalo se od nekoliko koraka: od statističke
analize skupa dokumenata, preko formiranja rječnika i bilježenja topoloških
informacija o tekstu, pa sve do opisa postupka programiranja stroja koji bi opisani
postupak provodio.
Maron 1961. godine u svom radu [32] opisuje automatsku klasifikaciju dokumenata
prema njihovim naslovima.
Biebricher i drugi 1988. godine primjenjuju sustav [25] čija je zadaća indeksiranje
sažetaka znanstvenih radova iz područja fizike. Sustav zahtjeva postojanje rječnika
deskriptora te popisa relacija tipa riječ-deskriptor i fraza-deskriptor pomoću koje se
vrši indeksiranje.
Automatsko indeksiranje korištenjem Eurovoca problem je kojim se bave mnogi
znanstvenici. Ferber [5] je u svom radu iz 1997. opisao izgradnju aplikacije koja
koristi višejezični pojmovnik OECD za pretraživanje dokumenata pisanih na
engleskom koristeći pojmove za pretragu koji nisu pisani na engleskom jeziku.
Pojmovnik OECD sličan je Eurovocu, ali je manji i postoji samo u četiri jezika. To je
prvi sličan rad za koji znamo da metodama strojnog učenja pokušava indeksirati
dokumente.
Noviji primjer automatske klasifikacije dokumenata korištenjem Eurovoca rad je
Steinbergera i Pouliquena koji su razvili statističke metode za meñujezično
indeksiranje. Metoda se temelji na odreñivanju važnosti pojedinih pojmova unutar
dokumenta tako da se gleda frekvencija pojavljivanja nekog pojma unutar
dokumenta u odnosu na frekvenciju pojavljivanja unutar korpusa. Svakom pojmu iz
Eurovoca dodijeljen je skup riječi koje se pojavljuju unutar dokumenta i koje ga vežu
uz dokument s pripadnim težinama. Na temelju ekstrahiranih ključnih riječi iz
dokumenta i težina pojmova iz Eurovoca vezanih za te riječi odreñuju se pojmovi
koji će biti predloženi za indeksiranje dokumenta [6][7][8].
Sustav za poluautomatsko indeksiranje dokumenata
11
Iako u mnogim dijelovima slična, aplikacija koju smo napravili značajno se razlikuje
od gore navedenih rješenja. Sustav koji razvijamo podržava višejezičnost. Zasad ne
podržava automatsko pronalaženje deskriptora kojima će se indeksirati dokument već
služi kao pripomoć indeksatorima da brže obavljaju svoj posao. Cilj je da se ubrzano
prikupi kritična masa indeksiranih dokumenata na temelju koje će se kreirati skup
dokumenata za učenje sustava i omogućiti stvaranje automatskog indeksatora.
Rad najsličniji našem razvijen je u NASA-i pod nazivom MAI (Machine-Aided
indexing system) [9]. Od 1982. do 1993. razvijan je sustav za strojno potpomognuto
indeksiranje. Bitna osobina ovoga sustava jest što ne koristi metode strojnog učenja i
statističke obrade teksta za predlaganje deskriptora za indeksiranje nekog
dokumenta. Za indeksiranje se koristi NASA-in pojmovnik s oko 18000 pojmova.
Ključan element ovog sustava baza je podataka koja se sastoji od parova ključeva i
pojmova iz pojmovnika. Dokument se slijedno obrañuje po skupovima riječi i u
slučaju da za neki niz riječi postoji zapis u bazi, tada se vraća kao prijedlog za
deskriptore popis pojmova vezanih uz nañeni ključ. Indeksatoru se prikazuju vraćeni
pojmovi i on odabire iz popisa ponuñenih najpogodnije pojmove, što bitno ubrzava
indeksiranje dokumenata.
Pod indeksiranje dokumenata ne spada samo pridjeljivanje deskriptora iz nekog
kontroliranog rječnika pojmova tom dokumentu, već i proces ekstrakcije pojmova iz
dokumenta, npr. kreiranje indeksa koji se obično nalazi na kraju knjige i ukazuje na
bitne pojmove koji su opisani u knjizi. Naš rad ne bavi se ekstrakcijom pojmova iz
dokumenta, ali postoje razvijene slične metode strojnog učenja koje se bave
navedenom primjenom pa ćemo radi potpunosti spomenuti i tu temu.
Lathinen [10] predlaže u svom radu metodu kreiranja automatskog indeksatora koji
proučava sadržaj dokumenta i gradi indeks kombinirajući podatke o frekvenciji riječi
i podatke dobivene korištenjem analizatora rečenične strukture. Mnogi komercijalni
sustavi poput Indexicona, CIDEX-a i MACREX-a takoñer obavljaju sličnu funkciju.
3.2. ULAZ U SUSTAV
Kao jedan od ključnih zadataka u fazi razrade problema postavilo se definiranje
ulaza u sustav. Budući da dokumenti koje treba indeksirati dolaze iz većeg broja
različitih izvora, razumno je bilo pretpostaviti da će biti zapisani u različitim
formatima te u različitim inačicama ili stilovima istog formata. Izravno, naravno, nije
bilo moguće niti predvidjeti, a kamoli podržati sve formate te je stoga bilo nužno
specificirati jedan zapis koji će sustav primati na ulazu. Današnja informatička
tehnologija nudi standardan zapis dokumenta.
Sustav za poluautomatsko indeksiranje dokumenata
12
Odabran je XML (Extensible Markup Language) [1], standardizirani format zapisa
dokumenata, koji se primarno koristi za razmjenu podataka meñu informacijskim
sustavima. Kao takav, XML posjeduje niz karakteristika poželjnih za ovakav sustav.
Slika 2. Uvodni dio Zakona o visokim učilištima zapisan u XML formatu. Uočavaju se semantičke oznake (zaglavlje ili stilovi), standardne oznake unutar XML formata (npr. p za paragraf ili b za masno otisnuti tekst), te atributi oznaka koji nose dodatne informacije (npr. ukoliko atribut tip oznake naslov ima vrijednost pn, riječ je o podnaslovu).
<zaglavlje> <naslov>Odluka o proglašenju Zakona o visokim učilištima</naslov>
</zaglavlje> <uvod>
<dio type="naslov"> <naslov type="glavni" stilBr="1">ZASTUPNIČKI DOM SABORA REPUBLIKE HRVATSKE
</naslov> <p stilBr="2">Na temelju članka 89. Ustava Republike Hrvatske donosim </p>
</dio> <dio type="tijelo">
<naslov tip="na" stilBr="3">ODLUKU</naslov> <naslov tip="pn" stilBr="4">o proglašenju Zakona o visokim učilištima</naslov> <p stilBr="2">Proglašavam Zakon o visokim učilištima, koji je donio Zastupnički dom Sabora
Republike Hrvatske na sjednici dana 8. listopada 1993. godine. </p> <p stilBr="2">Broj : PA4-113/ 1-93. </p> <p stilBr="2">Zagreb,18. listopada 1993. </p> <p stilBr="5">Predsjednik Republike Hrvatske </p> <p stilBr="5"><b>dr. Franjo Tuñman, v.r. </b></p>
</dio> … <stilovi>
<stil br="1"> <font>Times New Roman</font> <velicina>24.0pt</velicina> <poravnanje>center</poravnanje>
</stil> <stil br="2">
<font>Times New Roman</font> <velicina>10.0pt</velicina> <poravnanje>left</poravnanje>
</stil> <stil br="3">
<font>Times New Roman</font> <velicina>16.0pt</velicina> <poravnanje>center</poravnanje>
</stil> <stil br="4">
<font>Times New Roman</font> <velicina>12.0pt</velicina> <poravnanje>center</poravnanje>
</stil> <stil br="5">
<font>Times New Roman</font> <velicina>10.0pt</velicina> <poravnanje>right</poravnanje>
</stil>
Sustav za poluautomatsko indeksiranje dokumenata
13
Budući je sam standardiziran i široko prihvaćen, postoji niz dokumenata već
zapisanih u ovom formatu. S druge strane, postojeći dokumenti zapisani u
alternativnim formatima (HTML, PDF i dr.) mogu se relativno jednostavno
automatski pretvoriti u XML. Nadalje, XML omogućuje kodiranje dodatnih
informacija u sam dokument, kao što su specificiranje naslova, autora, paragrafa ili
formatiranja potrebnog za vizualnu rekonstrukciju učitanog dokumenta unutar
sustava. Vizualna rekonstrukcija učitanog dokumenta interno se provodi
generiranjem zapisa formatiranog u skladu sa RTF (Rich Text Format) [3]
standardom.
Slika 3. Vizualna rekonstrukcija dokumenta na temelju XML zapisa sa slike 2.
3.3. POLUAUTOMATSKI EUROVOC INDEKSATOR(PEI)
3.3.1. STATISTIKA RAZLIČNICA I LEMA
Na temelju samog teksta dokumenta te dodatnih informacija kodiranih u učitanom
XML formatu gradi se unutrašnja struktura podataka koja omogućuje manipuliranje
ZASTUPNIČKI DOM SABORA REPUBLIKE HRVATSKE
Na temelju članka 89. Ustava Republike Hrvatske donosim
ODLUKU
o proglašenju Zakona o visokim učilištima
Proglašavam Zakon o visokim učilištima, koji je donio Zastupnički dom Sabora Republike Hrvatske na sjednici dana 8. listopada 1993. godine.
Broj : PA4-113/ 1-93.
Zagreb,18. listopada 1993.
Predsjednik Republike Hrvatske
dr. Franjo Tuñman, v.r.
Sustav za poluautomatsko indeksiranje dokumenata
14
podacima za vrijeme rada sa sustavom. Takoñer, provodi se niz leksičkih i
statističkih obrada.
Primjer korisničkog sučelja dan je na slici 4. Nakon inicijalnog procesiranja, vizualna
reprezentacija učitanog dokumenta prikazuje se na lijevoj strani korisničkog sučelja.
Vizualna reprezentacija generira se koristeći informacije o formatiranju i strukturi
samog dokumenta, ugrañene u XML zapis.
Slika 4. Korisničko sučelje sustava. S lijeve strane prikazana je vizualna reprezentacija učitanog dokumenta (Statut Sveučilišta u Zagrebu), dok su sa desne strane vidljivi rezultati leksičke i statističke obrade. Uočava se brojnost morfoloških različnica leme sveučilište.
Primarni rezultati leksičke obrade i statističke analize dokumenta vidljivi su u
desnom dijelu korisničkog sučelja sustava, koji je podijeljen u dva identična dijela.
Za svaki dio moguće je neovisno odabrati statističku informaciju koja će biti
prikazana. Dostupne su slijedeće statističke informacije:
• skup ureñenih parova svih morfoloških pojavnica pronañenih u tekstu dokumenta i pripadnih frekvencija pojavljivanja
• skup ureñenih parova lema svih pojavnica pronañenih u dokumentu i pripadnih frekvencija pojavljivanja
Sustav za poluautomatsko indeksiranje dokumenata
15
• skupovi ureñenih parova statistički najznačajnijih bigrama, trigrama i tetragrama pronañenih u dokumentu i pripadnih frekvencija pojavljivanja.
• skupovi ureñenih parova svih deskriptora i asocijata pronañenih u dokumentu i pripadnih frekvencija pojavljivanja
Svi skupovi ureñenih parova prikazani su u obliku popisa koji je moguće poredati po
riječi (pojavnici, lemi, n-gramu odnosno deskriptoru) ili po frekvenciji pojavljivanja,
uzlazno ili silazno. Moguće je i označiti sva pojavljivanja odabranog člana popisa.
Unaprijed provedena leksička i sintaktička analiza pruža odlične mogućnosti za
vizualno predstavljanje informacija korisniku. Kao što je već spomenuto, uočljivom
crvenom bojom pozadine označavaju se pojavljivanja proizvoljne pojavnice ili leme
unutar teksta, dok daljnjim pretragama selekcija iterativno prelazi s jednog
pojavljivanja na drugo. Ovime je korisniku omogućeno jednostavno proučavanje
konteksta u kojem se pojavljuju pojmovi potencijalno bitni za indeksiranje
dokumenta.
Slika 5. Vizualno naglašavanje pojavnica najčešćih lema. U konkretnom primjeru Statuta Sveučilišta u Zagrebu vidljivo je stavljen naglasak na leme sveučilište, senat i znanstven.
Sustav za poluautomatsko indeksiranje dokumenata
16
Sustav takoñer omogućuje vizualno naglašavanje najfrekventnijih lema unutar
dokumenta, primjer čega je dan na slici 5, kao i sivljenje zaustavnih riječi - leksičkih
jedinki sa minimalnim semantičkim značenjem, kao što su veznici, brojevi i slično
[4]. Ovakve funkcionalnosti fokusiraju pažnju na statistički relevantne dijelove
dokumenta.
3.3.2. STATISTIKA N-GRAMA
N-grami su nizovi od n riječi meñusobno odvojenih razmacima ili interpunkcijskim
znakovima. Posebno zanimljivi n-grami su oni nizovi riječi koji se pojavljuju
zajedno u tekstu češće nego slučajno [12]. Takve nizove riječi u korpusnoj i
računalnoj lingvistici nazivamo kolokacije.
Kolokacije bi se mogle dobro opisati kao izrazi koji se sastoje od dvije ili više riječi
i uobičajen su način za izreći nešto. Npr. jedan od primjera kolokacije je izraz jak čaj
ili strojno učenje. Te dvije riječi kad se nañu zajedno unose dodatno značenje u
kombinaciju riječi, koje se ne može dobiti ako se posebno promatra značenje svake
od riječi posebno. Tako u kolokaciji jak čaj, riječ jak ne odnosi se na osnovno
značenje riječi imati veliku fizičku snagu, već ima značenje biti bogat u nekoj
aktivnoj supstanci. Kolokacija strojno učenje se može doslovno shvatiti kao spoj
značenja riječi strojno i učenje, ali takoñer je naziv za granu računarstva.
U radu Mladenić i dr. [11] pokazano je da se ostvaruje bolja klasifikacija
dokumenata ako se koristi prikaz dokumenata s pomoću metode bag of words u kojoj
se kao elementi nalaze višerječni izrazi nego ako se koristi jedna riječ.
Kao jedna od vrlo bitnih informacija, statistika n-grama uključena je u leksičku
analizu dokumenta. Rezultat leksičke i statističke obrade n-grama u dokumentu je
prikazan u desnom dijelu prozora PEI. Rezultat je frekvencija pojavljivanja n-grama
unutar dokumenta. Moguće je prikazati bigrame, trigrame i tetragrame pronañene u
dokumentu. N-grami su spremljeni u popise koje je moguće sortirati silazno i
uzlazno po abecedi ili prema frekvenciji. Radi što boljeg i kvalitetnijeg nalaženja n-
grama, napravljena je statistika nad svim dokumentima za indeksiranje i u njima su
pronañene kolokacije pomoću statističkih metoda. Korisniku se prikazuju samo n-
grami za koje se utvrdilo da su kolokacije.
Sama frekvencija pojavljivanja pojedine kolokacije ponekad može biti dovoljna da
dovede indeksatora dokumenta do traženog pojma u Eurovocu. U slučaju da
frekvencija nije dovoljna, označavanjem n-grama u popisu mogu se vidjeti sva
pojavljivanja tog n-grama u dokumentu, te je moguće pobliže proučiti kontekst u
Sustav za poluautomatsko indeksiranje dokumenata
17
kojem se nalazi. Iterativnim odabiranjem n-grama iz popisa korisnik se prebacuje na
sljedeće pojavljivanje n-grama u dokumentu.
Važno je za napomenuti da iako se kolokacije pojavljuju u različitim morfološkim
oblicima, sva pojavljivanja neke kolokacije prikazana su u popisu kao jedan član (o
detaljima izvedbe biti će riječi u dijelu o ekstrakciji n-grama). Kao reprezent cijelog
skupa kolokacija u popisu odabran je najčešći morfološki oblik u kojem se
kolokacija pojavljuje u dokumentu.
3.3.3. IDENTIFIKACIJA EUROVOC POJMOVA U TEKSTU
Prilikom pregleda dokumenata radi indeksiranja javlja se potreba za pronalaženjem
deskriptora koji se pojavljuju u dokumentu.
Kao dobro rješenje pokazalo se podcrtavanje deskriptora i asocijata u tekstu.
Deskriptori su označeni crvenom, a asocijati zelenom bojom, a njihovim odabirom
(slika 6) odmah se otkriva njihov položaj u hijerarhiji Eurovoca. Time se
indeksatorima znatno skraćuje vrijeme pretrage.
Naime, Eurovoc ima preko 6000 deskriptora, ponekad umjetno generiranih, te ih je
moguće lako previdjeti u tekstu. Nadalje, ako indeksator vidi da se u odreñenom
dijelu teksta nalazi deskriptor i siguran je da ga hoće dodijeliti dokumentu, onda bi
bilo gubljenje vremena tražiti taj deskriptor ili u hijerarhiji ili u pretraživaču
pojmovnika.
Sustav za poluautomatsko indeksiranje dokumenata
18
Slika 6. Odabirom podcrtanog deskriptora "Nacionalna zaklada za znanost, visoko školstvo i tehnologijski razvoj Republike Hrvatske" pronalazi se njegov položaj u prozoru preglednika pojmovnika. Prozor pojmovnika u praksi se drži na drugom zaslonu.
Osim kao pomoć indeksatorima, ekstrakcija deskriptora može olakšati i poboljšati
sljedeću fazu projekta, a to je automatsko indeksiranje. Umjesto da se koristi samo
skup riječi koji se javlja u tekstu može se koristiti i skup ekstrahiranih deskriptora
kao ulaz algoritmu strojnog učenja.
Pri ekstrakciji deskriptora javlja se problem varijacije izraza. Naime izraz kojim je
opisan deskriptor može se javljati u tekstu kao skraćenica, ponekad uz promijenjenu
strukturu, uz promijenjen ortografski oblik, te sa nekim morfološkim i leksičkim
varijacijama. U Eurovocu su svi problemi osim morfoloških varijacija djelomično
Sustav za poluautomatsko indeksiranje dokumenata
19
riješeni dodavanjem novih asocijata. Na primjer, deskriptor "ekonomska analiza" ima
i asocijat "gospodarska analiza", deskriptor "tržišni nadzor" ima asocijat "nadzor nad
tržištem", itd.
3.3.4. PRIDJELJIVANJE DESKRIPTORA
Kada indeksator odluči da je odreñeni deskriptor prikladan za neki dokument, ne
mora svoju odluku temeljiti na eksplicitnom pojavljivanju nekog deskriptora u
tekstu. Na primjer, ako se u dokumentu govori o planu izgradnje nove
hidroelektrane, deskriptor "hidroelektrično postrojenje" je prikladan za dokument,
iako se izraz "hidroelektrično postrojenje" možda uopće ne pojavljuje u tekstu.
Kažemo da je dokumentu dodijeljen deskriptor "hidroelektrično postrojenje".
Pod ekstrakcijom deskriptora podrazumijeva se nalaženje izraza u tekstu koji
odgovaraju nazivu nekog deskriptora. Na primjer, ako dio rečenice glasi "Pravilnik o
radu hidroelektričnih postrojenja propisuje ...", bit će ekstrahirani deskriptori
"pravilnik" i "hidroelektrično postrojenje". Treba napomenuti da svi ekstrahirani
deskriptori neće biti dodijeljeni dokumentu, te da se neće svaki dodijeljeni deskriptor
nalaziti u popisu izlučenih deskriptora.
3.4. IZLAZ IZ SUSTAVA
Budući je sustav zamišljen kao pomoć čovjeku, deskriptorima obogaćeni indeskirani
dokument pravi je izlaz sustava. Za arhiviranje i buduću upotrebu sustav omogućuje
fizički zapis indeskiranog dokumenta prema standardu Zajedničkog istraživačkog
centra (Joint Research Center, JRC) Europske komisije, predloženom na radionici
održanoj u rujnu 2004. u Italiji [2].
Izlazni dokument podvrgava se XML formatu zapisa i identičan je ulaznom, dodatno
opredmećen dvjema skupinama podataka (slika 7).
Prva skupina, označena oznakom descriptors sadrži informaciju o dokumentu
pridijeljenim deskriptorima. Za svaki deskriptor zapisuje se :
• identifikator unutar Eurovoc pojmovnika • UNIMARC tip – pomoćna kategorija koju koriste Hidrini indeksatori • naziv samog deskriptora
Druga skupina, označena oznakom description sadrži dodatne informacije o
provedenom postupku indeksiranja :
• ime osobe koja je provela indeksiranje
Sustav za poluautomatsko indeksiranje dokumenata
20
• institucija u kojoj je provedeno indeksiranje • datum kada je indeksiranje provedeno • verziju sustava • verziju morfološkog leksikona koji je korišten u postupku lematizacije • jezik dokumenta, a time i lematizacije
Slika 7. Primjer opredmećenog dokumenta u XML formatu, kao izlaz iz sustava.
3.5. PREGLEDNIK EUROVOC POJMOVNIKA (PEP)
Kako Eurovoc pojmovnik sadrži više od 6000 različitih deskriptora jasno je da se
korisniku mora omogućiti što brže i jednostavnije pretraživanje pojmovnika. Osim
toga svaki deskriptor može sadržavati i vezu na nadreñeni pojam, veze na srodne i
podreñene deskriptore i dr. Uz pregled svih semantičkih veza u hijerarhijskom
pogledu unutar prozora preglednika pojmovnika korisniku je dostupno i pretraživanje
pojmovnika.
3.5.1. HIJERARHIJSKI PREGLED
Prirodan način prikazivanja hijerarhije nadreñenih i podreñenih pojmova jest stablo,
te se na taj način prikazuju pojmovi unutar hijerarhijskog pregleda. Na prvoj razini
… <descriptors>
<descriptor hidra_id="5591" unimarc_type="601"> sveučilište </descriptor>
<descriptor hidra_id="32083" unimarc_type="606"> Sveučilište (Zagreb) </descriptor>
<descriptor hidra_id="32082" unimarc_type="607"> ustanova visokoškolskog obrazovanja RH </descriptor>
<descriptor hidra_id="2433" unimarc_type="607"> zakonodavstvo </descriptor>
</descriptors>
<description> <indexed_by>Igor Vukmirović</indexed_by> <indexed_at>FER</indexed_at> <indexed_on>02.04.2005.</indexed_on> <indexed_with>AIDE - PEI 1.0 beta revision 381</indexed_with> <molex_version>vjesnik-10m.molex-3.3-1-ex</molex_version> <language>hrvatski</language>
</description> </doc>
Sustav za poluautomatsko indeksiranje dokumenata
21
stabla nalazi se 21 područje Eurovoca. Proširivanjem odreñenih područja dolazi se
do potpodručja, te konačno do deskriptora i njima podreñenih deskriptora.
Prelaskom miša iznad nekog pojma prikazuje se prozor sa raznim informacijama o
tom pojmu. Unutar prozora s informacijama sve semantičke veze prikazane su kao
hiperveze, slično vezama na web-stranicama – odabirom neke veze skače se do
traženog pojma u stablu pojmovnika (slika 8).
Slika 8. Prikazane su informacije o deskriptoru "zagañenje bukom". Srodni termini prikazani su kao hiperveze – odabirom veze RT (engl. related term) "zaštita od buke" pojmovnik se pozicionira na taj deskriptor.
.
3.5.2. PRETRAŽIVANJE
U slučaju kada korisnik zna koji mu je deskriptor potreban, ali nije siguran u kojem
se dijelu stabla nalazi i ako želi provjeriti postoji li uopće neki deskriptor u
pojmovniku, hijerarhijski pregled nije najbolji odnosno najbrži način pretrage.
Pojmovnik se znatno brže pretražuje u desnom dijelu preglednika pojmovnika.
Za vrijeme upisivanja teksta za pretraživanje u rezultatima pretrage dinamički se
mijenja popis svih deskriptora i asocijata koji sadrže u svom nazivu traženi tekst.
Radi lakšeg snalaženja na početku popisa izdvojeni su rezultati kojima naslov
počinje sa traženim tekstom. Takoñer, traženi tekst jasno je označen unutar svakog
rezultata pretrage (slika 9).
Sustav za poluautomatsko indeksiranje dokumenata
22
Slika 9. Prikazano je pretraživanje naziva u pojmovniku. Korisniku se trenutno prikazuju rezultati nakon svakog pritiska tipke. Odabirom jednog od rezultata otkriva se isti u hijerarhiji pojmovnika.
Pojmovnik, meñu ostalim, služi i za konačnu dodjelu deskriptora dokumentu. Tom se
prilikom značenje izabranog deskriptora obavezno provjerava njegovim položajem u
hijerarhijskoj strukturi pojmovnika.
Sustav za poluautomatsko indeksiranje dokumenata
23
4. IMPLEMENTACIJA
Dva su zahtjeva bitno utjecala na razvoj sustava: jezgra sustava treba biti prenosiva
na druge platforme i sustav se treba nositi sa svim problemima višejezičnosti. Pod
jezgrom podrazumijevamo nekorisnički dio sustava, tj. sve dijelove sustava vezane
uz obradu datoteka, lematizaciju, nalaženje n-grama, statistiku, itd. Jezgra je logički
odvojena cjelina koja je pisana u cijelosti u jeziku ISO C++. Važan dio jezgre
sustava jest višejezična podrška pa se svi podatci interno (unutar jezgre) pretvaraju ili
u kodnu stranicu ISO 8859-2 ili u kodnu stranicu UTF-8. Svi korisnički
programi, gledano sa strane jezgre, vrše konverziju iz tih kodnih stranica u svoje
kodne stranice (npr. CP1250 na Windowsima).
Korištene su tri open-source biblioteke – libxml, iconv, te zlib. Prva se koristi
za parsiranje XML datoteka, druga za konverziju izmeñu raznih kodnih stranica, te
treća za sažimanje datoteka. Navedene biblioteke dostupne su za veliki broj
operacijskih sustava, pa tako i za Windows i Linux. Biblioteka zlib omogućava
učitavanje sažetih XML datoteka i/ili rječnika, čime se može ostvariti znatna ušteda
diskovnog prostora.
Korisničko sučelje za sada postoji samo za Windows operacijske sustave – pisano je
pomoću alata Borland C++ Builder. Kao potvrda portabilnosti osnove sustava
napisani su brojni komandno-linijski alati koji rade i na Windows, Linux i MacOS
operacijskim sustavima.
4.1. VIZUALNA REKONSTRUKCIJA DOKUMENTA
Kako bi rad s dokumentom bio moguć unutar sustava, isti mora biti zapisan u skladu
s XML standardom. Unutar formata potrebno je sačuvati informacije koje se odnose
na grafičko formatiranje dokumenta, kako bi se unutar sustava mogao vizualno
rekonstruirati učitani dokument generiranjem i prikazivanjem u RTF formatu.
Pažljivom čitatelju bi se ovaj zahtjev, pa možda i čitav korak pretvorbe u XML,
mogao učiniti suvišan. Istina je da su procesi leksičke i sintaktičke analize neovisni o
postupku prikaza dokumenta korisniku, za što je bilo moguće koristiti izvorni
dokument, poput popularnog HTML (Hypertext Markup Language). Razlog
dodatnom koraku generiranja RTF zapisa iz XML strukture jest želja za
zadržavanjem vizualne reprezentacije što je moguće više pod našom kontrolom. U
slučaju zadržavanja postojećih zapisa, implementirane vizualne funkcionalnosti
zahtijevale bi znatne modifikacije originalnih datoteka, što bi bio spor proces nad
kojim ne bi imali potpunu kontrolu. Osobine okoline za koju smo razvijali sustav
Sustav za poluautomatsko indeksiranje dokumenata
24
(operacijski sustav Microsoft Windows) nametnule su RTF format kao rješenje,
budući su nam na raspolaganju odlične mogućnosti prikaza i obrade upravo RTF
formatiranih dokumenata.
4.2. UNUTARNJA STRUKTURA
Unutarnja reprezentacija učitanog dokumenta od ključne je važnosti za učinkovitost
sustava.
Postavljajući brzinu pretrage po strukturi te što manje zahtjeve za memorijom kao
prioritete, razvijena je specifična struktura podataka koja je temelj čitavog sustava
[13].
Slika 10. Jednostavan primjer ulazne XLM datoteke.
Za objašnjenje unutarnje strukture poslužit ćemo se jednostavnim primjerom, danim
na slici 10. Ulazna datoteka sastoji se od samo jednog elementa zaglavlje, kojeg
sačinjavaju dva podelementa naslov i podnaslov. Grafička apstrakcija unutarnje
strukture podataka koja bi se izgradila unutar sustava nakon učitavanja tog
dokumenta prikazana je na slici 11.
<zaglavlje>
<naslov> Sveučilište u Zagrebu </naslov>
<podnaslov> Statut sveučilišta </podnaslov>
</zaglavlje>
Sustav za poluautomatsko indeksiranje dokumenata
25
Slika 11. Apstrakcija unutarnje strukture podatka izgrañene nakon učitavanja primjera XML dokumenta sa slike10.
Sama struktura XML dokumenta čuva se implementacijom varijacije standardnog
stabla na principu prvo dijete – sljedeći brat. Za svaki čvor u stablu čuvaju se dvije
informacije koje se odnose na strukturu :
• Pokazivač na prvi čvor podreñen promatranom čvoru, tzv. prvo dijete. Analognim pojmom u XML formatu zapisa smatramo prvim podelementom promatranog elementa. Konkretno u primjeru element naslov je prvo dijete elementa zaglavlje.
• Pokazivač na sljedeći čvor na istoj razini kao promatrani čvor, tzv. sljedeći brat. Analognim pojmom u XML formatu zapisa smatramo slijedeći element koji se pojavljuje unutar istog nadreñenog elementa. U konkretnom primjeru, čvor podnaslov je slijedeći element čvora naslov.
Na grafičkoj apstrakciji na slici 11, čvorovi su prikazani pravokutnicima zaobljenih
rubova, dok su pokazivači prikazani usmjerenim strelicama.
Unutar stabla razlikujemo nezavršne i završne čvorove. Nezavršni čvor je čvor koji
ima bar jedno dijete, dok je završni čvor, koji se još naziva i listom, čvor bez djece.
Nezavršni čvorovi apstrakcija su XML oznaka i imaju uglavnom semantičko
značenje, dok završni čvorovi predstavljaju sam sadržaj dokumenta.
Osim stabla, dio strukture podataka su i dva rječnika. Rječnikom u našem
konkretnom rješenju smatramo skupom ureñenim parova pojavnice odnosno leme, te
pripadne frekvencije pojavljivanja.
pojavnice i pripadni
broj pojavljivanja
zaglavlje
pozicija 0
naslov
pozicija 0
podnaslov
pozicija 0
0 12 19 26
sveučilište
u
Zagrebu
statut
14
sveučilišta
2
1
1
1
sveučilište
zagreb
2
1
2
statut 1
nezavršni čvorovi
završni čvorovi
leme i pripadni broj
pojavljivanja
Sustav za poluautomatsko indeksiranje dokumenata
26
Listovi stabla od velike su važnosti i prilikom razvoja strukture podataka uvedene su
optimizacije tog dijela strukture podataka. Umjesto spremanja riječi i interpunkcija
kao dodatnih informacija unutar listova, iste se čuvaju u rječniku pojavnica, dok se u
listovima stabla pamte samo pokazivači na pripadne ureñene parove unutar rječnika.
Ovakvom implementacijom dolazi do redukcije potrošnje memorije, budući se riječ
mora pamtiti samo jednom, bez obzira na njen broj pojavljivanja u dokumentu.
Tokom gradnje unutarnje strukture, za svaku pronañenu pojavnicu poveća se
pripadni brojač frekvencija pojavljivanja.
Zbog morfološke kompleksnosti hrvatskog jezika nužno je bilo razviti brz i učinkovit
način nalaženja leme za svaku danu pojavnicu iz dokumenta. Ova informacija bitna
je za mnoge funkcionalnosti sustava. Neke od tih funkcionalnosti su pretraživanje po
lemi i ekstrakcija n-grama. Leme pojavnica u dokumentu čuvaju se u zasebnom
rječniku. Unutar rječnika pojavnica uveden je dodatni atribut koji predstavlja skup
pokazivača na pripadnu lemu u rječniku lema. Pokazivači na leme nužno čine skup,
budući jedna pojavnica može imati više mogućih lema. Na ovaj način, vremenska
složenost nalaženja leme dane pojavnice tokom rada sa sustavom jest konstantna,
O(1).
Ostali detalji unutarnje strukture ključni su za brzinu generiranja vizualne
reprezentacije učitanog dokumenta unutar sustava, tj. generiranje RTF zapisa.
Kao prvo, listovi stabla povezani su meñusobno u jednu vezanu listu, čime je
moguće izravno pregledavati sam sadržaj dokumenta, ignorirajući na trenutak XML
strukturu.
Nadalje, za svaki čvor strukture čuva se dodatna informacija udaljenosti od početka
dokumenta, u znakovima. Ova informacija potrebna je zbog specifičnosti ciljnog
operativnog sustava koji zahtjeva učinkovito nalaženje elementa na zadanoj poziciji
od početka dokumenta. Zbog uvedene redundancije, vremenska složenost ovakve
pretrage jest
O(d*n),
gdje je d prosječna dubina XML strukture, a n prosječan broj riječi odnosno
interpunkcija unutar jednog XML elementa.
Spomenute posebnosti takoñer su prikazane u grafičkoj apstrakciji danoj na slici 11.
Sustav za poluautomatsko indeksiranje dokumenata
27
4.3. GENERIRANJE VIZUALNE REKONSTRUKCIJE NA TEMELJU
UNUTARNJE STRUKTURE
Kao što je vidljivo iz primjera u poglavlju 4.1., ukoliko je dokument na ulazu
prikladno pretprocesiran, unutar njega spremljene su dodatne informacije o
vizualnom formatiranju dokumenta. Zahvaljujući unutarnjoj strukturi sustava,
pomoću tih informacija jednostavno je konstruirati vizualnu reprezentaciju strukture.
Jedno od temeljnih svojstava XML formata, kao jezika temeljenog na oznakama, jest
da XML oznake nasljeñuju semantička svojstva oznake u kojoj su ugniježñena.
Jedno od takvih semantičkih svojstava jest upravo i način vizualnog formatiranja.
Ova osobina izravno se prenosi na implementiranu stablastu strukturu na način da svi
čvorovi-djeca nasljeñuju formatiranje od čvora-roditelja. Konkretno, ukoliko je
unutar nekog nezavršnog čvora, oznakom stil odreñen način vizualnog
formatiranja, sav tekst koji se nalazi u čvorovima-djeci biti će formatiran u skladu s
istim.
Na žalost, zbog već spominjane raznolikosti izvora i načina formatiranja ulaznih
dokumenata, nije bilo moguće pouzdati se u činjenicu da će svaki dokument u sebi
nositi i semantičke informacije o vizualnoj reprezentaciji, u vidu stil atributa.
Naravno, nedostatak tih oznaka nimalo ne utječe na rad niti korisnost sustava, budući
je jedini uvjet na ulaz u sustav podvrgavanje XML standardu zapisa. No, želeći u
najvećoj mogućoj mjeri olakšati korisnicima rad sa sustavom i učiniti ga što je
moguće ugodnijim, u sustav je ugrañen dodatni mehanizam zadavanja načina
formatiranja ulaznih dokumenata koji u sebi iz bilo koji razloga nemaju zapisanu
informaciju o formatiranju.
Sustav za poluautomatsko indeksiranje dokumenata
28
Slika 12. Dijalog za odreñivanje načina formatiranja dokumenata koji u sebi nemaju zapisanu informaciju o vizualnoj reprezentaciji. Prikazan je primjer kojim je pomoću pravila omogućena oku ugodna vizualna rekonstrukcija odreñenih dokumenata u kojima nedostaju informacije o formatiranju.
Zamisao o omogućavanju korisnički definiranih stilova formatiranja ulaznih
dokumenata jest upravo simuliranje predviñenog mehanizma. No, umjesto da su
informacije o formatiranju pojedinih oznaka spremljene u samoj oznaci, u vidu
atributa stil, one su spremljene u vanjskoj datoteci, koja se ureñuje u posebnom
dijalogu unutar sustava, prikazanom na slici 12.
Svaka datoteka s korisnički definiranim načinima formatiranja ulaznih dokumenata
sastoji se od skupa pravila. Svako pravilo formatiranja sastoji se od pet atributa :
• Naziv XML oznake na koju se odnosi pravilo. • Ime vrste slova (fonta) koju treba primijeniti prilikom generiranja vizualne
reprezentacije za tekst unutar oznake na koju se odnosi pravilo. • Veličina slova koju treba primijeniti. • Boju slova koju treba primijeniti. • Poravnanje koje treba primijeniti.
Samo generiranje vizualne reprezentacije zahtjeva minimalne promjene. Nailaskom
na XML oznaku za koju treba saznati način vizualnog formatiranja, umjesto
referenciranja na skup stilova definiran u dokumentu prema broju stila, sustav se
referencira na vanjsku datoteku s korisnički definiranim načinima formatiranja,
prema imenu oznake.
Sustav za poluautomatsko indeksiranje dokumenata
29
4.4. EKSTRAKCIJA KOLOKACIJA
Ekstrakcija kolokacija nije jednoznačno definirana u području računalne lingvistike,
već svaki autor definira koje pojmove želi nazivati kolokacijama ovisno o problemu
koji rješava. Tako imamo definicije koje poistovjećuju kolokacije s idiomima, do
toga da se kolokacije nazivaju nizovi više riječi koji se pojavljuju zajedno češće nego
slučajno.
Pri rješavanju problema indeksiranja, u suradnji s indeksatorima, istražili smo koje su
kolokacije najprikladnije za indeksiranje dokumenata i koje najbolje povezuju
sadržaj dokumenta s deskriptorima u Eurovocu. Za indeksiranje dokumenata, htjeli
smo izvaditi dvije vrste kolokacija. Prva vrsta su (tzv. engl. open compound) [26],
neprekinuti niz riječi koji zajedno tvore jedan pojam i ne mogu se promatrati
odvojeno, npr. Bijela kuća, burza dionica itd. Drugi tip kolokacija je bio manje
idiomatski, a više kompozicijski. To su bili nizovi riječi koji se pojavljuju zajedno
prekinuti prijedlogom ili veznikom, npr. prava i običaji, puške i municija itd.
Proces ekstrakcije kolokacije odvija se nad korpusom. U našem slučaju to je bio skup
od 7008 dokumenata, zakona iz “Narodnih novina“. Taj korpus je dobar uzorak svih
dokumenata koji se trebaju indeksirati. U slučaju da je potrebno indeksirati drugačije
dokumente, proces ekstrakcije kolokacija ponavlja se nad drugim korpusom koji
dobro predstavlja željeni skup dokumenata. Ekstrakcija kolokacija odvija se
neovisno o sustavu SPID, koji prima samo popis ekstrahiranih kolokacija za potrebe
prikaza relevantnih podataka indeksatorima.
U poglavlju 4.2.2. navedeni su razlozi zašto se obavlja ekstrakcija kolokacija, a u
nastavku ovog poglavlja pobliže je opisano kako se obavlja ekstrakcija kolokacija
nad korpusom koji reprezentira skup dokumenata za indeksiranje.
4.4.1. RJEŠENJE PROBLEMA EKSTRAKCIJE KOLOKACIJA
Mnogi autori rješavali su problem ekstrakcije kolokacija, ali zbog različitih definicija
kolokacija, rezultat je bio različit pristup samoj ekstrakciji i velikom broju različitih
statističkih mjera koje se koriste.
Za ekstrakciju n-grama u dokumentima pisanim na engleskom jeziku razvijeni su
različiti algoritmi. Jedan od algoritama je opisan u radu Mladenić et al. [11].
Predloženi algoritam je zbog morfološkog siromaštva engleskog jezika vrlo
jednostavan i temelji se na usporeñivanju riječi iz teksta s kolekcijom pronañenih n-
grama pohranjenoj u mapi. Smadja [26] koristi ekstrakciju kolokacija za generiranje
jezika te pri tome pokušava naći duže kolokacije, posebno one idiomatskog značenja.
Sustav za poluautomatsko indeksiranje dokumenata
30
Pri tome koristi različite statističke mjere u cilju pronalaženja što boljeg rješenja
zadatka. Goldman [28] koristi svoj sustav FipsCo za ekstrakciju termina te se pri
tome oslanja na kvalitetan analizator rečenične strukture. Za razliku od njih dvojice,
Wu [27] rješava problem pomoću dvojezičnog poravnatog korpusa i pri tome obavlja
veći broj koraka predobrade u kombinaciji sa statističkom mjerom i algoritmom za
poravnavanje riječi.
Evaluacija ekstrahiranih kolokacija obavlja se takoñer na razne načine uz pomoć
stručnog znanja profesionalnih leksikografa ili pomoću WordNeta.
Zbog velikog broja morfoloških oblika koje riječi hrvatskog jezika posjeduju bilo je
potrebno osmisliti način pogodan za nalaženje kolokacija u dokumentima pisanim na
hrvatskom jeziku. Rješenje problema opisano je u radu Petrović i suradnici [29].
Korištenjem opisane metode dobiveni su popisi kolokacija koji su iskorištene unutar
sustava SPID.
4.4.2. PRIJENOS NA SPID
U prethodnom poglavlju navedeni su načini na koje se mogu ekstrahirati kolokacije
iz nekog korpusa. Ovdje ćemo opisati način na koji se te kolokacije koriste da bi
upotpunile informacije pomoću kojih indeksator odlučuje kojim će deskriptorima
indeksirati dokument.
Kolokacije koje se traže u tekstu ne moraju se nužno sastojati od uzastopnih riječi.
Npr. u tekstu „...kamatne stope velikih poslovnih banaka...“ ne bi bila ekstrahirana
kolokacija koja se sastoji od 4 riječi „kamatne stope poslovnih banaka“, ako bi se
promatrale samo uzastopne riječi. U svrhu toga za ekstrakciju udaljenih kolokacija
definiran je kolokacijski prozor. Za kolokacijski prozor definira se širina
kolokacijskog prozora M kao broj riječi koje obuhvaća prozor. Svakih N riječi iz
kolokacijskog prozora pokušava se spojiti da bi se provjerilo formiraju li tih N riječi
kolokaciju.
Sustav za poluautomatsko indeksiranje dokumenata
31
Slika 13. Grafička apstrakcija postupka ekstrakcije n-grama. Uočava se prozor koji obuhvaća tri pojavnice iz dokumenta, od kojih se dvije pokušavaju složiti u n-gram.
Provjera je li nekih N riječi tvori kolokaciju obavlja se u više koraka. U prvom
koraku se svaka riječ od odabranih n lematizira (vidi poglavlje 5.6). Kao rezultat
lematizacije n-grama dobije se skup
L(n-gram) = L(w1) × L(w2) × ... × L(wn)
gdje je L(wi) skup lema neke riječi, a × označava kartezijev produkt. U drugom
koraku provjeravamo je li n-gram u popisu kolokacija. U slučaju da se n-gram nalazi
u popisu kolokacija, tada se frekvencija za tu kolokaciju povećava za jedan i n-gram
se sprema u mapu. U mapu se spremaju slijedeće informacije :
• skup L(n-gram) • skup različnica w1, w2,..., wn • frekvencija pojavljivanja n-grama • frekvencija pojavljivanja pojedinog skupa različnica.
Provjera je li n-gram u popisu kolokacija obavlja se tako da se provjeri da li je neki
element popisa kolokacija takoñer element skupa L(n-gram).
U nastavku je dan opis algoritma u pseudokodu sličnom programskom jeziku C.
Varijable korištene u pseudokodu:
• Doc – dokument koji se obrañuje • M – veličina kolokacijskog prozora • N – veličina n-grama
do sada
pronañeni n-grami
zimskog
sporta
zapadni greben
završni krug
zemaljska kugla
zimski sport
zima
sport
pogodak!
tekst dokumenta
Sustav za poluautomatsko indeksiranje dokumenata
32
• ngramSet – niz n-grama • L – označava skup lema neke riječ • lematizedNgram – skup n-torki lematiziranih različnica u n-grama • LargeNgramSet – skup pronañenih n-grama u dokumentu • CreateNgram – funkcija koja vraća n-grame veličine N unutar kolokacijskog
prozora širine M krenuvši od pozicije i u dokumentu • LematizeWord – funkcija koja vraća skup lema neke različnice • colocationList – popis kolokacija dobiven ekstrakcijom kolokacija iz korpusa
for i = 0 to |Doc| - M do {
ngramSet[] = CreateNgram(Doc, i, M, N);
foreach(ngram in ngramSet){
for j = 0 to |ngram| do {
L[j][] = LematizeWord(ngram[j]);
}
lematizedNgram[] = CartezianProduct(L, |ngram|);
if (intersection(colocationList, lematizedNgram) ≠ φ){ LargeNgramSet += ngram;
}
}
}
4.5. PODRŽANI ZAPISI EUROVOC POJMOVNIKA
Kako je pojmovnik Eurovoc nastao upotrebom drugih alata, izbor formata za zapis
pojmovnika ograničen je na formate zapisa koje koriste takvi alati. Podržana su dva
najčešća formata zapisa pojmovnika: CDS/ISIS baza i XML dokument.
Oba formata, ISIS baza i XML dokument, logički su sastavljeni kao popis zapisa
svih deskriptora. Svaki zapis sastoji se od jedinstvenog broja deskriptora, naziva
deskriptora, dodatnih informacija te od veza na druge deskriptore.
Svaka veza pokazuje na neki drugi deskriptor navodeći njegov jedinstveni broj.
Naziv deskriptora naveden je u dijelovima, kao više tekstovnih polja (u XML-u kao
više elemenata, u ISIS bazi kao podnizovi jednog većeg niza). Sastavljanjem polja
naziva prema odreñenim pravilima dobije se čitljiv naziv deskriptora. Na primjer niz
znakova "^aOpćinski sud^eZadar" čini naziv "Općinski sud (Zadar)".
Svaki zapis (osim zapisa glavnih područja) ima vezu tipa BT (engl. broader term, širi
pojam). Pomoću te veze moguće je rekonstruirati hijerarhiju stabla Eurovoca.
Sustav za poluautomatsko indeksiranje dokumenata
33
4.6. IMPLEMENTACIJA LEMATIZACIJE
Algoritam lematizacije treba za danu riječ vratiti njenu lemu i MSD
(morfosintaktički deskriptor). Lematizacijski rječnik sadrži ureñene trojke: (oblik,
lema, MSD). Na primjer, rječnik može sadržavati i sljedeće trojke:
• (sveučilišta, sveučilište, N=npa) • (sveučilišta, sveučilište, N=npg) • (sveučilišta, sveučilište, N=npn) • (sveučilišta, sveučilište, N=npv) • (sveučilišta, sveučilište, N=nsg)
Riječ sveučilišta ima samo jednu moguću lemu, sveučilište. Javlja se kao imenica
srednjeg roda u genitivu (Noun=neuter plural genitiv), nominativu i vokativu
množine, te u genitivu jednine. Za lematizaciju hrvatskog jezika korišten je
automatski generiran morfološki rječnik opisan u [20], a za lematizaciju engleskog
jezika korišten je javno dostupan morfološki rječnik [21].
Problem se javlja pri izboru strukture u koju će se zapisati rječnik, tj. ureñene trojke
rječnika. Na primjer, hrvatski rječnik koji je korišten u sustavu sadrži preko 500
tisuća različitih oblika riječi, oko 700 tisuća različitih parova oblika (oblik, lema), te
oko 3,1 milijun ureñenih trojki. Veliki broj različitih riječi i ureñenih trojki postavlja
nemale memorijske zahtjeve. Kako je potrebna i brza pretraga rječnika, tj. za brzo
izabiranje svih trojki čiji je prvi element jednak zadanoj riječi, problem odabira
strukture nije trivijalan. Ako se koristi jednostavnija struktura podataka (raspršeno
adresiranje po prvoj riječi) potrebne su vrlo velike količine memorije.
Možemo primijetiti da je za potrebe lematizacije dovoljna struktura kojom bi se
učinkovito mogli naći svi nizovi znakova kojima je zadani niz znakova prefiks.
Svaka ureñena trojka (oblik, lema, MSD) dodavala bi se u strukturu kao jedan niz
znakova, s elementima odvojenim zarezom (pretpostavljamo da nijedan element
trojke ne sadrži zarez). Na primjer ta bi struktura sadržavala niz znakova
"sveučilišta,sveučilište,N=npa". Traženjem svih nizova znakova kojima je prefiks niz
znakova "sveučilišta," mogu se naći sve leme i MSD-ovi riječi "sveučilišta". Radi
lakšeg zapisa od sada ćemo upotrebljavati riječ umjesto niz znakova.
Ostaje pitanje načina spremanja strukture koja bi omogućila spremanje skupa riječi
uz uvjet da se mogu učinkovito naći sve riječi kojima je zadana riječ prefiks. Traženu
strukturu možemo jednostavno zapisati u obliku nedeterminističkog konačnog
automata koji prihvaća samo skup riječi koje sadrži rječnik (slika 14). Ako je
potrebno lematizirati riječ w, tada je rezultat lematizacije skup svih riječi koje
automat prihvaća od skupa stanja δ(δ(S,w),','), gdje je S početno stanje. Na primjer,
Sustav za poluautomatsko indeksiranje dokumenata
34
ako se želi lematizirati riječ vode, rezultat lematizacije jest skup riječi { vod, voda,
voditi }.
Slika 14. Nedeterministički automat koji prihvaća sljedeće riječi (nizove znakova): "voda,vod", "voda,voda", "vode,vod", "vode,voda", "vode,voditi". MSD-ovi su izostavljeni radi jednostavnosti.
Odabirom nedeterminističkog automata kao strukture nisu se smanjili memorijski
zahtjevi, a pretraživanje je neučinkovito jer je δ(δ(S,w),',') skup stanja. Brže
pretraživanje, kao i smanjenje memorijskih zahtjeva postiže se pretvaranjem rječnika
iz nedeterminističkog automata u deterministički, tj. u automat u kojem ne postoji
stanje s dva prijelaza označena istim završnim znakom (slika 15). Možemo
primijetiti da se na ovaj način iskoristila činjenica da veliki broj riječi u rječniku ima
zajedničke prefikse koji su neznatno kraći od samih riječi.
Slika 15. Pretvaranjem nedeterminističkog automata sa slike 14 u deterministički znatno se smanjio broj stanja. Rezultati su vidljiviji na stvarnim rječnicima koji sadrže veliki broj vrlo sličnih riječi.
Ipak, još nije iskorištena činjenica da mnogo riječi u rječniku dijeli zajedničke
sufikse, pogotovo u slučaju kada se bilježi MSD riječi (skup svih MSD-ova znatno je
manji od broja riječi). Problem se može djelomično riješiti minimalizacijom
automata sa slike 15 kako je prikazano na slici 16.
a
v o d a
, v o d
e , v o d a
i t i
o d a , v o d
o d a , v o d a
v o d e , v o d
o d e , v o d a
o d e , v o d i t i
v
v
v
v
Sustav za poluautomatsko indeksiranje dokumenata
35
Slika 16. Minimalizacijom automata sa slike 15 dodatno se smanjuje broj stanja.
Dodatno smanjenje broja stanja postiže se posebnim kodiranjem druge riječi ureñene
trojke (oblik, lema, MSD). Druga riječ može se dobiti ispuštanjem zadnjih k znakova
prve, te dodavanjem proizvoljnog niza znakova na kraj. Ako se broj k kodira kao npr.
0='A', 1='B', itd., onda se npr. trojka (sveučilišta, sveučilište, N=npa) može zapisati
kao "sveučilišta,Be,N=npa" (riječi sveučilišta zamijenjen je zadnji znak a sa znakom
e).
Slika 17. Umjesto nizova znakova "voda,vod", "voda,voda", "vode,vod", "vode,voda", "vode,voditi" u automat se spremaju nizovi znakova u kojima je lema kodirana prema obliku: "voda,B", "voda,A", "vode,B", "vode,Ba", "vode,Biti".
Svako stanje može se predstaviti kao skup prijelaza. Svi prijelazi mogu se zapisati u
listu na način da svako stanje sadrži sve prijelaze u nekom intervalu. Ako se
informacija o tome je li sljedeće stanje završno ili nezavršno doda svakom prijelazu,
te ako se označi zadnji prijelaz nekog stanja, onda nije potrebno nigdje eksplicitno
držati informacije o stanjima, tj. ne mora se pamtiti interval liste prijelaza za svako
stanje. Nadalje, pamteći automat na ovaj način tijekom minimalizacije dodatno se
može smanjiti ukupni broj prijelaza. Na tablici 1 vidi se konačan zapis automata.
v o d a
, A
e , B a
B
i t i
v o d a
, v o
e , v o d a
a
d
i t i
Sustav za poluautomatsko indeksiranje dokumenata
36
Tablica 1. Automat sa slike 17 zapisan je u obliku liste prijelaza. Stanje koje počinje s prijelazom broj 0 nema niti jedan prijelaz.
Svaki prijelaz može se zapisati u 4 okteta – 1 oktet za završni znak, 2 bita za
zastavice, te 22 bita za redni broj sljedećeg prijelaza. Time je veličina automata
ograničena na otprilike 4000000 prijelaza, što se pokazuje kao dovoljno veliko
ograničenje. Na primjeru hrvatskog rječnika, automat se može smanjiti s oko 70
milijuna stanja i prijelaza na oko 105 tisuća stanja i 220 tisuća prijelaza. Veličina
takvog automata u radnoj memoriji je oko 220K · 4B=880 KB.
Kako se rječnik ne generira niti ne mijenja za vrijeme izvršavanja programa, vrijeme
izvršavanja minimalizacije nije toliko bitno. Praktičan problem nastaje s radnom
memorijom potrebnom za izvršavanje algoritma minimalizacije. Jednostavniji
algoritam koji drži cijeli početni rječnik u memoriji zahtijeva preko 500 MB radne
memorije, pa je pravo rješenje inkrementalni algoritam [16] koji održava minimalni
automat nakon dodavanja svake riječi.
Mali memorijski zahtjevi ovako zapisanog rječnika omogućavaju dodavanje velikog
broja novih riječi, te lakšu i bržu zamjenu rječnika za vrijeme izvršavanja programa.
Prijelaz Završni
znak
Sljedeće
stanje je
završno
Sljedeće
stanje počinje
sa prijelazom
Zadnji
prijelaz u
stanju
1. v ne 2 da
2. o ne 3 da
3. d ne 4 da
4. a ne 6 ne
5. e ne 9 da
6. , ne 7 da
7. A da 0 ne
8. B da 0 da
9. , ne 10 da
10. B da 11 da
11. a da 0 ne
12. i ne 13 da
13. t ne 14 da
14. i da 0 da
Sustav za poluautomatsko indeksiranje dokumenata
37
4.7. EKSTRAKCIJA EUROVOC DESKRIPTORA IZ DOKUMENTA
Kod morfološki bogatih jezika, poput hrvatskog, direktnom pretragom teksta
deskriptora u tekstu dokumenta nalazi se samo manji broj deskriptora. Npr.
jednostavnom pretragom ne nalazi se deskriptor "nadzor nad tržištem" u tekstu koji
sadrži "... nedostatak nadzora nad tržištem ..." Jezici siromašne morfologije, poput
engleskog, imaju znatno manje problema sa jednostavnim traženjem. Nadalje,
morfologija hrvatskog je daleko složenija od morfologije engleskog jezika, te
jednostavne heuristike korištene pri pretraživanju ne daju dovoljno precizne
rezultate.
Efekti morfologije mogu se neutralizirati korištenjem lematizacije. U tekstu se tada
nalazi znatno veći broj deskriptora, uz zanemariv pad preciznosti [14]. Pod
preciznost ekstrakcije smatramo broj točno ekstrahiranih deskriptora podijeljen sa
ukupnim brojem ekstrahiranih deskriptora. Prilikom ekstrakcije deskriptora pazi se
da se ne ekstrahiraju neki očito irelevantni deskriptori.
4.7.1. FORMALNI OPIS EKSTRAKCIJE
Kao preduvjet definiciji ekstrakcije jest definicija funkcije lematizacije. Neka je W
skup svih riječi i ( )WWL ℘→: funkcija koja preslikava svaku riječ na njezin skup
lema. Na primjer L(vode) = { vod, voda, voditi }. Ako se ne koristi lematizacija ili
ako riječ w nije u rječniku (što je čest slučaj kod riječi koje nemaju više oblika), onda
je L(w)={w}. Kažemo da se riječi w1 i w2 podudaraju akko ( ) ( ) ∅≠∩ 21 wLwL , tj.
ako su obje riječi oblici zajedničke leme.
Deskriptor predstavljamo kao listu riječi (t1, ..., tm) i dio teksta bez interpunkcija kao
listu riječi (w1, ..., wn). Definiramo tri relacije koje su bitne za ekstrakciju.
Deskriptor (t1, ..., tm) podudara se sa listom riječi (w1, ..., wn) na poziciji k akko
nmk ≤−+ 1 i ako se riječi ti i wk+i-1 podudaraju za mi ,,1 K= .
Deskriptor tA = (t1, ..., tn), koji se podudara sa nekom listom riječi na poziciji a, sadrži
deskriptor tB = (t1, ..., tm), koji se podudara sa tom istom listom riječi na poziciji b,
akko a ≤ b i ako je b + m ≤ a + n.
Deskriptor tA = (t1, ..., tn), koji se podudara sa nekom listom riječi na poziciji a,
preklapa se sa deskriptorom tB = (t1, ..., tm), koji se podudara sa tom istom listom
riječi na poziciji b, akko a < b < a + n < b + m.
Sustav za poluautomatsko indeksiranje dokumenata
38
Slika 18. Skup ekstrahiranih deskriptora sadrži najduži deskriptor ekstrahiran u koraku a) i sadržaje skupova lijevia={(premija, osiguranja)} i desnia={(motor)}. Skupovi lijevia i desnia izračunavaju se u koracima b), odnosno c).
Ako deskriptor tA sadrži deskriptor tB, onda je gotovo sigurno da je deskriptor tA
specifičniji. Kako tijekom ekstrakcije uvijek preferiramo specifičnije deskriptore, jer
nose više semantičke informacije, deskriptor tB će se ignorirati. Na primjer,
deskriptor "ravnopravnost muškaraca i žena" sadrži deskriptore "muškarac" i "žena",
pa je logično da preferiramo duži izraz. Rjeñi je slučaj kada se dva deskriptora
preklapaju. Na primjer, isječak teksta "premija osiguranja motornih vozila" sadrži
deskriptore "premija osiguranja" i "osiguranje motornih vozila", koji se preklapaju. U
ovakvim slučajevima odlučujemo se za ekstrakciju oba deskriptora.
Sam proces ekstrakcije može se formalizirati na sljedeći način. Neka je T skup svih
deskriptora (termina), U∞
=
+ =1n
nWW skup svih ureñenih n-torki riječi i
( )TWE ℘→+: funkcija koja preslikava listu riječi ( ) +∈Www n,,1 K na skup
ekstrahiranih deskriptora. Na primjer, E(Premija, osiguranja, motornih, vozila, ovisi,
o, snazi, motora)={(motor), (premija osiguranja), (osiguranje, motornih, vozila)},
kao što se vidi na slici 18.
Funkciju E možemo definirati rekurzivno. Ako nema deskriptora u listi riječi
( )nww ,,1 K , tada je ( ) ∅=nwwE ,,1 K . Inače, ( ) desnilijevitwwE n ∪∪=,,1 K , gdje
je t najljeviji od najdužih deskriptora u listi riječi ( )nww ,,1 K . Ako nema deskriptora
koji počinju prije deskriptora t, onda je lijevi : ∅= , a inače lijevi : ( )kwwE ,,1 K= ,
gdje je k najveći indeks završetka bilo kojeg takvog deskriptora. Skup desni definiran
t=(osiguranje, motornih, vozila) lijevia=E(Premija,osiguranja) desnia=E(ovisi,o,snazi,motora)
a) Premija osiguranja motornih vozila ovisi o snazi motora.
t=(premija, osiguranja), lijevib=Ø, desnib= Ø
b) Premija osiguranja motornih vozila ovisi o snazi motora.
t=(motor), lijevic=Ø, desnic=Ø
c) Premija osiguranja motornih vozila ovisi o snazi motora.
Sustav za poluautomatsko indeksiranje dokumenata
39
je analogno. Biramo najljeviji skup da bismo razriješili konflikt izmeñu više najdužih
izraza iste duljine. Ovakva definicija podrazumijeva da deskriptor koji je sadržan
neće biti ekstrahiran, dok će onaj koji se samo preklapa biti ekstrahiran.
4.7.2. GREŠKE KOD EKSTRAKCIJE DESKRIPTORA
U procesu koji je opisan mogu se javiti dvije vrste grešaka: greške nastale radi
nepreciznosti lematizacije i greške nastale radi leksičke višeznačnosti.
Prisjetimo se da ako rječnik ne sadrži neku riječ, onda pretpostavljamo da je ta riječ
lema. Ukoliko je pretpostavka da lema nepoznate riječi odgovara toj riječi pogrešna,
može se dogoditi da se neki deskriptori neće ni pronaći u tekstu. Takva pogreška
utječe na odaziv, ali ne i na preciznost kod ekstrakcije deskriptora. Riječce, veznici,
prijedlozi i druge neinflektivne vrste riječi nemaju drugih oblika u kojima se
pojavljuju, pa je razumljiva pretpostavka da je lema nepoznate riječi ta ista riječ.
Gubitak u preciznosti nastaje kada se algoritmom lematizacije ustanovi da se dvije
riječi podudaraju, a podudaraju se samo zato što je jedna od lema pogrešna. Ako se
vrši lematizacija pomoću rječnika, onda su te greške uzrokovane greškama u
rječniku, pa se lako mogu ispraviti. Kod višerječnih izraza učestalost pogreške
uzrokovane krivom lematizacijom je zanemariva. Eksperimentalno smo utvrdili da je
svega 0,28% engleskih i 1,66% hrvatskih deskriptora pogrešno lematizirano.
Pogreške nastaju i radi homografije (javlja se kod riječi koje se jednako pišu, a imaju
različito značenje) i polisemije (slučaj kada više oblika imaju istu lemu, ali različita i
nesrodna značenja). Greške nastale radi homografije mogle bi se razriješiti
promatranjem šireg konteksta oko jedne riječi i odabirom ispravne leme. Slično kao i
prije, kod višerječnih izraza ovakve greške su zanemarive. U praksi tek je 1,65%
ekstrahiranih izraza (i za hrvatski i za engleski jezik) bilo pogrešno radi homografije
i polisemije [14].
4.7.3. IMPLEMENTACIJA EKSTRAKCIJE
Nekoliko detalja razlikuje samu implementaciju ekstrakcije od formalne definicije.
Tekst dokumenta razdvojen je u više interpunkcijom omeñenih dijelova. Ekstrakcija
se provodi nad svakim dijelom teksta posebno. Za svaki deskriptor pamti se svako
njegovo pojavljivanje u tekstu, tako da se kasnije ta informacija može iskoristiti za
obilježavanje deskriptora u korisničkom sučelju.
Ekstrakcija deskriptora iz jednog dijela teksta provodi se u dvije faze: prvo se nañu
sva pojavljivanja svakog deskriptora, da bi se tek kasnije iskoristila definicija skupa
Sustav za poluautomatsko indeksiranje dokumenata
40
ekstrahiranih deskriptora za odabir onih bitnijih. Implementacija se u ovom dijelu
razlikuje od definicije u tome što se ne bira najljeviji najduži deskriptor ako postoji
više najdužih, već se bira onaj bliže sredini. Razlog tome jest smanjivanje dubine
rekurzije. U degeneriranom bi slučaju prvi način radio sa vremenom.
O(n2),
gdje je n broj riječi, dok je u drugom slučaju složenost algoritma odabira deskriptora
u najgorem slučaju
O(n log n).
Nalaženje najdužeg deskriptora mora biti brzo jer postoji blizu 10000 deskriptora i
asocijata, te bi naivno traženje zahtijevalo sljedeći broj usporedbi skupova lema:
nd · wd · w
nd – ukupan broj različitih deskriptora ≈ 10000
wd – prosječan broj riječi po deskriptoru ≈ 2,3
n – broj riječi u dokumentu
Usporedba dva skupa lema potrebna je da bi se utvrdilo odgovara li riječ iz
deskriptora riječi u dokumentu. Ta operacija nije trivijalna operacija (npr. poput
aritmetičkog množenja), a broj riječi po dokumentu može biti vrlo velik, pa je
ovakvo rješenje neprihvatljivo. Bolje rješenje može se naći pretprocesiranjem popisa
deskriptora i asocijata. Generiraju se sve moguće lematizacije svakog deskriptora i
asocijata i spremaju u jedinstveni popis (Tablica 2). Traženje deskriptora sada je
znatno lakše.
Tablica 2. Sve lematizacije deskriptora "dijelovi vozila", "vode Zajednice" i "voda" stavljaju se u zajednički popis koji je poredan po abecedi. Za svaku moguću lematizaciju pamti se referenca na originalni deskriptor.
Lematizacija Deskriptor
dio vozilo dijelovi vozila
dio voziti dijelovi vozila
vod zajednice vode Zajednice
voda voda
voda zajednice vode Zajednice
voditi zajednice vode Zajednice
Sustav za poluautomatsko indeksiranje dokumenata
41
Za svaku riječ iz dijela teksta u kojem se vrši pretraga pokušavaju se naći svi
deskriptori koji počinju s tom riječi. Krene se "oprezno", tražeći deskriptore duljine
jedne riječi, zatim se traže deskriptori duljine dvije riječi, itd. Ako se traži deskriptor
duljine n, onda se generiraju sve lematizacije n riječi počevši od trenutne, te se gleda
je li ijedna od generiranih lematizacija prefiks neke od lematizacija u listi
lematiziranih deskriptora. Ako nijedna generirana lematizacija nije prefiks, nema
potrebe za traženjem deskriptora duljine n + 1, a ako lematizacija nije samo prefiks,
već odgovara nekoj od lematizacija iz liste lematiziranih deskriptora, onda je
deskriptor nañen.
Slika 19. Za svaku riječ pokušavaju se naći svi deskriptori koji počinju sa tom riječi. Zelenom bojom označene su lematizacije koje odgovaraju nekom deskriptoru, žutom bojom su označene lematizacije koje su prefiks barem jednog deskriptora, a crvenom bojom su označene lematizacije koje nisu prefiks nijednog deskriptora.
Ako se provjera je li dana lematizacija prefiks neke od lematizacija u listi
lematiziranih deskriptora izvede binarnim pretraživanjem, trajanje te operacije je
O(log nL),
nL – ukupan broj lematizacija svih deskriptora
Broj lematizacija višerječnog izraza eksponencijalna je funkcija ovisna o broju riječi
u izrazu, pa bi se mogao očekivati veliki ukupni broj lematizacija svih deskriptora.
Na svu sreću, homografija je vrlo rijetka pojava u hrvatskom jeziku, pa je konstanta
eksponencijalne funkcije vrlo malena. Takoñer, svi su izrazi vrlo ograničene dužine,
pa se i na taj način ograničava broj lematizacija. Ukupan broj lematizacija svih
deskriptora manji je od 20000 za hrvatski, tako da je ubrzanje značajno, reda veličine
nd/log2(nL).
Lematizacija Deskriptor
dio vozilo dijelovi vozila
dio voziti dijelovi vozila
vod zajednice vode Zajednice
voda voda
voda zajednice vode Zajednice
voditi zajednice vode Zajednice
Voda iz dijela vozila prolila se po kolniku.
voda
voda iz
iz
dio
dio vozilo
dio vozilo proliti
dio vozila proliti
vozilo
vozila
proliti
se
po
kolnik
Sustav za poluautomatsko indeksiranje dokumenata
42
4.7.4. POVEĆANJE BROJA NAðENIH DESKRIPTORA
NAKON KORIŠTENJA LEMATIZACIJE
Provedeni su eksperimenti na paralelnom hrvatsko-engleskom korpusu sastavljenom
od 39 pravnih dokumenata Europskih zajednica i od zakona Republike Hrvatske.
Broj riječi varirao je od 365 do 26651 za engleske tekstove, te od 297 do 19946 za
isti skup hrvatskih tekstova. U engleskim tekstovima korištenjem lematizacije
nañeno je 30% više deskriptora (ubrajajući ponavljanja), te 14% više različitih
deskriptora. Za hrvatski jezik povećanje je iznosilo 248% kod broja ne nužno
različitih deskriptora, te 75% kod broja različitih deskriptora.
Pad preciznosti, uz odaziv standardne statističke mjere za dohvat informacija, iznosio
je oko 3% za hrvatske dokumente te nešto manje od 2% za engleske dokumente.
Sustav za poluautomatsko indeksiranje dokumenata
43
5. VIŠEJEZIČNOST SUSTAVA SPID
Jedna od bitnih razlika našeg sustava u odnosu na neke slične postojeće sustave jest
podrška za višejezičnost. Korisnicima je omogućeno biranje različitih jezika u tri
dijela sustava. Prvo, može se kontrolirati jezik cijelog korisničkog sučelja, čime se
omogućava korištenje sustava i izvan granica Hrvatske. Omogućeno je vrlo
jednostavno prevoñenje programa – u vanjskim tekstovnim datotekama navode se
prijevodi svakog korisničkog elementa.
Slika 20. Sučelje programa SPID na engleskom jeziku
Nadalje, može se birati jezik kojim će se prikazivati pojmovnik Eurovoca -
višejezičnost je podržana u samom formatu pojmovnika i u XML formatu i u ISIS
bazi. Na kraju, podržana je i višejezičnost dokumenata. Naime, nije dovoljno samo
prikazati dokument, već se funkcije vezane uz obradu jezika trebaju prilagoditi.
Morfologija se razlikuje od jezika do jezika, tako da je potrebno podržati različite
jezike u postupku lematizacije. Korisnicima je omogućeno biranje jezika, te biranje
načina lematizacije (slika 21). Posebno za engleski jezik omogućeno je i korištenje
Porterovog algoritma.
Sustav za poluautomatsko indeksiranje dokumenata
44
Slika 21. Odabran je engleski jezik te lematizacija rječnikom. Neke najčešće riječi se ignoriraju, pa se ne prikazuju u listi lema i različnica.
Budući da su odreñeni dokumenti vrlo specifični i da nije svaki indeksator dobro
upoznat sa svakim područjem, u nekim slučajevima se koristi pojmovnik da se dobiju
dodatne informacije o pojmovima. To je posebno istaknuto kada je dokument, koji se
treba indeksirati, pisan na drugom stranom jeziku. Na slici 22 prikazan je primjer
paralelnog rada sustava na dva jezika: rezultati izlučivanja deskriptora iz teksta na
engleskom jeziku koriste se kako bi se brzo našle informacije o traženom pojmu na
hrvatskom jeziku.
Trenutno su jedini podržani jezici hrvatski i engleski, iako dodavanje novog jezika
nije složeno. Rad sustava na drugim jezicima podrazumijeva: postojanje Eurovoca na
tom jeziku (već postoji na 22 jezika), prevedeno sučelje i morfološki leksikon za
drugi jezik (postoji za većinu europskih jezika).
Sustav za poluautomatsko indeksiranje dokumenata
45
Slika 22. U dokumentu pisanom na engleskom jeziku sustav je pronašao deskriptor "principles of subsidiarity". Korisnik može pronaći isti deskriptor u Eurovocu na hrvatskom jeziku te vidjeti dodatne informacije.
Sustav za poluautomatsko indeksiranje dokumenata
46
6. ZAKLJUČAK
U ovom radu opisan je sustav koji pomaže pri sadržajnom označavanju dokumenata.
Upotreba sustava omogućuje brže i uniformnije indeksiranje dokumenata.
Sustav se sastoji od dva dijela. U prvom dijelu prikazuju se različite statističke i
vizualne informacije o dokumentu koji se indeksira, dok je drugi dio Eurovoc
preglednik kojim se omogućuje lakše i brže odreñivanje deskriptora kojima će se
indeksirati tekst.
Indeksiranje je naporan i vrlo zahtjevan posao koji od indeksatora traži maksimalnu
koncentraciju, pa je sustav vizualno prilagoñen tako da je rad na njemu jednostavan i
ugodan.
Prilikom izrade sustava dotaknuti su problemi morfološke složenosti hrvatskog
jezika, zbog čega su razvijani i prilagoñavani algoritmi za statističku obradu
dokumenata koja uključuje brojanje lema, različnica i kolokacija. Takoñer je riješen
problem učinkovitog pohranjivanja morfološkog leksikona hrvatskog jezika.
Prilikom izrade algoritama poseban naglasak je bio na njihovoj učinkovitosti i što
manjem memorijskom zauzeću i u tu svrhu osmišljene su i implementirane prikladne
strukture podataka.
Zbog važnosti komunikacije Hrvatske s Europskom unijom i u svrhu boljeg
povezivanja sa meñunarodnim institucijama, sustav je razvijan višejezično.
Višejezičnost se očituje u višejezičnom pojmovniku Eurovoc, jednostavnom
prijevodu sučelja aplikacija i nezavisnih implementacija algoritama za lematizaciju.
Proces automatskog indeksiranja dokumenata nije još dosegao razinu i kvalitetu koju
postižu indeksatori. Postojeći automatski indeksatori služe samo kao prvi korak u
dodjeljivanju deskriptora tako što predlažu deskriptore koje onda indeksatori ručno
pregledavaju i donose odluku o prihvaćanju. Imajući to na umu, razvijeni se sustav
približava funkcionalnosti automatskih indeksatora i vrlo je vrijedan u okolnostima
gdje ne postoji odgovarajući skup dokumenata za učenje.
Sustav će pomoći u generiranju značajnog broja dokumenata indeksiranih
deskriptorima Eurovoca na uniformniji način, u isto vrijeme štedeći ljudske resurse.
Skup indeksiranih dokumenata koristit će se za strojno učenje automatskog
pridjeljivanja deskriptora dokumentima.
Sustav je u upotrebi u Hrvatskoj informacijsko-dokumentacijskoj referalnoj agenciji
od travnja 2005. godine. U travnju 2006. godine dan je na uporabu stručnoj službi
Europskog parlamenta u Bruxellesu [30].
Sustav za poluautomatsko indeksiranje dokumenata
47
7. LITERATURA
[1] Extensible Markup Language (XML) Version 1.0 Specification. World Wide Web Consortium, 2004. http://www.w3.org/tr/2004/rec-xml-20040204/ [02/13/2005]
[2] Addressing the Language Barrier Problem. Joint Research Center, Workshop on EUROVOC, 2004. http://www.jrc.cec.eu.int/langtech/eurovoc/eurovoc-workshop_sept2004.html [02/22/2005]
[3] Rich Text Format (RTF) Specification. Microsoft Corporation, 1999. http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnrtfspec/html/rtfspec.asp
[4] Skopal T. ACB Compression Method and Query Preprocessing in Text Retrieval Systems. In: Proceedings of DATESO, Desna, Czech Republic, 2002.
[5] Ferber R. Automated Indexing with Thesaurus Descriptors: A Co-occurrence based Approach to Multilingual Retrieval. In: Research and Advanced Technology for Digital Libraires. Proceedings of European Conference of Digital Libraries 1997.
[6] Pouliquen B, Steinberger R, Ignat C. Automatic Annotation of Multilingual Text Collections with a Conceptual Thesaurus. In: Proceedings of the Workshop Ontologies and Information Extraction Summer School The Semantic Web and Language Technology – Its Potential and Practicalities. Bucharest, Romania, 28 July – 8 August 2003.
[7] Steinberger R. Cross-lingual Keyword Assignment. In: Proceedings of the XVII Conference of the Spanish Society for Natural Language Processing, Jaen, Spain, 12-14 September 2001.
[8] Steinberger R, Pouliquen B. Cross-lingual Indexing. Final Report for the IPSC Exploratory Research Project. JRC Internal Note, October 2003.
[9] Silvester JP, Genuardi MT, Klingbiel PH, Machine-aided indexing at NASA, Information Processing & Management, 1994, vol. 30, nº 5, p. 631-645.
[10] Lahtinen T. Automatic indexing: an approach using an index term corpus and combining linguistic and statistical methods. Academic Dissertation, University of Helsinki, Faculty of Arts, December 2000.
[11] Mladenić D, Grobelnik M. Word sequences as features in text-learning. Proceedings of the Seventh Electrotechnical and Computer Sc. Conference ERK'98, Ljubljana, Slovenia: IEEE section, 1998, pp. 145-148.
[12] Manning C, Schutze H. Foundations of statistical natural language processing, The MIT Press 2003.
[13] Kolar M, Vukmirović I, Dalbelo Bašić B, Šnajder J. Computer Aided Document Indexing System, Journal of Computing and Information Technology CIT, Vol. 13, No. 4, December 2005.
[14] Šarić F, Dalbelo Bašić B, Šnajder J, Eklić H. Enhanced Thesaurus Terms Extraction for Document Indexing, Proceedings of the 27th International Conference ITI, Cavtat, 2005.
[15] Tadić M, Šojat K. Finding Multiword Term Candidates in Croatian, Proceedings of IESL2003 Workshop. pp. 102-107, Borovets, Bulgaria 2003.
[16] Daciuk J, Mihov S, Watson B, Watson R. Incremental Construction of Minimal Acyclic Finite State Automata, Computational Linguistics, 26(1), pp. 3-16, March 2000.
[17] Thesaurus Eurovoc - Volume 2: Subject-Oriented Version. Ed. 3. Annex to the index of the Official Journal of the EC. Luxembourg, Office for Official Publications of the European Communities. http://europa.eu.int/celex/eurovoc.
[18] Bratanić M, ed. Pojmovnik EUROVOC, 2nd ed., HIDRA, Zagreb, 2000.
[19] Porter M. F. An algorithm for suffix stripping, Program, 14(3). pp. 130-137, 1980.
[20] Šnajder J. Rule-based automatic acquisition of large-coverage morphological lexicons for information retrieval. Tech. Report, MZOŠ 2003-082, ZEMRIS, FER, University of Zagreb, 2005.
Sustav za poluautomatsko indeksiranje dokumenata
48
[21] Automatically Generated Inflection Database http://wordlist.sourceforge.net [01/16/2005]
[22] Mijić J, Tadić M, Jančec M, Jovanov G. HTML to XML conersion for non-programmers, Proceedings of the 27th International Conference ITI, Cavtat, 2005.
[23] Tadić M, Jezične tehnologije i hrvatski jezik, Ex Libris, 2003.
[24] Luhn HP. A Statistical Approach to Mechanized Encoding and Searching of Literary Information. In: IBM Journal of Research and Development, 1(4), 1957.
[25] Biebricher P, Fuhr N, Lustig G, Schwanter M, Knorz G. The Automatic Indexing Sytem AIR/PHYS – From Research to Application. In: Proceedings of the 11th annual international ACM SIGIR conference on Research and development in information retrieval, 1988.
[26] Smadja F, McKeown K. Automaticly extracting and representing collocations for language generation. In Proc. of the 28th Annual Meeting of the Association of Computational Linguistics, 1990.
[27] [26][26]Wu CC, Chang JS. Bilingual collocation extraction based on syntactic and statistical analyses. Computational Linguistics and Chinese Language Processing, Vol. 9, No. 1, 2004. p. 1-20.
[28] Goldman JP, Wehrli E. FipsCo: A syntax-based system for terminology extraction. Grammar and Natural Language Processing Conference. Universite du Quebec at Montreal, 2001.
[29] Petrović S, Šnajder J, Dalbelo Bašić B, Kolar M. Comparison of Collocation Extraction Measures for Document Indexing. Prihvaćeno za objavljivanje na 28th International Conference ITI, Cavtat, 2006.
[30] Dalbelo Bašić B, Tadić M. Computer Aided Document Indexing System (CADIS) with EUROVOC. EUROVOC conference of Directorate for Parliamentary Documentation of the European Parliament, Spaak Building, European Parliament, Brussels, Belgium, March 10th 2006.
[31] Tadić M, Fulgosi S. Building the Croatian Morphological Lexicon. In: Proceedings of the EACL2003 Workshop on Morphological Processing of Slavic Languages, Budapest, 2003, pp. 41-46.
[32] Maron ME. Automatic Indexing : An Experimental Inquiry. In: Jorunal of the ACM, Vol. 8, No. 3, 1961.
Sustav za poluautomatsko indeksiranje dokumenata
49
O STUDENTIMA
Mladen Kolar
Roñen je 18. listopada 1983. u Našicama gdje je završio Prirodoslovno-matematičku gimnaziju. Trenutno je student pete godine Fakulteta elektrotehnike i računarstva, smjer računarstvo. Zanima ga računalna znanost. 2005. godine sa koautorima Vukmirović, Dalbelo Bašić i Šnajder izdaje rad Computer-Aided Document Indexing System, objavljen u časopisu Journal of Computing and Information Technology CIT, Vol. 13, No.4. Za isti rad u travnju 2006. godine dobija nagradu Nacionalne zaklade za znanost, visoko školstvo i tehnologijski razvoj Republike Hrvatske. Aktivno se bavi šahom i slobodnim penjanjem, a u slobodno vrijeme zaigra i badminton.
Frane Šarić
Roñen je 1. ožujka 1983. u Zadru. Neko vrijeme živi u Splitu, pa se seli u Zagreb, gdje završava XV. gimnaziju, te upisuje Fakultet elektrotehnike i računarstva. Student je pete godine smjera računarstva. Zanima ga programiranje i razni algoritmi vezani uz računarstvo. 2005. godine sa koautorima Dalbelo Bašić, Šnajder i Eklić sudjeluje na meñunarodnoj konferenciji Information Technology Interfaces u Cavtatu sa radom Enhanced Thesaurus Terms Extraction for Document Indexing. Za rad i prezentaciju osvaja nagradu za najbolji studenski rad na konferenciji. Voli more, jedrenje i putovanja po svijetu.
Igor Vukmirović
Roñen je 18. listopada 1982. u Zagrebu. Kao maturant XV. gimnazije u Zagrebu, 2001. godine upisuje Fakultet elektrotehnike i računarstva na kojem je danas student pete godine. Zanima ga programiranje, a ponekad odlutaju i u ekonomske vode. 2005. godine sa koautorima Kolar, Dalbelo Bašić i Šnajder izdaje rad Computer-Aided Document Indexing System, objavljen u časopisu Journal of Computing and Information Technology CIT, Vol. 13, No.4. Aktivno se bavi alpinizmom i visokogorskim planinarenjem, te badmintonom. Idealno slobodno vrijeme vidi u obliku putovanja s prijateljima. Česta su i ritualna ispijanja kavice na suncu.
Sustav za poluautomatsko indeksiranje dokumenata
50
PRILOG
Na CD-u se nalazi:
• Program PEI Prije pokretanja programa potrebno je postaviti hrvatski jezik kao pretpostavljeni u Windowsima kod opcija "Regional and Language Options". Nakon pokretanja programa mogu se otvoriti primjeri XML-dokumenata.
• Ovaj rad. • Objavljeni radovi studenata.