我正在使用GridSearchCV选择回归器。拟合后,我将选择的回归变量与

predictor = GridSearchCV(Pipeline(...), params={...},
                         cv=10, scoring='r2')
predictor.fit(X, y)
estimator = predictor.get_params()['estimator']


然后我用cross_val_score

cross_val_score(estimator, X, y,
                cv=10, scoring='r2')


但是我得到的R ^ 2始终比predictor.best_score_低约5个百分点。为什么?

最佳答案

使用predictor.best_estimator_作为cross_val_score中的估计量。这是参数最好的那个。选择方式,您可能会获得带有默认参数的初始估计量。您也可以通过将后者放在cross_val_score中并比较结果来进行检查。

08-25 03:01