【发布时间】:2019-09-05 14:52:08
【问题描述】:
我正在使用GridsearchCV 调整超参数,现在我想在训练和验证步骤中做一个最小值-最大值Normalization(StandardScaler())。但我认为我不能这样做。
问题是:
- 如果我对整个训练集应用预处理步骤并将其发送到 GridsearchCV 进行 10 foldCV。这会导致我数据泄露,对吧?因为训练集将运行 10 折,这意味着训练 9 折和测试折 1 折。标准化应该只适用于训练集而不是验证集,对吗?
- 如果我使用 sklearn 的 Pipeline 不会解决这个问题吧?因为它只运行一次并导致我再次泄露数据。
- 还有其他方法可以做到这一点,并且仍然使用
GridsearchCV来调整参数
【问题讨论】:
标签: python scikit-learn cross-validation grid-search gridsearchcv