4

好吧,我试图了解在算法中如何以及在哪个点应用 Kfold CV 和 GridSearchCV。此外,如果我理解正确 GridSearchCV 用于超参数调整,即参数的哪些值将给出最佳结果,并且 Kfold CV 用于更好地泛化,以便我们在不同的折叠上进行训练,因此如果数据是有序的,则减少偏差以某种特定的方式,因此增加了泛化性。现在的问题是,GridSearchCV 是否也使用 CV 参数进行交叉验证。那么为什么我们需要 Kfold CV,如果我们需要,是否在 GridSearchCV 之前进行呢?该过程的一点概述将非常有帮助。

4

2 回答 2

3

GridSearchCV是比 更高级别的构造KFold。前者使用后者(或其他类似的)。

KFold是一个相对较低级别的构造,它为您提供一系列训练/测试索引。您可以使用这些索引来做几件事,包括查找模型的 OOB 性能和/或调整超参数(基本上是根据 OOB 性能以某种方式搜索超参数)。

GridSearchCV是一个更高级别的构造,它采用类似KFold(在其cv参数中)的 CV 引擎。它使用 CV 引擎搜索超参数(在这种情况下,使用网格搜索参数)。

于 2018-03-19T07:13:34.800 回答
1

网格搜索用于选择预测算法的超参数的最佳组合(调整估计器的超参数),而 KFold 提供训练/测试索引以分割训练/测试集中的数据。它将数据集拆分为 k 个连续折叠(默认情况下不打乱)。

然后将每个折叠用作一次验证,而剩余的 k - 1 个折叠形成训练集。它用于更好地衡量预测准确性(我们可以将其用作模型拟合优度的代理)。

于 2018-03-19T07:29:42.703 回答