d2_absolute_error_score#

sklearn.metrics.d2_absolute_error_score(y_true, y_pred, *, sample_weight=None, multioutput='uniform_average')[源代码]#

\(D^2\) 回归评分函数,绝对误差分数解释。

最好的可能分数是1.0,并且可以是负的(因为模型可以任意更差)。一个始终使用的经验中位数的模型 y_true 作为常数预测,忽略输入特征, \(D^2\) 评分0.0。

阅读更多的 User Guide .

Added in version 1.1.

参数:
y_true形状的类似阵列(n_samples,)或(n_samples,n_outputs)

地面真相(正确)目标值。

y_pred形状的类似阵列(n_samples,)或(n_samples,n_outputs)

估计目标值。

sample_weight形状类似数组(n_samples,),默认=无

样本重量。

multioutput' raw_values '、' unique_average '}或类似数组的形状 (n_outputs,),默认=' unique_average '

定义多个输出值的聚合。类似数组的值定义用于平均分数的权重。

“raw_values”:

如果是多输出输入,返回完整的错误集。

'uniform_average':

所有输出的分数以统一的权重进行平均。

返回:
score浮动或浮动数组

\(D^2\) 如果“多输出”为“raw_values”,则具有绝对误差偏差或nd分数数组。

注意到

\(R^2\) , \(D^2\) 分数可能是负的(它实际上不需要是量D的平方)。

此指标对于单个样本没有明确定义,如果n_samples小于2,则将返回NaN值。

引用

[1]

当量(3.11)的Hastie,特雷弗J,Robert Tibshirani和Martin J. Wainwright。Sparsity的统计学习:套索和泛化。“(2015年)。https://hastie.su.domains/StatLearnSparsity/

示例

>>> from sklearn.metrics import d2_absolute_error_score
>>> y_true = [3, -0.5, 2, 7]
>>> y_pred = [2.5, 0.0, 2, 8]
>>> d2_absolute_error_score(y_true, y_pred)
np.float64(0.764...)
>>> y_true = [[0.5, 1], [-1, 1], [7, -6]]
>>> y_pred = [[0, 2], [-1, 2], [8, -5]]
>>> d2_absolute_error_score(y_true, y_pred, multioutput='uniform_average')
np.float64(0.691...)
>>> d2_absolute_error_score(y_true, y_pred, multioutput='raw_values')
array([0.8125    , 0.57142857])
>>> y_true = [1, 2, 3]
>>> y_pred = [1, 2, 3]
>>> d2_absolute_error_score(y_true, y_pred)
np.float64(1.0)
>>> y_true = [1, 2, 3]
>>> y_pred = [2, 2, 2]
>>> d2_absolute_error_score(y_true, y_pred)
np.float64(0.0)
>>> y_true = [1, 2, 3]
>>> y_pred = [3, 2, 1]
>>> d2_absolute_error_score(y_true, y_pred)
np.float64(-1.0)