Sklearn.metrics下面的r2_score函数用于计算R²(确定系数:coefficient of determination)。它用来度量未来的样本是否可能通过模型被很好地预测。
分值为 1 表示最好,但我们在使用过程中,经常发现它变成了负数,多次手动调参只能改变负值的大小,却始终不能让该值变成正数。
R
2
R^2
R2 的定义如下图,从公式来看,即使我们不使用任何模型,仅仅用目标集标签的平均值,就能让 R2_score 为 0,如果值为负数,则表示我们预测的结果还不如测试集中的 y_label 的平均值准确。下面我们最简单的模型去测试一下 R2_score 到底跟什么有关系。
[1] Sklearn模型中预测值的R2_score为负数的问题探讨 2019.1;