区間予測の評価指標#
D2 pinball score#
ここで
この
を代入したものが
(参考:3.3. Metrics and scoring: quantifying the quality of predictions — scikit-learn 1.4.1 documentation)
interval score#
interval scoreは真の値を
となる。(スコアが小さいほうが良いモデルを意味する)
import numpy as np
def interval_score(l, u, x, alpha):
return (u - l) + (2 / alpha) * (l - x) * (x < l) + (2 / alpha) * (x - u) * (x > u)
alpha = 0.05
true_values = 5
# 予測1
lower, upper = (1, 10)
s1 = interval_score(lower, upper, true_values, alpha)
# 予測2
lower, upper = (4, 6)
s2 = interval_score(lower, upper, true_values, alpha)
print(f"{s1=}, {s2=}")
s1=9.0, s2=2.0