8
如何帮助确保测试数据不会泄漏到训练数据中?
假设我们有一个人建立了预测模型,但是不一定有人对适当的统计或机器学习原理很精通。也许我们正在帮助那个人在学习中,或者那个人正在使用某种需要最少知识的软件包。 现在,这个人可能会很好地认识到真正的测试来自样本外数据的准确性(或其他任何度量标准)。但是,我担心的是,这里有很多微妙的问题要担心。在简单的情况下,他们建立模型并根据训练数据对其进行评估,并根据保留的测试数据对其进行评估。不幸的是,有时返回该位置并调整一些建模参数并检查相同“测试”数据的结果有时太容易了。此时,数据不再是真正的样本外数据,过拟合可能会成为问题。 解决此问题的一种可能方法是建议创建许多样本外数据集,以使每个测试数据集在使用后都可以丢弃,而根本无法再使用。但是,这需要大量的数据管理,尤其是必须在分析之前完成拆分(因此,您需要事先知道有多少拆分)。 也许更常规的方法是k倍交叉验证。但是,从某种意义上讲,我认为“训练”和“测试”数据集之间的区别会消失,特别是对于那些仍在学习的人。同样,我也不认为这对所有类型的预测模型都有意义。 有什么方法可以被我忽略,以帮助克服过度安装和测试泄漏的问题,同时仍然对没有经验的用户保持一定的了解?