Fix a bug where the bigram freq would be underevaluated

The difference in score is not large, but it's still a bug

Change-Id: Ie22c2b6e1206e829c1c8af096469df05af14d47b
main
Jean Chalard 2012-05-29 16:04:07 +09:00
parent 19ebd93646
commit cb99376307
1 changed files with 1 additions and 1 deletions

View File

@ -537,7 +537,7 @@ inline int BinaryFormat::computeFrequencyForBigram(const int unigramFreq, const
// while a value of 15 represents the middle of the top step. // while a value of 15 represents the middle of the top step.
// See makedict.BinaryDictInputOutput for details. // See makedict.BinaryDictInputOutput for details.
const float stepSize = ((float)MAX_FREQ - unigramFreq) / (1.5f + MAX_BIGRAM_FREQ); const float stepSize = ((float)MAX_FREQ - unigramFreq) / (1.5f + MAX_BIGRAM_FREQ);
return (int)(unigramFreq + bigramFreq * stepSize); return (int)(unigramFreq + (bigramFreq + 1) * stepSize);
} }
// This returns a probability in log space. // This returns a probability in log space.