Hi, you second language model operates on factor 2 (2:3:/media/sdb3/working-dir9/lm/pos.lm:0), but your second translation path (0-0) does not produce this factor. You should change t2 to 0-0,2.
-phi 2011/4/15 dongxinghua0213 <[email protected]>: > Hi, > > when I train factored model for the sample de-en parallel corpus in moses > ,using the following command: > > bin/moses-scripts/scripts-20091006-1534/training/train-factored-phrase-model.perl > -scripts-root-dir bin/moses-scripts/scripts-20091006-1534 -root-dir > /media/sdb3/working-dir9 -corpus > /media/sdb3/working-dir9/corpus/proj-syndicate.1000 -f de -e en -lm > 0:3:/media/sdb3/working-dir9/lm/surface.lm:0 -lm > 2:3:/media/sdb3/working-dir9/lm/pos.lm:0 -translation-factors 0-1+3-2+0-0 > -generation-factors 1,2-0 -decoding-steps t0,t1,g0:t2 > > An error seems like this : > top@moses01:~/programming/language_model$ echo "wie|wie|kous|kous" | > /home/top/programming/language_model/moses/moses-cmd/src/moses -config > /media/sdb3/working-dir9/model/moses.ini > Defined parameters (per moses.ini or switch): > config: /media/sdb3/working-dir9/model/moses.ini > distortion-limit: 6 > generation-file: 1,2 0 2 /media/sdb3/working-dir9/model/generation.1,2-0 > input-factors: 0 1 2 3 > lmodel-file: 0 0 3 /media/sdb3/working-dir9/lm/surface.lm 0 2 3 > /media/sdb3/working-dir9/lm/pos.lm > mapping: 0 T 0 0 T 1 0 G 0 1 T 2 > ttable-file: 0 1 5 /media/sdb3/working-dir9/model/phrase-table.0-1.gz 3 2 5 > /media/sdb3/working-dir9/model/phrase-table.3-2.gz 0 0 5 > /media/sdb3/working-dir9/model/phrase-table.0-0.gz > ttable-limit: 20 0 0 > weight-d: 0.6 > weight-generation: 0.3 0 > weight-l: 0.2500 0.2500 > weight-t: 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 > weight-w: -1 > Loading lexical distortion models... > have 0 models > Start loading LanguageModel /media/sdb3/working-dir9/lm/surface.lm : [0.000] > seconds > Start loading LanguageModel /media/sdb3/working-dir9/lm/pos.lm : [1.000] > seconds > Finished loading LanguageModels : [1.000] seconds > weight-generation: 0.300 0.000 > /media/sdb3/working-dir9/model/generation.1,2-0.gz > Start loading PhraseTable /media/sdb3/working-dir9/model/phrase-table.0-1.gz > : [1.000] seconds > filePath: /media/sdb3/working-dir9/model/phrase-table.0-1.gz > Start loading PhraseTable /media/sdb3/working-dir9/model/phrase-table.3-2.gz > : [2.000] seconds > filePath: /media/sdb3/working-dir9/model/phrase-table.3-2.gz > Start loading PhraseTable /media/sdb3/working-dir9/model/phrase-table.0-0.gz > : [3.000] seconds > filePath: /media/sdb3/working-dir9/model/phrase-table.0-0.gz > Finished loading phrase tables : [3.000] seconds > IO from STDOUT/STDIN > Created input-output object : [3.000] seconds > Translating: wie|wie|kous|kous > Collecting options took 0.000 seconds > moses: LanguageModelSRI.cpp:154: virtual float > Moses::LanguageModelSRI::GetValue(const std::vector<const Moses::Word*, > std::allocator<const Moses::Word*> >&, const void**, unsigned int*) const: > Assertion `(*contextFactor[count-1])[factorType] != __null' failed. > Aborted > my mose.ini file : > ######################### > ### MOSES CONFIG FILE ### > ######################### > # input factors > [input-factors] > 0 > 1 > 2 > 3 > # mapping steps > [mapping] > 0 T 0 > 0 T 1 > 0 G 0 > 1 T 2 > # translation tables: source-factors, target-factors, number of scores, file > [ttable-file] > 0 1 5 /media/sdb3/working-dir9/model/phrase-table.0-1.gz > 3 2 5 /media/sdb3/working-dir9/model/phrase-table.3-2.gz > 0 0 5 /media/sdb3/working-dir9/model/phrase-table.0-0.gz > # generation models: source-factors, target-factors, number-of-weights, > filename > [generation-file] > 1,2 0 2 /media/sdb3/working-dir9/model/generation.1,2-0 > # language models: type(srilm/irstlm), factors, order, file > [lmodel-file] > 0 0 3 /media/sdb3/working-dir9/lm/surface.lm > 0 2 3 /media/sdb3/working-dir9/lm/pos.lm > # limit on how many phrase translations e for each phrase f are loaded > # 0 = all elements loaded > [ttable-limit] > 20 > 0 > 0 > # distortion (reordering) weight > [weight-d] > 0.6 > # language model weights > [weight-l] > 0.2500 > 0.2500 > # translation model weights > [weight-t] > 0.2 > 0.2 > 0.2 > 0.2 > 0.2 > 0.2 > 0.2 > 0.2 > 0.2 > 0.2 > 0.2 > 0.2 > 0.2 > 0.2 > 0.2 > # generation model weights > [weight-generation] > 0.3 > 0 > # word penalty > [weight-w] > -1 > [distortion-limit] > 6 > > when I delete d the lm file pos.lm and it weight ,the decoder worked, > how did the error occur and when could the pos.lm be used ? > > > > > ________________________________ > 体验网易邮箱2G超大附件,轻松发优质大电影、大照片,提速3倍!
_______________________________________________ Moses-support mailing list [email protected] http://mailman.mit.edu/mailman/listinfo/moses-support
