Keeletehnoloogia ressursid: AVALEHEKÜLG  ·  TUTVUSTUS  ·  PROJEKTID  ·  TARKVARA  ·  DEMOD  ·  LINGID  

Tartu Ülikool

 

Eestikeelsete nimisõnafraaside filtreerija

 

Eesti Informaatikakeskuse leping

nr 916/2404/R2-2 / LMTAT 03599

 

 

Lõpparuanne

(mai – 30. november 1999)

 

 

Tartu 1999


Sisukord

1. Sissejuhatus *

2. Eesti keele nimisõnafraaside tuvastamine *

2.1. Märgendid *

2.2. Ülevaade programmi tööst *

Morfoloogiline analüüs *

Morfoloogiline ühestamine *

Osalausete piiride määramine *

Süntaktiliste funktsioonide määramine *

Nimisõnafraaside eristamine *

Teisendusreeglid *

3. Nimisõnafraaside filtreerija algoritmi kirjeldus *

Algoritm *

4. Programmi estnptool paigaldamis- ja kasutamisjuhend *

Programmi installeerimine *

Programmi sisendid ja väljundid *

Programmi kasutamine *

5. Tulemused *

Kirjandus *

 

1. Sissejuhatus

Käesoleva teadusprojekti eesmärgiks on koostada eestikeelsete nimisõnafraaside filtreerija – operatsioonisüsteemis Windows töötav programm, mille sisendiks oleks eestikeelne tekst ja väljundiks sellest tekstist eraldatud nimisõnafraasid.

1998. a valmis keeletehnoloogia sihtprogrammi raames (operatsioonisüsteemis MS-DOS töötav) programm estnp, mis suudab leida nimisõnafraasid eesti keele kitsenduste grammatika alusel morfoloogiliselt analüüsitud ja ühestatud tekstist (vt http://www.ee/eks/) . Seega tuli esmalt täiustada olemasolevat programmi ja seejärel lisada talle (koos Windowsi kasutajaliidese ja vajalike konverterteerimisprogrammidega) eelmoodulitena eesti keele morfoloogiline analüsaator, mis teeb sisendi automaatse morfoloogilise analüüsi, ja morfoloogiline ühestaja, mis konteksti põhjal lahendab morfoloogilisel analüüsil tekkinud mitmeti tõlgendatavused.

Morfoloogilise analüsaatorina kasutasime programmi estmorf (vt http://www.filosoft.ee).

Morfoloogiline ühestaja põhineb eesti keele kitsenduste grammatikal – samal formalismil, mida kasutab oma töös ka estnp.

Täitmine

Projekti II etapil teostati plaanis ettenähtud tööd: integreeriti morfoloogiline analüsaator ja eesti keele kitsenduste grammatika morfoloogiline ühestaja nimisõnafraase leidva programmiga estnp, mille täpsust käesoleva projekti I etapi lõpuks oli tänu reeglistiku täiendamisele suudetud tõsta ettenähtud 85%-ni (vt esitatud vahearuanne), koostati vajalikud konverteerimisprogrammid erinevate moodulite sisendite ja väljundite ühildamiseks, ning varustati saadud integreeritud programm kasutajaliidesega operatsioonisüsteemis Windows. Valminud nimisõnafraaside filtreerija (aruandele lisatud kettal) töötab täpsusega keskmiselt 85%, tehes vigu alla 2%. Seega võib väita, et selle programmiga on võimalik nimisõnafraase leida sellise täpsusega, et neid saab praktikas kasutada.

Programmi koostamisel kasutasime Tartu Ülikooli arvutiteaduse instituudile litsenseeritud tarkvara MS Visual C++ v.5.0.

2. Eesti keele nimisõnafraaside tuvastamine

Valmivate süntaksianalüsaatorite üks esimesi rakendusi on tavaliselt nimisõnafraaside tuvastaja (vt nt Soome tarkvarafirma Lingsoft kitsenduste grammatikal põhinevat süntaksianalüsaatorit ja nimisõnafraaside tuvastajat NPTool inglise keele jaoks, http://www.lingsoft.fi). Ka eesti keele nimisõnafraaside tuvastamisel kasutame kitsenduste grammatikat.

Esialgu seadsime eesmärgiks koostada eestikeelsete nimisõnafraaside tuvastamiseks eraldi grammatika (ainult väga pindmise süntaktilise analüüsi tegemiseks: nimisõnafraaside põhjade, täiendite ja verbifraaside märgendamiseks). Eeldatavasti peaks see olema küllaltki väike ja kompaktne. Kuna aga eesti keeles võivad fraasi põhi ja täiend olla samas käändes ning ka sõnajärje alusel on väga raske, kui mitte võimatu neid eristada, siis näitasid eksperimendid, et sedavõrd pinnalisest analüüsist on nimisõnafraasi piiride määramisel vähe abi. Tunduvalt hõlpsam on teha esmalt lause täielik süntaktiline analüüs ja seejärel filtreerida nimisõnafraasid.

Eesti keele nimisõnafraaside filtreerija estnptool töötab neljas etapis: 1) eestikeelne tekst analüüsitakse morfoloogiliselt, 2) morfoloogiliselt analüüsitud tekst ühestatakse, 3) seejärel märgendatakse see süntaktiliste funktsionaalsete märgenditega, 4) süntaktiliste märgendite abil leitakse lausest nimisõnafraasid. Seega on tegu sõna otseses mõttes nimisõnafraaside filtreerimisega süntaktiliselt analüüsitud tekstist.

 

    1. Märgendid

Nimisõnafraaside eristamiseks varustatakse iga sõna märgendiga, mis näitab, kas see sõna on nimisõnafraasi põhi, ees- või järeltäiend või ei kuulu nimisõnafraasi. Kasutatavad märgendid on järgmised (vrd Voutilainen).

@V - verb, selle märgendiga varustatakse kõik verbid, sõltumata sellest, kas nad on finiitsed või infiniitsed ning millist süntaktilist funktsiooni nad lauses kannavad. See märgend omistatakse ka infiniitsetele täienditele (näiteks: soov õppida jne). Ühend- ja väljendverbid analüüsitakse sõnahaaval ja verbi märgend lisatakse ainult verbidele.

@NH - nimisõnafraasi põhi, selle märgendiga märgendatakse nimi-, ase- ja arvsõnalised alused, sihitised, määrused, öeldistäited ja kaassõnafraasi kuuluvad nimisõnafraaside põhjad.

@N> - eestäiend, selle märgendiga märgendatakse nimi-, ase-, arv-, omadus- ja määrsõnalised eestäiendid.

@<N - järeltäiend, selle märgendiga märgendatakse nimi-, ase-, arv-, omadus- ja määrsõnalised järeltäiendid.

@XX - muu, selle märgendiga varustatakse sõnad, mis ei kuulu nimisõnafraasi (v.a verbid ja sidendid), näiteks omadus- ja määrsõnalised määrused, omadussõnalised öeldistäited ja kaassõnad (ka siis, kui kaassõnafraas täiendab nimisõnafraasi, sest seda ei ole ilma semantilise informatsioonita võimalik kindlaks määrata).

@J - sidend

 

2.2. Ülevaade programmi tööst

Morfoloogiline analüüs

Sisendteksti morfoloogiline analüüs tehakse programmiga estmorf, toome siin selle programmi väljundi näite:

Oli

ole+i //_V_ main indic impf ps3 sg ps af //

ole+i //_V_ aux indic impf ps3 sg ps af //

külm

külm+0 //_A_ pos sg nom //

külm+0 //_S_ com sg nom //

selge

selge+0 //_A_ pos sg gen //

selge+0 //_A_ pos sg nom //

aprillipäev

aprilli_päev+0 //_S_ com sg nom //

,

, //_Z_ Com //

kellad

kell+d //_S_ com pl nom //

kella+d //_V_ main indic pres ps2 sg ps af //

lõid

loo+id //_V_ main indic impf ps2 sg ps af //

loo+id //_V_ main indic impf ps3 pl ps af //

löö+id //_V_ main indic impf ps2 sg ps af //

löö+id //_V_ main indic impf ps3 pl ps af //

parajasti

parajasti+0 //_D_ //

kolmteist

kolm_teist+0 //_N_ card sg nom l //

.

. //_Z_ Fst //

Morfoloogilisel analüüsil ja ühestamisel on teoreetiliseks aluseks võetud Eesti keele teaduslik grammatika (EKG 1993 ja EKG 1995). Erinevalt EKG-st lähtub morfoloogiline analüsaator estmorf traditsioonilisest 9 sõnaliigist (substantiiv, adjektiiv, pronoomen ja numeraal kui käändsõnad, verb kui pöördsõna ning adverb, pre- ja postpositsioon, konjunktsioon ning interjektsioon kui muutumatud sõnad). Arvesse pole võetud eesti keele teadusliku grammatika jaotust 12ks sõnaliigiks, kus adverbi alt on iseseisvate sõnaliikidena välja toodud modaal-, afiksaal- ja proadverbid (vt EKG 1995).

Tõese morfoloogilise analüüsi saab u 97% sisendteksti sõnadest, analüüsimata jäävad haruldasemad sõnad, nagu pärisnimed, lühendid, terminid, slängisõnad jms. Veel ei ole valmis tundmatute sõnade mõistataja, need sõnad märgendatakse spetsiaalse märgendiga.

Morfoloogiline analüsaator väljastab ainult puhtalt morfoloogilist informatsiooni, süntaktiliseks analüüsiks on vaja aga lisa, näiteks verbide sihilisust/sihitust või kaassõnade tüüpi (ees- või tagasõna) ja rektsiooni. Süntaksianalüsaatori väljatöötamise käigus aitasid meid kaks leksikograafi, kes koostasid eesti keele sihitute verbide ja kaassõnade loendi.

Morfoloogiline ühestamine

Morfoloogilise ühestaja sisendiks on morfoloogiliselt analüüsitud tekst ja väljundiks morfoloogiliselt ühestatud tekst. Morfoloogiline ühestaja kasutab eesti keele kitsenduste grammatikat (ESTKG), milles on ligikaudu 1000 ühestamise põhireeglit ja 175 heuristilist reeglit (Puolakainen 1998). Heuristiliseks on loetud need reeglid, mis teevad keskmisest rohkem vigu ja samas ei ole ka niivõrd olulised, et ilma nendeta teised reeglid ei rakenduks.

Pärast ühestamist jääb 12-17% sõnadest morfoloogiliselt mitmeseks, s.t ühestaja täpsus on 83-88%. Kaks suuremat seni lahendamata mitmesuste klassi on käändsõna omastav, osastav ja sisseütlev kääne ning käändsõna nimetav ja omastav kääne.

Reeglite genereerimiseks oleme kasutanud ka statistilisi andmeid korrates artiklis [Samuelsson et al 1997] kirjeldatud katset eesti keelele. Saadud grammatika abil on võimalik ühestada 95% sõnadest, kuid ka vigade protsent on üle 5.

 

Osalausete piiride määramine

Morfoloogilise ühestamise käigus leitakse ka osalausete piirid ning osalause esimene sõna märgendatakse spetsiaalse märgendiga. Osalausete piiride määramine on analüsaatorile küllaltki raske ülesanne, sest sel analüüsi hetkel ei ole veel ümbritseva konteksti kohta piisavalt täpset informatsiooni – morfoloogiline ühestamine on alles pooleli. Et vältida vigu, kasutame erinevalt standardsest kitsenduste grammatikast kahte tüüpi osalausepiiride märgendeid: kindel ja oletatav osalausepiir. Praegu sisaldab grammatika 30 osalausepiiride määramise reeglit, mis konteksti kontrollides otsustavad, kas antud sõna võib olla osalause alguseks.

Morfoloogilise ühestamise ja lausepiiride määramise lõppedes saadakse tulemus kujul:

sõnavorm1

algvormi_tüvi+lõpp // _L_ märgendid //

algvormi_tüvi+lõpp // _L_ märgendid //

sõnavorm2

algvormi_tüvi+lõpp // _L_ märgendid //

algvormi_tüvi+lõpp // _L_ märgendid //

...

sõnavormn

algvormi_tüvi+lõpp // _L_ märgendid //

algvormi_tüvi+lõpp // _L_ märgendid //

lauselõputunnus

....lauselõputunnus1 // märgendid //

kus sõnavormi tähistab sõna nii, nagu ta lauses esineb, algvormi_tüvi on selle sõna algvormi tüvi, lõpp on käände- või pöördelõpp või 0, sõltuvalt sõnaliigist _L_.

Näide

Kuid

kuid+0 //_J_ crd #cap **CLB //

kahtlemata

kahtlemata+0 //_D_ //

kahtle+mata //_V_ main sup ps af abes #Intr //

oli

ole+i //_V_ main indic impf ps3 sg ps af #FinV #Intr //

Antti

Antti+0 //_S_ prop sg nom #cap //

andekas

andekas+0 //_A_ pos sg nom //

ning

ning+0 //_J_ crd //

omamoodi

omamoodi+0 //_D_ //

ka

ka+0 //_D_ //

töökas

töökas+0 //_A_ pos sg nom //

$.

. //_Z_ Fst //

Süntaktiliste funktsioonide määramine

Sõnadevahelised grammatilised seosed antakse kitsenduste grammatikas edasi süntaktiliste märgendite abil. Märgendid näitavad, kas tegemist on fraasi põhjaga (alus, sihitis, öeldistäiend, määrus), laiendiga (täiend, kvantori- või kaassõnafraasi laiend) või öeldise koosseisu kuuluva tegusõnaga. Fraasi laiendi märgendid annavad ka fraasipõhja asukoha suuna, kuid põhja ja laiendi vahelist seost ei ole otseselt näidatud.

Süntaktiliste funktsioonide määramine toimub kahes etapis. Esimesel etapil lisab analüsaator igale morfoloogilisele tõlgendusele selle kõik võimalikud süntaktilised märgendid ja järgmisel etapil hakkab konteksti kontrollides eemaldama sobimatuid.

Kui märgendid on lisatud, kasutab analüsaator süntaktilisi kitsendusi nende hulgast õigete väljavalimiseks. Kitsendused võivad sõna süntaktilise funktsiooni määramisel kasutada sõnade põhivorme, sõnade morfoloogilist infot, juba määratud süntaktilisi funktsioone ning sõnade järjestust lauses. Iga kitsendus kujutab endast keelereeglit, mis näitab, kus ja millistel tingimustel on antud sõnal just see konkreetne süntaktiline funktsioon või millises situatsioonis sõna ei saa omada sellist süntaktilist funktsiooni.

ESTKG sisaldab 175 märgendite lisamise reeglit ja 800 süntaktilist kitsendust (Müürisep 1999). Enamus süntaktilistest kitsendustest, peaaegu pooled, tegelevad atribuudi määramisega. Ülejäänud süntaktilised funktsioonid on reeglite vahel ühtlasemalt ära jaotunud, kuid atribuudi jaoks on ka kõige rohkem märgendeid ning neid lisatakse peaaegu kõigile sõnadele, verbi pöördelised vormid ja sidesõnad välja arvatud.

Süntaksianalüsaator suudab määrata üheselt 80-88% sõnade funktsioonid, tehes seejuures 2-5% vigu. Analüsaatori töö täpsus ja korrektsus sõltuvad paljuski teksti liigist ja morfoloogilise ühesuse astmest. Mida ühesem tekst, seda paremad on tulemused.

 

ESTKG süntaksianalüsaator kasutab järgmisi märgendeid:

A. Öeldise märgendid

@+FMV - finiitne öeldis

@-FMV - infiniitne öeldis

@+FCV - olema liitaegades, modaalverbid jt ahelverbides, finiitne vorm

@-FCV - olema liitaegades, modaalverbid jt ahelverbides, infiniitne vorm

@NEG - verbi eitus

B. Põhja märgendid

@SUBJ - subjekt

@OBJ - objekt

@PRD - predikatiiv

@ADVL - adverbiaal, ka fraasiadverbiaal

C. Laiendite märgendid

@AN> - adjektiiv eestäiendina

@<AN - adjektiiv järeltäiendina

@AD> - adverb eestäiendina

@<AD - adverb järeltäiendina

@PN> - kaassõna eestäiendina

@<PN - kaassõna järeltäiendina

@NN> - nimisõna eestäiendina

@<NN - nimisõna järeltäiendina

@VN> - partitsiip eestäiendina

@<VN - partitsiip järeltäiendina

@INF_N> - infinitiiv eestäiendina

@<INF_N - infinitiiv järeltäiendina

@<P - eessõnafraasi põhi

@P> - tagasõnafraasi põhi

@Q> - kvantori eeslaiend

@<Q - kvantori järellaiend

D. Muud märgendid

@X - ahelverbi komponent (nt mahti saama)

@J - sidend

@I - hüüatus

@??? - tundmatu sõna

 

Nimisõnafraaside eristamine

Kui tekst on süntaktiliselt analüüsitud, teisendatakse süntaksianalüsaatori märgendid nimisõnafraaside filtreerija märgenditeks. Nimisõnalised alused, sihitised, määrused ja öeldistäited märgendatakse fraasi põhja märgendiga, täiendid fraasi laiendi märgenditega. Sel viisil võetakse mitmed nimisõnafraaside filtreerija jaoks ebaolulised mitmesused kokku ja selliselt märgendatud tekstis on üheselt märgendatud sõnade osakaal juba 90%.

Järgmisel sammul väljastatakse märgendatud teksti põhjal fraasid. Allesjäänud mitmesused ja vajadus arvestada koordinatsiooniga muudavad selle operatsiooni küllaltki keeruliseks. Kuna soovisime, et väljundis oleks igast fraasist ainult üks versioon, valisime kõige otsesema lähenemise - mitme märgendi hulgast valitakse kõige tõenäolisem. Näiteks kui sõna võib olla eestäiend või fraasi põhi, siis on ta enamasti eestäiend; kui sõna võib olla nii ees- kui ka järeltäiend ja fraasi põhi, on ta tõenäoliselt fraasi põhi jne.

Teisendusreeglid

Süntaksianalüsaatori väljundi märgendid teisendatakse nimisõnafraaside filtreerija märgenditeks järgmiste reeglite abil (vt ka tabelid 1, 2):

  1. Kui sõna on nimisõna, asenda märgendid @SUBJ, @OBJ, @PRD, @ADVL, @<P, @P> märgendiga @NH.
  2. Kui sõna on asesõna, asenda märgendid @SUBJ, @OBJ, @PRD, @ADVL, @<P, @P> märgendiga @NH.
  3. Kui sõna on arvsõna, asenda märgendid @SUBJ, @OBJ, @PRD, @ADVL, @<P, @P> märgendiga @NH.
  4. Kui sõna on lühend, asenda märgendid @SUBJ, @OBJ, @PRD, @ADVL, @<P, @P> märgendiga @NH.
  5. Kui sõna on verb, asenda märgendid @+FMV, @-FMV, @+FCV, @-FCV, @NEG, @SUBJ, @OBJ, @PRD, @ADVL, @<INF_N ja @INF_N> märgendiga @V.
  6. Märgendid @AN>, @VN>, @NN>, @Q> ja @AD> asendada märgendiga @N>.
  7. Märgendid @<AN, @<VN, @<NN, @<Q ja @<AD asendada märgendiga @<N.
  8. Märgend @J jääb samaks.
  9. Märgend @??? jääb samaks.
  10. Ülejäänud süntaksianalüsaatori märgendid asendada märgendiga @XX.

 

3. Nimisõnafraaside filtreerija algoritmi kirjeldus

Sisend. Programmi estnptool sisendiks on eestikeelne elektrooniline tekst..

Väljund. Programmil on kaks väljundit. 1) Standardväljundisse kirjutatakse kõik leitud nimisõnafraasid, iga fraas eraldi reale. Kui rida lõpeb sümboliga *, on selle fraasi süntaktiline analüüs ebaõnnestunud ja fraas võib olla vigane. 2) Faili nimelaiendiga .NPX kirjutatakse märgendatud sisendtekst.

 

 

Sõnaliik

Selgitus

Süntaktiline märgend

NP märgend

_S_, _P_, _N_ card

Nimi-, ase- ja põhiarvsõna

@SUBJ, @OBJ, @PRD, @ADVL, @<P, @P>

@NH

_S_ ,_P_, _N_ card

Nimi-, ase- ja põhiarvsõna

@NN>, @Q>

@N>

_S_ ,_P_, _N_ card

Nimi-, ase- ja põhiarvsõna

@<NN, @<Q

@<N

_A_ ,_P_, _N_ ord, _D_

Omadus-, ase-, järgarv- ja määrsõna

@AN>, @VN>, @AD>

@N>

_A_ ,_P_, _N_ ord, _D_

Omadus-, ase-, järgarv- ja määrsõna

@<AN, @<VN, @<AD

@<N

_A_

Omadussõna

@PRD

@XX

_A_, _D_, _N_ ord

Omadus-, järgarv- ja määrsõna

@ADVL

@XX

_V_

Verb

kõik märgendid

@V

_J_

Sidesõna

@J

@J

_K_

Kaassõna

kõik märgendid

@XX

_I_, _X_

Hüüdsõna, verbi juurde kuuluv sõna

kõik märgendid

@XX

Tabel 1. Süntaktiliste märgendite teisendamine nimisõnafraaside tuvastaja estnptool märgenditeks.

Mitmesus

Lahend

Selgitus

@N> @NH

@N>

eestäiend ja põhi Þ eestäiend

@N> @NH @<N

@NH

ees- ja järeltäiend ning põhi Þ põhi

@N> @<N

@N>

ees- ja järeltäiend Þ eestäiend

@NH @<N

@NH

põhi ja järeltäiend Þ põhi

Tabel 2. Mitmesuste teisendamine.

Algoritm

1. samm. Tehakse sisendi morfoloogiline analüüs programmiga estmorf.

2. samm. Saadud väljund ühestatakse eesti keele kitsenduste grammatika morfoloogilise ühestajaga.

3. samm. Tehakse saadud väljundi süntaktiline analüüs eesti keele kitsenduste grammatika analüsaatori abil. Selleks kasutatakse reegleid failist GRAMMAR.RLE. Saadakse süntaktiliselt märgendatud tekst.

4. samm. Süntaktilised märgendid teisendatakse nimisõnafraaside tuvastaja märgenditeks vastavalt tabelile 1.

5. samm. Analüüsides märgendeid, väljastatakse fraasid ekraanile. Kui sõna on süntaktiliselt mitmene, kasutatakse tabelis 2 toodud teisendusi (mis on tuletatud mitmesuste statistilisest analüüsist). Koordineeriva sidesõna või kirjavahemärgiga eraldatud sõnad loetakse üheks fraasiks, kui

1. koordinatsioon on eestäiendite vahel (nt elektri-, gaasi-, side- ja muud liinid)

2. koordinatsioon on kahe põhja vahel nii, et viimasele põhjale ei eelne täiendit (nt teed ja liinid).

Fraasi piiri määravad:

  1. verb (@V), eelnev fraas väljastatakse;
  2. osalausepiiri märgend (**CLB ja **CLB-C), eelnev fraas väljastatakse;
  3. märgendiga @XX tähistatud sõnad, kui koostatavasse fraasi kuulub juba järeltäiend, eelnev fraas väljastatakse.
  4. nimisõnafraasi põhi @NH, kui koostatavas fraasis leidub juba põhi ja põhjad ei ole koordinatsioonis, eelnev fraas väljastatakse, antud põhi koos eelnevate eestäiendtitega loetakse uueks koostatavaks fraasiks.

 

4. Programmi estnptool paigaldamis- ja kasutamisjuhend

Programm estnptool on ette nähtud eestikeelsest tekstist nimisõnafraaside leidmiseks.

Programmi installeerimine

Installeerimiseks tuleb kopeerida samasse kataloogi kõik programmi tööks vajalikud failid:

EstNPTool.exe - põhiprogramm,

Ela.exe - lausestaja,

Ela.fst - lausestaja abifail,

Estmorf.dll - morfoloogiline analüsaator,

Baltic.cnv - morfoloogilise analüsaatori abifail,

Eesti.dct - morfoloogilise analüsaatori abifail,

Eesti1.udr - morfoloogilise analüsaatori abifail,

Eesti2.udr - morfoloogilise analüsaatori abifail,

Lexicon.lex - kirjavahemärkide, kaassõnade ja asesõnade

lisamärgendite sõnastik,

Verblex.lx - verbide lisamärgendite sõnastik,

grammar.rul - morfoloogilise ühestamise reegilte fail,

Grammar.rle - süntaktilise analüüsi reegilte fail,

Prgrammar.rle - süntaktilise analüüsi reegilte fail.

 

Programmi sisendid ja väljundid

Programmi estnptool sisendiks on eestikeelne elektrooniline tekst (täpitähed Windowsi kooditabeli järgi). Programmi väljundiks on:

  1. märgendatud tekstifail,
  2. tekstis esinevate nimisõnafraaside loend.

 

Programmi kasutamine

Nimisõnafraaside filtreerija käivitamiseks tuleb käivitada fail EstNPTool.exe. Programmi aken on jagatud kaheks: ülemine pool sisaldab algteksti, millest soovitakse nimisõnafraase otsida, ja alumine pool pärast vastava funktsiooni käivitamist - algtekstis leitud nimisõnafraasid.

Akna ülemises pooles kehtivad menüü File standardsed käsud New, Open, Save, Print, Print Preview ja Page Setup. Olemasoleva teksti avamisel (võimalik on avada tekstifaile nii Windowsi kui ka MS-DOSi tähestikus) tuleb jälgida, et täpitähed näeksid õieti välja, vastasel korral ei tunta neid sisaldavaid sõnu ära.

Mõlemas pooles kehtivad menüü Edit standardsed tekstitöötluse käsud, mis on osaliselt dubleeritud tööriistaribal Toolbar.

Menüüs Options käivitab käsk Find Noun Phrases (sellele vastab ka tööriistariba viimane nupp) nimisõnafraase otsivat mooduli. Seejuures otsitakse nimisõnafraase akna ülemises pooles märgendatud (välja valitud) tekstiosast. Kui valikut ei ole tehtud, siis otsitakse kogu tekstist. Leitud nimisõnafraasid kuvatakse akna alumises osas ning salvestatakse faili phrases.nps programmi kataloogis. Käsk Options võimaldab muuta mõningaid nimisõnafraaside otsingu parameetreid: määrata heuristiliste reeglite kasutamise astet ning valida süntaktilise analüüsi reeglite faili.

 

  1. Tulemused

Nimisõnafraaside tuvastaja töö efektiivsuse hindamiseks testisime seda kahel erineval umbes 1000-sõnalisel failil.

Esimeseks testimismaterjaliks oli 1091-sõnaline Eesti Ekspressi artikkel 1996. aasta presidendivalimistest. Käsitsi analüüsides oli selles 320 nimisõnafraasi 573 sõnaga. Vigadeks loeti järgmised olukorrad:

  1. mõni sõna oli fraasist puudu: nt maanaiste kurtmised raske elu [üle],
  2. mõni sõna oli fraasis ülearu: nt [tahtnud] kogu vabastaja oreooli,
  3. fraas oli valesti poolitatud: nt tema eestikeelset pressikonverentsi | Valge Maja trepil,
  4. fraasid olid valesti liidetud: nt televaatajad + neid.

Üks leitud fraas võis põhjustada ka mitu viga: seal võis olla mõni sõna ülearu ja samas mõni puudu, samuti võis olla fraas korraga nii valesti poolitatud kui ka valesti liidetud. Nt lausest Nõnda ongi [sirgeselgne ja lihtsakoelise mõtlemisega Arnold] [kabinetivõitluses] [kaotajaks] jäänud leidis estnptool järgmised fraasid: lihtsakoelise mõtlemisega, Arnold kabinetivõitluses, kaotajaks, mis põhjustas kolm viga: esimeses fraasis puudub sõna sirgeselgne, esimeses fraasis on liigne poolituskoht, teises fraasis on liigne liitmiskoht.

Tulemused olid järgmised:

Juriidilises tekstis (tsiviilseadustiku üldosa seaduse esimesed 22 paragrahvi, kokku ca 1300 sõna ja 350 fraasi) oli tulemus erinev. Fraas sisaldas liigset sõna ainult seitsmel juhul (nt vanemad elavad lahus), samuti oli väiksem fraaside valede liitmiste osakaal (19 juhtu). Siin oli sageli tegemist sõnaga alaealine, mis analüüsiti kui omadussõna ja püüti liita järgneva fraasiga kui täiend. Suurimaks probleemiks oli täienditena esinevate partitsiipide morfoloogiline ühestamine, mis põhjustasid enamiku 29-st veast puuduva sõna tõttu ja 25-st valesti poolitatud fraasist. Sageli jäid fraasist välja nimisõnad seadus, kohtus, võime, mis ühestati verbideks.

Kirjandus

[EKG 1995] - Erelt, M., Kasik, R., Metslang, H., Rajandi, H., Ross, K., Saari,H., Tael, K. ja Vare, S. Eesti keele grammatika I. Morfoloogia.Sõnamoodustus. Eesti Teaduste Akadeemia Eesti Keele Instituut. Tallinn 1995.

[EKG 1993] - Erelt, M., Kasik, R., Metslang, H., Rajandi, H., Ross, K., Saari,H., Tael, K. ja Vare, S. Eesti keele grammatika II. Süntaks. Lisa: Kiri. Eesti Teaduste Akadeemia Keele ja Kirjanduse Instituut. Tallinn 1993.

[Müürisep 1999] - K. Müürisep. Determination of Syntactic Functions in Estonian Constraint Grammar. In Proceedings of EACL'99, Ninth Conference of the European Chapter of the Association for Computational Linguistics. Bergen, 1999, pp 291-292.

[Puolakainen 1998] - Puolakainen, T. Eesti keele kitsenduste grammatika morfoloogiline ühestaja. Keel ja Kirjandus nr 1, 1998, lk 37 - 46.

[Samuelsson et al 1996] - C. Samuelsson, P. Tapanainen, A. Voutilainen. Inducing Constraint Grammars. – Grammatical Inference. Learning Syntax from Sentences. Lecture Notes in Artifical Intelligence, kd 1147. Springler, 1996, lk 146-155.

[Voutilainen] - Voutilainen, A. A Short Introduction to NP-tool. http://www.lingsoft.fi/doc/nptool/intro/