diff options
author | graehl <graehl@ec762483-ff6d-05da-a07a-a48fb63a330f> | 2010-07-23 22:44:20 +0000 |
---|---|---|
committer | graehl <graehl@ec762483-ff6d-05da-a07a-a48fb63a330f> | 2010-07-23 22:44:20 +0000 |
commit | 2cb75daa1e294bcffa49b9e82359bcae61938ded (patch) | |
tree | 71c910669e74bf123da6afbc46c9298852630c8a /decoder | |
parent | 7f1b2af5c02594c5ddce1e1ad2f5f58d9100702f (diff) |
comment about unary (1 var) goal rule having no target terminals - seems to be assumed
git-svn-id: https://ws10smt.googlecode.com/svn/trunk@392 ec762483-ff6d-05da-a07a-a48fb63a330f
Diffstat (limited to 'decoder')
-rw-r--r-- | decoder/ff.h | 1 | ||||
-rw-r--r-- | decoder/ff_lm.cc | 1 |
2 files changed, 2 insertions, 0 deletions
diff --git a/decoder/ff.h b/decoder/ff.h index a0b39c26..9ff67dd8 100644 --- a/decoder/ff.h +++ b/decoder/ff.h @@ -184,6 +184,7 @@ class ModelSet { std::string* residual_context, prob_t* combination_cost_estimate = NULL) const; + //this is called INSTEAD of above when result of edge is goal (must be a unary rule - i.e. one variable, but typically it's assumed that there are no target terminals either (e.g. for LM)) void AddFinalFeatures(const std::string& residual_context, Hypergraph::Edge* edge, SentenceMetadata const& smeta) const; diff --git a/decoder/ff_lm.cc b/decoder/ff_lm.cc index 28312b4f..6579fbee 100644 --- a/decoder/ff_lm.cc +++ b/decoder/ff_lm.cc @@ -303,6 +303,7 @@ class LanguageModelImpl { return ProbNoRemnant(len - 1, len); } + //FIXME: this assumes no target words on final unary -> goal rule. is that ok? // for <s> (n-1 left words) and (n-1 right words) </s> double FinalTraversalCost(const void* state) { if (unigram) return 0.; |