我怎样才能确保我的R ^ 2得分?

时间:2016-02-11 22:49:41

标签: machine-learning scikit-learn regression data-mining

我有一个包含10列和158行的数据集。我试着预测我的测试数据集,它是一列有158行。

我进行了交叉验证,网格搜索并使用ElasticNet算法。

在评估模型之前,我检查了10列之间的皮尔森相关性,我用它来训练我的模型和我试图预测的其他1列。相关性不好但是当我评估模型时,R ^ 2得分接近0.98。

如何确保此分数有信心?因为我没想到像这样的R ^ 2。这太高了,我没想到。

提前致谢。

1 个答案:

答案 0 :(得分:0)

一个好的模型可以使R ^ 2得分接近1.0。这意味着学习模型非常适合测试数据。如果要预测连续值,则可以绘制并检查实际值和预测值。它可以更好地描绘您的模型。

此外,您可以尝试使用不同的误差指标,例如均方根误差,均方误差或回归和准确度的绝对误差,ROC曲线或混淆矩阵分类,以确保您的模型非常好。

另一个重要的事情是,你不能真正比较皮尔逊系数和R ^ 2得分。具有低皮尔逊系数的特征可以导致具有良好R ^ 2得分的模型,反之亦然。

这是因为皮尔森相关性只能给出变量之间的线性相关性。在您的情况下,相关性较低意味着您的要素和目标不是线性相关的。这也可能意味着,这些特征非线性高度相关(这可能是获得良好R ^ 2分数模型的原因)。因此,皮尔逊系数值较低并不意味着您的特征不好。如果您真的想测试您的功能是否良好,请尝试不同的相关系数,如距离相关性或等级相关性。

功能评估或选择的其他替代方法是在scipy中使用Feature selection模块。

希望,这可以回答你的问题!