am 448e7322: Follow up change for I5f166a738f6e84a1b807be
* commit '448e732272bb3e55d649d2d5dd6a0acb9efdaec3': Follow up change for I5f166a738f6e84a1b807bemain
commit
478605baa4
|
@ -799,9 +799,9 @@ int Correction::RankingAlgorithm::calculateFinalProbability(const int inputIndex
|
|||
const float x = static_cast<float>(squaredDistance)
|
||||
/ ProximityInfoState::NORMALIZED_SQUARED_DISTANCE_SCALING_FACTOR;
|
||||
const float factor = max((x < R1)
|
||||
? (A * (R1 - x) + B * x) / R1
|
||||
: (B * (R2 - x) + C * (x - R1)) / (R2 - R1), MIN);
|
||||
// factor is piecewise linear function like:
|
||||
? (A * (R1 - x) + B * x) / R1
|
||||
: (B * (R2 - x) + C * (x - R1)) / (R2 - R1), MIN);
|
||||
// factor is a piecewise linear function like:
|
||||
// A -_ .
|
||||
// ^-_ .
|
||||
// B \ .
|
||||
|
@ -809,7 +809,7 @@ int Correction::RankingAlgorithm::calculateFinalProbability(const int inputIndex
|
|||
// C ------------.
|
||||
// .
|
||||
// 0 R1 R2 .
|
||||
multiplyRate((int)(factor * 100), &finalFreq);
|
||||
multiplyRate((int)(factor * 100.0f), &finalFreq);
|
||||
} else if (squaredDistance == PROXIMITY_CHAR_WITHOUT_DISTANCE_INFO) {
|
||||
multiplyRate(WORDS_WITH_PROXIMITY_CHARACTER_DEMOTION_RATE, &finalFreq);
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue