我将我的数据集拆分为训练、验证和测试数据,然后对训练数据执行网格搜索交叉验证。这足以作为交叉验证方法,还是我需要在我的 GridSearchCV 之后实现 k 折交叉验证?我有点困惑,因为我认为 gridsearch 只能帮助我找到最佳的超参数。
1 回答
0
网格搜索是对模型超参数的详尽搜索,但如果您想使用它,还包括交叉验证。使用 CV 运行网格搜索需要更多时间,因为它是一种详尽的方法。sklearn 中的网格搜索有一个交叉验证选项cv。有关此https://scikit-learn.org/stable/modules/generated/sklearn.model_selection.GridSearchCV.html的更多信息,请参阅官方文档
您还可以像这样为您的网格搜索提供 KFold 类
validation = KFold(n_splits=10, shuffle=True)
clf = GridSearchCV(..., cv=validation)
clf.fit(X,y)
您还可以在每次交叉验证迭代中运行 CV 和 gridsearch 的组合,即 gridsearch,尽管这将是非常计算密集的。
于 2019-05-11T17:54:17.143 回答