Differences
This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision Next revision Both sides next revision | ||
user:zeman:wmt [2012/01/25 22:49] zeman obo-max |
user:zeman:wmt [2013/01/15 11:24] zeman WMT 2013, Sofija. |
||
---|---|---|---|
Line 1: | Line 1: | ||
- | ====== Danovy pokusy | + | ====== Danovy pokusy na WMT 2013, Sofija |
http:// | http:// | ||
- | http:// | + | http:// |
http:// | http:// | ||
< | < | ||
Line 8: | Line 8: | ||
===== Aktuální úkoly ===== | ===== Aktuální úkoly ===== | ||
- | * Udělat pořádek | + | * Data pro rok 2013 budou zveřejněna v lednu! |
- | * Najít | + | * Rozpracované: |
- | * Převést | + | * Ještě by to chtělo zopakovat celý proces se značkováním korpusů OSN. Nejdřív se ale pokusím nechat alespoň jednou doběhnout současnou verzi. Původní korpus se nechtěl nechat označkovat a zdá se, že problém by mohl být v tom, že některé věty jsou příliš dlouhé. Pustil jsem tedy nejdřív |
- | * Konečně převést Joshuu pod Emana. | + | * Pokusit se napodobit Ondrův nejlepší výsledek. |
- | * Převést | + | * Použít stejná data jako on nebo lepší |
- | * Dotáhnout do konce obo-max. | + | * Natrénovat stejné modely jako on. Přinejmenším mi zatím chybí lexical reordering model. Ondra navíc prováděl ještě nějaké čachry se značkami (jazykový model na morfologických značkách). |
- | * Při klonování experimentu se musí kopírovat mert/ | + | * Všechny přípravy korpusů a zarovnání zopakovat |
- | * 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 | + | * Srovnat supervised truecasing, který používám teď, s něčím méně sofistikovaným. Nezmenšovat první písmeno slova uprostřed |
+ | * Prohnat všechna data Morfessorem a vyhodnotit překlad s ním. | ||
+ | * Otestovat vliv omezení délky fráze na 5 tokenů (zkusit | ||
+ | * Pro všechny jazykové páry používat všechna dostupná data. Například velký Czeng pro češtinu, velké korpusy UN pro francouzštinu a španělštinu, | ||
+ | * Převést | ||
===== Srovnávací testy mezi Joshuou 1.1 a 1.3: Je třeba otestovat nastavení maximální délky fráze 5 ===== | ===== Srovnávací testy mezi Joshuou 1.1 a 1.3: Je třeba otestovat nastavení maximální délky fráze 5 ===== | ||
Line 21: | Line 25: | ||
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? | 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? | ||
- | ===== Staré záznamy | + | ===== obo-max |
- | obo-max: testuje | + | Nejúspěšnější nastavení z& |
- | obo-max3: testuje | + | |
- | Oba používají Joshuu 1.3. | + | |
- | Oba používají Ondřejova velká data (7 miliónů párů vět z Czengu 0.92 na trénování, | + | |
- | 22.1.2012 | + | Vytvořil jsem ještě i analogické |
- | Nový výsledek 25.1.2012: '' | + | ^ Výsledek ^ Test 2009 ^ Test 2010 ^ Test 2011 ^ |
- | Nový výsledek | + | | Starý (Joshua 1.1) | 0.1300 | 0.1402 | | |
- | + | | Nový (25.1.2012, Joshua 1.3) | 0.1381 | 0.1477 | 0.1452 | | |
- | Výhledově chci přejmenovat '' | + | |
===== Data ===== | ===== Data ===== | ||
Line 58: | Line 58: | ||
Testovací data by měl mít stejná jako já, tj. '' | Testovací data by měl mít stejná jako já, tj. '' | ||
- | ===== Náročnost | + | ===== Pokusy s uvozovkami |
- | ==== obo-max ==== | + | Paralelní data, která máme k& |
- | Binarizace ve verzi 1.3 zahrnuje počítání tabulky lexikálních pravděpodobností a trvá asi 1:20 hodiny. Paměťová náročnost: | + | <code bash> |
- | Extrakce gramatiky nabíhala přes 20 minut, vyčerpala 11 GB. Teď už běží vlastní extrakce, ale je hodně pomalá, jedna věta trvá třeba i 10 minut. Průměrný čas je zatím 3 minuty na 1 větu, takže 2500 vět by trvalo 5 dní. Paměť stoupla zatím na 15 GB. Chtělo by to paralelizovat minimálně na 20 procesů! | + | Takhle se upraví korpus v& |
- | ===== Výsledky ===== | + | <code bash>cd / |
- | Není-li řečeno jinak, váhy se ladí na newstest2008 a testuje se na newstest2009. Trénuje se zatím na news-commentary, | + | Do Makefile |
- | | **Pokus** | **Dev WMT08** | **Test WMT09** | **Test WMT10** | **Poznámka** | **Datum** | | + | <code bash> |
- | | encs-allcstem4-tmnews-lmnews | 0.0918 | 0.0905 | | | 24.2.2010 | | + | NEWSCOMM = $(foreach pair,es-en/es es-en/en,news-commentary-v6b.$(pair))</code> |
- | | encs-clean | 0.0913 | 0.0897 | | Joshua 1.1, z trénovacích dat odstraněny věty o 100 a více slovech. | 21.3.2010 | | + | |
- | | encs-josh13 | 0.0878 | 0.0869 | | | 9.3.2010 | | + | |
- | | encs-the | 0.0901 | 0.0863 | | Pokus: ze zdrojové | + | |
- | | 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 | | + | |
- | | csen-allcstem4-tmnews-lmnews | 0.1439 | 0.1471 | 0.1518 (14.2/10.5) | | 26.2.2010 | | + | |
- | | csen-clean | 0.1441 | 0.1458 | | | 21.3.2010 | | + | |
- | | csen-josh13 | 0.1420 | 0.1455 | | | 9.3.2010 | | + | |
- | | ende-allcstem4-tmnews-lmnews | 0.1168 | 0.1114 | 0.1199 (11.5/4.3) | | 26.2.2010 | | + | |
- | | ende-clean | 0.1162 | 0.1118 | | | 21.3.2010 | | + | |
- | | ende-josh13 | 0.1161 | 0.1096 | | | 9.3.2010 | | + | |
- | | deen-allcstem4-tmnews-lmnews | 0.1725 | 0.1617 | 0.1728 (16.1/11.4) | | 26.2.2010 | | + | |
- | | deen-clean | 0.1718 | 0.1624 | | | 21.3.2010 | | + | |
- | | deen-josh13 | 0.1703 | 0.1616 | | | 9.3.2010 | | + | |
- | | enes-allcstem4-tmnews-lmnews | 0.1954 | 0.1966 | 0.2150 | + | |
- | | enes-clean | 0.1953 | 0.1979 | | | 21.3.2010 | | + | |
- | | enes-josh13 | 0.1969 | 0.1978 | | | 9.3.2010 | | + | |
- | | esen-allcstem4-tmnews-lmnews | 0.1945 | 0.2025 | 0.2268 (21.7/16.1) | | 8.3.2010 | | + | |
- | | esen-clean | 0.1945 | 0.2023 | | | 21.3.2010 | | + | |
- | | esen-josh13 | 0.1335 | 0.1411 | | Tady je pokles při přechodu na Joshuu 1.3 výraznější než jinde. | 10.3.2010 | | + | |
- | | enfr-allcstem4-tmnews-lmnews | 0.1991 | 0.2001 | 0.2034 | + | |
- | | enfr-clean | 0.1979 | 0.1990 | | | 21.3.2010 | | + | |
- | | enfr-josh13 | 0.1982 | 0.1999 | | | 9.3.2010 | | + | |
- | | fren-allcstem4-tmnews-lmnews | 0.1869 | 0.2020 | 0.1991 (18.9/13.7) | | 26.2.2010 | | + | |
- | | fren-clean | 0.1873 | 0.2008 | | | 21.3.2010 | | + | |
- | | fren-josh13 | 0.1861 | 0.2036 | | | 9.3.2010 | | + | |
- | ===== Pokusy s uvozovkami | + | 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 & | ||
+ | for y in 2008 2009 2010 2011 ; do | ||
+ | for l in cs de en es fr ; do | ||
+ | nohup nice make CORPUS=newstest$y-v6b LANGUAGE=$l >& make-newstest$y-$l.log & | ||
+ | done | ||
+ | done</ | ||
+ | |||
+ | 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 | ||
+ | |||
+ | Dotažení do konce: i 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 '' | ||
+ | |||
+ | <code bash> | ||
+ | cd encs-stc-allemma-tmv6b-lmv6b-lm6-test2011v6b | ||
+ | $STATMT/ | ||
+ | vim scripts/ | ||
+ | $ac_dev | ||
+ | $ac_test | ||
+ | (qsub.pl) scripts/ | ||
+ | nohup nice $STATMT/ | ||
+ | |||
+ | Pokusy s& | ||
+ | |||
+ | 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): '' | ||
- | Na začátku léta 2011 jsem se pokoušel poloautomaticky opravit | + | **Šest přídavných jazykových párů: |
- | '' | + | Sloupec Moses je první odpovídající pokus s& |
- | a co historie loňských commitů? | + | |
- | Podle časových značek u korpusů v '' | + | ^ Jazyky ^ v6 ^ v6b-tr ^ v6b ^ v7 ^ wmt12 ^ Moses ^ |
+ | | en-cs | 0.1191 | 0.1246 | 0.1257 | 0.1299 | 0.1161 | 11.96±0.50 | | ||
+ | | cs-en | 0.1692 | 0.1792 | 0.1801 | 0.1814 | 0.1661 | 17.96±0.50 | | ||
+ | | en-de | 0.1337 | 0.1274 | 0.1334 | 0.1350 | 0.1359 | 14.26±0.52 | | ||
+ | | de-en | 0.1885 | 0.1859 | 0.1896 | 0.1915 | 0.1880 | 18.77±0.53 | | ||
+ | | en-es | 0.2573 | 0.2531 | 0.2627 | 0.2756 | 0.2757 | 27.78±0.65 | | ||
+ | | es-en | 0.2446 | 0.2375 | 0.2497 | 0.2562 | 0.2699 | **22.19±0.58** | | ||
+ | | en-fr | 0.2591 | 0.2619 | 0.2526 | 0.2729 | 0.2572 | 25.99±0.63 | | ||
+ | | fr-en | 0.2243 | 0.2285 | 0.2384 | 0.2448 | 0.2391 | 24.59±0.68 | | ||
+ | | cs-de | | | | | 0.1304 | 13.65±0.54 | | ||
+ | | de-cs | | | | | 0.1186 | 12.12±0.52 | | ||
+ | | cs-es | | | | | 0.1848 | 19.52±0.52 | | ||
+ | | es-cs | | | | | 0.1220 | 12.81±0.54 | | ||
+ | | cs-fr | | | | | 0.1822 | 19.53±0.55 | | ||
+ | | fr-cs | | | | | 0.1175 | 12.53±0.57 | | ||
- | ===== Inventura 16.1.2012 | + | ===== Pokusy s Emanem |
- | 16.1.2012 21:12: Pouštím znova pokus '' | + | 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 | ||
- | Nový průběh všech osmi starých pokusů | + | Kopie příslušných korpusů jsou na mém hřišti v těchto krocích |
- | ^ 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 | + | 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/ | ||
- | 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). | + | Korpusy pro alignment: |
+ | s.corpus.60681730.20120201-2157 | ||
+ | s.corpus.892024c6.20120201-2157 | ||
- | 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, | + | 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</ | ||
- | ^ Jazyky ^ BLEU ^ Kontrolní běh ^ Třetí běh ^ | + | Výsledek Danova pokusu s Ondřejovými malými daty: |
- | | en-cs | FAILED | 0.1267 | 0.1246 | | + | BLEU = 0.1185 |
- | | cs-en | 0.1748 | 0.1748 | 0.1792 | | + | (Ondřej měl s Mosesem asi 0.1230.) |
- | | en-de | 0.1268 | 0.1268 | 0.1274 | | + | 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. |
- | | de-en | 0.1869 | 0.1869 | 0.1859 | | + | |
- | | en-es | 0.2542 | 0.2542 | | | + | |
- | | es-en | 0.2428 | FAILED | 0.2375 | | + | |
- | | en-fr | 0.2586 | 0.2628 | | | + | |
- | | fr-en | 0.2294 | 0.2294 | | | + | |