[ Skip to the content ]

Institute of Formal and Applied Linguistics Wiki


[ Back to the navigation ]

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
external:pcedt:tfa [2013/01/16 15:15]
ufal
external:pcedt:tfa [2013/04/29 14:18] (current)
ufal
Line 3: Line 3:
  
 ===== Rozšíření TrEdu pro anotaci TFA v české části PCEDT ===== ===== Rozšíření TrEdu pro anotaci TFA v české části PCEDT =====
 +
 +==== Instalace ====
 +K anotaci slouží mód ''PML_Cz_T_TFA'', který je součástí rozšíření TrEdu ''Wall Street Journal Annotation (wsj-anot)''.
 +Mód definuje a používá styl ''PML_T_TFA_Anot''
 +
 +Aby se při otevření souboru tento mód sám nastavil, je potřeba TrEd spustit s přepínačem ''-t PML_Cz_T_TFA'' (ale funguje to jen, pokud se součastně jako argument předá i jméno otvíraného souboru).
 +
 +
 ==== Obecné vlastnosti ==== ==== Obecné vlastnosti ====
-Všechna kolečka reprezentující uzly stromu jsou větší, aby byly dobře rozpoznatelné jejich barvy.+Všechna kolečka reprezentující uzly stromu, které mají mít (či už mají) nastavenu hodnotu ''tfa'' (tfa-relevantní uzly), jsou větší, aby byly dobře rozpoznatelné jejich barvy. Uzly, které žádnou hodnotu ''tfa'' mít nemají, jsou zobrazeny malými šedými kolečky. 
 + 
 +(Uzly, které nemají mít anotován atribut ''tfa'', se poznají tak, že splňují jednu z násl. podmínek: ''root'', ''nodetype=coap'' nebo ''fphr'', ''functor=CM''; pro jistotu je testováno i ''functor=FPHR''.) 
 + 
 +Uzly, které nemají přiřazenu hodnotu ''tfa'', ale mají ji mít, jsou zobrazeny jako //(větší) šedá kolečka//
 +Pokud jsou ve stromu už jen ''tři nebo méně'' uzlů bez anotace ''tfa'' (z těch, co mají být anotovány), jsou tyto uzly zobrazeny jako //ještě trochu větší červená kolečka//, aby je bylo hned vidět.
  
-Uzly, které nemají přiřazenu hodnotu ''tfa'', jsou zobrazeny jako //šedá kolečka//. 
 Uzly, které mají hodnotu ''tfa=t'', jsou zobrazeny jako //bílá kolečka//. Uzly, které mají hodnotu ''tfa=t'', jsou zobrazeny jako //bílá kolečka//.
 Uzly, které mají hodnotu ''tfa=c'', jsou zobrazeny jako //zelená kolečka//. Uzly, které mají hodnotu ''tfa=c'', jsou zobrazeny jako //zelená kolečka//.
 Uzly, které mají hodnotu ''tfa=f'', jsou zobrazeny jako //žlutá kolečka//. Uzly, které mají hodnotu ''tfa=f'', jsou zobrazeny jako //žlutá kolečka//.
  
-''Kořen stromu'' je zobrazen jako //velké rudé kolečko//, dokud všechny (ostatní) uzly ve stromě nemají nastavenu hodnotu ''tfa''. Pak se zmenší a odbarví na //běžné šedivé kolečko//.+Hodnota atributu ''tfa'' je navíc zobrazena modrou barvou vpravo vedle ''t_lemmatu''.
  
-Pokud jsou ve stromu už jen ''tři nebo méně'' uzlů bez anotace ''tfa'', jsou tyto uzly zobrazeny jako //trochu větší červená kolečka//.+''Kořen stromu'' je zobrazen jako //velké rudé kolečko//, dokud všechny uzly ve stromě, které mají mít nastavenu hodnotu ''tfa'', ji nemají nastavenou. Pak se zmenší a odbarví na //malé šedé kolečko//.
  
 **Potažením myší** je možno převěšovat ''pouze uzly s funktorem RHEM''. **Potažením myší** je možno převěšovat ''pouze uzly s funktorem RHEM''.
  
-Standardní tredí dialog pro editaci všech atributů uzlu je neaktivní (změny nejdou uložit).+Standardní tredí dialog pro editaci všech atributů uzlu je neaktivní (změny nejdou uložit; v nutném případě to samozřejmě jde obejít přepnutím do jiného módu, kde změny dělat jdou (např. ''PML_T_Edit'')). 
 + 
 +Všechny zásahy anotátora do dat pomocí maker tohoto rozšíření jsou automaticky zaznamenávány do anotátorské poznámky typu ''TFA_log''. Rovněž automatické akce, které rozšíření provádí, jsou do této poznámky zaznamenávány.
  
 ==== Klávesové zkratky ==== ==== Klávesové zkratky ====
Line 24: Line 38:
 **f** - nastaví ''tfa=f'' u aktuálního uzlu **f** - nastaví ''tfa=f'' u aktuálního uzlu
  
-**T (Shift + t)** - nastaví ''tfa=t'' u aktuálního uzlu a celého jeho podstromu +**T (Shift + t)** - nastaví ''tfa=t'' u aktuálního uzlu a celého jeho podstromu (uzly, které už ''tfa'' mají nastaveno či ''tfa'' nastaveno mít nemají, jsou vynechány) 
-**C (Shift + c)** - nastaví ''tfa=c'' u aktuálního uzlu a celého jeho podstromu +**C (Shift + c)** - nastaví ''tfa=c'' u aktuálního uzlu a celého jeho podstromu (uzly, které už ''tfa'' mají nastaveno či ''tfa'' nastaveno mít nemají, jsou vynechány) 
-**F (Shift + f)** - nastaví ''tfa=f'' u aktuálního uzlu a celého jeho podstromu+**F (Shift + f)** - nastaví ''tfa=f'' u aktuálního uzlu a celého jeho podstromu (uzly, které už ''tfa'' mají nastaveno či ''tfa'' nastaveno mít nemají, jsou vynechány)
  
-**!** - zobrazí dialog pro vložení typované anotátorské poznámky k aktuálnímu uzlu; jedním z typů je TFA+**Ctrl + t** - nastaví ''tfa=t'' u aktuálního uzlu a celého jeho podstromu (uzly, které ''tfa'' nastaveno mít nemají, jsou vynechány) 
 +**Ctrl + c** - nastaví ''tfa=c'' u aktuálního uzlu a celého jeho podstromu (uzly, které ''tfa'' nastaveno mít nemají, jsou vynechány) 
 +**Ctrl + f** - nastaví ''tfa=f'' u aktuálního uzlu a celého jeho podstromu (uzly, které ''tfa'' nastaveno mít nemají, jsou vynechány) 
 + 
 +**!** - zobrazí dialog pro vložení typované anotátorské poznámky k aktuálnímu uzlu; jedním z typů je ''TFA'', ale je možno použít i ostatní typy; uzly s anotátorskou poznámkou typu ''TFA'' jsou označeny modrým nápisem ''TFA''.
 **?** - zobrazí standardní dialog TrEdu pro editaci všech typovaných anotátorských poznámek u aktuálního uzlu **?** - zobrazí standardní dialog TrEdu pro editaci všech typovaných anotátorských poznámek u aktuálního uzlu
  
-**e** - editace //funktoru// v rámci omezené množiny hodnot +**e** - změna ''funktoru RHEM'' aktuálního uzlu na jednu z hodnot (''ATT CM EXT MOD PREC TFHL TFRWH THL THO TOWH TPAR TSIN TTILL TWHEN''); pokud je nový ''funktor''množiny (''EXT TFHL TFRWH THL THO TOWH TPAR TSIN TTILL TWHEN''), ''nodetype'' je změněn z ''atom'' na ''complex'' a anotátor je dotázán na hodnotu ''gramatému'' ''gram/sempos'' (pro účely anotace české části PCEDT stačí zvolit prvního reprezentanta dané skupiny (např. ''adj.denot'' pro jakékoliv přídavné jméno)) 
-**Ctrl + e** - editace //funktoru// bez omezení+ 
 +**r** - změna ''funktoru'' aktuálního uzlu z jedné z hodnot (''ATT CM EXT MOD PREC TFHL TFRWH THL THO TOWH TPAR TSIN TTILL TWHEN'') na ''RHEM''; pokud byl ''funktor'' původně jeden z (''EXT TFHL TFRWH THL THO TOWH TPAR TSIN TTILL TWHEN''), ''nodetype'' je změněn z ''complex'' na ''atom'' a všechny gramatémy jsou vymazány; pokud uzel není listem ve stromu (něco na něm visí), změna ''funktoru'' na ''RHEM'' ani žádné další změny nejsou provedeny 
 + 
 +**Ctrl + e** - editace ''funktoru'' bez omezení (nic nekontroluje a nenastavuje nic jiného)
  
 **Ctrl + šipka vlevo či vpravo** - posun aktuálního uzlu v hloubkovém uspořádání doleva či doprava **Ctrl + šipka vlevo či vpravo** - posun aktuálního uzlu v hloubkovém uspořádání doleva či doprava
-**Alt + šipka vlevo či vpravo** - posun aktuálního uzlu a celého jeho podstromu v hloubkovém uspořádání doleva či doprava+**Alt + šipka vlevo či vpravo** - posun aktuálního uzlu a celého jeho podstromu v hloubkovém uspořádání doleva či doprava (přeskakuje celé podstromy (jejich projektivní části)) 
 +**Ctrl + n, m** - posun aktuálního uzlu a celého jeho podstromu v hloubkovém uspořádání doleva či doprava (o jeden uzel) 
 + 
 +**Ctrl + šipka nahoru či dolů** - přechod na předchozí či následující strom v souboru 
 + 
 +**Samotné šipky** lze použít k pohybu po stromu. 
 + 
 +==== Automatické úpravy ==== 
 +=== Přerovnání synů všech uzlů === 
 +Kdykoliv jsou všichni tfa-relevantní synové nějakého uzlu, který nemá ''nodetype="coap"'' (s výjimkou společných rozvití, viz níže), označeni hodnotami ''tfa'', dojde k automatickému přerovnání těchto synů (a jejich podstromů) tak, aby všechny tyto uzly s ''tfa="f"'' byly napravo od svého otce a všechny tyto uzly s ''tfa="t"'' nebo ''"c"'' byly nalevo od svého otce. Výjimky z tohoto pravidla je potřeba kontrolovat ručně. Synové s ''nodetype="coap"'' jsou automaticky přeřazováni ve chvíli, kdy všichni ''member'' synové tohoto ''coap'' uzlu dostanou stejnou hodnotu atributu ''tfa'' (všichni ''"f"'' či všichni ''"t"/"c"''). 
 + 
 +=== Přerovnání synů uzlu s gram/sempos="n" (jmenné fráze) === 
 +U synů uzlu s gram/sempos="n" se upraví i pořadí synů mezi sebou: u uzlů s hodnotou ''tfa="f"'' budou uzly s funktorem ''DPHR'' či ''CPHR'' jako první, uzly s funktorem ''ID'' jako druhé; všechny ostatní budou v původním pořadí za nimi a anotátor jim musí věnovat pozornost (u hodnot ''"t"'' a ''"c"'' je pořadí opačné). 
 + 
 +=== Přerovnání synů uzlu s gram/sempos="v" (slovesné fráze) === 
 +U synů uzlu s gram/sempos="v" se rovněž upraví i pořadí synů s hodnotou ''tfa="t"'' nebo ''"c"'' mezi sebou: 
 +První budou uzly ''VOCAT'', pak ''PREC'', pak ''ATT''; první zprava (avšak vlevo od otce) budou místní či časové funktory, pak ''#PersPron'', pak generované uzly; ostatní typy uzlů budou uprostřed mezi nimi a je potřeba je seřadit ručně. 
 +Výjimkou z výše uvedeného jsou v případě otce s (již vyplněnou) hodnotou ''tfa="f"'' uzly ''RHEM'' rovněž s hodnotou ''tfa="f"'', které nemají t_lemma="#Neg". Ty jsou řazeny vlevo od otce, co nejblíže k němu.  
 + 
 +=== Přerovnání společných rozvití v koordinacích === 
 +Kdykoliv jsou všichni tfa-relevantní synové nějakého uzlu s ''nodetype="coap"'', kteří nejsou členové koordinace (nemají ''is_member="1"''),  označeni hodnotami ''tfa'', dojde k jejich přesunutí úplně doleva či doprava podle jejich hodnoty ''tfa''
 + 
 +==== Automatická předanotace ==== 
 +Externí skript, který předanotuje data. Předanotace probíhá postupně v následujících krocích (už jednou anotovaný uzel se nepřeanotovává): 
 + 
 + - Generované uzly, které nemají analytický protějšek (tj. nejsou to kopírované uzly) a které navíc nejsou ''RHEM'' ani ''#Forn'', dostávají automaticky hodnotu ''tfa="t"'' (očekávaná chybovost: 0). 
 + - Generované uzly, které jsou členy koordinace/apozice a mají analytický protějšek (není to tedy např. ''#Forn''), dostávají automaticky hodnotu ''tfa="t"'' (očekávaná chybovost: 0). 
 + - Uzly, ze kterých vede gramatická, textová či segmentová koreference, dostávají automaticky hodnotu ''tfa="t"'' (očekávaná chybovost: 1:100). 
 + - Uzly ''PRED'', které nejsou generované a jejichž ''t_lemma'' se nenachází v předchozí větě, dostávají automaticky hodnotu ''tfa="f"'' (očekávaná chybovost: 1:40). 
 + - Generované uzly ''PRED'' dostávají automaticky hodnotu ''tfa="t"'' (očekávaná chybovost: 1:100) 
 + - Ostatní slovesné uzly (''gram/sempos="v"''), které mají jako ''funktor'' jednu z hodnot ''(ADDR|AIM|CAUS|ACMP|MANN|PAT|EFF|AUTH|BEN|COMPL|EXT|ORIG|RESL|TFHL|TSIN)'', dostávají automaticky hodnotu ''tfa="f"'' (očekávaná chybovost: maximálně 1:10). 
 + - Uzly, které mají jako ''funktor'' jednu z hodnot ''(PARTL|DENOM|MOD|EXT)'', dostávají automaticky hodnotu ''tfa="f"'' (očekávaná chybovost: maximálně 1:10). 
 + - Uzly, které mají jako ''funktor'' hodnotu ''RHEM'' a nejsou na první pozici ve větě, dostávají automaticky hodnotu ''tfa="f"'' (očekávaná chybovost: 1:10). 
 + - Uzly s ''t_lemma="tady"'' dostávají automaticky hodnotu ''tfa="t"'' (očekávaná chybovost: 1:10). 
 + - Pro zhruba 5 tisíc prvních vět, které jsou v plánu anotace: uzly, které jsou českými protějšky anglických uzlů, které na povrchu stojí za slovesem a mají u sebe neurčitý člen, dostávají automaticky hodnotu ''tfa="f"'' (očekávaná chybovost: neznámá). 
 + 
 +Další kroky probíhají až po tom, co jsou předchozí kroky aplikovány na všechny uzly stromu:
  
-**Samotné šipky** lze použík pohybu po stromu.+ - Synové slovesa, které má ''tfa="f"'' a které ve své klauzi není na první či druhé pozici, pokud stojí v povrchovém slovosledu za tímto slovesem, dostávají automaticky hodnotu ''tfa="f"'' (očekávaná chybovost: neznámá). 
 + - RSTR synové uzlů, které mají ''tfa="f"'', dostávají automaticky hodnotu ''tfa="f"'' (očekávaná chybovost: 1:30).

[ Back to the navigation ] [ Back to the content ]