diff options
author | Chris Dyer <cdyer@cs.cmu.edu> | 2011-05-03 17:30:30 -0400 |
---|---|---|
committer | Chris Dyer <cdyer@cs.cmu.edu> | 2011-05-03 17:30:30 -0400 |
commit | 01e219ec7d0bbd81471d7e6978397a2d53a71246 (patch) | |
tree | 22bdc2603e1a6b087bd71520b78cc6ac9a8c51d9 /mteval | |
parent | 6d020e932fdd6ddc6cf5adbbfb8baa2f9a2a4615 (diff) |
mira finished, clean up
Diffstat (limited to 'mteval')
-rw-r--r-- | mteval/scorer.cc | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/mteval/scorer.cc b/mteval/scorer.cc index 04eeaa93..64ce63af 100644 --- a/mteval/scorer.cc +++ b/mteval/scorer.cc @@ -410,8 +410,7 @@ void BLEUScore::ScoreDetails(string* details) const { float bleu = ComputeScore(&precs, &bp); for (int i=N();i<4;++i) precs[i]=0.; - char *bufn; - bufn=buf+sprintf(buf, "BLEU = %.2f, %.1f|%.1f|%.1f|%.1f (brev=%.3f)", + sprintf(buf, "BLEU = %.2f, %.1f|%.1f|%.1f|%.1f (brev=%.3f)", bleu*100.0, precs[0]*100.0, precs[1]*100.0, @@ -427,7 +426,10 @@ float BLEUScore::ComputeScore(vector<float>* precs, float* bp) const { int count = 0; for (int i = 0; i < N(); ++i) { if (hyp_ngram_counts[i] > 0) { - float lprec = log(correct_ngram_hit_counts[i]) - log(hyp_ngram_counts[i]); + float cor_count = correct_ngram_hit_counts[i]; + // smooth bleu + if (!cor_count) { cor_count = 0.01; } + float lprec = log(cor_count) - log(hyp_ngram_counts[i]); if (precs) precs->push_back(exp(lprec)); log_bleu += lprec; ++count; |