Differences
This shows you the differences between two versions of the page.
Next revision | Previous revision Next revision Both sides next revision | ||
user:zeman:wmt [2010/02/23 09:09] zeman vytvořeno |
user:zeman:wmt [2012/02/04 16:34] zeman Úklid. |
||
---|---|---|---|
Line 1: | Line 1: | ||
- | ====== Danovy pokusy s Joshuou na WMT 2010 ====== | + | ====== Danovy pokusy s Joshuou na WMT 2012 ====== |
+ | http:// | ||
+ | http:// | ||
+ | http:// | ||
< | < | ||
- | ===== Příprava | + | ===== Aktuální úkoly ===== |
+ | |||
+ | * Udělat pořádek v záznamech. | ||
+ | * Najít a oživit loňské pokusy s interpunkcí, | ||
+ | * Zopakovat tytéž pokusy, ale nad letos distribuovanými daty. | ||
+ | * Převést všechny pokusy pod aktuální verzi Joshuy. | ||
+ | * Konečně převést Joshuu pod Emana. | ||
+ | * Převést všechny pokusy na nové zacházení s velkými písmeny (viz Ondřej a čeština). | ||
+ | * Dotáhnout do konce obo-max. | ||
+ | * Při klonování experimentu se musí kopírovat mert/ | ||
+ | * Pro všechny jazykové páry používat všechna dostupná data, tedy i Europarl, neomezovat se na News Commentary. To mj. znamená, že musím pro všechny páry získat nové baseliny. | ||
+ | |||
+ | ===== Srovnávací testy mezi Joshuou 1.1 a 1.3: Je třeba otestovat nastavení maximální délky fráze 5 ===== | ||
+ | |||
+ | Po přechodu z Joshuy 1.1 na 1.3 u téměř všech pokusů pokleslo BLEU skóre. Je to sice malý pokles a pravděpodobně není statisticky významný, ale stejně mě to zaráží. Srovnání u češtiny ukázalo, že se liší extrahovaná gramatika. V konfiguraci se už teď nezadává, že maximální délka fráze má být 5. Hraje to nějakou roli? | ||
+ | |||
+ | ===== obo-max ===== | ||
+ | |||
+ | Nejúspěšnější nastavení z& | ||
+ | |||
+ | Vytvořil jsem ještě i analogické '' | ||
+ | |||
+ | ^ Výsledek ^ Test 2009 ^ Test 2010 ^ Test 2011 ^ | ||
+ | | Starý (Joshua 1.1) | 0.1300 | 0.1402 | | | ||
+ | | Nový (25.1.2012, Joshua 1.3) | 0.1381 | 0.1477 | 0.1452 | | ||
+ | |||
+ | ===== Data ===== | ||
Vývojová data ('' | Vývojová data ('' | ||
+ | |||
+ | ==== Ondřejova data ==== | ||
+ | |||
+ | Ondřejovy augmented corpora se nacházejí v& | ||
+ | |||
+ | Vysvětlení Ondrových pseudojazyků: | ||
+ | * Znaky za '' | ||
+ | * '' | ||
+ | * '' | ||
+ | * '' | ||
+ | * '' | ||
+ | * '' | ||
+ | * '' | ||
+ | |||
+ | Ondřejův maximální paralelní korpus navíc obsahuje další části Czengu a korpus Emea: '' | ||
+ | |||
+ | Pro český jazykový model chtěl Ondřej později ještě přidat korpusy '' | ||
+ | |||
+ | Testovací data by měl mít stejná jako já, tj. '' | ||
+ | |||
+ | ===== Výsledky ===== | ||
+ | |||
+ | Není-li řečeno jinak, váhy se ladí na newstest2008 a testuje se na newstest2009. Trénuje se zatím na news-commentary, | ||
+ | |||
+ | | **Pokus** | **Dev WMT08** | **Test WMT09** | **Test WMT10** | **Poznámka** | **Datum** | | ||
+ | | decs-josh13 | 0.0935 | 0.0886 | | | 15.3.2010 | | ||
+ | | escs-josh13 | 0.0922 | 0.0872 | | | 15.3.2010 | | ||
+ | | frcs-josh13 | 0.0885 | 0.0818 | | Zřetelně menší trénovací data než pro encs, decs a escs. | 15.3.2010 | | ||
+ | |||
+ | ===== Pokusy s uvozovkami ===== | ||
+ | |||
+ | Paralelní data, která máme k& | ||
+ | |||
+ | <code bash> | ||
+ | |||
+ | Takhle se upraví korpus v& | ||
+ | |||
+ | <code bash>cd / | ||
+ | |||
+ | Do Makefile přidáme nově upravené korpusy, mající v& | ||
+ | |||
+ | <code bash> | ||
+ | NEWSCOMM = $(foreach pair, | ||
+ | |||
+ | Ale pozor! Jestliže jsme už předtím zpracovali jiný jazykový pár, musíme ho z& | ||
+ | |||
+ | <code bash> | ||
+ | |||
+ | Teď použijeme TectoMT/ | ||
+ | |||
+ | <code bash>cd $TMT_ROOT/ | ||
+ | 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=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 &</ | ||
+ | |||
+ | No a nyní již můžeme naklonovat nové pokusy. I když můžeme naklonovat oba směry (např. " | ||
+ | |||
+ | <code bash> | ||
+ | cd fren-stc-allemma-tmv6b-lmv6b-lm6-test2011 | ||
+ | $STATMT/ | ||
+ | vim scripts/ | ||
+ | $ac_tmtrain | ||
+ | |||
+ | Podle časových značek u korpusů v '' | ||
+ | |||
+ | es-en: dříve 0.2452, nyní 0.2428 | ||
+ | en-es: dříve 0.2590, nyní 0.2542 | ||
+ | |||
+ | ===== Inventura 16.1.2012 ===== | ||
+ | |||
+ | 16.1.2012 21:12: Pouštím znova pokus '' | ||
+ | |||
+ | Nový průběh všech osmi starých pokusů (supervised truecasing, žádná normalizace uvozovek, nové je na nich paralelní počítání alignmentu, ale výsledek by měl být identický – nekontroloval jsem): '' | ||
+ | |||
+ | ^ Jazyky ^ BLEU ^ | ||
+ | | en-cs | 0.1191 | | ||
+ | | cs-en | 0.1692 | | ||
+ | | en-de | 0.1337 | | ||
+ | | de-en | 0.1885 | | ||
+ | | en-es | 0.2573 | | ||
+ | | es-en | 0.2446 | | ||
+ | | en-fr | 0.2591 | | ||
+ | | fr-en | 0.2243 | | ||
+ | |||
+ | Od jara mám vytvořené také pokusy s korpusy, ve kterých jsou upravené uvozovky (verze 6b), takže je teď taky pustím. Je to spíš na oprášení starého kódu, ale bude se to muset pustit ještě jednou, protože momentálně se uvozovky opravují pouze v trénovacích datech, ale ne ve vývojových a testovacích. (Opravu testovacích dat bych si mohl ospravedlnit např. budoucím hodnocením lidmi. A nebo alespoň normalizovat testovací data tím brutálnějším skriptem od Philippa.) | ||
+ | |||
+ | '' | ||
+ | |||
+ | První výsledky jsou zatím bez záruky, protože v průběhu Gizy jsem narazil na kvótu. Procesy sice nespadly, ale nejsem si jistý, co prováděly těch několik hodin, kdy nemohly psát na disk. Takže raději pustit ještě jednou (ostatně jeden z nich dokonce nedoběhl). | ||
+ | |||
+ | 24.1.2012 už mám i skoro všechny kontrolní výsledky druhého běhu, ale mezitím jsem zjistil chybu v počítání alignmentu, takže pouštím potřetí (zatím šest pokusů pro češtinu, němčinu a španělštinu, | ||
+ | |||
+ | ^ Jazyky ^ BLEU ^ Kontrolní běh ^ Třetí běh ^ | ||
+ | | en-cs | FAILED | 0.1267 | 0.1246 | | ||
+ | | cs-en | 0.1748 | 0.1748 | 0.1792 | | ||
+ | | en-de | 0.1268 | 0.1268 | 0.1274 | | ||
+ | | de-en | 0.1869 | 0.1869 | 0.1859 | | ||
+ | | en-es | 0.2542 | 0.2542 | 0.2531 | | ||
+ | | es-en | 0.2428 | FAILED | 0.2375 | | ||
+ | | en-fr | 0.2586 | 0.2628 | 0.2619 | | ||
+ | | 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): | ||
+ | |||
+ | < | ||
+ | |||
+ | 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/ | ||
+ | wmt10/ | ||
+ | wmt11/ | ||
+ | wmt11/ | ||
+ | |||
+ | 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</ | ||
+ | |||
+ | 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. | ||