mars.learn.metrics.r2_score#
- mars.learn.metrics.r2_score(y_true, y_pred, *, sample_weight=None, multioutput='uniform_average', session=None, run_kwargs=None)[来源]#
\(R^2\) (决定系数)回归得分函数。
最佳可能得分为1.0,并且可以是负数(因为模型可能会非常糟糕)。一个始终预测y的期望值、忽略输入特征的恒定模型将获得\(R^2\)得分为0.0。
在用户指南中阅读更多内容。
- Parameters
y_true (类数组,形状 (样本数,) 或 (样本数, 输出数)) – 真实值(正确的)目标值。
y_pred (数组类型,形状为 (n_samples,) 或 (n_samples, n_outputs)) – 估计的目标值。
sample_weight (类数组,形状 (n_samples,), 默认值=None) – 样本权重。
multioutput ({'raw_values', 'uniform_average', 'variance_weighted'}, array-like of shape (n_outputs,) or None, default='uniform_average') –
定义多个输出分数的聚合。 类数组值定义用于平均分数的权重。 默认值为“uniform_average”。
- ’raw_values’ :
在多输出输入的情况下返回完整的分数集。
- ’uniform_average’ :
所有输出的分数都用统一权重进行平均。
- ’variance_weighted’ :
所有输出的分数被平均,按每个单独输出的方差加权。
- Returns
z – \(R^2\) 分数或如果‘multioutput’为‘raw_values’时的分数ndarray。
- Return type
float 或浮点数的张量
备注
这不是一个对称函数。
与大多数其他评分不同,\(R^2\) 评分可能是负数(它不一定是某个量 R 的平方)。
该指标对于单个样本定义不明确,如果n_samples小于二,则将返回NaN值。
参考文献
示例
>>> from mars.learn.metrics import r2_score >>> y_true = [3, -0.5, 2, 7] >>> y_pred = [2.5, 0.0, 2, 8] >>> r2_score(y_true, y_pred) 0.948... >>> y_true = [[0.5, 1], [-1, 1], [7, -6]] >>> y_pred = [[0, 2], [-1, 2], [8, -5]] >>> r2_score(y_true, y_pred, ... multioutput='variance_weighted') 0.938... >>> y_true = [1, 2, 3] >>> y_pred = [1, 2, 3] >>> r2_score(y_true, y_pred) 1.0 >>> y_true = [1, 2, 3] >>> y_pred = [2, 2, 2] >>> r2_score(y_true, y_pred) 0.0 >>> y_true = [1, 2, 3] >>> y_pred = [3, 2, 1] >>> r2_score(y_true, y_pred) -3.0