K折交叉验证(K-fold cross-validation)
概念:
原始训练数据集分割成 k 个不重合的子数据集,然后我们做 k 次模型训练和验证。
每一次,我们使用一个子数据集验证模型,并使用其他 k−1 个子数据集来训练模型。在这 k 次训练和验证中,每次用来验证模型的子数据集都不同。最后,我们对这 k 次训练误差和验证误差分别求平均。
参考:https://d2l.ai/chapter_multilayer-perceptrons/kaggle-house-price.html
Q:为什么我们在深度学习中不常见到K折交叉验证?
A:
首先,把数据划分为训练集(训练)、验证集(调参)和测试集(测试)是我们最常用的思路。
数据规模较大,选取的数据都足以代表所有数据的分布
【备注:在西瓜书中看到的K折交叉,并没有分-训练-验证-测试,而在深度学习中这是常见的,需要区分】