INNER CODE UNIT · Go

averagePrecision

orneryd/NornicDB · cmd/eval/main.go:388

func averagePrecision(returned []string, expected map[string]bool) float64 {
	if len(expected) == 0 {
		return 0.0
	}
	sum := 0.0
	relevant := 0
	for i, id := range returned {
		if expected[id] {
			relevant++
			sum += float64(relevant) / float64(i+1)
		}
	}
	return sum / float64(len(expected))
}

func hitRate(returned []string, expected map[string]bool) float64 {
	for _, id := range returned {
		if expected[id] {

View source record →

📰 Research Paper
Loading…
⏳ Fetching content…