[ 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
Last revision Both sides next revision
user:zeman:giza [2009/06/02 12:21]
zeman Volání Gizy++.
user:zeman:giza [2009/06/03 15:31]
zeman Moje pokusné volání.
Line 47: Line 47:
  
 Ohlásilo to, že z 50000 vět zbylo 42737. Ohlásilo to, že z 50000 vět zbylo 42737.
 +
 +
 +
 +
 +
 +
 +
 +
 +
  
 ===== Volání Gizy ===== ===== Volání Gizy =====
  
-Než zavoláme Gizu, musíme mít z nějakého důvodu hotový jazykový model!+Než zavoláme Gizu, musíme mít z nějakého důvodu hotový [[SRILM|jazykový model]]<nowiki>!</nowiki>
  
-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:+Pro konkrétní pokusy s hindštinou už mám upravené volání Gizy++ nachystané ve skriptu ''~zeman/projekty/hindstina/align_tides.csh'' (volá se bez parametrů a dá se odeslat na cluster). 
 + 
 +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 (pozor, cesta k jazykovému modelu musí být **absolutní**):
  
 <code>nohup nice $MOSES/tools/moses-scripts/scripts-20090128-1534/training/train-factored-phrase-model.perl \ <code>nohup nice $MOSES/tools/moses-scripts/scripts-20090128-1534/training/train-factored-phrase-model.perl \
     -scripts-root-dir $MOSES/tools/moses-scripts/scripts-20090128-1534/ \     -scripts-root-dir $MOSES/tools/moses-scripts/scripts-20090128-1534/ \
-    -root-dir work \+    -root-dir \
     -corpus ./train.lowercased -f en -e hi \     -corpus ./train.lowercased -f en -e hi \
     -alignment grow-diag-final-and \     -alignment grow-diag-final-and \
     -reordering msd-bidirectional-fe \     -reordering msd-bidirectional-fe \
-    -lm 0:3:/home/jschroe1/demo/work/lm/news-commentary.lm \ +    -lm 0:3:/net/work/people/zeman/hindstina/lm/train.lowercased.hi.lm \ 
-    >& work/training.out &+    >& training.out &
 </code> </code>
 +
 +Uvedený skript se mi zasekl krátce před vytvořením vlastního symetrického párování, protože nějak špatně odkazoval na jiné skripty uvnitř vygenerované složky (měl v cestě "training/training" tam, kde měl mít jenom "training"). Prozatím jsem to fixnul ručně a vyrobil jsem soubor ''model/aligned.grow-diag-final-and'', jehož obsah vypadá podobně jako vzorová data u Joshuy, tj. asi mám připravená data pro Joshuu.
 +
 +Uvedený trénovací skript Mosese má na starosti mnohem více úkonů než jen volání Gizy. Úkony jsou rozdělené do kroků a můžeme provést jen některé kroky. Kroky jsou následující:
 +
 +  - prepare() - pracuje s faktory, nahrazuje slova v korpusu číselnými odkazy do slovníku, volá ''mkcls'' (make classes)
 +  - run_giza() - pustí paralelně 2 alignovací procesy, ze zdroje na cíl a z cíle na zdroj
 +  - word_align() - zkombinuje výsledky obou Giz, aby získal jedno slovní párování. Volá ''symal''. Tady se uplatní symetrizační heuristika (např. //grow-diag-final-and//)
 +  - get_lexical_factored()
 +  - extract_phrase_factored()
 +  - score_phrase_factored()
 +  - get_reordering_factored()
 +  - get_generation_factored()
 +  - create_ini()
 +
 +Pokud to děláme kvůli Joshuovi, potřebujeme pustit jen prvních pár kroků.
 +
 +**Pozor!** Jestliže pustíme Gizu opakovaně ve stejné složce, bude mít tendenci využít staré mezisoubory a nevytvářet je znova, aby ušetřila čas. To ale není vždy žádoucí! Jestliže jsme např. měli vedle sebe dvě verze korpusu, train.lowercased (50000 vět na každé straně) a train.clean (podmnožina 42737 vět na každé straně), nejdříve jsme pustili Gizu na train.lowercased a pak jsme si vzpomněli, že jsme vlastně chtěli train.clean, nestačí pustit Gizu znova se správnými parametry. Giza nepozná, že její mezisoubory (zejména ty ve složkách giza*) byly vytvořeny nad jinou verzí korpusu. Klidně použije mezisoubory znova, protože vypadají použitelně, takže bude s prací rychle hotová a vy dostanete znova párování pro train.lowercased.

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