[ Skip to the content ]

Institute of Formal and Applied Linguistics Wiki


[ Back to the navigation ]

Table of Contents

Pokusy s předzpracováním paralelních textů pro TSD 2010

Předzpracování

Zdrojová anglická strana paralelního korpusu se nejdříve prožene značkováním a parsingem v TectoMT. Výsledek se schovává ve složce en.parsed příslušného augmented korpusu jako .tmt soubory. Nad nimi se potom provádějí transformace, specifické pro každý pokus. Mám na to v TectoMT aplikaci, akorát pro celý Czeng by trvala strašně dlouho a Ondra už parsing provedl, takže stačí ho vzít a převést. O.:

“Mam, ale je tam zvlast anglictina a cestina (a zadny alignment). Nebude ale velky problem to spojit.

/home/bojar/diplomka/granty/emplus/wmt10/playground/augmented_corpora/{czeng092-*,emea2}/{cs,en}NaLOT.gz

Jen upozornuju, ze to nejsou tmt soubory, ale lot, line-oriented-tmt, co radek, to bundle. Prevod do tmt viz tools/format_convertors/line-oriented-tmt, ale *opatrne*. Viz jak 100 bundlu tmt soubory neunesou (resp. nikdo je pak v rozumnem case nenacte.)”

Výše uvedená Ondrova cesta vede na /a/merkur3/TMP/bojar/wmt10/playground/augmented_corpora/czeng092-ne (a další části Czengu) /enNaLOT.gz. Zkopíroval jsem si ten soubor enNaLOT.gz do svých augmented corpora do /net/work/people/zeman/wmt/augmented_corpora/czeng092-ne. Tam jsem ho začal přelévat do en.parsed pomocí svého skriptu ${TMT_ROOT}/applications/reordering/tsd2010/prepare.pl, který jsem za tím účelem upravil, aby kromě tokenizovaného textu uměl konvertovat i line-oriented tmt. Ve složce czeng092-ne/en.parsed se také vytváří filelist.txt se seznamem vzniklých tmt souborů (bude ho potřebovat náš transformační make reorder). Je jich 1262. Až vyzkouším, že s tím lze provádět transformace a překlad, měl bych to udělat i pro ostatní části Czengu.

Ovšem pozor, v seznamu souborů potřebujeme úplné cesty, proto musíme také cestu k pracovní složce uvést úplnou!

gunzip -c enNaLOT.gz | $TMT_ROOT/applications/reordering/tsd2010/prepare.pl -l -w /ha/work/people/zeman/wmt/augmented_corpora/czeng092-ne/en.parsed > /ha/work/people/zeman/wmt/augmented_corpora/czeng092-ne/en.parsed/filelist.txt

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.

Pokus Dev WMT08 Test WMT09 Poznámka Datum
encs-josh13 0.0878 0.0869 9.3.2010
encs-articles 0.0907 0.0887 Z anglické strany vypuštěny určité i neurčité členy. 16.3.2010
encs-subject 0.0903 0.0864 Před kořenové slovo anglického podmětu vepsán token _SUBJ_. 16.3.2010
encs-subject1 0.0872 0.0883 Ke kořenovému slovu anglického podmětu připojeno (do jednoho tokenu) /Sb. 17.3.2010
encs-attribute 0.0785 0.0786 K anglickým přívlastkům připojeno (do jednoho tokenu) /Atr. Cílem bylo odlišit např. “Prague” jako přídavné jméno “pražský” od podstatného jména “Praha”. Bohužel se ukazuje, že parser považuje za přívlastek všechno možné, někdy dokonce včetně hlavního slovesa v minulém čase (“agreed”). Proto to asi nefunguje. Možná by bylo lepší zkusit se spolehnout na tagger a jeho názor na to, co je přídavné jméno. 17.3.2010
encs-adjective 0.0889 0.0874 Místo přívlastků (viz výše) se připojuje /JJ u přídavných jmen. Zjistil jsem ale, že jako přídavná jména jsou značkována většinou jen slova, která opravdu jako přídavná jména vypadají, nikoli atributivně použitá podstatná jména (jako “Prague”). Takže to nijak signifikantně nepomohlo. Mohli bychom zkusit ještě třetí věc, značkovat atributy, ale pouze ty, které leží před podstatným jménem a samy nemají žádné děti. 17.3.2010

Protože se ukázalo, že s Joshuou 1.3 zatím neumím docílit stejných výsledků jako s 1.1, pouštím ještě tytéž pokusy s Joshuou 1.1, trénovací data jsou vyčištěná od vět o 100 a více slovech.

Pokus Dev WMT08 Test WMT09 Poznámka Datum
encs-clean 0.0913 0.0897 21.3.2010
encs-articles 0.0921 0.0898 Z anglické strany vypuštěny určité i neurčité členy. 23.3.2010
encs-subject1 0.0891 0.0880 Ke kořenovému slovu anglického podmětu připojeno (do jednoho tokenu) /Sb.
encs-adjective 0.0913 0.0893 K anglickým přídavným jménům se připojuje /JJ. Mohli bychom zkusit ještě třetí věc, značkovat atributy, ale pouze ty, které leží před podstatným jménem a samy nemají žádné děti.

4.5.2010 pouštím další pokus verbparticle, kde se slovesná částice přisunuje ke slovesu, např. “wake him up” → “wake up him”. Kvůli odlišné tokenizaci ale parser dělá chyby, když později ve větě vidí slovo, které by mohlo fungovat jako slovesná částice, bezhlavě ho připojí ke slovesu, i když by mohl poznat, že je to předložka nebo částice od něčeho jiného (třeba je tam rozdělený výraz “spin - off”, on vezme to “off” a zavěsí ho na sloveso, které se nachází nalevo od spin-offu). Zachování odlišné tokenizace skrz parsing je skoro námět na článek :-). Zatím běží strojový překlad s přisunutými částicemi. Mohl bych ještě zkusit úplně slepit částici se slovesem (např. pomocí podtržítka).

30.5.2010: verbparticle, Joshua 1.1: devbleu = 0.0880, testbleu = 0.0864.

Nové pokusy před odesláním konečné verze článku. Joshua verze 1.1, ale čištění od dlouhých vět už probíhá jako u verze 1.3.

Pokus Dev WMT08 Test WMT09 Poznámka Datum
encs 0.0916 0.0891 31.5.2010
encs-articles 0.0921 0.0898 Z anglické strany vypuštěny určité i neurčité členy. Statisticky nevýznamné zlepšení. 31.5.2010
encs-subject 0.0891 0.0864 Ke kořenovému slovu anglického podmětu připojeno (do jednoho tokenu) /Sb. U starších experimentů jsem tohle označoval jako subject1, ale tehdejší subject bez indexu už je stejně zapomenut. 31.5.2010
encs-articles-subject 0.0859 0.0851 Kombinace transformací articles a subject. 31.5.2010
encs-verbparticle 0.0880 0.0864 Viz výše. 30.5.2010
enhi 0.1116 0.1230 31.5.2010
enhi-articles 0.1141 0.1230 Zatím se členy odstraňují úplně stejně jako u encs. Ve skutečnosti bychom ale pro hindštinu měli asi odstraňovat pouze určité členy. 31.5.2010
enhi-reord2008 0.1074 0.1172 Stará pravidla pro úpravu slovosledu z roku 2008: sloveso na konec věty a z předložek záložky. Možná se ale nepodařilo pravidla přenést úplně správně, bude to potřeba ještě prozkoumat po částech. 31.5.2010
enhi-postpositions 0.1112 0.1227 Z předložek se dělají záložky. 2.6.2010

7.9.2010 ověřuju, že jsem schopen zopakovat výše uvedené květnové výsledky. Opakuju pouze překladovou část, ne předzpracování. Ověřeno: encs. U en-articles byl dost zmatek a žádná předcházející verze experimentu nevypadala důvěryhodně. Nová verze naklonovaná z nového ověřeného encs mi dala dev = 0.0923, test = 0.0893. Nová verze en-subject-regrese mi dala dev = 0.0891, test = 0.0864. Nová verze encs-verbparticle-regrese mi dala dev = 0.0878, test = 0.0850.

encs-complextense 0.0879 0.0863 Mění “is doing” na “does” (resp. “dos”, protože nepoužíváme úplnou morfologickou syntézu). 8.9.2010
encs-article 0.0888 0.0836 Upravené odstraňování členů pomocí funkcí jádra TectoMT. Výsledek by teoreticky měl být identický s articles, ale zjevně není. 8.9.2010
enhi 0.1116 0.1230 Základní anglicko-hindský pokus. Aspoň zde se potvrdily stejné výsledky jako v květnu. 8.9.2010
enhi-articles 0.1141 0.1230 Původní odstraňování členů, ověřen stejný výsledek. 8.9.2010
enhi-article 0.1168 0.1237 Upravené odstraňování členů pomocí funkcí jádra TectoMT. Výsledek by teoreticky měl být identický s articles, ale zjevně není. 8.9.2010
enhi-the 0.1158 0.1236 Odstraňuje se pouze určitý člen, neurčitý se nechává na místě, protože hindština ho občas používá také. 8.9.2010
enhi-sov 0.1074 0.1163 Slovesa se přesouvají na konec klauze. 8.9.2010

Náměty


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