GridSearchCV实现了一个fit方法,在该方法中,它执行n折交叉验证以确定最佳参数。完成后,我们可以直接使用predict()将最佳估计器应用于测试数据 – 请参考以下链接: – http://scikit-learn.org/stable/auto_examples/grid_search_digits.html
这里提到“模型在完整的开发集上进行训练”。
然而,我们在这里只应用了n折交叉验证。分类器是否也在整个数据集上进行训练?还是说它只是在应用predict时,从n折中选择了具有最佳参数的最佳训练估计器?
回答:
如果你想使用predict
,你需要将'refit'
设置为True
。根据文档说明:
refit : boolean 使用整个数据集重新拟合最佳估计器。 如果设置为“False”,在拟合后将无法使用 此GridSearchCV实例进行预测。
看起来默认情况下它是true,所以在示例中,predict
是基于整个训练集的。