输入训练和验证集后如何使用交叉验证?

时间:2018-12-18 02:24:31

标签: python cross-validation imputation

所以我让自己有些困惑。

目前,我有大约800个实例的数据集。我将其分为训练和验证集,因为缺少值,因此我使用了sklearn的SimpleImputer并进行了fit_transform-ed训练集和转换测试集。我这样做是因为,如果我要预测新实例,如果缺少值,则需要以与估算测试集相同的方式估算。

现在,我想使用交叉验证对模型进行训练和评分,但这将涉及使用整个数据集并将其分成不同的训练和测试集,因此我担心训练集的泄漏,因为估算值是否适合?

1 个答案:

答案 0 :(得分:0)

通常,您需要将数据分为三组-训练集,测试集和验证集。测试集应该完全不参加训练(您的担心是正确的。)使用交叉验证时,您无需担心将训练和验证集分开的情况,这就是交叉验证为您服务的地方!只需将训练集传递给交叉验证器,让其在后台进行训练和验证即可,然后在测试集上测试最终模型(训练模型已完全排除了该模型)。