|
@@ -4,7 +4,7 @@ import (
|
|
|
"bufio"
|
|
|
|
|
|
"log"
|
|
|
- "math"
|
|
|
+
|
|
|
"os"
|
|
|
"strings"
|
|
|
"sync"
|
|
@@ -113,25 +113,22 @@ func (c *ByClassifier) Posterior(hdr string) map[string]float64 {
|
|
|
for _, tk := range tokens {
|
|
|
if val, ok := c.Matrix.bScores[tk]; ok {
|
|
|
if val.BadScore > 0 {
|
|
|
- hBadM += val.BadScore * math.Log2(val.BadScore)
|
|
|
+ hBadM += val.BadScore
|
|
|
}
|
|
|
if val.GoodScore > 0 {
|
|
|
- hGoodM += val.GoodScore * math.Log2(val.GoodScore)
|
|
|
+ hGoodM += val.GoodScore
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- hBadM = math.Log2(lenTokens) - (hBadM / lenTokens)
|
|
|
- hGoodM = math.Log2(lenTokens) - (hGoodM / lenTokens)
|
|
|
-
|
|
|
- maxScore := math.Abs(hBadM) + math.Abs(hGoodM)
|
|
|
+ maxScore := float64(ProxyFlow.seniority) * lenTokens
|
|
|
|
|
|
if maxScore == 0 {
|
|
|
maxScore = 1
|
|
|
}
|
|
|
|
|
|
- ff["BAD"] = math.Abs(hBadM) / maxScore
|
|
|
- ff["GOOD"] = math.Abs(hGoodM) / maxScore
|
|
|
+ ff["BAD"] = hBadM / maxScore
|
|
|
+ ff["GOOD"] = hGoodM / maxScore
|
|
|
|
|
|
log.Println("Entropies: ", ff)
|
|
|
|