[ 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
Next revision Both sides next revision
user:zeman:wmt [2012/02/01 14:22]
zeman Nový úkol: nová data.
user:zeman:wmt [2012/02/04 16:53]
zeman Uvozovky i na testovací data.
Line 66: Line 66:
 ===== Pokusy s uvozovkami ===== ===== Pokusy s uvozovkami =====
  
-Na začátku léta 2011 jsem se pokoušel poloautomaticky opravit a sjednotit uvozovky ve všech jazycích WMT 2011. Myslím, že to nebylo dodělané, a momentálně to nemůžu najítŠlo úpravu trénovacích korpusůVýsledkem měla být "v6b(verze 6b) všech korpusů, na nich se měly všechny pokusy pustit znova. Asi.+Paralelní datakterá máme k dispozici, používají velmi různorodou směs znaků pro uvozovkyČasto také není poznat, zda jde počáteční, nebo koncové uvozovkyNapsal jsem skript, který se tohle pokusí rozpoznat (je jazykově závislý), a znaky pro uvozovky sjednotit. Všechny korpusy jsem tímto skriptem protáhl a vznikly verze označené ''v6b'' (včetně vývojových a testovacích dat). Nyní je třeba pustit všechny pokusy znova a zjistit, zda to nějak ovlivní skóre.
  
-''$STATMT/scripts/specchar.pl'' +<code bash>$STATMT/scripts/specchar.pl</code>
-a co historie loňských commitů?+
  
-Podle časových značek u korpusů v ''augmented_corpora'' se zdáže poslední "v6b" jsem vytvořil 21.4.2011. Vypadá to, že mám news-commentary+europarl ve verzi v6b pro všechny čtyři jazykové páry (cs-en, de-en, es-en, fr-en).+Takhle se upraví korpus v&nbsp;''augmented_corpora'', aby vznikla verze v6b (korpus musíme také označkovatprotože budeme potřebovat faktory lemma a stc):
  
-UPDATE: Tohle jsem k uvozovkám našel v textovém souboru s průběžnými výsledky z loňského WMT (Makefilem se tam primárně myslí Makefile dat pro WMT, tedy ''/net/work/people/zeman/wmt/Makefile''):+<code bash>cd /net/work/people/zeman/wmt</code>
  
 +Do Makefile přidáme nově upravené korpusy, mající v&nbsp;názvu ".v6b.", např.:
  
---------------------------------------- +<code bash>EUROPARL = $(foreach pair,es-en/es es-en/en,europarl-v6b.$(pair)) 
-Mám k dispozici trénovací data s opravenými uvozovkami, zatím jen pro angličtinu se španělštinou. +NEWSCOMM = $(foreach pair,es-en/es es-en/en,news-commentary-v6b.$(pair))</code> 
-Potřebuju je označkovat, abych mohl pouštět experimenty s faktory lemma a stc. + 
-cd /net/work/people/zeman/wmt +Ale pozor! Jestliže jsme už předtím zpracovali jiný jazykový pár, musíme ho z&nbsp;Makefile alespoň dočasně vyhodit! Jinak si novým zkopírováním zdrojových korpusů přepíšeme případnou označkovanou verzi korpusu! 
-# Přidat do Makefile nově upravené korpusy mající v názvu ".v6b.", např.: + 
-EUROPARL = $(foreach pair,es-en/es es-en/en,europarl-v6b.$(pair)) +<code bash>make corpus CORPUS=europarl-v6b.fr-en LANGUAGE=fr</code> 
-NEWSCOMM = $(foreach pair,es-en/es es-en/en,news-commentary-v6b.$(pair)) + 
-Ale pozor! Jestliže už jsme předtím zpracovali jiný jazykový pár, musíme ho z Makefile alespoň dočasně vyhodit! +Teď použijeme TectoMT/Treex a cluster k&nbsp;označkování nových korpusů. Původní aplikace se nachází v&nbsp;''$TMT_ROOT/applications/reordering/actag'', ale už v&nbsp;ní přestala fungovat němčina, protože ze sdílené složky zmizel natrénovaný model pro TreeTagger. Nová aplikace se nachází v&nbsp;''$TMT_ROOT/treex/devel/reordering/actag'', ale zatím v&nbsp;ní funguje pouze němčina. 
-Jinak si novým zkopírováním zdrojových korpusů přepíšeme případnou označkovanou verzi korpusu! + 
-make corpus CORPUS=europarl-v6b.fr-en LANGUAGE=fr +<code bash>cd $TMT_ROOT/treex/devel/reordering/actag
-Teď použijeme TectoMT a cluster k označkování nových korpusů. +
-cd /net/work/people/zeman/tectomt/applications/reordering/actag+
 nohup nice make CORPUS=europarl-v6b.fr-en LANGUAGE=fr >& make-euro-fren-fr.log & nohup nice make CORPUS=europarl-v6b.fr-en LANGUAGE=fr >& make-euro-fren-fr.log &
 nohup nice make CORPUS=europarl-v6b.fr-en LANGUAGE=en >& make-euro-fren-en.log & nohup nice make CORPUS=europarl-v6b.fr-en LANGUAGE=en >& make-euro-fren-en.log &
 nohup nice make CORPUS=news-commentary-v6b.fr-en LANGUAGE=fr >& make-news-fren-fr.log & nohup nice make CORPUS=news-commentary-v6b.fr-en LANGUAGE=fr >& make-news-fren-fr.log &
-nohup nice make CORPUS=news-commentary-v6b.fr-en LANGUAGE=en >& make-news-fren-en.log & +nohup nice make CORPUS=news-commentary-v6b.fr-en LANGUAGE=en >& make-news-fren-en.log &</code> 
-No a nyní již můžeme naklonovat nové pokusy. + 
-I když můžeme naklonovat oba směry (např. "fren" a "enfr") těsně po sobě, se spuštěním druhého směru by to chtělo počkat kvůli zámkům a vzájemnému nepřetahování se o práci, až než u prvního směru doběhne fáze "prepare"+No a nyní již můžeme naklonovat nové pokusy. I když můžeme naklonovat oba směry (např. "fren" a "enfr") těsně po sobě, se spuštěním druhého směru by to chtělo počkat kvůli zámkům a vzájemnému nepřetahování se o práci, až než u prvního směru doběhne fáze "prepare"
-$STATMT/joshua-scripts/clonex.pl fren-stc-allemma-tmnews+parl-lmnews+parl-lm6-test2011 fren-stc-allemma-tmv6b-lmv6b-lm6-test2011+ 
 +<code bash>$STATMT/joshua-scripts/clonex.pl fren-stc-allemma-tmnews+parl-lmnews+parl-lm6-test2011 fren-stc-allemma-tmv6b-lmv6b-lm6-test2011
 cd fren-stc-allemma-tmv6b-lmv6b-lm6-test2011 cd fren-stc-allemma-tmv6b-lmv6b-lm6-test2011
 $STATMT/joshua-scripts/resetex_scripts.pl $STATMT/joshua-scripts/resetex_scripts.pl
-vi scripts/setexp.pl +vim scripts/setexp.pl 
-$ac_tmtrain     = 'news-commentary-v6b.fr-en+europarl-v6b.fr-en';+$ac_tmtrain     = 'news-commentary-v6b.fr-en+europarl-v6b.fr-en';</code>
  
-Výsledky+Dotažení do koncei vývojová a testovací data musí být ve verzi v6b. Můžeme přeskočit alignment a trénování jazykového modelu, ale musíme pustit ''prepare.pl'', abychom získali upravená data! 
-Skóre "dříve" znamená před úpravou trénovacích dat, tedy -stc-allemma-tmnews+parl-lmnews+parl-lm6-test2011. + 
-Skóre "nyní" znamená po úpravě trénovacích dat, tedy -stc-allemma-tmv6b-lmv6b-lm6-test2011. +<code bash>$STATMT/joshua-scripts/clonex.pl encs-stc-allemma-tmv6b-lmv6b-lm6-test2011 encs-stc-allemma-tmv6b-lmv6b-lm6-test2011v6b 
-Vylaďovací ani testovací data zatím nijak upravována nebyla. +cd encs-stc-allemma-tmv6b-lmv6b-lm6-test2011v6b 
-Jejich úpravu bychom ale měli taky otestovat, protože např. teď obsahují samé ASCII uvozovky, které jsou pro Joshuu neznámým tokenem.+$STATMT/joshua-scripts/resetex_scripts.pl 
 +vim scripts/setexp.pl 
 +$ac_dev         = 'newstest2008-v6b'; 
 +$ac_test        = 'newstest2011-v6b'; 
 +(qsub.pl) scripts/prepare.pl 
 +nohup nice $STATMT/joshua-scripts/joshua.pl extract > & joshua.log &</code> 
 + 
 +Podle časových značek u korpusů v ''augmented_corpora'' se zdá, že poslední "v6b" jsem vytvořil 21.4.2011. Vypadá to, že mám news-commentary+europarl ve verzi v6b pro všechny čtyři jazykové páry (cs-en, de-en, es-en, fr-en). Výsledky: Skóre "dříve" znamená před úpravou trénovacích dat, tedy -stc-allemma-tmnews+parl-lmnews+parl-lm6-test2011. Skóre "nyní" znamená po úpravě trénovacích dat, tedy -stc-allemma-tmv6b-lmv6b-lm6-test2011. Vylaďovací ani testovací data zatím nijak upravována nebyla. Jejich úpravu bychom ale měli taky otestovat, protože např. teď obsahují samé ASCII uvozovky, které jsou pro Joshuu neznámým tokenem.
  
 es-en: dříve 0.2452, nyní 0.2428 es-en: dříve 0.2452, nyní 0.2428
 en-es: dříve 0.2590, nyní 0.2542 en-es: dříve 0.2590, nyní 0.2542
- 
  
 ===== Inventura 16.1.2012 ===== ===== Inventura 16.1.2012 =====
Line 142: Line 147:
 | es-en | 0.2428 | FAILED | 0.2375 | | es-en | 0.2428 | FAILED | 0.2375 |
 | en-fr | 0.2586 | 0.2628 | 0.2619 | | en-fr | 0.2586 | 0.2628 | 0.2619 |
-| fr-en | 0.2294 | 0.2294 | |+| fr-en | 0.2294 | 0.2294 | 0.2285 | 
 + 
 +===== Pokusy s Emanem ===== 
 + 
 +Tohle jsou data, která Ondřej použil pro svůj „malý pokus“: 
 +SRCAUG=enNmT1+stc 
 +TGTAUG=csNmT1+stc 
 +ALILABEL=enNmT1-lemma-csNmT1-lemma 
 +DEV: wmt10 
 +TEST: wmt11 
 + 
 +Kopie příslušných korpusů jsou na mém hřišti v těchto krocích (ukázáno rovnou na inicializaci kroku dandata): 
 + 
 +<code>/home/zeman/projekty/statmt/playground/corpman --wait wmt10/csNmT1+stc 
 + 
 +SRC=en TGT=cs IMPORTCORPUS=yes TRALS=s.corpus.60681730.20120201-2157 TRALT=s.corpus.892024c6.20120201-2157 TRTMS=s.corpus.402e5219.20120201-2302 TRTMT=s.corpus.d8e0b2d7.20120201-2157 TRLMT=s.corpus.d8e0b2d7.20120201-2157 DEVS=s.corpus.e46c791e.20120201-2159 DEVT=s.corpus.c3230ea2.20120201-2201 TESTS=s.corpus.7b9dc07b.20120201-2205 TESTT=s.corpus.d0ef157e.20120201-2208 eman init dandata 
 +s.dandata.1d1f8734.20120203-1125 
 + 
 +wmt10/enNmT1+stc = s.corpus.e46c791e.20120201-2159 
 +wmt10/csNmT1+stc = s.corpus.c3230ea2.20120201-2201 
 +wmt11/enNmT1+stc = s.corpus.7b9dc07b.20120201-2205 
 +wmt11/csNmT1+stc = s.corpus.d0ef157e.20120201-2208 
 + 
 +Korpusy pro alignment: 
 +s.corpus.60681730.20120201-2157 
 +s.corpus.892024c6.20120201-2157 
 + 
 +GIZASTEP=s.mosesgiza.8a492679.20120202-1628 DATASTEP=s.dandata.1d1f8734.20120203-1125 ALISYM=gdfa eman init danalign 
 +s.danalign.9fb3696a.20120203-1128 
 +JOSHUASTEP=s.joshua.2723ccd9.20120131-1031 ALIGNSTEP=s.danalign.9fb3696a.20120203-1128 eman init binarize --start --mem 31g 
 +s.binarize.4576151d.20120203-1524 
 +BINARIZESTEP=s.binarize.4576151d.20120203-1524 FOR=dev eman init extract --start 
 +s.extract.95792bfb.20120203-1528 
 +BINARIZESTEP=s.binarize.4576151d.20120203-1524 FOR=test eman init extract --start 
 +s.extract.01f5693c.20120203-1528 
 +SRILMSTEP=s.srilm.e99247ad.20120201-0921 DATASTEP=s.dandata.1d1f8734.20120203-1125 ORDER=5 eman init danlm --start 
 +s.danlm.06d337e0.20120203-1600 
 +LMSTEP=s.danlm.06d337e0.20120203-1600 EXTRACTSTEP=s.extract.95792bfb.20120203-1528 eman init zmert --start 
 +s.zmert.884b636b.20120203-1602 
 +MERTSTEP=s.zmert.884b636b.20120203-1602 EXTRACTSTEP=s.extract.01f5693c.20120203-1528 eman init daneval --start 
 +s.daneval.96709ff9.20120203-1603</code> 
 + 
 +Výsledek Danova pokusu s Ondřejovými malými daty: 
 +BLEU = 0.1185 
 +(Ondřej měl s Mosesem asi 0.1230.) 
 +Ještě je potřeba to testovat stejným skriptem jako Ondřej, abychom použili stejnou tokenizaci a taky abychom dostali rozptyl skóre.
  

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