blob: 9896c80b2b63010442fd56cc49901cb771cd6504 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
// Score conversion utilities.
//
// ScoreToScale: Maps probability (0-1) to user-friendly 1-10 scale.
// Why: Users understand "8/10" better than "0.82 probability".
package core
import "math"
// ScoreToScale turns probability into 1-10 display score
func ScoreToScale(rawScore, threshold float64) int {
k := 10.0
adjustedScore := 1.0 / (1.0 + math.Exp(-k*(rawScore-threshold)))
return int(math.Round(1.0 + (adjustedScore * 9.0)))
}
|