从cross_val_score获得的分数是RMSE还是MSE?

5
我正在使用以下代码:-
from sklearn.model_selection import cross_val_score
accuracies = cross_val_score(estimator = regressor, X=X,y=y, cv =10)
accuracies.mean()

这个均值是RMSE还是MSE?编辑:我正在使用随机森林回归。在Scikit learn文档中,他们将其描述为准确性。我该如何将其与RMSE或MSE相关联?

什么模型?您已经包含了“随机森林”标签,请在问题本身中澄清。 - desertnaut
你好,请查看文档 - https://scikit-learn.org/stable/modules/generated/sklearn.model_selection.cross_val_score.html。提供评分器,或阅读您的回归器类的文档。 - 404pio
3个回答

10
实际上不是RMSE或MSE。如果您查看cross_val_score的文档,您会发现它有一个名为scoring的参数,其中写道:
如果为None,则使用估计器的默认评分器(如果可用)。
在您的情况下,这意味着它将使用RandomForestRegressor的默认评分器。当您查找其.score()方法的文档时,它告诉您:
返回预测的确定系数R^2。
这意味着您计算了平均R^2。如果您想更改此行为,您需要指定cross_val_scorescoring参数。选项可以在这里找到。

1
cross_val_score回归器获得的分数默认为'R2'(R平方),如果您想获得RMSE,则可以使用'neg_root_mean_squared_error',然后更改符号。Sklearn设置负分数是因为优化过程通常旨在最大化分数。但在这种情况下,通过最大化它,我们将寻求增加误差。我认为,通过改变得分的符号来解决了这个问题。如果您想使用其他指标,可以在scikit-learn页面找到它们。

以下是如何获得RMSE分数的方法:

from sklearn.model_selection import cross_val_score
accuracies = cross_val_score(estimator = regressor, X=X,y=y,scoring='neg_mean_squared_error', cv =10)
accuracies.mean()

0
如果你想获得RMSE或MSE的交叉验证分数,请尝试这个。
from sklearn.model_selection import cross_val_score
nrmse = cross_val_score(estimator = regressor, X=X,y=y,scoring='neg_root_mean_squared_error', cv =10)
print(nrmse.mean()*-1)

nmse = cross_val_score(estimator = regressor, X=X,y=y,scoring='neg_mean_squared_error', cv =10)
print(nmse.mean()*-1)

以下代码提供了所有得分选项:
sorted(sklearn.metrics.SCORERS.keys())

这将给你:

['准确性', '调整互信息分数', '调整兰德指数', '平均精确度', '平衡准确性', '完整性分数', '解释方差', 'F1分数', 'F1宏平均', 'F1微平均', 'F1样本平均', 'F1加权平均', '福尔克斯-马洛斯分数', '同质性分数', '杰卡德系数', '杰卡德宏平均', '杰卡德微平均', '杰卡德样本平均', '杰卡德加权平均', '最大误差', '互信息分数', '负Brier分数', '负对数损失', '负平均绝对误差', '负平均绝对百分比误差', '负平均伽玛偏差', '负平均泊松偏差', '负均方误差', '负均方对数误差', '负中位数绝对误差', '负均方根误差', '归一化互信息分数', '准确率', '准确率宏平均', '准确率微平均', '准确率样本平均', '准确率加权平均', 'R2分数', '兰德指数', '召回率', '召回率宏平均', '召回率微平均', '召回率样本平均', '召回率加权平均', 'ROC曲线下面积', '多类别ROC曲线下面积', '多类别带权重ROC曲线下面积', '多分类ROC曲线下面积', '多分类带权重ROC曲线下面积', '前k个准确率', 'V度量分数']

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接