automatick p i azov n funktor v pra sk m z vislostn m korpusu
Download
Skip this Video
Download Presentation
Automatické přiřazování funktorů v Pražském závislostním korpusu

Loading in 2 Seconds...

play fullscreen
1 / 36

Automatické přiřazování funktorů v Pražském závislostním korpusu - PowerPoint PPT Presentation


  • 72 Views
  • Uploaded on

Automatické přiřazování funktorů v Pražském závislostním korpusu. Zdeněk Žabokrtský student ČVUT FEL, obor výpočetní technika e-mail: [email protected] téma diplomové práce: Převod z analytických do tektogramatických stromů v PDT vedoucí: Ivana Kruijff-Korbayová.

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about ' Automatické přiřazování funktorů v Pražském závislostním korpusu' - merrill


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
automatick p i azov n funktor v pra sk m z vislostn m korpusu
Automatické přiřazování funktorův Pražském závislostním korpusu

Zdeněk Žabokrtský

student ČVUT FEL, obor výpočetní technika

e-mail: [email protected]

  • téma diplomové práce: Převod z analytických do tektogramatických stromů v PDT
  • vedoucí: Ivana Kruijff-Korbayová
automatick p i azov n funktor v pra sk m z vislostn m korpusu1
Automatické přiřazování funktorův Pražském závislostním korpusu

raw text

morphologically

tagged text

analytic tree

structures (ATS)

Automatic functor

assignement (AFA)

tectogrammatical

tree structures (TGTS)

p klad tgts
Příklad TGTS
  • Podle předběžných odhadů se totiž počítá, že do soukromého vlastnictví bude prodáno minimálně 10000 bytů
  • AFA = klasifikace uzlů TGTS do 60 tříd
v choz podm nky
Výchozí podmínky
  • znalosti o přiřazování funktorů nejsou k dispozici ve formě pravidel, anotátoři se často řídí intuicí
  • anotátoři berou při přiřazování v úvahu celý strom; není známa minimální velikost „kontextu“ nezbytná pro správné přiřazení funktorů
  • předběžná měření: četnost funktorů je velmi nerovnoměrná (15 funktorů pokrývá 90% uzlů)
  • omezené množství hotových TGTS
  • dostupné TGTS obsahují nedokonalá data
    • nejednoznačnost - více funktorů u jednoho uzlu
    • neúplnost - některé uzly jestě nemají funktor
o ek van pot e
Očekávané potíže
  • za roh - DIR3
  • za hodinu - TWHEN
  • za svobodu - OBJ
  • po otci
    • TWHEN (Přišel po otci.)
    • NORM (Jmenuje se po otci.)
    • HER (Zdědil dům po otci.)
    • . . .
vhodn velikost kontextu pro ur en funktoru uzlu u
Vhodná velikost kontextu pro určení funktoru uzlu U

a) jen uzel U

b) celý strom

c) uzel U a nadřízený uzel

d) uzel U a sourozenci

pou it atributy
Použité atributy

1) výběr 10 příznaků

    • tvar, lemma, morfologická značka a analytická funkce podřízeného i nadřízeného uzlu
    • funktor podřízeného uzlu,
    • podřadící spojka nebo předložka

2) extrakce 3 dalších příznaků

    • slovní druh podřízeného a nadřízeného uzlu
    • pád podřízeného uzlu
  • Výsledek: vektor třinácti (12+1) symbolických příznaků pro každou hranu
  • AFA  klasifikace vektorů s 12 symbolickými příznaky do 60 tříd
uk zka dat
Ukázka dat

zastavme :zastavit1 :vmp1a:v:pred:okamz_ik :okamz_ik :nis4a :n:4:na:adv:tfhl

zastavme :zastavit1 :vmp1a:v:pred:ustanoveni_:ustanoveni_:nns2a :n:2:u :adv :loc

normy :norma :nfs2a :n:atr :nove_ :novy_ :afs21a :a:0: :atr :rstr

normy :norma :nfs2a :n:atr :pra_vni_ :pra_vni_ :afs21a:a:0: :atr :rstr

ustanoveni_ :ustanoveni_:nns2a :n:adv:normy :norma :nfs2a :n:2: :atr :pat

p edzpracov n dat
Předzpracování dat
  • Dostupná data - 18 souborů po 50 TGTS

1) rozdělení (náhodný výběr)

trénovací množina - 15 souborů

testovací množina - 3 soubory

2) transformace ze stromu do seznamu hran, výběr a extrakce příznaků

3) ostranění vektorů s nejednozně nebo neúplně vyplněnými hodnotami příznaků

4) odstranění diakritiky

  • Výsledek:
    • 6049 vektorů v trénovací množině
    • 1089 vektorů v testovací množině
metody dopl ov n funktor
Metody doplňování funktorů

1. Metody založené na slovnících (dictionary-based methods)

  • slovníky příslovcí, podřadících spojek ...
  • slovníky se získávají z trénovací množiny a z manuálu pro anotátory

2. Metody založené na pravidlech (rule-based methods)

- nepoužívají slovní tvar ani lemma

a) pravidla z manuálu pro anotátory a ručně odvozená pravidla

b) pravidla získaná pomocí strojového učení

metody zalo en na slovn c ch porovn v n s tr novac mi vektory similarity
Metody založené na slovnících:Porovnávání s trénovacími vektory(similarity)
  • slovník = všechny vektory z trénovací množiny
  • na prostoru vektorů příznaků se zavede metrika, hledá se nejbližší soused vzhledem k metrice
  • výpočet metriky
    • za každý příznak, ve kterém se vektory liší, se přičítá váha příznaku
  • příklad:
    • hrana z testovací množiny: „zálohy na daně“
    • nejpodobnější hrana z trénovací množiny: „návrh na stanovení“ , dolní uzel je PAT
metody zalo en na slovn c ch p slovce adverbs
Metody založené na slovnících:Příslovce (adverbs)
  • slovník obsahuje 290 dvojic (příslovce, funktor)
  • slovník vznikl sloučením příslovcí z trénovací množiny a z manuálu pro anotátory
  • pouze „jednoznačná“ příslovce
  • ukázka ze slovníku:

ani rhem

apropo_ att

aspon_ rhem

be_z_ne_ mann

bezma_la rhem

bezmocne_ resl

bezplatne_ mann

metody zalo en na slovn c ch pod ad c spojky subconj
Metody založené na slovnících:Podřadící spojky (subconj)
  • slovník obsahuje 38 dvojic (spojka, funktor)
  • slovník vznikl sloučením příslovcí z trénovací množiny a z manuálu pro anotátory
  • pouze „jednoznačné“ podř. spojky
  • ukázka ze slovníku:

a_proto csq

ac_ cncs

ac_koli cncs

ac_koliv cncs

aniz_ compl

byt_ cncs

co tsin

dokud thl

metody zalo en na slovn c ch p elo ka podstatn jm no prepnoun
Metody založené na slovnících:Přeložka + podstatné jméno (prepnoun)
  • slovník obsahuje 69 trojic (předložka, podst.jm, funktor)
  • slovník vznikl výběrem těch spojení z trénovací množiny, které se vyskytly alespoň dvakrát a vždy se stejným funktorem
  • ukázka ze slovníku:

v_roce twhen

v_praze loc

v_dobe_ twhen

pro_podnikatele ben

od_doby tsin

do_vlastnictvi_ dir3

z_zisku dir1

metody zalo en na ru n psan ch pravidlech
Metody založené na ručně psaných pravidlech

1) verbs_active:

jestliže řídící uzel je sloveso

afun=subjekt  ACT

objekt v dativu  ADDR

objekt v akuzativu  PAT

2) verbs_passive:

jestliže řídící uzel je sloveso

subjekt  PAT

objekt v dativu  ADDR

objekt v 7. pádě  ACT

metody zalo en na ru n psan ch pravidlech1
Metody založené na ručně psaných pravidlech

3) adjectives:

přídavné jméno přivlastňovací  RSTR

jiné  APP

4) pronounpos:

přivlastňovací zájmeno  APP

5) numerals:

číslovka  RSTR

6) pnom:

afun=PNOM  PAT

7) pred:

afun=PRED  PRED

metoda zalo en na strojov m u en ml80
Metoda založená na strojovém učení(ml80)
  • spolupráce: Sašo Džeroski, Jožen Štefan Institute, Ljubljana
  • c4.5 (J. Ross Quinlan, 1993) - systém pro vytváření rozhodovacích stromů podle dané trénovací množiny
  • postup:
    • 1. předzpracování (selekce a extrakce příznaků)
    • 2. vygenerování rozhodovacího stromu podle trénovací množiny
    • 3. prořezání stromu (zůstanou jen pravidla s nadějí na vyšší než 80 % úspěšnost)
    • 4. poloautomatická transformace do programu v Perlu
metoda zalo en na strojov m u en
Metoda založená na strojovém učení
  • část „naučeného“ rozhodovacího stromu

dep_afun = sb:

| gov_pos = a: rstr (1.0/0.8)

| gov_pos = j: pat (1.0/0.8)

| gov_pos = n: rstr (21.0/8.0)

| gov_pos = null: act (1.0/0.8)

| gov_pos = z: act (19.0/5.9)

| gov_pos = v:

| | gov_morph = vp: act (463.0/25.9)

| | gov_morph = vr: act (133.0/12.9)

| | gov_morph = vs: pat (28.0/8.2)

  • ukázka z výsledného programu v Perlu

if (dep_afun="atr") {

if (conj_prep eq "o") {$functor="pat"}

if (conj_prep eq "v") {$functor="loc"}

if (conj_prep eq "z") {$functor="dir1"}

if (conj_prep="null") {

if (dep_case="0") {

if (dep_morph eq "a") {$functor="rstr"};

if (dep_morph eq "ps") {$functor="app"};

if (dep_morph eq "vr") {$functor="rstr"};

if (dep_morph eq "znum") {$functor="rstr"};

implementace
Implementace
  • AFA systém je tvořen posloupností malých programů (filtrů), každý odpovídá jedné metodě
  • Každý program může doplnit jen ty funktory, které nevyplnil žádný z jeho předchůdců
  • Výhoda: pole působnosti jednotlivých metod nejsou disjunktní, změnou jejich pořadí lze „ladit“ přesnost, aniž by se musel přepisovat kód programu
jak vyhodnocovat sp nost afa
Jak vyhodnocovat úspěšnost AFA?
  • není to jednorozměrný problém - kompromis mezi co nejvíce správně přiřazenými funktory a co největší přesností
  • u každé metody i celkem se vyhodnocuje 6 veličin:
    • Cover = počet funktorů přiřazených danou metodou
    • Relat. Cover = Cover / počet všech funktoru k doplnění
    • Errors = počet chybně přiřazených funktorů
    • Hits = počet správně přiřazených funktorů
    • Recall = Hits / počet všech funktorů k přiřazení
    • Precision = Hits / Cover
vyhodnocen sp nosti
Vyhodnocení úspěšnosti
  • uvedené výsledky byly dosaženy na testovací množině

1) ručně psaná pravidla a všechny slovníkové metody

vyhodnocen sp nosti1
Vyhodnocení úspěšnosti

2) jen metoda similarity

Cover = 100 % Precision = Recall = 73 %

3) jen strojové učení

a) bez prořezání stromu, tj. použijí se úplně všechna pravidla naučená v trénovací množině

Cover = 100 % Precision = Recall = 76 %

b) s prořezáním pravidel s horší než 80 % přesností

Cover = 37.3 % Recall = 35.3 % Precision=94.5 %

4) jen ručně psaná pravidla

Cover=51.2% Recall=48.1 % Precision=93.9 %

vyhodnocen sp nosti2
Vyhodnocení úspěšnosti

4) všech 12 metod

Cover=100% Precision=Recall=78.6 %

5) strojové učení + ručně psaná pravidla + adverbs+ prepnoun

Cover=62.8% Recall=58.7 % Precision=93.5 %

uk zka vyhodnocov n
Ukázka vyhodnocování

18 23:34 tip 45 /home/zabokrt/FUNKTORY/ASSIGNERS> cat ../ML/test2.txt | ml80.pl | pred.pl | verbs_active.pl | verbs_passive.pl | pnom.pl | adjectives.pl | numerals.pl | pronounposs.pl | adverbs.pl | prepnoun.pl | ../TOOLS/stat.pl

Number of lines: 1089 (100%)

Method #Covered #Hit #Missed Hit ratio

----------------------------------------------------------------------

ml80 406 (37.28 %) 384 (35.26 %) 22 (2.02 %) 94.58 %

adjectives 175 (16.06 %) 170 (15.61 %) 5 (0.45 %) 97.14 %

pronounpos 16 (1.46 %) 13 (1.19 %) 3 (0.27 %) 81.25 %

prepnoun 8 (0.73 %) 8 (0.73 %) 0 (0 %) 100 %

numerals 19 (1.74 %) 13 (1.19 %) 6 (0.55 %) 68.42 %

adverbs 28 (2.57 %) 24 (2.20 %) 4 (0.36 %) 85.71 %

pred 4 (0.36 %) 4 (0.36 %) 0 (0 %) 100 %

verbs_passive 7 (0.64 %) 6 (0.55 %) 1 (0.09 %) 85.71 %

verbs_active 21 (1.92 %) 18 (1.65 %) 3 (0.27 %) 85.71 %

----------------------------------------------------------------------

684 (62.80 %) 640 (58.76 %) 44 (4.04 %) 93.56 %

uk zka automaticky anotovan ho stromu bcb21 15
Ukázka automaticky anotovaného stromu (bcb21, 15)

tip /home/zabokrt/FUNKTORY/CompleteAFA>./foreachn.pl < ./afa.fsp bcb21trz.fs

  • Proto je dobré seznámit se s jejich praktikami a tak vlastně preventivně předcházet možným metodám konkurenčních firem.
vedlej produkty
Vedlejší produkty
  • některé seznamy v manuálu pro anotátory lze obohatit daty z trénovací množiny
    • příslovce
    • podřadící spojky
    • předložkové pády
  • „valenční slovník“ - u častějších sloves lze vyhodnotit, jaké se k nim obvykle váží funktory (i jakou předložkou atd.).

Předpoklad: nejčastější funktory slovesa pravděpodobně patří do jeho rámce

dal v voj
Další vývoj
  • valenční slovník sloves - sloučení 2 zdrojů dat
    • valenční slovník nejčastějších sloves od pana Paly - znám valence, neznám funktor
    • „valenční slovník“ vydolovaný z trénovací množiny - vím, jaké funktory se jak vážou ke slovesu, ale nevím, co z toho skutečně patří do valenčního rámce
  • použití WordNetu
    • očekávám, že s pomocí WordNetu lze navrhnout způsob výpočtu sémantické vzdálenosti (nebo alespoň hledat synonyma) a zvýšit použitelnost slovníkových metod, zejména prepnoun a similarity
z v r
Závěr
  • s dostupnou trénovací množinou a mými znalostmi o funktorech pravděpodobně nelze při pokusu o úplné pokrytí dosáhnout uspokojivé (tj. alespoň 90%) správnosti,...

(zdůvodnění - různými cestami jsem došel k podobným výsledkům:

    • jen ML (neprořezaný strom) precision = 75.9 %
    • jen similarity precision = 73 %
    • všech 12 metod precision = 78.6 % )
  • ...ale vhodnou kombinací metod lze dosáhnout přijatelné správnosti při zhruba polovičním pokrytí
  • doporučená kombinace:
    • ML + ručně psaná pravidla + adverbs + prepnoun
    • Cover=62.8% Recall=58.7 % Precision=93.5 %
publikace v sledk
Publikace výsledků
  • http://obelix.ijs.si/ZdenekZabokrtsky/AFA/
  • Text, Speach and Dialogue 2000:
    • Z.Ž.: Automatic Functor Assignment in Prague Dependency Treebank
  • 5th TELRI Seminar, Corpus Lingustics: How to Extract Meaning from Corpora
    • Sašo Džeroski, Z.Ž.: Machine Learning Approach to Automatic Functor Assignment in Prague Dependency Treebank