对于如何最好地将数据划分为训练集和验证集,是否有经验法则?平均50/50的比例可取吗?或者,相对于验证数据,拥有更多的训练数据是否有明显的优势(反之亦然)?或者这种选择在很大程度上依赖于应用程序?
我主要分别使用80% / 20%的训练和验证数据,但我没有任何原则性的原因选择了这种划分。有没有在机器学习方面更有经验的人可以给我建议?
发布于 2017-09-06 07:31:26
好吧,你应该再考虑一件事。
如果你有一个非常大的数据集,比如1,000,000个例子,那么将80/10/10拆分可能是不必要的,因为10% = 100,000个例子可能太多了,仅仅说模型工作得很好。
也许99/0.5/0.5就足够了,因为5,000个示例可以表示数据中的大多数方差,并且您可以很容易地根据测试和开发中的这5,000个示例来判断模型工作良好。
不要因为你听说80/20是可以的就使用它。想一想测试集的目的。
发布于 2017-06-10 20:59:51
这完全取决于手头的数据。如果你有大量的数据,那么80/20是一个很好的选择,如上所述。但是,如果你不这样做,50/50的交叉验证可能会对你有更多的帮助,并防止你创建的模型过度拟合你的训练数据。
发布于 2018-11-12 08:53:29
假设你有较少的数据,我建议尝试70%,80%和90%,并测试哪个能提供更好的结果。在90%的情况下,对于10%的测试,您有可能获得较差的准确性。
https://stackoverflow.com/questions/13610074
复制相似问题