[ 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 Both sides next revision
user:zeman:joshua [2009/06/04 11:25]
zeman Oprava nedorozumění ohledně ref.txt.
user:zeman:joshua [2009/06/06 12:28]
zeman Binarizace korpusu a extrakce velké gramatiky.
Line 79: Line 79:
 qstat -u '*'</code> qstat -u '*'</code>
  
-===== Použití =====+ 
 +===== Extrakce gramatiky =====
  
 Joshua je nainstalován a funguje. Nyní se musíme naučit, jak ho trénovat a jak ho použít k překladu. Joshua je nainstalován a funguje. Nyní se musíme naučit, jak ho trénovat a jak ho použít k překladu.
Line 86: Line 87:
   * Tokenizovaný a segmentovaný text ve zdrojovém jazyce (en).   * Tokenizovaný a segmentovaný text ve zdrojovém jazyce (en).
   * Tokenizovaný a segmentovaný text v cílovém jazyce (hi).   * Tokenizovaný a segmentovaný text v cílovém jazyce (hi).
-  * Párování vyrobíme [[Giza++|Gizou++]]. +  * Párování vyrobíme [[Giza++|Gizou++]]. Správný soubor s párováním má stejný počet řádků jako zdrojový a cílový text (co řádek, to věta), ale místo slov má na každém řádku posloupnost dvojic čísel (např. "2-0 2-1 2-2 2-3 1-4"). Čísla vyjadřují, kolikáté slovo zdrojové věty je spárované s kolikátým slovem cílové věty. Ten správný soubor s takovýmto obsahem z Gizy++ obvykle vypadne pod jménem ''model/aligned.grow-diag-final-and'' nebo nějakým podobným.
- +
-Správný soubor s párováním vypadá nějak takhle: +
- +
-<code>2-0 2-1 2-2 2-3 1-4 2-5 14-8 13-10 8-11 9-11 8-12 8-13 8-14 8-15 5-16 7-16 6-17 4-18 15-19 +
-0-3 7-4 8-5 9-6 10-7 11-8 12-9 13-10 14-11 15-12 16-13 4-15 2-17 3-18 20-19 18-21 21-22 22-23 22-24 22-25 19-26 23-27 +
-0-0 1-1 2-1 3-2 4-4 5-5 7-9 8-16 9-17 10-17 12-17 13-17 14-17 15-17 17-17 18-17 11-18 18-19 18-20 19-21 +
-1-0 4-2 6-4 7-5 7-6 5-7 7-7 6-8 8-9 7-10 8-11 8-12 8-13 11-14 12-17 +
-0-0 1-1 2-1 3-1 7-2 8-3 9-4 6-5 11-6 11-7 12-10 13-11 14-12 15-13 16-14 22-15 23-15 21-16 26-17 17-20 28-22 29-23 27-26 25-28 30-29 31-30 32-30 33-30 33-31 33 +
--32 34-33</code>+
  
 A takhle pustíme Joshuu, aby z trénovacích dat extrahoval gramatiku. Joshua z nějakého důvodu vyžaduje také testovací soubor se zdrojovým jazykem. Soudě podle příkladu, který dodali, stačí zkopírovat první větu ze zdrojových trénovacích dat. Gramatiku je pak ještě třeba seřadit, vyházet duplicitní pravidla a zagzipovat. A takhle pustíme Joshuu, aby z trénovacích dat extrahoval gramatiku. Joshua z nějakého důvodu vyžaduje také testovací soubor se zdrojovým jazykem. Soudě podle příkladu, který dodali, stačí zkopírovat první větu ze zdrojových trénovacích dat. Gramatiku je pak ještě třeba seřadit, vyházet duplicitní pravidla a zagzipovat.
Line 106: Line 98:
 setenv GRM en-hi.grammar setenv GRM en-hi.grammar
 head -1 $SRC > $TST head -1 $SRC > $TST
-java -cp $JOSHUA/bin joshua.prefix_tree.ExtractRules --source=$SRC --target=$TGT --alignments=$ALI --test=$TST --output=$GRM.unsorted --maxPhraseLength=5+java -cp $JOSHUA/bin joshua.prefix_tree.ExtractRules 
 +    --source=$SRC --target=$TGT --alignments=$ALI --test=$TST 
 +    --output=$GRM.unsorted --maxPhraseLength=5
 sort -u $GRM.unsorted > $GRM sort -u $GRM.unsorted > $GRM
 gzip $GRM</code> gzip $GRM</code>
Line 116: Line 110:
 Binarizovat zdrojovou část korpusu. Binarizovat zdrojovou část korpusu.
  
-<code>java -cp bin joshua.corpus.suffix_array.SuffixArray $WORK/corpus/train.clean.en $WORK/model/vocab.en.bin $WORK/model/corpus.en.bin $WORK/model/suffixes.en.bin</code>+<code>java -cp $JOSHUA/bin joshua.corpus.suffix_array.SuffixArray 
 +    $WORK/corpus/train.clean.en 
 +    $WORK/model/vocab.en.bin 
 +    $WORK/model/corpus.en.bin 
 +    $WORK/model/suffixes.en.bin 
 +java -cp $JOSHUA/bin joshua.corpus.suffix_array.SuffixArray \ 
 +    $WORK/corpus/train.clean.hi \ 
 +    $WORK/model/vocab.hi.bin \ 
 +    $WORK/model/corpus.hi.bin \ 
 +    $WORK/model/suffixes.hi.bin 
 +java -cp $JOSHUA/bin joshua.corpus.alignment.AlignmentGrids \ 
 +    $WORK/model/aligned.grow-diag-final-and \ 
 +    $WORK/model/alignments.bin</code>
  
 Takto se extrahuje gramatika pro konkrétní testovací data s pomocí binarizovaného korpusu: Takto se extrahuje gramatika pro konkrétní testovací data s pomocí binarizovaného korpusu:
  
-<code bash>java -Xmx2000m -Xms2000m -cp $JOSHUA/bin joshua.prefix_tree.ExtractRules --binary-source=true --binary-target=true --source=model/corpus.en.bin --target=model/corpus.hi.bin --source-vocab=model/vocab.en.bin --target-vocab=model/vocab.hi.bin --source-suffixes=model/suffixes.en.bin --target-suffixes=model/suffixes.hi.bin --alignmentsType=MemoryMappedAlignmentGrids --alignments=model/alignments.bin --test=corpus/test.lowercased.en --output=model/en-hi.grammar.unsorted --maxPhraseLength=5</code> +<code>java -Xmx2000m -Xms2000m -cp $JOSHUA/bin joshua.prefix_tree.ExtractRules 
 +    --binary-source=true --binary-target=true 
 +    --source=model/corpus.en.bin --target=model/corpus.hi.bin 
 +    --source-vocab=model/vocab.en.bin --target-vocab=model/vocab.hi.bin 
 +    --source-suffixes=model/suffixes.en.bin --target-suffixes=model/suffixes.hi.bin 
 +    --alignmentsType=MemoryMappedAlignmentGrids --alignments=model/alignments.bin 
 +    --test=corpus/test.lowercased.en 
 +    --output=model/en-hi.grammar.unsorted 
 +    --maxPhraseLength=5</code>
  
 ===== Decoding ===== ===== Decoding =====

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