Toma` Erjavec UDK 811.163.6’42:004.5
Institut Jo`ef Stefan, Odsek za inteligentne sisteme
tomaz.erjavec@ijs.si
OZNA^EVANJE KORPUSOV
Urejene ra~unalni{ke zbirke besedil, korpusi, so uporabni v {tevilnih vejah jezikoslovja. Prispevek se
osredoto~i na ra~unalni{ki zapis korpusov, predvsem na njihovo ozna~evanje, tj. dodajanje interpretativnih informacij besedilu v korpusu. Predstavljeno ozna~evanje temelji na upo{tevanju mednarodnih standardov s tega podro~ja, kar doprinese k bolj{i dokumentiranosti in preverljivosti, enostavnej{i uporabi
programov za obdelavo in k ve~ji izmenljivosti ter trajnosti. V prvem delu obravnavamo standarde za
ra~unalni{ki zapis besedil, predvsem XML (eXtended Markup Language) in TEI (Text Encoding
Initiative), v drugem pa ori{emo nekaj bolj zanimivih ravni jezikoslovnega ozna~evanja korpusov.
1 Uvod
Korpus je zbirka besedil, ki so izbrana tako, da karakterizirajo stanje ali raznovrstnost nekega jezika. Uporaben je kot osnova, na kateri gradimo opise jezika, ali pa
kot sredstvo za preverjanje hipotez o jeziku. Korpusi so dandanes `e standardno
shranjeni na ra~unalnikih, saj ti po eni strani omogo~ajo kompaktno in poceni hranjenje ter raz{irjanje velike koli~ine besedil, po drugi strani pa ta besedila lahko z
njimi bolj u~inkovito izkori{~amo.
V tem ~lanku se osredoto~imo na ra~unalni{ki zapis korpusov, predvsem na njihovo ozna~evanje, tj. dodajanje interpretativnih informacij besedilu v korpusu. Termin
ozna~evanje ima dva pomena: po eni strani lahko s tem mislimo na proces dodajanja oznak, ki je lahko ro~ni ali pa, vse pogosteje, avtomatski. ^eprav v pri~ujo~em
~lanku omenimo orodja, ki jih lahko uporabimo za ozna~evanje slovenskih besedil,
pa bomo ve~ pozornosti posvetili ozna~evanju v drugemu pomenu, tj. kako so te
dodane informacije v korpusu zapisane, ne glede na to, kako smo do njih pri{li.
V zvezi z obema pomenoma ozna~evanja se bralcu mogo~e zastavi vpra{anje, zakaj
sploh potrebujemo drugi pomen, tj. zakaj bi korpus sploh eksplicitno ozna~evali z
dodatnimi informacijami, posebej ~e do njih tako ali tako pridemo po povsem avtomatski poti. Ali ni enostavneje teh informacij, npr. oblikoslovnih oznak besed v korpusu, izra~unati sproti, ko in ~e jih potrebujemo, namesto da obremenjujemo z
njimi besedilo? ^eprav je ta scenarij v posameznih primerih upravi~en, je zelo omejujo~. Z dodajanjem oznak v sam korpus namre~ omogo~imo ve~jo eksplicitnost in
Jezik in slovstvo, let. 48 (2003), {t. 3–4
62 Toma` Erjavec
preglednost, s tem pa tudi ve~jo prenosljivost podatkov. Oznake v korpusu lahko
tudi ro~no popravljamo, s ~imer pove~amo njihovo kvaliteto, obenem pa dobimo
u~no mno`ico za programe, ki se avtomatsko u~ijo modele jezika. S tako nau~enimi
programi potem lahko ozna~ujemo nove korpuse, prvi nivo oznak pa nam tudi slu`i
kot osnova za bolj kompleksna ozna~evanja.
V tem ~lanku bomo zagovarjali zapis in ozna~evanje korpusov, ki temelji na upo{tevanju mednarodnih standardov s tega podro~ja. Kot bomo videli, upo{tevanje standardov prinese s sabo vrsto prednosti, npr. bolj{o dokumentiranost, preverljivo pravilnost zapisa, enostavnej{o uporabo programov za obdelavo, ve~jo izmenljivost in
trajnost itd.
V drugem poglavju obravnavamo standarde za zapis korpusov in drugih besedil,
tretje poglavje ori{e nekaj bolj zanimivih ravni ozna~evanja korpusov, ~etrto
poglavje pa poda zaklju~ke.
2 Standardi za zapis korpusov
Precej zgodaj so se `e za~ele pojavljati pobude za standardizacijo zapisa jezikovnih
podatkov, pri katerih se sku{a predpisati javno dostopne in trajne na~ine ozna~evanja. Tako zapisane jezikovne podatke potem uporabljajo orodja, ki implementirajo
te standarde, bodisi neposredno ali pa tako, da lahko vanje podatke uva`ajo oz.
izva`ajo. Najbolj vplivna pobuda s tega podro~ja je bil leta 1986 izdani ISO standard SGML (Standard Generalised Markup Language), ki dolo~a jezik za predstavitev dokumentov, nad katerimi bodo delovali programi za procesiranje besedil. Ta
standard naj bi zagotovil na~in zapisa, ki je prenosljiv med ra~unalni{kimi platformami, odporen na tehnolo{ke spremembe in ki omogo~a uporabo dokumentov v
razli~ne namene. Velika prednost SGML pred drugimi zapisi je tudi, da je mogo~e
avtomatsko preveriti, ali je nek dokument zapisan v skladu s standardom.
Standard SGML je bil dobro premi{ljen, vendar pa zelo kompleksen, zato je svojo
ni{o na{el predvsem v podjetjih, ki posedujejo velike koli~ine dragocenih besedil in
so bila pripravljena v standardizacijo njihovega zapisa tudi investirati veliko denarja. Zaradi kompleksnosti je bilo na voljo razmeroma malo programov, ki so implementirala standard; ti so bodisi delovali na platformi Unix, ki se je uporabljala
predvsem v akademskih krogih, ali pa so bili izredno dragi. Zaradi teh problemov
SGML nikoli ni dosegel zares {iroke popularnosti.
S prodorom svetovnega spleta pa se je pojavila potreba, da se mre`nim aplikacijam
zagotovi standardizirani in prenosljivi na~in zapisa podatkov; to ni mogel biti
HTML, saj ima ta zelo omejene izrazne mo`nosti, niti SGML, zaradi svoje kompleksnosti. Re{itev, ki jo je izdelal konzorcij za svetovni splet W3C (Word Wide
Web Consortium), je bila podmno`ica SGML, ki ohranja dobre lastnosti standarda,
vendar pa izpusti elemente, ki so vna{ali pretirano kompleksnost. Ta izvedenka
SGML se imenuje XML (eXtended Markup
Language); prva razli~ica specifikacije je bila objavljena leta 1998, druga, trenutno
zadnja, ki je popravila nekatere napake iz prve, pa leta 2000.
Ozna~evanje korpusov 63
Za razliko od SGML je XML postal izjemno popularen in dejansko postaja univerzalni medij zapisa jezikovnih podatkov. K njegovi odmevnosti je pripomoglo tudi
veliko {tevilo prosto dostopnih programov, ki standard implementirajo, kot tudi
kopica pridru`enih standardov, ki ga dodatno osmislijo.
V izdelavo korpusov, posebej ro~no ozna~enih, je potrebno vlo`iti ogromno dela,
potencialno pa so nato uporabni v raznovrstne namene, zato so se tudi tu `e zgodaj
pojavile pobude za standardizacijo zapisa. Najve~ na tem podro~ju je naredila iniciativa za zapis besedil TEI (Text Encoding Initiative) s svojimi Priporo~ili, ki definirajo konkretne oznake za opis besedil v namene znanstvene obravnave; TEI je
najprej temeljil na SGML, zadnja razli~ica, ki je iz{la 2002, pa podpira tudi XML.
V nadaljevanju tega poglavja podamo osnove XML in razlo`imo strukturo priporo~il TEI.
2.1 Strukture XML
Standard XML formalno definira ra~unalni{ki zapis besedila in uvede na~ine, kako
lahko to besedilo ozna~imo in strukturiramo. V Sliki 1 vidimo primer dokumenta
XML; kot prvo lastnost zapisa je pomembno izpostaviti, da je dokument berljiv tudi
neposredno v obliki XML. ^eprav ni mi{ljeno, da bi dokumente XML brali »surove«, pa je vseeno koristno, da jih lahko tudi brez posebnih orodij beremo in popravljamo.
Dokument XML vsebuje elemente, od katerih se vsak za~ne z za~etno oznako, npr.
, in zaklju~i s kon~no, ki vsebuje poleg lomljenih oklepajev in imena elementa
{e po{evnico. Element XML je tako sestavljen iz treh delov: obeh oznak in vsebine. Izjema so prazni elementi (primer je spodaj, ki naj bi ozna~eval prelom
strani), ki imajo za razliko od tistih z vsebino samo eno oznako, ta pa se kon~uje s
po{evnico.
Elementi lahko vsebujejo besedilo ali pa spet elemente oz. me{anico obeh, celoten
dokument pa mora vsebovati natanko en vrhnji element; v Sliki 1 je to
.
Dokumenti XML so tako strukture z dobro poznanimi formalnimi lastnostmi, t. i.
drevesa.
Uvod.
Dvigni se! ukaz mi re~e.Srce pade mi v oblastiSilne, prej neznane strasti,Ki ko `ivi ogenj pe~e.^ut se zlije mi v besede. -Pre~ so ~rne bole~ine,Strast ob~utkov divjih mine,
64 Toma` Erjavec
Jasen mir se v prsi vsede.
Slika 1: Primer dokumenta XML
Drevesni model ozna~evanja je intuitivni in enostaven za ra~unalni{ko obdelavo, ni
pa zadosten za vse vrste struktur. Predvsem je problemati~no, kadar bi dokument
radi kategorizirali v ve~ ortogonalnih hierarhij, npr. ~e ho~emo zajeti tipografsko in
retori~no strukturo besedila, saj so navzkri`na gnezdenja, npr.
... ...
... , prepovedana.
Obstaja ve~ na~inov, kako obidemo tak{ne probleme; enega smo `e videli v Sliki 1,
kjer je zapisan kot prazni element, ki tako ozna~uje prelom, namesto da bi
stran vseboval. Splo{ni na~in, kako se izogniti omejitvam neposrednega XML
ozna~evanja, pa je uvedba referen~ih mehanizmov. V modelu posrednega ozna~evanja (stand-off annotation) je originalno besedilo nedotaknjeno, oznake pa se
nahajajo v lo~enih dokumentih in na besedilo samo ka`ejo. V praksi se izka`e, da
najbolj{e rezultate daje me{anica obeh pristopov, saj je bolj splo{ni model posrednega ozna~evanja ustrezno kompleksnej{i, te`je preverljiv in zato okoren predvsem
za gradnjo virov.
Poleg samih elementov definira XML tudi sredstvo za izra`anje njihovih lastnosti,
skozi t. i. atribute, ki jih lahko vsebujejo za~etne zna~ke elementov; kot vidimo v
Sliki 1, sledi imenu atributa ena~aj in vrednost v navednicah.
Kot zadnjo lastnost dokumentov XML moramo omeniti nabore znakov in entitete
za njihov zapis. ^e ni druga~e dolo~eno, se privzame, da je dokument XML zapisan v skladu s standardom Unicode, ki vsebuje ve~ino svetovnih pismenk. Vendar
pa je ta zapis 16-bitni in ga je dostikrat iz tehni~nih in zgodovinskih razlogov {e
vedno potrebno prevesti v manj{e in manj splo{ne nabore.
XML definira splo{no uporaben na~in za zamenjavo nizov, tj. enostavno in strojno
neodvisno metodo, ki omogo~a dolo~iti, da se mora pri obdelavi dolo~en niz znakov v dokumentu XML zamenjati z nekim drugim nizom. Nize, definirane s to
metodo za nadome{~anje, imenujemo entitete. K temu pojmu se {e povrnemo
kasneje, tu pa le omenimo, da omogo~i npr. prenos poljubnih znakov v naboru
ASCII: med znaka za za~etek (&) in konec (;) entitete pri tem napi{emo kodo znaka
iz kodnega nabora Unicode, npr. krščansko, kjer # pomeni, da sledi
numeri~na koda, x pa, da je zapisana v heksadecimalnem zapisu; 161 in 10D sta v
Unicode naboru znakov kodi za znaka { in ~.
Nekaj bolj uporabnih znakov pa je v XML tudi vnaprej definiranih z mnemoniki;
od teh sta najbolj pomembna & za & in < za <, saj ju je, kadar sta del besedila, potrebno zapisati z entitetami.
Ozna~evanje korpusov 65
2.2 Definicija tipa dokumentov XML
^e bi dokumenti XML lahko vsebovali kakr{ne koli elemente v poljubnih medsebojnih odnosih in za elemente ne bi vedeli, kaj naj sploh pomenijo, ti dokumenti ne
bi bili preve~ uporabni. Seveda je mo`no, da je znanje o nekem tipu dokumentov
vgrajeno v samo aplikacijo; primer tega so splenti brkljalniki, saj ti na zaslon izpi{ejo zapis HTML, ~etudi jim ne podamo formalne specifikacije oznak, ki jih HTML
uporablja.
Vendar je izredno koristno imeti mo`nost, da lahko formalno definiramo nabor elementov za dolo~en tip dokumentov; pri SGML je celo veljalo, da mora vsak dokument vsebovati ali se vsaj sklicevati na tako formalno specifikacijo, t. i. definicijo
tipa dokumentov (Document Type Definition, DTD). Ravno zaradi la`je komunikacije med procesi, to pri XML ni potrebno, je pa mo`no. XML je od SGML podedoval (poenostavljen) mehanizem DTD-jev, ki uporablja poseben jezik, da definira
skladnjo za elemente dolo~enega tipa dokumentov.
Dokumenti XML, ki vsebujejo ali se sklicujejo na DTD, so pravilni (valid), tisti, ki
pa se ne, vendar pa so vseeno zapisani po pravilih XML, pa so dobro oblikovani
(well-formed); primer dobro oblikovanega dokumenta XML je bil podan v Sliki 1.
Slika 2: Primer DTD XML
DTD-ji omogo~ajo definicijo {e raznih drugih gnezdenj elementov, vrednosti atributov, vsebujejo pa tudi mehanizme za modularizacijo, ki pa jih tu ne bomo obravnavali. Vseeno pa je treba omeniti entitete, ki smo jih `e uvedli v prej{njem razdelku; DTD namre~ omogo~a definicijo entitet kot poljubnih nizov ali kar celotnih
datotek, ki jih nato lahko uporabimo v pravilnem dokumentu XML.
Pravilen dokument XML vsebuje DTD ali pa se nanj sklicuje s posebnim ukazom
DOCTYPE, ki mora biti prvi v dokumentu. ^e bi se npr. dokument v Sliki 1 za~el
z vrstico in bi datoteka pesem.dtd vsebovala DTD iz Slike 2, bi bil ta dokument pravilen in ne samo dobro zapisan.
2.3 Pridru`eni standardi
Uspe{nost XML lahko pripi{emo tudi obstoju pridru`enih standardov, ki XML
dodatno osmislijo, in prosto dostopnim orodjem, ki te standarde implementirajo; v
tem poglavju omenimo samo nekatere najpomembnej{e.
66 Toma` Erjavec
XML je prvenstveno jezik za opisovanje lastnosti, ne pa videza dokumenta. To je v
splo{nem izredno dobra lastnost, saj je za uporabnost dokumentov precej bolj
pomembno, kaj dolo~en del besedila pomeni in ne kako izgleda. Kljub temu pa je
nek dokument slej ko prej potrebno prikazati bodisi na zaslonu ali pa na papirju.
Jezik XSLT definira na~in, kako preoblikovati dokumente XML v druge formate,
bodisi XML ali druga~ne, ki vsebujejo formate za stavljenje, vendar pa nanje niso
omejeni. XSLT je tako uporaben ne samo kot prikazovalnik, pa~ pa tudi kot splo{no
orodje za konverzijo iz nekega XML formata (DTD) v poljuben format, ki ga potrebuje dolo~ena aplikacija, ki naj bi dokument procesirala. Posebej privla~na je konverzija iz enega XML DTD v drugega, saj odpira mo`nost poljubnega preoblikovanja, selekcije in zdru`evanja dokumentov XML. Pri tem pa je jezik XSLT tudi
sam zapisan v XML, s ~imer lahko uporabimo orodja XML za pisanje XSLT transformacij, obstajajo pa tudi prosto dostopni programi, ki implementirajo XSLT konverzije.
Kot je bilo `e omenjeno, mehanizem DTD omogo~a preverjanje pravilnosti dokumentov, kar je izredno koristno pri izdelavi in ozna~evanju novih jezikovnih virov.
Vendar pa imajo DTD-ji tudi vrsto pomankljivosti, predvsem to, da so zapisani v
svojem jeziku in ne v XML, ter da podpirajo samo relativno enostavne podatkovne
modele. V DTD npr. ni mogo~e dolo~iti, da mora biti vsebina nekega elementa
{tevilo ali da je vrednost atributa datum. Zato je bilo razvitih ve~ shem, ki prese`ejo
te omejitve – tu naj omenimo samo dve. Prva je RELAX NG, ki je predlog standarda ISO in je osnovana na regularnih izrazih, druga pa XML Schema, ki je predlog
konzorcija W3C. Shemi sta komplementarni, saj ima vsaka svoje prednosti. Obstajajo tudi orodja, ki implementirajo preverjanje skladnosti dokumentov XML po
specifikaciji v teh shemah in prevajanje DTD-jev v izraze iz teh dveh shem.
2.4 Iniciativa za zapis besedil TEI
Iniciativa za zapis besedil TEI (Text Encoding Initiative) je bila ustanovljena leta
1987 pod pokroviteljstvom ve~ mednarodnih zdru`enj, nastala pa je z namenom, da
se standardizira zapis besedil, ki bi se uporabljala prete`no v znanstvene namene,
oz. da se razvije skupni na~in ozna~evanja kompleksnih struktur besedil. S tem bi
se zmanj{alo razdrobljenost obstoje~ih na~inov digitalnega zapisa, poenostavilo
ra~unalni{ko obdelavo in spodbudilo raz{irjanje in izmenjevanje elektronskih besedil. Kmalu pa je postalo o~itno, da bo zadosti pro`na shema zapisa lahko nudila
re{itve za splo{ne probleme zapisa besedil.
TEI je prvi osnutek svojih priporo~il (TEI P1) izdal leta 1990, drugega pa leta 1992.
Medtem ko sta bila tako P1 kot P2 {e osnutka, predstavlja leta 1994 izdan TEI P3
zaklju~ek prve faze dela TEI. TEI je kot osnovo svojega zapisa vzel SGML. TEI P3
je nabor fragmentov definicij tipov dokumentov, ki za {iroko paleto zvrsti besedil
dolo~a konkretne oznake in njihovo strukturo. Skorajda bolj pomembnih pa je 1200
strani dokumentacije, ki podaja pomen posameznih oznak, opisuje posamezne
podsklope ter izpelje na~in za njihovo kombiniranje ter nadgradnjo. TEI P3 kot njegovi nasledniki so sicer iz{li v knji`ni obliki, so pa tudi prosto dostopni prek sve
Ozna~evanje korpusov 67
tovnega spleta. Leta 1999 je iz{la popravljena izdaja TEI P3, ki je odpravila nekaj
tipografskih in drugih napak, 2002 pa je bil izdan TEI P4 (Sperberg-McQueen in
Burnard 2002), ki nudi enakovredno podporo za SGML in XML in popravi razne
napake iz P3, pri ~emer pa ohranja skladnost s TEI P3.
Leta 2000 je bil ustanovljen konzorcij TEI , ki naj bi skrbel
za razvoj standarda TEI. V okviru konzorcija je bil tako izdan TEI P4, ob tem pa so
bila identificirana podro~ja, kjer bi TEI bil potreben temeljitej{e prenove. Zato je
bilo ustanovljenih ve~ delovnih skupin, ki imajo nalogo revidirati P4, da bo lahko
(predvidoma) leta 2004 izdana nova razli~ica TEI P5.
Ve~ kot 80 projektov, ki pokrivajo prek 30 jezikov, je do sedaj uporabljalo priporo~ila TEI za zapis raznovrstnih virov, npr. za srednjeve{ke rokopise, tekstnokriti~ne izdaje poezije, slovarje, knji`ni~ne kataloge ipd. TEI je bil vpliven tudi pri
ozna~evanju korpusov, kjer je mogo~e najbolj znan primer Britanski nacionalni korpus, pri nas pa so bili v skladu s priporo~ili TEI zapisani, med drugim, korpusi
MULTEXT-East (Erjavec 2001), IJS-ELAN (Erjavec 2002a, 2001b) in FIDA
(Erjavec et al. 1998); primere iz teh korpusov bomo sre~ali v nadaljevanju ~lanka.
S TEI skladen DTD ustvarimo za potrebe konkretnega projekta s kombinacijo naborov oznak, ki jih definira TEI. Sredi{~ne oznake (core tags) so obvezne v vsakem
TEI DTD. Sredi{~ne oznake tako dolo~ajo elemente, ki so na voljo v vseh TEI
dokumentih (npr. oznake za naslove in odstavke) ter glavo dokumenta, ki vsebuje
bibliografske in druge podatke o dokumentu. Osnovni nabori oznak (base tag sets)
opisujejo razli~ne zvrsti besedil, ki so med seboj razmeroma dobro lo~ene; vsak
DTD lahko vsebuje natanko en osnovni nabor znakov. TEI definira osnovne nabore za prozo, poezijo, gledali{~e, zapis govora, tiskane slovarje ter terminolo{ke
baze. Dodatni nabori oznak (additional tag sets) zajemajo raznovrstna dodatna
ozna~evanja, ki predstavljajo dolo~eno interpretacijo besedila ali pa nebesedilne
elemente besedil, kot so navzkri`ne povezave (za stvarna kazala) ali pa slike. Takih
naborov je vsega skupaj devet, med njimi so nabor za analiti~ne mehanizme, npr.
skladenjsko analizo, nabor za dokumentiranje uredni{kih posegov, nabor za imena
in datume in kon~no tudi nabor za jezikovne korpuse. Tako lahko v TEI definiramo
uporabni{ko dolo~ene oznake (user defined tagset), kjer dodamo lastne oznake ali
spremenimo oznake, ki jih definira TEI. Kot primer je v Sliki 3 podana parametrizacija TEI, ki jo uporabljamo za korpus MULTEXT-East; ta definira, da uprabljamo XML razli~ico TEI P4 z osnovnim naborom za prozo ter dodatnimi nabori za
povezovanje, jezikoslovne analize, lastnostne strukture in korpuse.
]>
Slika 3: Primer TEI DTD
68 Toma` Erjavec
2.5 Standard za zapis korpusov CES
TEI podaja med drugim tudi dolo~ila za ozna~evanje korpusov, ki smo jih tudi sami
uporabljali pri zapisu ve~ine na{ih korpusov. Na osnovi teh priporo~il je bil izdelan
DTD in spremna dokumentacija, namenjena eksplicitno za zapis korpusov, ki so
namenjeni razvoju jezikovnih tehnologij. Predlog, imenovan CES (Corpus Encoding Standard), je nastal v okviru iniciative Evropske unije Eagles in projektov MULTEXT ter MULTEXT-East. CES je osnovan na
SGML, novej{a razli~ica z imenom XCES pa na XML.
CES tudi dolo~a osnovni zapis in obseg ozna~evanja, ki ga mora korpus zadovoljiti, da ga {e lahko pojmujemo kot standardiziranega. CES opredeli tri nivoje take
standardizacije, kjer vsak vi{ji nivo dodatno standardizira korpus.
CES je precej enostavnej{i od TEI, saj se ukvarja samo s korpusi, vendar pa ima slabost, da v nekaterih podrobnostih ni skladen s TEI, predvsem pa nima vgrajenih
mehanizmov za parametrizacijo, razen seveda z neposrednim spreminjanjem DTD-ja.
3 Ravni ozna~evanja korpusov
V tem poglavju se osredoto~imo na bolj pomembne, tj. uporabne vrste oznak, ki se
lahko pojavijo v korpusu, opi{emo s kak{nimi programi lahko tak{ne oznake dodajamo za slovenski jezik in kako izgledajo v priporo~ilih TEI.
3.1 Glava TEI
Vsak dokument TEI in s tem vsak korpus oz. korpusna komponenta morajo biti
dokumentirani; element, ki vsebuje metapodatke o dokumentu, je .
Glava TEI je sestavljena iz {tirih elementov, od katerih je samo prvi obvezen.
Opis datoteke vsebuje poln bibliografski opis datoteke, vklju~no z
bibliografsko informacijo njenega vira ali virov. Opis zapisa opisuje odnos med elektronskim besedilom in njegovim virom oz. viri. Omogo~a
podroben opis tega, kako (in ~e) je bilo besedilo normalizirano pri transkripciji,
kako je ozna~evalec razre{il dvoumnosti v viru, katere ravni analize so bile izvedene itd. Opis profila vsebuje klasifikacijske in kontekstualne podatke
o besedilu, npr. tematiko, osebe, ki jih opisuje oz. so sodelovale pri njegovem nastajanju itd. Ta opis je {e posebej koristen pri strukturiranih sestavljenih besedilih, kot
so korpusi, kjer je dostikrat za`eleno, da vzpostavimo kontroliran opisni besednjak,
prek katerega lahko zajemamo besedila glede na zvrst ali izvor. Opis sprememb
omogo~a ozna~evalcem, da zabele`ijo zgodovino sprememb, ki so
se vr{ile nad elektronskih besedilom med njegovim nastajanjem; podatek je pomemben za nadzor nad razli~icami dokumenta (version control) in za razre{evanje
vpra{anj o zgodovini datoteke.
Za ilustracijo informacij, ki jih najdemo v glavi TEI, je v Sliki 4 podan opis vira
, ki je del opisa datoteke ene od komponent korpusa IJS-ELAN.
Ozna~evanje korpusov 69
Nacionalni program varstva okolja24-Feb-99Republika Slovenija, Ministrstvo za okolje in
prostor, Uprava RS za varstvo naraveNational Environmental Protection Programme30-Mar-99Republic of Slovenia, Ministry of the Environment and
Physical Planning
Slika 4: Primer glave TEI
3.2 Struktura korpusa
Tipi~no imajo dokumenti TEI kot korenski element ; ta vsebuje glavo TEI
in samo besedilo . Izjema v tej strukturi so ravno korpusi, saj imajo kot vrhnji
element , ta pa nato vsebuje posamezne elemente korpusa, kot je ilustrirano v Sliki 5.
*Glava korpusa*
*Glava elementa*
*Besedilo elementa*
*Ostale komponente*
Slika 5: Struktura korpusa TEI
Besedilo je nato sestavljeno iz za~etnega dela , telesa in kon~nega
dela , pri ~emer prvi in zadnji nista obvezna. Besedilo je razdeljeno na razdelke
, ki se lahko tudi gnezdijo, ti pa naprej iz odstavkov. V osnovnem naboru
oznak za leposlovje imamo nato na voljo mno`ico oznak, ki opisujejo strukturo besedila, kot so npr. glava , poudarjeno , opomba , povezava itd.
70 Toma` Erjavec
Pri pretvorbi iz izvirnega (elektronskega) zapisa se dostikrat zastavi vpra{anje, koliko in katere oznake naj se ohranijo v korpusu; tipi~no ohranimo samo tiste, ki jih je
enostavno avtomatsko prepoznati (npr. odstavek), ostale pa izpustimo, saj je pravilna konverzija iz raznovrstnih in slabo struktururanih dokumentov te`avna, za name-
ne korpusnega jezikoslovja pa dostikrat tudi nepotrebna.
3.3 Besede in stavki
^eprav so oznake v korpusu v veliki meri odvisne od namembnosti, pa sta prva
koraka, ki sta vedno koristna, ozna~itev besed in stavkov v besedilu, t. i. tokenizacija in segmentacija, saj z njima damo jezikovni vsebini osnovno strukturo. To na
prvi pogled preprosto ozna~evanje v sebi skriva kar nekaj pasti (Grefenstette in
Tapanainen 1994), saj npr. pika ne ozna~uje vedno konca stavka, npr. Dr. Pre{eren,
pa tudi besede imajo lahko kompleksno strukturo, posebej v tehni~nih besedilih,
npr. B3.2 14,40+/-1,92. Dodatna ovira kvalitetnemu raz~lenjevanju so tudi napake
in nekonsistentnosti v besedilih. Zato se {e vedno dela na izdelavi kvalitetnih tokenizatorjev, ki za tipi~no delovanje potrebujejo jezikovno odvisna pravila in sezname, npr. okraj{av; sami smo jih razvijali za slovenski jezik v okviru projekta MULTEXT-East za orodja MULTEXT (Di Cristo 1996).
V TEI so besede, lo~ila in stavki del dodatnega nabora znakov za jezikoslovno analizo, TEI.analysis; primer tako ozna~enega besedila iz korpusa IJS-ELAN je podan
v Sliki 6.
TokratvoblikiposlabšanjaEuromoneyeveoceneekonomskihspremembvSlovenijistran <
w
type="dig">6.
Slika 6: Primer besednih oznak TEI.analysis
3.4 Oblikoslovno ozna~evanje
Naslednja stopnja ozna~evanja je pripis oblikoslovnih zna~ilnosti besedam. Tak{no
ozna~evanje je bilo najprej razvito za angle{ki jezik (part-of-speech tagging), kjer
je veliko besed dvoumnih glede na besedno vrsto, naloga ozna~evalnika pa je besedi glede na sobesedilo dolo~iti pravilno besedno vrsto. V sloven{~ini je sicer tak{nih
dvoumnosti manj (pa {e vedno precej), zato pa jih je toliko ve~ v pregibnih lastnostih besed, predvsem {tevilu in sklonu. Zaradi bistveno bogatej{ega pregibanja je
tudi nabor oblikoslovnih oznak za slovanske jezike bistveno ve~ji kot za ve~ino
zahodnoevropskih jezikov; ~e je za angle{~ino oznak tipi~no okoli petdeset, jih je v
sloven{~ini prek tiso~.
Ker je dolo~anje oblikoslovnih lastnosti besed pomemben korak za nadaljnje obdelave, je v zadnjem desetletju postalo izjemno aktivno podro~je raziskav (van
Ozna~evanje korpusov 71
Halteren 1999). Ozna~evanje tipi~no poteka v dveh fazah. Za prvi korak potrebuje
mo slovar (ponavadi skupaj z oblikoslovnim analizatorjem), ki nam za vsako bese
do vrne vse njene mo`ne oblikoslovne oznake, npr. za bera~i, da je glagol v velel
niku ali povedniku ali samostalnik v imenovalniku ali orodniku. Do te faze je npr.
trenutno ozna~en korpus FIDA. Drugi korak, ki predstavlja bistvo ozna~evanja, pa
nato dolo~i pravilno oznako besede glede na njeno funkcijo v besedilu; dodatno
funkcionalnost predstavlja dolo~anje oznak tudi neznanim besedam, torej tistim, ki
jih ni v slovarju.
^eprav je pravila za razdvoumljanje mogo~e pisati tudi ro~no, je to izredno kom
pleksno in zamudno delo, zato je prevladujo~a paradigma ta, da se ozna~evalniki
avtomati~no nau~ijo statisti~nega modela jezika iz korpusa, ki je predhodno ro~no
ozna~en. Ena bolj odmevnih metod uporablja t. i. skrite markovske verige, s kateri
mi dolo~amo najbolj verjetno zaporedje oblikoslovnih oznak besed v stavku glede
sosednje oznake.
Za slovenski jezik je najve~ja ovira za kvalitetno ozna~evanje oblikoslovnih lastno
sti pomanjkanje velikega ro~no ozna~enega korpusa, ki bi lahko slu`il kot u~na
mno`ica. Korpus MULTEXT-East (Erjavec 2001) je sicer javno dostopen v razisko
valne namene , je pa njegov ozna~eni del majhen (100.000
besed) in vsebuje samo roman 1984. Vseeno pa smo na tem korpusu ovrednotili
ve~je {tevilo dostopnih ozna~evalnikov (D`eroski et al. 2000); najbolj{e rezultate je
dosegel program TnT (Brants 2000), z natan~nostjo 92 %. Ta ozna~evalnik
z
nau~enim modelom skupaj s {e nekaj izbolj{avami smo nato uporabili za avtomat
sko ozna~evanje slovenskega dela korpusa IJS-ELAN (Erjavec 2002b), ki je tudi
prosto dostopen
.
V TEI so oblikoslovne oznake tipi~no zapisane v atributu analize besed iz nabora
znakov TEI.analysis; primer ozna~enega stavka iz korpusa IJS-ELAN je podan
v
Sliki 7.
Prikazodgovornihdelovministrstvazaizvajanjezgorajnavedenihnalog:
Slika 7: Primer oblikoslovno ozna~enega besedila
72 Toma` Erjavec
3.5 Imena, besedne zveze in termini
Identificiranje imen (named entity extraction) se ima za svojo popularnost v veliki
meri zahvaliti tekmovanjem, ki so od poznih 80. spremljala konference MUC
(Message Understanding Conferences, financirane z ameri{ke DARPA), kjer je bila
naloga s ~im ve~jo to~nostjo identificirati in kategorizirati zemljepisna imena,
imena ljudi in podjetij, ~asovne in denarne izraze ipd. Tak{na imena so mogo~e bolj
kot za klasi~no korpusno jezikoslovje pomembna predvsem za zajemanje informacij (Information Extraction), saj predstavljajo kriti~ni prvi korak pri delovanju
tak{nih sistemov.
Za slovenski jezik na tem podro~ju {e ni bilo kaj dosti narejenega; {e najbolj se tej
problematiki pribli`a Jakopin (2000), ki posku{a identificirati elektronske in spletne naslove v ~asopisu DELO.
Imena se v TEI ozna~ujejo z elementom , ki je del sredi{~nih oznak; le-te
vsebujejo tudi vrsto sorodnih elementov, npr. , itd. Za podrobna
ozna~evanja imen pa ponuja TEI tudi dodaten nabor oznak TEI.names.dates; ta vsebuje podrobne elemente za imena in druge besedne zveze, ki opisujejo osebe, kraje,
organizacije, pa tudi datume in ~ase.
Do neke mere podobna naloga kot identificiranje imen je identificiranje besednih
zvez (phrase chunking); tu je naloga razdeliti stavek na neprekrivajo~e se besedne
zveze, tipi~no samostalni{ke. Ozna~evanje besednih zvez torej predstavlja
nekak{no plitko skladenjsko analizo, vendar je {e vedno precej zahteven korak,
predvsem zaradi kompleksnosti razre{evanja dvoumnosti vezave posameznih konstituentov. Ti sistemi ponavadi pri~akujejo besedilo, ki je `e bilo oblikoslovno ozna~eno; nekateri od njih nato uporabljajo ro~no napisana pravila, ve~ina pa se mode-
la nau~i iz vnaprej ozna~enih besedil, kjer uporabljajo podobne (ali celo identi~ne)
metode kot pri oblikoslovnem ozna~evanju.
Identificiranje predvsem samostalni{kih zvez ima ve~ aplikacij (Abney 1991): uporablja se lahko, podobno kot oblikoslovno ozna~evanje, kot predstopnja za polno
skladenjsko analizo, saj `e razre{i del dvoumnosti v stavku in tako razbremeni skladenjski modul. Uporabno je tudi, podobno kot identifikacija imen, v sistemih za
zajemanje informacij pa tudi v ve~jezi~nih korpusih (oz. sistemih za ekstrakcijo
leksikonov in avtomatsko prevajanje), saj se prevodne ustreznice dostikrat najde
{ele na ravni besedne zveze in ne besede.
Elemente za ozna~evanje besednih zvez najdemo v modulu TEI.analysis; tu lahko
izberemo med generi~nim , ki ga po mo`nosti opremimo z atributom type,
lahko pa uprabimo tudi namenski element .
Kot posebno vrsto besednih zvez lahko pojmujemo termine; ti so izrazito pomembni v strokovnem jeziku, definirani pa niso samo strukturno, temve~ tudi pomensko
oz. leksikalno, saj mora neka beseda ali besedna zveza biti specifi~na in pomembna za neko strokovno podro~je, da jo lahko poimenujemo termin. Obstaja vrsta
metod, kako identificirati termine, in ve~ina spet temelji na statisti~nih lastnostih
besedila v korpusu. Ena bolj enostavnih primerja frekvenco pojavitev besed iz
Ozna~evanje korpusov 73
splo{nega korpusa s frekvencami pojavitev iz konkretnega besedila: besede ali
besedne zveze, ki imajo v nekem besedilu precej vi{jo frekvenco od povpre~ja, so
verjetno termini. Pri korpusih, ki so oblikoslovno ozna~eni, je mo`no tudi
izkori{~ati vzorce z besednimi vrstami, ki omejijo najdene kolokacije. Identifikacija
terminov, podobno kot samostalni{kih zvez, je {e posebej zanimiva v kontekstu
ve~jezi~nih korpusov, saj odpira vrata za avtomatizirano izdelavo ve~jezi~nih terminolo{kih slovarjev in pomagal. Pregled metod za lu{~enje terminov najdemo v
Vintar (2002), ker je tudi opis razvoja in uporabe dveh metod za slovenski jezik, na
primeru slovensko-angle{kega korpusa TRANS.
3.6 Povezave
Do sedaj obravnavana ozna~evanja imajo skupno lasnost, da kategorizirajo nek del
besedila. Drug tip ozna~evanja pa je povezovanje besedila z nekim drugim besedilom, bodisi da gre za prevod ali pa za variantno izdajo.
Vzporedni ve~jezi~ni korpusi so tipi~ni primer, ko je smiselno vzpostaviti povezave (vsaj) med stavki originala in prevodov. Obstaja ve~ avtomatskih na~inov, kako
poravnati stavke; verjetno najbolj znan je statisti~ni program, ki enostavno primerja dol`ine stavkov (Gale in Church 1993); tega smo uporabili tudi mi pri poravnavi korpusov MULTEXT-East in (deloma) IJS-ELAN.
Poravnave se tipi~no izra`a s pomo~jo povezav, tj. atributov, ki ka`ejo na poravnane elemente. Primer tega lahko vidimo v Sliki 8, kjer atribut corresp identificira
poravnani segment angle{kega prevoda. Bolj splo{en na~in ponuja CES s posrednim ozna~evanjem, kjer so poravnave shranjene v posebnem dokumentu, ki samo
ka`e na besedilo. Slika 8 nam poda primer tak{nega ozna~evanja iz korpusa MULTEXT-East, kjer je prva poravnava 1-1, druga 2-1 in tretja 1-0.
Slika 8: Primer povezav CES
Povezovanje se uporablja tudi pri enojezi~nih korpusih oz. elektronskih izdajah,
bodisi za povezave znotraj dokumenta, predvsem pa, kadar nas zanimajo razli~ne
izdaje istega dela. Tu velja omeniti dva modula TEI. TEI.transcr obravnava transkripcijo primarnih virov in je namenjen predvsem ozna~evanju rokopisov, medtem
ko modul za ozna~evanje kriti~nega aparata TEI.crit definira strukturo in oznake za
pripombe in variantne poglede na besedilo. Ti moduli omogo~ajo ozna~evanje in
povezovanje ve~ »branj« besedila ( reading) in definirajo tudi elemente za
opis grafi~ne podobe besedila.
74 Toma` Erjavec
4 Zaklju~ki
V ~lanku smo podali pregled standardov in ravni ozna~evanja, ki se jih uporablja
oziroma bi se jih lahko uporabljalo pri zapisu korpusov slovenskega jezika. Predlagane metode imajo prednost, da spodbujajo izmenjavo, trajnost in ve~namensko
uporabo korpusov.
XML ima toliko o~itnih prednosti, da lahko v prihodnosti pri~akujemo skoraj univerzalno uporabo tega zapisa za potrebe korpusov in drugih jezikovnih virov. Tako
se XML npr. `e uporablja v slovenskem slovaropisju: Krek (2003) opi{e XML
DTD, ki so ga naredili za slovenske dvojezi~ne slovarje.
Navzo~nost TEI v zapisu jezikovnih virov je bolj vpra{ljiva, saj imajo lastni DTDji prednost, da so tipi~no enostavnej{i in bolj perskriptivni, kar olaj{a uporabo, la`je
pa jih je tudi posloveniti. Ravno zaradi enostavosti je postal popularen tudi CES, ki
je sicer neprimerno manj fleksibilen kot TEI. Vendar pa je ve~ino kompleksnosti
TEI mo`no skriti pred uporabnikom, pa tudi snovalcem in uporabnikom DTD-ja;
spletni vmesnik TEI Pizza Chef ,
omogo~a interaktivno definicijo definicije tipa dokumentov, izra`ene v eni datoteki.
Mo~an argument proti uporabi TEI bi lahko bila tudi anglocentri~nost pobude:
~eprav je besedilo v poljubnem jeziku, pa so imena vseh oznak angle{ka. In ~eprav
TEI P4 omogo~a lokalizacijo imen elementov skozi uporabni{ko dolo~ene entitete,
ne podpira prevajanja imen atributov in njihovih vrednosti. V zadnjem ~asu se je
tudi tu zgodil premik, saj je v teku pobuda (Bia et al. 2003) za izdelavo standardiziranih knji`nic ve~jezi~nih imen vseh TEI elementov, atributov in njihovih vrednosti, s katerimi je mo`no oznake dokumentov TEI avtomati~no z uporabo XSLT
prevajati med jeziki.
^lanek je podal tudi pregled ravni jezikovnega ozna~evanja korpusov, pri tem pa
izpostavil predvsem videnje ozna~evanja korpusov, kjer le-te naprej zajamemo,
nato pa tokeniziramo, segmentiramo, oblikoslovno ozna~imo in pri vzporednih korpusih {e ~imbolje pove`emo.
To je pribli`no tudi domet jezikovnih tehnologij za slovenski jezik, saj te ravni z
ve~jo ali manj{o natan~nostjo {e zmoremo avtomatsko ozna~iti. ^eprav je tudi tu {e
polno odprtih vpra{anj in mo`nosti za izbolj{anje tehnologij, pa obstajajo tudi jezikoslovne ravni, ki se jih za sloven{~ino sploh nismo dotaknili. Tu velja izpostaviti
predvsem skladenjsko ozna~evanje, kjer je vsak stavek v korpusu ozna~en s svojo
strukturno ali funkcijsko analizo. Korpusi skladnje (treebanks) obstajajo za ve~je
{tevilo jezikov, za~en{i z angle{kim, kjer je bil izredno vpliven Penn Treebank
, ki vsebuje milijon besed, ozna~enih s fraznimi strukturami. Za slovenski jezik je bolj zanimiv Prague Dependecy Treebank
, ki vsebuje milijon besed, ozna~enih z odvisnostnimi analizami. ^eprav je del PDT ozna~en tudi z globinskimi funkcijskimi strukturami
(tectogramatic level), pa se na prvi stopnji analiti~ne strukture vsaki besedi oz.
lo~ilu pripi{e odvisnost od nadrejene besede.
Ozna~evanje korpusov 75
Literatura
Abney, Steven, 1991: Parsing by Chunks. Berwick, Robert C., Abney, Steven P., in Carol
Tenny (ur.): Principle-Based Parsing: Computation and Psycholinguistics, Dodrecht:
Kluwer Academic Publishers. 257–278.
Bia, Alejandro, Sanchez-Quero, Manuel, Regis Deau, 2003: Multilingual Markup of Digital
Library Texts Using XML, TEI and XSLT. XML Europe 2003. Alexandria, ZDA:
IDEAlliance. 53–58.
Brants, Thorsten, 2000: TnT – A Statistical Part-of-Speech Tagger. Sixth Applied Natural
Language Processing Conference ANLP-2000. Seattle, WA: ACL. 224–231.
Di Cristo, Philippe, 1996: MtSeg: The MULTEXT Multilingual Segmenter Tools. MULTEXT
Deliverable MSG 1, Version 1.3.1, CNRS, Aix-en-Provence.
D`eroski, Sa{o, Erjavec, Toma`, Zavrel, Jakub, 2000: Morphosyntactic Tagging of Slovene:
Evaluating PoS Taggers and Tagsets. Second International Conference on Language
Resources and Evaluation, LREC’00. Paris: ELRA. 1099–1104.
Erjavec, Toma`, Gorjanc, Vojko, Stabej, Marko, 1998: Korpus FIDA. Konferenca Jezikovne
tehnologije za slovenski jezik. Ljubljana: Institut Jo`ef Stefan. 124–127.
Erjavec, Toma`, 2001: Harmonised Morphosyntactic Tagging for Seven Languages and
Orwell’s 1984. 6th Natural Language Processing Pacific Rim Symposium, NLPRS’01.
Tokyo. 487–492.
Erjavec, Toma`, 2002a: Compilation and Exploitation of the IJS-ELAN Parallel Corpus.
Zbornik B 5. Informacijska dru`ba IS’2002: jezikovne tehnologije. Ljubljana: Institut Jo`ef
Stefan. 86–93.
Erjavec, Toma`, 2002b. The IJS-ELAN Slovene-English Parallel Corpus. International
Journal of Corpus Linguistics 7/1. 1–20.
Gale, William, 1993: A Program for Aligning Sentences in Bilingual Corpora. Computational Linguistics, 19/1. 75–102.
Grefenstette, Greg, Tapanainen, Pasi, 1994: What is a Word, What is a Sentence? Problems
of Tokenization. The 3rd International Conference on Computational Lexicography, COMPLEX ’94. Budapest: Research Institute for Linguistics, Hungarian Academy of Sciences.
79–87.
Jakopin, Primo`, Bizjak, Aleksandra, 1997: O strojno podprtem oblikoslovnem ozna~evanju
slovenskega besedila. Slavisti~na Revija, 45/3–4. 513–532.
Jakopin, Primo`, 2000: Elektronski in spletni naslovi v ~asopisu DELO, 1998–2000.
Konferenca Jezikovne tehnologije, Informacijska dru`ba, IS’2000. Ljubljana: Institut Jo`ef
Stefan. 116–119.
Krek, Simon, 2003: Sodobna dvojezi~na leksikografija. Jezik in Slovstvo, 48/1. 45–60.
Sperberg-McQueen, C, M., Burnard, Lou, 2002: Guidelines for Electronic Text Encoding
and Interchange, The XML Version. The TEI Consortium.
van Halteren, Hans, 1999: Syntactic Wordclass Tagging. Dodrecht: Kluwer Academic
Publishers.
Vintar, [pela, 2002: Avtomatsko lu{~enje izrazja iz slovensko-angle{kih vzporednih besedil.
Zbornik B 5. Informacijska dru`ba IS’2002: jezikovne tehnologije. Ljubljana: Institut Jo`ef
Stefan. 78–85.
76 Toma` Erjavec
Seznam pomembnej{ih spletnih naslovov
http://www.w3.org/XML/
XML: eXtended Markup Language
http://www.tei-c.org/
TEI: Text Encoding Initiative
http://www.cs.vassar.edu/CES/
CES: Corpus Encoding Standard
http://www.telri.de/
Iniciativa TELRI, »Trans European Language Resources Infrastructure
«
http://tractor.bham.ac.uk/
Mre ni arhiv TRACTOR: TELRI Research Archive of Computational Tools and Resources
http://nl.ijs.si/ME/
Korpusi in leksikoni projekta MULTEXT-East, »Multilingual TextTools and Corpora for
Central and Eastern European Languages
«
http://nl.ijs.si/elan/
Slovensko-angle{ki korpus IJS-ELAN
http://nl2.ijs.si/corpus/
Mre ni konkordan~nik IJS
http://bos.zrc-sazu.si/
Korpus Nova beseda
http://www.fida.net/
Korpus FIDA
http://www.ijs.si/lit/leposl.html
Korpus SlovLit