我正在使用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始终比CCD_ 2低约5个百分点。为什么?
使用predictor.best_estimator_
作为cross_val_score
中的估计器。这是参数最好的一个。按照您的选择方式,您可能会获得具有默认参数的初始估计器。您也可以通过将后者放在cross_val_score
中并比较结果来进行检查。