[ 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 [2010/03/05 17:04]
zeman Aktuální úkoly.
user:zeman:wmt [2012/01/29 22:33]
zeman Záznam o tom, jak se v datech upravují uvozovky.
Line 1: Line 1:
-====== Danovy pokusy s Joshuou na WMT 2010 ======+====== Danovy pokusy s Joshuou na WMT 2012 ======
  
-http://www.statmt.org/wmt10/translation-task.html+http://matrix.statmt.org/ 
 +http://www.statmt.org/wmt11/translation-task.html
 http://svn.ms.mff.cuni.cz/projects/statmt/wiki/enhi/joshua http://svn.ms.mff.cuni.cz/projects/statmt/wiki/enhi/joshua
 <code>/net/work/people/zeman/wmt</code> <code>/net/work/people/zeman/wmt</code>
Line 7: Line 8:
 ===== Aktuální úkoly ===== ===== Aktuální úkoly =====
  
-  * Přeložit ostrá testovací data všeho kromě ''encs'' a odeslat je. **Stav:** běží ''extract-t.pl''+  * Udělat pořádek záznamech. 
-  * Přeložit ostrá testovací data ''encs'' a odeslat je. **Stav:** běží ''extract-t.pl''+  Najít a oživit loňské pokusy s interpunkcí, zejména s uvozovkami
-  * Paralelizovat extrakci gramatiky, abych měl šanci se jí u obo-max někdy dočkat.+  * 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.   * Dotáhnout do konce obo-max.
 +  * Při klonování experimentu se musí kopírovat mert/decoder-config.txt.ZMERT.final a změnit v něm cesty! Pozor, mohla se změnit i cesta ke glue gramatice, pokud se změnila cesta k Joshuovi.
 +  * 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.
  
-===== Příprava korpusů =====+===== Srovnávací testy mezi Joshuou 1.1 a 1.3: Je třeba otestovat nastavení maximální délky fráze 5 =====
  
-Vývojová data (''news-test'') jsou k dispozici ve formátu SGML. Obsahují pouze jeden referenční ekladtakže stačí vykopat obsah prvků ''<seg>''Výsledek strčit do ''augmented_corpora''.+Po 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 5Hraje to nějakou roli?
  
-===== Náročnost =====+===== obo-max =====
  
-==== obo-base1 ====+Nejúspěšnější nastavení z&nbsp;roku 2010 (více méně recyklované v&nbsp;roce 2011) bylo ''obo-max'', nyní přejmenované na ''obo-max-test2009'', a ''obo-max3'', nyní přejmenované na ''obo-max-test2010''. Oba tyto pokusy nyní používají Joshuu 1.3 (stará skóre byla naměřena s&nbsp;Joshuou 1.1 a jinými skripty). Oba používají Ondřejova velká data, tj. 7 miliónů párů vět z&nbsp;Czengu 0.92 na trénování, 13 miliónů českých vět (210 miliónů slov) pro český jazykový model (hexagram), nějaké tokenizační a technické úpravy (jazyky csNm a enNa2). Oba využívají Ondrovy ''augmented_corpora'' (''/home/bojar/diplomka/granty/emplus/wmt10/playground/augmented_corpora''). V&nbsp;mých vlastních možná ani nejsou k&nbsp;dispozici zdrojové korpusy. Testovací korpus má u Ondry název ''wmt102.test09'', resp. ''wmt102.test10''. V&nbsp;obou případech ladím váhy na ''wmt102.test08''.
  
-První pokus s Ondřejovými daty 3.3.2010, ale jen trigramový jazykový modelProběhlo celkem bez potíží.+Vytvořil jsem ještě i analogické ''obo-max-test2011'', ale zatím to má háčekOndrovy ''augmented_corpora'' neobsahují ''newstest2011''. Takže jsem se vyhnul pouštění ''prepare.pl'', přeplácnul jsem svou kopii testovacích souborů svou kopií ''newstest2011'', což navíc neprošlo stejnou úpravou jako ostatní Ondrova data (není to tedy ve skutečnosti jazyk csNm, resp. enNa2, ale obyčejné moje cs a en; byť jsem je přejmenoval, aby to fungovalo).
  
-==== obo-base2 ====+^ 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 |
  
-Snažím se vyrobit větší jazykové modely. Zatím (5.3.2010 dopoledne) doběhl čtyřgram, běží pentagram.+===== Data =====
  
-Trénování 4gramového jazykového modelu trvalo půl hodiny a spotřebovalo něco mezi 10 a 15 GBTrénování pentagramu trvalo asi 40 minut a spotřebovalo něco es 18 GB. Hexagram trval hodinu a spotřeboval nejméně 23 GB (to byl poslední údajkterý jsem viděl, než jsem odešel).+Vývojová data (''news-test'') jsou k dispozici ve formátu SGMLObsahují pouze jeden referenční ekladtakže stačí vykopat obsah prvků ''<seg>''. Výsledek strčit do ''augmented_corpora''.
  
-==== obo-base3 ====+==== Ondřejova data ====
  
-Klon obo-base2Používám Ondřejův hotový šestigramový model a pouštím rovnou MERT.+Ondřejovy augmented corpora se nacházejí v&nbsp;''/home/bojar/diplomka/granty/emplus/wmt10/playground/augmented_corpora'' (což vede na ''/a/merkur3/TMP/bojar/wmt10/playground/augmented_corpora''). Za baseline se považuje trénování na zpravodajské části Czengu, tj. ''czeng092-ne''Uvnitř jsou různé podjazyky podle úrovně analýzy. Zdá se, že baseline by mohly být např. ''enNa'' a ''csNa'', ale Ondřej prý pro WMT 2010 používal ''enNa2+stc'' a ''csN[ma]+stc'' (''csNa'' a ''csNm'' jsou prý identické). Faktor ''stc'' znamená //supervised truecasing,// čili truecasováno podle lemat. Ondřej korpus zarovnával podle lemat, tj. ''enNa-lemma-csNa-lemma-gdfa''. Český jazykový model Ondřej vyráběl z&nbsp;''wmt10mono2'', to šestigramový.
  
-==== obo-max ====+Vysvětlení Ondrových pseudojazyků: 
 +  * Znaky za ''cs'', resp. ''en'', označují anotaci, kterou data prošla v&nbsp;TectoMT (Ondra na to má scénář v&nbsp;adresáři ''augmented_corpora'', ale možná to není commitnuté). 
 +  * ''Nm'' značí s&nbsp;normalizací (jako uvozovky, //'ll// apod.) a jen po morfologickou rovinu. 
 +  * ''Na'' je s&nbsp;normalizací až po t-rovinu, ale uloženo jako analytická, tj. co token, to analytický uzel, a některé mají kolonku t-lematu a formému neproškrtnutou. 
 +  * ''Na2'' je jako ''Na'', ale Ondra nějak měnil ten normalizační blok. Do soutěže šlo právě ''Na2''
 +  * ''Nt'' je linearizovaná t-rovina. 
 +  * ''X1'' je Ondrův pokus o frázovou interlingvu, tj. sice stále lineární, ale některé věci (jako zvratná zájmena nebo v&nbsp;angličtině další součástky slovesa) pravidlově přemístěny blíž ke slovesu. Neúspěšné, tak neví přesně. 
 +  * ''_txt'' je prostý text bez tokenizace, začátek všeho, odpovídá releasnutému CzEngovému plaintextu.
  
-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: až do počítání lexikálních pravděpodobností včetně vystačil s 9,8 GB. Pak se ale pustil do předpočítávání indexů nejčastějších frází a s pamětí vyletěl na 22 GB, což je strop, který jsem mu dal, takže je otázka, jestli by nedokázal využít i větší množství paměti. Podle Lanova vyjádření by mohl být problém s&nbsp;větami o 100 více slovech, proto jsem z&nbsp;korpusu takové věty odstranil. Můj čistící skript vybral z&nbsp;7&nbsp;544&nbsp;465 řádků 7&nbsp;543&nbsp;152 takových, které měly 1-99 tokenů.+Ondřejův maximální paralelní korpus navíc obsahuje další části Czengu korpus Emea: ''czeng092-ne+czeng092-eu+czeng092-fi+czeng092-te+czeng092-su+czeng092-we+emea2'' (alignment ''csNm-lemma-enNm-lemma-gdfa'').
  
-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ětutakž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ů!+Pro český jazykový model chtěl Ondřej později ještě přidat korpusy ''wmt09mono''''webcoll'' a ''syn200x''.
  
 +Testovací data by měl mít stejná jako já, tj. ''wmt102.test08'' pro MERT a ''wmt102.test09'' pro testování.
  
 +===== 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, a to jak překladový, tak jazykový model. U testu WMT 2010 se jako základní uvádí BLEU skóre, které mi spočítal Joshua, v závorce pak skóre, které mi spočítali organizátoři, lowercase / truecase. Hodnoty se někdy výrazně liší, zřejmě kvůli odlišné tokenizaci.
  
 +| **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 |
  
-===== Výsledky ===== +===== Pokusy s uvozovkami =====
- +
-Není-li řečeno jinak, váhy se ladí na newstest2008 a testuje se na newstest2009. Trénuje se zatím na news-commentary, a to jak překladový, tak jazykový model.+
  
-| **Pokus** | **Dev BLEU** | **Test BLEU** | **Poznámka** | **Datum** | +Na začátku léta 2011 jsem se pokoušel poloautomaticky opravit a sjednotit uvozovky ve všech jazycích WMT 2011Myslím, že to nebylo dodělané, a momentálně to nemůžu najítŠlo o ú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 znovaAsi.
-| encs-allcstem4-tmnews-lmnews | 0.0918 | 0.0905 | | 24.2.2010 | +
-| csen-allcstem4-tmnews-lmnews | 0.1439 | 0.1471 | | 26.2.2010 | +
-| ende-allcstem4-tmnews-lmnews | 0.1168 | test havaroval | | 26.2.2010 | +
-| deen-allcstem4-tmnews-lmnews | 0.1725 | 0.1617 | | 26.2.2010 | +
-| enes-allcstem4-tmnews-lmnews | MERT havaroval | | | 26.2.2010 | +
-| esen-allcstem4-tmnews-lmnews | extrakce havarovala | | | 26.2.2010 | +
-| enfr-allcstem4-tmnews-lmnews | 0.1991 | test havaroval | | 26.2.2010 | +
-| fren-allcstem4-tmnews-lmnews | 0.1869 | 0.2020 | | 26.2.2010 |+
  
-ende test havaroval, protože jsem ho pustil dřív, než doběhla extrakce gramatiky pro testovací dataenfr ale padá i poté, to proto, že některým částem (15 a 18) nestačí paměť.+''$STATMT/scripts/specchar.pl'' 
 +co historie loňských commitů?
  
-| **Pokus** | **Dev BLEU** | **Test BLEU** | **Poznámka** | **Datum** | +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-ende-enes-en, fr-en).
-| obo-base1 (encs) | 0.1084 | 0.0990 | | 3.3.2010 | +
-| obo-base3 (encs) | 0.1064 | 0.0990 | Na rozdíl od obo-base1 použit šestigramový jazykový model místo třígramového. Výsledek je velmi podezřelý (velmi podezřele podobný tomu třígramovému), ale zdá se, že jsem zapomněl dekodéru říct, že teď to bude šestigram. Tak to pouštím znova. | 5.3.2010 | +
-| obo-base3 (encs) | 0.1103 | 0.1012 | Opravný pokustentokrát už dekodér snad víže máme šestigram. | 5.3.2010 |+
  
-===== Ondřej =====+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''):
  
-Ahoj. 
  
-S podobnymi podminkami souhlasimaspon se dozvime vic.+--------------------------------------- 
 +Mám k dispozici trénovací data s opravenými uvozovkamizatím jen pro angličtinu se španělštinou. 
 +Potřebuju je označkovat, abych mohl pouštět experimenty s faktory lemma a stc. 
 +cd /net/work/people/zeman/wmt 
 +# 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)) 
 +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! 
 +# 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 
 +# 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=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ř. "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 
 +cd fren-stc-allemma-tmv6b-lmv6b-lm6-test2011 
 +$STATMT/joshua-scripts/resetex_scripts.pl 
 +vi scripts/setexp.pl 
 +$ac_tmtrain     = 'news-commentary-v6b.fr-en+europarl-v6b.fr-en';
  
-Cili do WMT by mohl jit:+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.
  
-muj moses +es-en: dříve 0.2452, nyní 0.2428 
-Tvuj joshua +en-es: dříve 0.2590, nyní 0.2542
-- TectoMT+
  
-Moje augmented corpora jsou ~bojar/diplomka/granty/emplus/wmt10/playground/augmented_corpora/ 
  
-baseline korpus je +===== Inventura 16.1.2012 =====
-czeng092-ne +
-(alignment enNa-lemma-csNa-lemma-gdfa)+
  
-maximalni paralelni korpus je +16.1.2012 21:12: Pouštím znova pokus ''encs-stc-allcstem4-tmnews+parl-lmnews+parl-lm6-test2011''. Zřejmě to neobsahuje opravené uvozovky (v6b), ale potřebuju zjistit, zda se to vůbec rozběhne.
-czeng092-ne+czeng092-eu+czeng092-fi+czeng092-te+czeng092-su+czeng092-we+emea2 +
-(alignment csNm-lemma-enNm-lemma-gdfa)+
  
-korpusy pro LM mam zatim rozhrabane a pouzivam zejmena:+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)''$SRC$TGT-stc-allcstem4-tmnews+parl-lmnews+parl-lm6-test2011''
  
-wmt10mono2+^ 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 |
  
-pozdeji budou pouzitelne wmt09monowebcoll syn200x+Od jara mám vytvořené také pokusy s korpusyve 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 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.)
  
-development korpus je wmt102.test08 +''$SRC$TGT-stc-allemma-tmv6b-lmv6b-lm6-test2011''
-test korpus je        wmt102.test09+
  
 +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).
  
-Zdrojovy jazyk  je pro mne enNa2+stc. +24.1.2012 už mám i skoro všechny kontrolní výsledky druhého běhuale 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, později pustím i francouzštinu, až i u ní skončí druhý běh).
-Cilovy jazyk je pro mne csN[ma]+stc (jsou identickene pro kazdy korpus mam vyrobeno vsechno)+
  
-'stc' obecne znamena supervised truecasing, cili truecasovano podle lemmatu.+^ 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 | | 
 +| fr-en | 0.2294 | 0.2294 | |
  
-O. 

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