首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >sklearn.metrics.mean_squared_error越大越好(否定)吗?

sklearn.metrics.mean_squared_error越大越好(否定)吗?
EN

Stack Overflow用户
提问于 2018-01-13 20:55:13
回答 4查看 43.1K关注 0票数 30

一般来说,mean_squared_error越小越好。

当我使用sklearn度量包时,文档页面中写着:evaluation.html

所有scorer对象都遵循这样的惯例:返回值越高,返回值越低。因此,度量模型与数据之间的距离的度量(如metrics.mean_squared_error )作为neg_mean_squared_error可用,它返回度量的负值。

但是,如果我转到:错误

它说是Mean squared error regression loss,并没有说它是否定的。

如果我查看源代码并检查了那里的示例:https://github.com/scikit-learn/scikit-learn/blob/a24c8b46/sklearn/metrics/regression.py#L183,它正在执行正常的mean squared error,即越小越好。

因此,我想知道我是否遗漏了关于文件中否定部分的任何内容。谢谢!

EN

Stack Overflow用户

发布于 2020-09-04 11:36:56

这正是我在我的代码中所要寻找的,我试图破译和澄清rmse报告,以理解我的数据。

在我的例子中,我使用这种方法来计算rmse。我该怎么读这些报告?更高是更好还是相反?

代码语言:javascript
运行
复制
def rmsle_cv(model):
    kf = KFold(n_folds, random_state=42).get_n_splits(train)
    rmse= np.sqrt(-cross_val_score(model, train, y_train, scoring="neg_mean_squared_error", cv = kf))
    return(rmse)


def rmsle(y, y_pred):
    return np.sqrt(mean_squared_error(y, y_pred))

在我的例子中,我得到了这些结果

代码语言:javascript
运行
复制
Lasso score(cv): 0.1176 (0.0068)
ElasticNet score(cv): 0.1177 (0.0068)
Ridge(01): 0.1270 (0.0097)
Gradient Boosting score(cv): 0.1443 (0.0109)
BayRidge(01): 0.1239 (0.0079)
Kernel Ridge score(cv): 0.1210 (0.0068)
Xgboost score(cv): 0.1177 (0.0060)
LGBM score(cv): 0.1158 (0.0064)
票数 0
EN
查看全部 4 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48244219

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档