我在理解如何实现交叉验证方面遇到了一些麻烦。在我的情况下,我试图将其应用于LVQ系统。这是我到目前为止所理解的......
可以为LVQ调整的参数之一是为每个类建模的原型数。为了找到最佳数量的原型,必须在训练数据上训练模型,然后在看不见的数据上测试模型并计算其性能。但是,根据您用于培训和验证的数据点,性能结果会有所不同。因此,交叉验证可用于获得平均性能。
您对不同数量的原型重复此操作,并查看哪个数量获得最佳平均值。一旦完成,你接下来做什么?您是否在整个训练集上生成了与获得最佳结果的原型数量相对应的新模型,或者您是否使用了与交叉验证期间获得最高精度的折叠相对应的模型?
答案 0 :(得分:1)
您是否在整个训练集上生成了与获得最佳结果的原型数量相对应的新模型,或者您是否使用了与交叉验证期间获得最高精度的折叠相对应的模型?
完成简历后,您获得了最佳参数(在您的情况下,模型数量),您可以修复它们并在整个火车数据集上训练模型。
理由如下。假设您的火车数据集是 tr ,并且您正在尝试确定其在其他数据集上的性能 te (其中 te 是验证数据集,或“现实世界”)。由于您无法测试不同参数对 te 的影响(因为它会过度拟合,或者因为 te 是“真实世界”,并且不可用),您仿效它在 tr 上反复拆分为 tr_cv 和 te_cv 。但是,一旦获得了最佳参数,就没有理由不使用整个数据来构建模型。