d2_tweedie_score#

sklearn.metrics.d2_tweedie_score(y_true, y_pred, *, sample_weight=None, power=0)#

\(D^2\) 回归评分函数,解释的 Tweedie 偏差的比例。

最佳得分是 1.0,并且它可以是负的(因为模型可能任意地差)。一个总是使用 y_true 的经验均值作为常数预测的模型,忽略输入特征,得到的 D^2 分数为 0.0。

更多信息请参阅 用户指南

Added in version 1.0.

Parameters:
y_truearray-like of shape (n_samples,)

真实目标值(正确的)。

y_predarray-like of shape (n_samples,)

估计的目标值。

sample_weightarray-like of shape (n_samples,), default=None

样本权重。

powerfloat, default=0

Tweedie 幂参数。可以是 power <= 0 或 power >= 1。

较高的 p 值会减少对真实值和预测值之间极端偏差的权重。

  • power < 0: 极端稳定分布。要求:y_pred > 0。

  • power = 0 : 正态分布,输出对应于 r2_score。 y_true 和 y_pred 可以是任何实数。

  • power = 1 : 泊松分布。要求:y_true >= 0 且 y_pred > 0。

  • 1 < p < 2 : 复合泊松分布。要求:y_true >= 0 且 y_pred > 0。

  • power = 2 : 伽马分布。要求:y_true > 0 且 y_pred > 0。

  • power = 3 : 逆高斯分布。要求:y_true > 0 且 y_pred > 0。

  • 否则 : 正稳定分布。要求:y_true > 0 且 y_pred > 0。

Returns:
zfloat or ndarray of floats

D^2 分数。

Notes

这不是一个对称函数。

像 R^2 一样,D^2 分数可能是负的(它不一定是一个量 D 的平方)。

对于单个样本,此度量没有很好的定义,如果 n_samples 小于两个,将返回 NaN 值。

References

[1]

Hastie, Trevor J., Robert Tibshirani 和 Martin J. Wainwright。”Statistical Learning with Sparsity: The Lasso and Generalizations.” (2015)。https://hastie.su.domains/StatLearnSparsity/

Examples

>>> from sklearn.metrics import d2_tweedie_score
>>> y_true = [0.5, 1, 2.5, 7]
>>> y_pred = [1, 1, 5, 3.5]
>>> d2_tweedie_score(y_true, y_pred)
0.285...
>>> d2_tweedie_score(y_true, y_pred, power=1)
0.487...
>>> d2_tweedie_score(y_true, y_pred, power=2)
0.630...
>>> d2_tweedie_score(y_true, y_true, power=2)
1.0