INNER CODE UNIT · Go
computeMetrics
orneryd/NornicDB · cmd/eval/main.go:300
func computeMetrics(tc eval.TestCase, returned []string) eval.Metrics {
expected := make(map[string]bool)
for _, id := range tc.Expected {
expected[id] = true
}
grades := tc.RelevanceGrades
if grades == nil {
grades = make(map[string]int)
for _, id := range tc.Expected {
grades[id] = 1
}
}
return eval.Metrics{
Precision1: precision(returned, expected, 1),
Precision5: precision(returned, expected, 5),
Precision10: precision(returned, expected, 10),