0

我想对回归(非分类)模型进行交叉验证,并最终获得大约 0.90 的平均准确度。但是,我不知道该方法中使用什么指标来确定准确性。我知道 k 折交叉验证中的拆分是如何工作的。我只是不知道 scikit learn 库用来计算预测准确性的公式。(我知道它是如何用于分类模型的)。有人可以给我 sklearn.model_selection.cross_val_score 使用的指标/公式吗?

提前致谢。

from sklearn.model_selection import cross_val_score
def metrics_of_accuracy(classifier , X_train , y_train) :
accuracies = cross_val_score(estimator = classifier, X = X_train, y = y_train, cv = 10)
accuracies.mean()
accuracies.std()
return accuracies
4

2 回答 2

0

是的,我也可以使用 sklearn.metrics-> r2_score 使用相同的指标。r2_score(y_true, y_pred)。该分数也称为确定系数或 R 平方。

相同的公式如下 - 找到下图的链接。 https://i.stack.imgur.com/USaWH.png

有关此的更多信息 - https://en.wikipedia.org/wiki/Coefficient_of_determination

于 2020-08-15T07:17:26.677 回答
0

默认情况下,sklearn 在分类的情况下使用准确度,在使用 model.score 方法时使用 r2_score 进行回归(cross_val_score 相同)。因此,在这种情况下,r2_score 的公式为 r2 = 1 - (SSE(y_hat)/SSE(y_mean)) 其中 SSE(y_hat) 是做出预测的平方误差 SSE(y_mean) 是当所有预测都是平均值时的平方误差实际的预测

于 2020-08-15T02:47:58.307 回答