我需要同时执行gridsearch(使用交叉验证),然后执行交叉验证方法吗?

时间:2019-05-11 13:30:18

标签: machine-learning cross-validation grid-search

我将数据集分为训练,验证和测试数据,然后对训练数据执行gridsearch-crossvalidation。作为交叉验证方法就足够了吗,还是在GridSearchCV之后需要实现k倍交叉验证?我有点困惑,因为我认为gridsearch只能帮助我找到最佳的超参数。

1 个答案:

答案 0 :(得分:0)

网格搜索是对模型的超参数的详尽搜索,但如果要使用它,还包括交叉验证。使用CV进行网格搜索需要花费更多时间,因为这是一种详尽的方法。 sklearn中的网格搜索具有交叉验证validation = KFold(n_splits=10, shuffle=True) clf = GridSearchCV(..., cv=validation) clf.fit(X,y) 的选项。有关此https://scikit-learn.org/stable/modules/generated/sklearn.model_selection.GridSearchCV.html

的更多信息,请参考正式文档

您还可以像这样向您的网格搜索提供KFold类

{{1}}

您还可以将CV和gridsearch结合使用,即在每次交叉验证迭代中都运行gridsearch,尽管这会占用大量计算资源。