underdog-lab / tests /unit /test_scoring.py
Moftah
Build Underdog Lab forecasting hackathon app
18d5764
Raw
History Blame Contribute Delete
488 Bytes
from underdog_lab.domain import UserForecast
from underdog_lab.forecasting.scoring import brier_score, log_loss
def test_better_probability_gets_lower_log_loss():
good = UserForecast(p_home=0.8, p_draw=0.1, p_away=0.1)
bad = UserForecast(p_home=0.2, p_draw=0.4, p_away=0.4)
assert log_loss(good, "home") < log_loss(bad, "home")
def test_perfect_brier_is_zero():
perfect = UserForecast(p_home=1.0, p_draw=0.0, p_away=0.0)
assert brier_score(perfect, "home") == 0.0