我有两个文件,一个是train.csv,另一个是test.csv。 test.csv 将是看不见的数据,我们不会在训练中使用它。因此,我使用 train.csv,使用 train split 将其进一步拆分为 train_1 和验证集。我想应用交叉验证(K-Fold)。我应该对 train_1 或整个训练数据 train.csv 应用交叉验证吗?我只是很困惑。关于超参数调整的另一件事。我正在使用 RandomizedSerachCV,如果我想给出 cv=None 那么就可以了,因为我不想再次应用交叉验证。
我正在尝试检查模型的稳健性并进行一些超参数调整。
使用
RandomizedSearchCV
应用整个训练数据来调整模型的超参数,因为 RandomizedSearchCV
在内部管理交叉验证过程,而交叉验证会自动将训练数据拆分为训练集和验证集
您可以在
RandomizedSearchCV
内指定CV策略和折叠数量。 确定最佳超参数后,您可以在单独的 test.csv 文件上评估其性能。
如果未见过的数据的性能很差,您可以重新访问超参数调整、更改模型或查看您的数据。
我相信这是构建和验证模型的稳健过程。