Hi,
I have been playing with factored translation.
Now I would like to use moses with multiple decoding paths.
I use 3 factors: surface word (0), lemma (1) and tag (2).
The 2 paths are :
- translate lemma then translate tag then generate word from lemma and tag
or
- translate word directly
I have encountered a problem when running moses:
Defined parameters (per moses.ini or switch):
config: ./vf3_d_20071203.trame.dev_filtered/moses.ini
distortion-limit: 6
generation-file: 1,2 0 1 ./giza/vf3_d_20071203/model/generation.1,2-0
input-factors: 0 1 2
input-file: ./dev/trame.dev_lc.3f.en-fr.en
lmodel-file: 0 1 4 ./lm/vf3_d_20071203.trame.train.lemme.en-
fr.fr.4g.lm.gz
0 2 7 ./lm/vf3_d_20071203.trame.train.tag.en-
fr.fr.7g.lm.gz
0 0 4 ./lm/vf3_d_20071203.trame.train_lc.en-
fr.fr.4g.lm.gz
mapping: 0 T 0 0 T 1 0 G 0 1 T 2
ttable-file: 1 1 5 ./vf3_d_20071203.trame.dev_filtered/phrase-table.1-1
2 2 5 ./vf3_d_20071203.trame.dev_filtered/phrase-
table.2-2
0 0 5 ./vf3_d_20071203.trame.dev_filtered/phrase-
table.0-0
ttable-limit: 20 0 0 0
weight-d: 0.6
weight-generation: 0.3
weight-l: 0.1667 0.1667 0.1667
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 ./lm/vf3_d_20071203.trame.train.lemme.en-
fr.fr.4g.lm.gz : [0.000] seconds
Start loading LanguageModel ./lm/vf3_d_20071203.trame.train.tag.en-
fr.fr.7g.lm.gz : [0.000] seconds
Start loading LanguageModel ./lm/vf3_d_20071203.trame.train_lc.en-
fr.fr.4g.lm.gz : [0.000] seconds
Finished loading LanguageModels : [0.000] seconds
weight-generation: 0.300 ./giza/vf3_d_20071203/model/generation.1,2-0.gz
Start loading PhraseTable ./vf3_d_20071203.trame.dev_filtered/phrase-
table.1-1 : [0.000] seconds
Start loading PhraseTable ./vf3_d_20071203.trame.dev_filtered/phrase-
table.2-2 : [1.000] seconds
Start loading PhraseTable ./vf3_d_20071203.trame.dev_filtered/phrase-
table.0-0 : [5.000] seconds
Finished loading phrase tables : [7.000] seconds
Created input-output object : [7.000] seconds
Translating: using|use|VVG a|a|DT trailer|trailer|NN
moses: LanguageModelSRI.cpp:154: virtual float
LanguageModelSRI::GetValue(const std::vector<const Word*,
std::allocator<const Word*> >&, const void**, unsigned int*) const:
Assertion `(*contextFactor[count-1])[factorType] != __null' failed.
I don't know what to look for to fix it
Note: if I only specify one path (mapping: 0 T 0 0 T 1 0 G 0 0 T 2), the
execution doesn't crash.
Here is my moses.ini file:
# input factors
[input-factors]
0
1
2
# 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]
1 1 5 ./vf3_d_20071203.trame.dev_filtered/phrase-table.1-1
2 2 5 ./vf3_d_20071203.trame.dev_filtered/phrase-table.2-2
0 0 5 ./vf3_d_20071203.trame.dev_filtered/phrase-table.0-0
# generation models: source-factors, target-factors, number-of-weights,
filename
[generation-file]
1,2 0 1 ./giza/vf3_d_20071203/model/generation.1,2-0
# language models: type(srilm/irstlm), factors, order, file
[lmodel-file]
0 1 4 ./lm/vf3_d_20071203.trame.train.lemme.en-fr.fr.4g.lm.gz
0 2 7 ./lm/vf3_d_20071203.trame.train.tag.en-fr.fr.7g.lm.gz
0 0 4 ./lm/vf3_d_20071203.trame.train_lc.en-fr.fr.4g.lm.gz
Thank you very much,
best regards,
Sandrine Gay
_______________________________________________
Moses-support mailing list
[email protected]
http://mailman.mit.edu/mailman/listinfo/moses-support