回归评分随网格搜索而降低



我是scikit learn的新手,所以请原谅我的无知。使用GridsearchCV,我正在尝试优化DecisionTreeRegressor。我使参数空间越宽,评分就越差。

将min_samples_split设置为 range(2,10) 会给我一个 -0.04 的neg_mean_squared_error。当将其设置为范围(2,5)时,分数为-0.004。

simple_tree =GridSearchCV(tree.DecisionTreeRegressor(random_state=42), n_jobs=4, param_grid={'min_samples_split': range(2, 10)}, scoring='neg_mean_squared_error', cv=10, refit='neg_mean_squared_error')
simple_tree.fit(x_tr,y_tr).score(x_tr,y_tr)

与不太广泛的网格搜索相比,我希望更广泛的网格搜索获得相同或更积极的分数。

你是对的,当你有更多的参数时,你应该有一个接近0的指标......如果你真的每次都比较相同的模型。您提供的代码中不是这种情况,因为您尚未在决策树中设置random_state参数。

DecisionTreeRegressor(random_state = 42)(或任何整数),你应该有更明智的结果。

使用 simple_tree.best_score_ 给出所有 CV 折叠的平均最佳分数。

最新更新