为了账号安全,请及时绑定邮箱和手机立即绑定

GridsearchCV 负分

GridsearchCV 负分

饮歌长啸 2021-10-26 10:20:06
我正在使用 sklearn 的GridSearchCV来为我的随机森林模型获取最佳参数。下面是我的代码model = RandomForestRegressor(random_state = 1, n_jobs = -1) param_grid = {"n_estimators": [5, 10]}for parameter, param_range in dict.items(param_grid):       #get_optimum_range(parameter, param_range, RFReg, index)    grid_search = GridSearchCV(estimator=model, param_grid = {parameter: param_range})    grid_search.fit(X_train, y_train)    results = pd.DataFrame(grid_search.cv_results_)我的结果数据框如下如果你观察到 mymean_test_score是阴性但mean_train_score阳性。什么可能是相同的原因?我的数据帧大小print(X_train.shape)print(y_train.shape)print(X_test.shape)print(y_test.shape)(538, 3)(538,)(112, 3)(112,)
查看完整描述

2 回答

?
陪伴而非守候

TA贡献1757条经验 获得超8个赞

在 gridsearch CV 中,如果您没有指定任何评分器,则使用估计器的默认评分器(此处为 RandomForestRegressor):对于随机森林回归器,默认评分是 R 平方评分:它也可以称为决定系数。

返回预测的决定系数 R^2。

系数 R^2 定义为 (1 - u/v),其中 u 是残差平方和 > ((y_true - y_pred) ** 2).sum() 并且 v 是总平方和 ((y_true - y_true.mean()) ** 2).sum()。最好的可能分数是 1.0,它可以是负数(因为模型可以任意糟糕)。一个始终预测 y 预期值的常数模型,忽略输入特征,将获得 0.0 的 R^2 分数。

R 平方基本上是您的模型解释的方差百分比。
您还可以将其视为与预测始终相同值(均值)(因此是 2D 中的一条线)的简单模型相比,您的回归要好多少。

如果您的 R 平方为负,则意味着您的模型比简单的水平线差,这意味着您的模型不适合您的数据。
在您的情况下,您的火车 R^2 非常好,因此要么意味着您设法过度拟合您的数据(但不太可能),要么只是测试数据与火车数据不相似。


查看完整回答
反对 回复 2021-10-26
  • 2 回答
  • 0 关注
  • 220 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号