[ 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

Next revision
Previous revision
Next revision Both sides next revision
user:zeman:dz-parser:conll [2007/03/29 23:13]
zeman vytvořeno
user:zeman:dz-parser:conll [2008/03/27 21:51]
zeman Výsledky 2006.
Line 1: Line 1:
-====== Pokusy s DZ Parserem pro CoNLL 2007 ======+====== Pokusy s DZ Parserem pro CoNLL ======
  
-Musíme odeslat angličtinu!+Tato stránka původně vznikla jako záznam o tom, jakým způsobem jsem spouštěl parser během soutěže v parsingu CoNLL 2007, abych tyto pokusy dokázal zopakovat. Postupně se mění na stránku o pokusech s [[internal:data-conll|daty CoNLL]] obecně (nejen 2007). Data leží v ''/net/data/conll''. Parser odsud čte, ale nepíše sem. Pro soubory související se syntaktickou analýzou těchto dat mám samostatnou složku ''/net/work/people/zeman/conll-dzparser''
 + 
 +===== Proměnné ===== 
 + 
 +Používám proměnné prostředí, které mám nastavené ve svém ''.cshrc'' takto: 
 + 
 +<code>setenv PARSINGROOT /net/work/people/zeman/parsing 
 +setenv TOOLS $PARSINGROOT/tools 
 +setenv INTERSET ~zeman/projekty/interset 
 +setenv PARSER ~zeman/projekty/parser</code> 
 + 
 +Kromě toho mám ve své ''PATH'' přidáno ''$INTERSET/bin'' a v ''PERLLIB'' a ''PERL5LIB'' mám mj. ''$INTERSET/lib'' a ''$PARSINGROOT/lib''
 + 
 +Další proměnné, určené přímo pro rozbor dat CoNLL mým parserem: 
 + 
 +<code>setenv DATA /net/data/conll 
 +setenv OUTPUT /net/work/people/zeman/conll-dzparser</code> 
 + 
 +===== Zpracování ===== 
 + 
 +Každý jazyk zkouším zpracovat jednak s&nbsp;původními značkami, jednak se značkami převedenými do české sady PDT. Základní zpracování (bez přiřazování syntaktických značek) předpokládá pouze dva kroky: natrénování modelu na průběžných trénovacích datech a jeho otestování na průběžných testovacích datech. U základního zpracování používáme výchozí, jazykově nezávislé nastavení parseru. 
 + 
 +<code>cd $OUTPUT 
 +setenv ROK 2007 
 +setenv JAZYK cs 
 +$PARSER/train.pl < $DATA/$ROK/$JAZYK/dtrain.csts > $JAZYK.stat 
 +($PARSER/parse.pl -m $JAZYK.stat < $DATA/$ROK/$JAZYK/dtest.csts > $JAZYK.dtest.dz.csts) >& $JAZYK.dtest.log</code> 
 + 
 +===== Výsledky ===== 
 + 
 +Následující tabulka ukazuje úspěšnost DZ parseru s výchozím nastavením na průběžných testovacích datech CoNLL 2007, s původními značkami CoNLL (tabulátory, rysy oddělené svislítky): 
 + 
 +| Jazyk | Rok | A | G | B | P | 
 +| ar | 2006 | 3955 | 2555 | 1400 | 64,6 | 
 +| ar | 2007 | 5873 | 3757 | 2116 | 64,0 | 
 +| bg | 2006 | 4677 | 3178 | 1499 | 67,9 | 
 +| ca | 2007 | 10971 | 7670 | 3301 | 69,9 | 
 +| cs | 2006 | 5643 | 3822 | 1821 | 67,7 | 
 +| cs | 2007 | 5760 | 4061 | 1699 | 70,5 | 
 +| da | 2006 | 5470 | 3792 | 1678 | 69,3 | 
 +| de | 2006 | 5403 | 3704 | 1699 | 68,6 | 
 +| el | 2007 | 4874 | 3132 | 1742 | 64,3 | 
 +| en | 2007 | 9529 | 6163 | 3366 | 64,7 | 
 +| eu | 2007 | 4334 | 2477 | 1857 | 57,2 | 
 +| hu | 2007 | 5995 | 4088 | 1907 | 68,2 | 
 +| it | 2007 | 7643 | 5556 | 2087 | 72,7 | 
 +| ja | 2006 | 3384 | 2524 | 860 | 74,6 | 
 +| nl | 2006 | 6187 | 4579 | 1608 | 74,0 | 
 +| pt | 2006 | 6719 | 4941 | 1778 | 73,5 | 
 +| sl | 2006 | 4307 | 2765 | 1542 | 64,2 | 
 +| sv | 2006 | 7140 | 5075 | 2065 | 71,1 | 
 +| tr | 2007 | 6210 | 3920 | 2290 | 63,1 | 
 +| zh | 2006 | 1839 | 1269 | 570 | 69,0 | 
 +| zh | 2007 | 2277 | 1506 | 771 | 66,1 | 
 + 
 +===== Starší poznámky =====
  
 Postup zpracování jednoho jazyka CoNLL: Postup zpracování jednoho jazyka CoNLL:
Line 18: Line 73:
 $PARSINGROOT/tools/csts2conll.pl < $cesta/${xx}test.dz.a.csts > $cesta/${xx}test.dz.conll</code> $PARSINGROOT/tools/csts2conll.pl < $cesta/${xx}test.dz.a.csts > $cesta/${xx}test.dz.conll</code>
  
 +Takhle to pro čínštinu 2006 nefunguje. Jednak máme dtrain a dtest, jednak při zavolání z cesty s daty (ale s plnou cestou, jak je uvedeno výše) parser stávkuje a nenačte data ze standardního vstupu. Měl by alespoň vypsat cestu ke konfiguračnímu souboru, který používá.
 +
 +<code>setenv parser ~zeman/projekty/parser
 +setenv cesta /net/data/conll/2006/chinese/sinica
 +setenv xx zh
 +$parser/train.pl < $cesta/${xx}dtrain.csts > $cesta/${xx}.stat
 +$parser/parse.pl -m $cesta/${xx}.stat < $cesta/${xx}dtest.csts > $cesta/${xx}dtest.dz.csts
 +~zeman/projekty/interset/bin/csts-zh-conll-cs-pdt.pl < $cesta/${xx}dtrain.csts > $cesta/${xx}dtrain.pdt.csts
 +~zeman/projekty/interset/bin/csts-zh-conll-cs-pdt.pl < $cesta/${xx}dtest.csts > $cesta/${xx}dtest.pdt.csts
 +$parser/train.pl < $cesta/${xx}dtrain.pdt.csts > $cesta/${xx}.pdt.stat
 +$parser/parse.pl -m $cesta/${xx}.pdt.stat < $cesta/${xx}dtest.pdt.csts > $cesta/${xx}dtest.pdt.dz.csts</code>
 +
 +
 +
 +
 +
 +===== Čeština 2006 =====
 +
 +<code>setenv cesta /net/data/conll/2006/czech/pdt
 +setenv xx cs
 +cd $cesta
 +csts_convert_tags.pl -f cs::conll -t cs::pdt < cstrain.csts > cstrain.pdttags.csts
 +csts_convert_tags.pl -f cs::conll -t cs::pdt < cstest.csts > cstest.pdttags.csts
 +$PARSER/train.pl < $cesta/${xx}train.pdttags.csts > $cesta/${xx}.pdttags.stat
 +$PARSER/parse.pl -m $cesta/${xx}.pdttags.stat < $cesta/${xx}test.pdttags.csts > $cesta/${xx}test.pdttags.dz.csts</code>
 +
 +Výsledky (365 vět, které CoNLL dodalo jako testovací): A 5853 - G 4197 - B 1656 - P <html><span style='background:yellow'>71,71</span></html>&nbsp;%
 +
 +Parser (i trénování) byl spuštěn s výchozími parametry bez konfiguračního souboru. Neměl tušení, že zpracovává svůj rodný jazyk. Kromě toho, že testovací data jsou jiná (a podstatně menší), než jsem měl přímo při práci s PDT, také chybí přídavné informace u lemmat (protože je CoNLL částečně přesunulo do atributu Sem, jehož hodnotu jsem při převádění značek zpět na PDT zahodil). Parser z nich využíval informace o křestním jménu a příjmení. Na druhou stranu parseru mohlo pomoct, že pracujeme s ručně přiřazenými značkami.

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