首页 > 解决方案 > 如果每次迭代都抛弃模型,交叉验证的目的是什么

问题描述

在交叉验证中,比方说 k 折,每次迭代我们基本上从头开始创建新模型——我们扔掉之前评分的模型并基于不同的训练集创建一个新模型。

众所周知,模型的优势在于它所训练的数据(当然还有它的超参数)。

所以我的问题是——如果模型一直在变化,那么评分的意义何在?

在交叉验证之后,我们不取模型值的平均值......只是计算不再存在的模型分数的平均值。我显然错过了一些东西,但除了选择超参数和 maby 来指示最适合的模型(从非常高的角度来看) - 我看不到交叉验证的好处。

标签: machine-learningartificial-intelligenceanalyticsdata-sciencecross-validation

解决方案


您进行交叉验证以估计您的模型在看不见的数据上的表现。关键是看它的概括性如何。

一旦你完成了交叉验证并对你的分数感到满意,你就可以在你的整个训练集上重新训练,然后看看它在你的测试集上的表现如何。如果您的测试集来自与您的训练集相似的分布,并且您正确地进行了交叉验证,您应该得到相似的分数。

你不能从一开始就使用测试集的原因是你应该只使用一次测试集 - 如果你对你的测试集分数不满意,你不能回去重新训练,否则你会冒险过拟合。


推荐阅读