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:giza [2009/06/02 11:08] zeman Co potřebujeme po přeložení. |
user:zeman:giza [2009/06/02 13:18] zeman |
||
---|---|---|---|
Line 19: | Line 19: | ||
cp GIZA++-v2/ | cp GIZA++-v2/ | ||
cp mkcls-v2/ | cp mkcls-v2/ | ||
+ | |||
+ | Zdá se, že nástroje přeložené na 32bitové pracovní stanici s Ubuntu lze spustit i na clusteru. | ||
+ | |||
+ | ===== Příprava dat ===== | ||
+ | |||
+ | Pro přípravu dat potřebujeme některé skripty, které jsou přibalené např. k Mosesovi, nebo je můžeme nahradit svými vlastními: | ||
+ | * Tokenizace trénovacích dat (zdrojový i cílový jazyk) | ||
+ | * " | ||
+ | * Odstranění dlouhých vět (např. delších než 40 tokenů). Není to nezbytné, a pokud máme málo dat, možná ani žádoucí, ale Gize trvá neúměrně dlouho, když má pracovat s dlouhými větami. Pozor, pokud je věta dlouhá jen v jednom z jazyků, musíme ji samozřejmě odstranit nebo ponechat v obou. | ||
+ | |||
+ | Následující příklady jsou přímo z práce s hindštinou (TIDES). Převádění velkých písmen na malá by pravděpodobně stačilo provést pro angličtinu (hindština velká a malá písmena nerozlišuje), | ||
+ | |||
+ | < | ||
+ | cd / | ||
+ | cp $DATA/ | ||
+ | cp $DATA/ | ||
+ | $MOSES/ | ||
+ | $MOSES/ | ||
+ | |||
+ | Zvláštní. Diff se tváří, že hindská data se lowercasingem opravdu změnila, a změněných řádků není málo. Většinou obsahují latinské písmeno " | ||
+ | |||
+ | K tomu Gauravův komentář: Tam, kde se vyskytne celá posloupnost latinských znaků (opravdu asi stačí 2 a více za sebou), jde o nějakou divnou, často pro normálního Hinda nečitelnou romanizaci, kterou někdo nezkonvertoval zpátky. Tohle bude nejlepší prostě vyhodit. Pak se také občas objevuje samotné písmeno, přilepené nebo vložené do slova v dévanágarí. Viděli jsme Z, L a Q, ale mohou být i další. Je možné, že jsou to také nezkonvertované znaky. Z jsme viděli většinou na kraji slova, mohla by to být nějaká interpunkce. Q jsme viděli uprostřed slova a Gaurava nenapadá, co by to mohlo být - prostým vymazáním prý vznikne správné slovo. L jsme viděli taky uprostřed slova a u něj bylo možné vysledovat nějaký význam. Nepochopil jsem přesně jaký, ale to, co mi Gaurav namaloval, vypadalo na samohlásku " | ||
+ | |||
+ | Další krok je čištění korpusu od vět delších než 40 tokenů. Zatím k tomu použiju skript, který se mi kdysi vygeneroval u Mosese v rámci nějakého časovaného pokusu: | ||
+ | |||
+ | < | ||
+ | |||
+ | Ohlásilo to, že z 50000 vět zbylo 42737. | ||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | ===== Volání Gizy ===== | ||
+ | |||
+ | Než zavoláme Gizu, musíme mít z nějakého důvodu hotový [[SRILM|jazykový model]]< | ||
+ | |||
+ | Moses obsahuje skript, který hezky obaluje volání mkcls a Gizy++ a generuje frázové a přeskládávací tabulky, které potřebuje dekodér. Volá se takhle: | ||
+ | |||
+ | < | ||
+ | -scripts-root-dir $MOSES/ | ||
+ | -root-dir work \ | ||
+ | -corpus ./ | ||
+ | -alignment grow-diag-final-and \ | ||
+ | -reordering msd-bidirectional-fe \ | ||
+ | -lm 0: | ||
+ | >& training.out & | ||
+ | </ |