52
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.

STROJNO POTPOMOGNUTO INDEKSIRANJE DOKUMENATAigor.neoinfo.hr/2282.pdfFrane Šarić, apsolvent studija računarstva Igor Vukmirović, apsolvent studija računarstva ... informacija prestaje

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: STROJNO POTPOMOGNUTO INDEKSIRANJE DOKUMENATAigor.neoinfo.hr/2282.pdfFrane Šarić, apsolvent studija računarstva Igor Vukmirović, apsolvent studija računarstva ... informacija prestaje

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.

Page 2: STROJNO POTPOMOGNUTO INDEKSIRANJE DOKUMENATAigor.neoinfo.hr/2282.pdfFrane Šarić, apsolvent studija računarstva Igor Vukmirović, apsolvent studija računarstva ... informacija prestaje

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

Page 3: STROJNO POTPOMOGNUTO INDEKSIRANJE DOKUMENATAigor.neoinfo.hr/2282.pdfFrane Šarić, apsolvent studija računarstva Igor Vukmirović, apsolvent studija računarstva ... informacija prestaje

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

Page 4: STROJNO POTPOMOGNUTO INDEKSIRANJE DOKUMENATAigor.neoinfo.hr/2282.pdfFrane Šarić, apsolvent studija računarstva Igor Vukmirović, apsolvent studija računarstva ... informacija prestaje

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

Page 5: STROJNO POTPOMOGNUTO INDEKSIRANJE DOKUMENATAigor.neoinfo.hr/2282.pdfFrane Šarić, apsolvent studija računarstva Igor Vukmirović, apsolvent studija računarstva ... informacija prestaje

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.

Page 6: STROJNO POTPOMOGNUTO INDEKSIRANJE DOKUMENATAigor.neoinfo.hr/2282.pdfFrane Šarić, apsolvent studija računarstva Igor Vukmirović, apsolvent studija računarstva ... informacija prestaje

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.

Page 7: STROJNO POTPOMOGNUTO INDEKSIRANJE DOKUMENATAigor.neoinfo.hr/2282.pdfFrane Šarić, apsolvent studija računarstva Igor Vukmirović, apsolvent studija računarstva ... informacija prestaje

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

Page 8: STROJNO POTPOMOGNUTO INDEKSIRANJE DOKUMENATAigor.neoinfo.hr/2282.pdfFrane Šarić, apsolvent studija računarstva Igor Vukmirović, apsolvent studija računarstva ... informacija prestaje

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.

Page 9: STROJNO POTPOMOGNUTO INDEKSIRANJE DOKUMENATAigor.neoinfo.hr/2282.pdfFrane Šarić, apsolvent studija računarstva Igor Vukmirović, apsolvent studija računarstva ... informacija prestaje

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.

Page 10: STROJNO POTPOMOGNUTO INDEKSIRANJE DOKUMENATAigor.neoinfo.hr/2282.pdfFrane Šarić, apsolvent studija računarstva Igor Vukmirović, apsolvent studija računarstva ... informacija prestaje

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.

Page 11: STROJNO POTPOMOGNUTO INDEKSIRANJE DOKUMENATAigor.neoinfo.hr/2282.pdfFrane Šarić, apsolvent studija računarstva Igor Vukmirović, apsolvent studija računarstva ... informacija prestaje

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.

Page 12: STROJNO POTPOMOGNUTO INDEKSIRANJE DOKUMENATAigor.neoinfo.hr/2282.pdfFrane Šarić, apsolvent studija računarstva Igor Vukmirović, apsolvent studija računarstva ... informacija prestaje

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].

Page 13: STROJNO POTPOMOGNUTO INDEKSIRANJE DOKUMENATAigor.neoinfo.hr/2282.pdfFrane Šarić, apsolvent studija računarstva Igor Vukmirović, apsolvent studija računarstva ... informacija prestaje

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.

Page 14: STROJNO POTPOMOGNUTO INDEKSIRANJE DOKUMENATAigor.neoinfo.hr/2282.pdfFrane Šarić, apsolvent studija računarstva Igor Vukmirović, apsolvent studija računarstva ... informacija prestaje

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>

Page 15: STROJNO POTPOMOGNUTO INDEKSIRANJE DOKUMENATAigor.neoinfo.hr/2282.pdfFrane Šarić, apsolvent studija računarstva Igor Vukmirović, apsolvent studija računarstva ... informacija prestaje

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.

Page 16: STROJNO POTPOMOGNUTO INDEKSIRANJE DOKUMENATAigor.neoinfo.hr/2282.pdfFrane Šarić, apsolvent studija računarstva Igor Vukmirović, apsolvent studija računarstva ... informacija prestaje

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

Page 17: STROJNO POTPOMOGNUTO INDEKSIRANJE DOKUMENATAigor.neoinfo.hr/2282.pdfFrane Šarić, apsolvent studija računarstva Igor Vukmirović, apsolvent studija računarstva ... informacija prestaje

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.

Page 18: STROJNO POTPOMOGNUTO INDEKSIRANJE DOKUMENATAigor.neoinfo.hr/2282.pdfFrane Šarić, apsolvent studija računarstva Igor Vukmirović, apsolvent studija računarstva ... informacija prestaje

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

Page 19: STROJNO POTPOMOGNUTO INDEKSIRANJE DOKUMENATAigor.neoinfo.hr/2282.pdfFrane Šarić, apsolvent studija računarstva Igor Vukmirović, apsolvent studija računarstva ... informacija prestaje

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.

Page 20: STROJNO POTPOMOGNUTO INDEKSIRANJE DOKUMENATAigor.neoinfo.hr/2282.pdfFrane Šarić, apsolvent studija računarstva Igor Vukmirović, apsolvent studija računarstva ... informacija prestaje

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

Page 21: STROJNO POTPOMOGNUTO INDEKSIRANJE DOKUMENATAigor.neoinfo.hr/2282.pdfFrane Šarić, apsolvent studija računarstva Igor Vukmirović, apsolvent studija računarstva ... informacija prestaje

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

Page 22: STROJNO POTPOMOGNUTO INDEKSIRANJE DOKUMENATAigor.neoinfo.hr/2282.pdfFrane Šarić, apsolvent studija računarstva Igor Vukmirović, apsolvent studija računarstva ... informacija prestaje

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>

Page 23: STROJNO POTPOMOGNUTO INDEKSIRANJE DOKUMENATAigor.neoinfo.hr/2282.pdfFrane Šarić, apsolvent studija računarstva Igor Vukmirović, apsolvent studija računarstva ... informacija prestaje

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).

Page 24: STROJNO POTPOMOGNUTO INDEKSIRANJE DOKUMENATAigor.neoinfo.hr/2282.pdfFrane Šarić, apsolvent studija računarstva Igor Vukmirović, apsolvent studija računarstva ... informacija prestaje

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.

Page 25: STROJNO POTPOMOGNUTO INDEKSIRANJE DOKUMENATAigor.neoinfo.hr/2282.pdfFrane Šarić, apsolvent studija računarstva Igor Vukmirović, apsolvent studija računarstva ... informacija prestaje

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

Page 26: STROJNO POTPOMOGNUTO INDEKSIRANJE DOKUMENATAigor.neoinfo.hr/2282.pdfFrane Šarić, apsolvent studija računarstva Igor Vukmirović, apsolvent studija računarstva ... informacija prestaje

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>

Page 27: STROJNO POTPOMOGNUTO INDEKSIRANJE DOKUMENATAigor.neoinfo.hr/2282.pdfFrane Šarić, apsolvent studija računarstva Igor Vukmirović, apsolvent studija računarstva ... informacija prestaje

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

Page 28: STROJNO POTPOMOGNUTO INDEKSIRANJE DOKUMENATAigor.neoinfo.hr/2282.pdfFrane Šarić, apsolvent studija računarstva Igor Vukmirović, apsolvent studija računarstva ... informacija prestaje

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.

Page 29: STROJNO POTPOMOGNUTO INDEKSIRANJE DOKUMENATAigor.neoinfo.hr/2282.pdfFrane Šarić, apsolvent studija računarstva Igor Vukmirović, apsolvent studija računarstva ... informacija prestaje

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.

Page 30: STROJNO POTPOMOGNUTO INDEKSIRANJE DOKUMENATAigor.neoinfo.hr/2282.pdfFrane Šarić, apsolvent studija računarstva Igor Vukmirović, apsolvent studija računarstva ... informacija prestaje

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.

Page 31: STROJNO POTPOMOGNUTO INDEKSIRANJE DOKUMENATAigor.neoinfo.hr/2282.pdfFrane Šarić, apsolvent studija računarstva Igor Vukmirović, apsolvent studija računarstva ... informacija prestaje

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.

Page 32: STROJNO POTPOMOGNUTO INDEKSIRANJE DOKUMENATAigor.neoinfo.hr/2282.pdfFrane Šarić, apsolvent studija računarstva Igor Vukmirović, apsolvent studija računarstva ... informacija prestaje

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.

Page 33: STROJNO POTPOMOGNUTO INDEKSIRANJE DOKUMENATAigor.neoinfo.hr/2282.pdfFrane Šarić, apsolvent studija računarstva Igor Vukmirović, apsolvent studija računarstva ... informacija prestaje

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

Page 34: STROJNO POTPOMOGNUTO INDEKSIRANJE DOKUMENATAigor.neoinfo.hr/2282.pdfFrane Šarić, apsolvent studija računarstva Igor Vukmirović, apsolvent studija računarstva ... informacija prestaje

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.

Page 35: STROJNO POTPOMOGNUTO INDEKSIRANJE DOKUMENATAigor.neoinfo.hr/2282.pdfFrane Šarić, apsolvent studija računarstva Igor Vukmirović, apsolvent studija računarstva ... informacija prestaje

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,

Page 36: STROJNO POTPOMOGNUTO INDEKSIRANJE DOKUMENATAigor.neoinfo.hr/2282.pdfFrane Šarić, apsolvent studija računarstva Igor Vukmirović, apsolvent studija računarstva ... informacija prestaje

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

Page 37: STROJNO POTPOMOGNUTO INDEKSIRANJE DOKUMENATAigor.neoinfo.hr/2282.pdfFrane Šarić, apsolvent studija računarstva Igor Vukmirović, apsolvent studija računarstva ... informacija prestaje

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

Page 38: STROJNO POTPOMOGNUTO INDEKSIRANJE DOKUMENATAigor.neoinfo.hr/2282.pdfFrane Šarić, apsolvent studija računarstva Igor Vukmirović, apsolvent studija računarstva ... informacija prestaje

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

Page 39: STROJNO POTPOMOGNUTO INDEKSIRANJE DOKUMENATAigor.neoinfo.hr/2282.pdfFrane Šarić, apsolvent studija računarstva Igor Vukmirović, apsolvent studija računarstva ... informacija prestaje

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.

Page 40: STROJNO POTPOMOGNUTO INDEKSIRANJE DOKUMENATAigor.neoinfo.hr/2282.pdfFrane Šarić, apsolvent studija računarstva Igor Vukmirović, apsolvent studija računarstva ... informacija prestaje

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.

Page 41: STROJNO POTPOMOGNUTO INDEKSIRANJE DOKUMENATAigor.neoinfo.hr/2282.pdfFrane Šarić, apsolvent studija računarstva Igor Vukmirović, apsolvent studija računarstva ... informacija prestaje

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

Page 42: STROJNO POTPOMOGNUTO INDEKSIRANJE DOKUMENATAigor.neoinfo.hr/2282.pdfFrane Šarić, apsolvent studija računarstva Igor Vukmirović, apsolvent studija računarstva ... informacija prestaje

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

Page 43: STROJNO POTPOMOGNUTO INDEKSIRANJE DOKUMENATAigor.neoinfo.hr/2282.pdfFrane Šarić, apsolvent studija računarstva Igor Vukmirović, apsolvent studija računarstva ... informacija prestaje

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

Page 44: STROJNO POTPOMOGNUTO INDEKSIRANJE DOKUMENATAigor.neoinfo.hr/2282.pdfFrane Šarić, apsolvent studija računarstva Igor Vukmirović, apsolvent studija računarstva ... informacija prestaje

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.

Page 45: STROJNO POTPOMOGNUTO INDEKSIRANJE DOKUMENATAigor.neoinfo.hr/2282.pdfFrane Šarić, apsolvent studija računarstva Igor Vukmirović, apsolvent studija računarstva ... informacija prestaje

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.

Page 46: STROJNO POTPOMOGNUTO INDEKSIRANJE DOKUMENATAigor.neoinfo.hr/2282.pdfFrane Šarić, apsolvent studija računarstva Igor Vukmirović, apsolvent studija računarstva ... informacija prestaje

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).

Page 47: STROJNO POTPOMOGNUTO INDEKSIRANJE DOKUMENATAigor.neoinfo.hr/2282.pdfFrane Šarić, apsolvent studija računarstva Igor Vukmirović, apsolvent studija računarstva ... informacija prestaje

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.

Page 48: STROJNO POTPOMOGNUTO INDEKSIRANJE DOKUMENATAigor.neoinfo.hr/2282.pdfFrane Šarić, apsolvent studija računarstva Igor Vukmirović, apsolvent studija računarstva ... informacija prestaje

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].

Page 49: STROJNO POTPOMOGNUTO INDEKSIRANJE DOKUMENATAigor.neoinfo.hr/2282.pdfFrane Šarić, apsolvent studija računarstva Igor Vukmirović, apsolvent studija računarstva ... informacija prestaje

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.

Page 50: STROJNO POTPOMOGNUTO INDEKSIRANJE DOKUMENATAigor.neoinfo.hr/2282.pdfFrane Šarić, apsolvent studija računarstva Igor Vukmirović, apsolvent studija računarstva ... informacija prestaje

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.

Page 51: STROJNO POTPOMOGNUTO INDEKSIRANJE DOKUMENATAigor.neoinfo.hr/2282.pdfFrane Šarić, apsolvent studija računarstva Igor Vukmirović, apsolvent studija računarstva ... informacija prestaje

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.

Page 52: STROJNO POTPOMOGNUTO INDEKSIRANJE DOKUMENATAigor.neoinfo.hr/2282.pdfFrane Šarić, apsolvent studija računarstva Igor Vukmirović, apsolvent studija računarstva ... informacija prestaje

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.