关于分割数据集的随机问题

来源:13-3 Bagging 和 Pasting

何永灿

2018-08-16

老师,您好,训练子模型时,您又提到了随机取样时可能会出现“随机”的问题,我重新看了交叉验证,相对于“留一法”的分割方式,您是这样解释其它交叉验证中可能出现的“随机”问题:最佳的平均准确度对应的 k 个模型中,可能有部分模型刚好与其对应的验证数据集过拟合,导致准确度过高,进而使得此 k 个模型的平均准确度最高,如果验证数据集只是一个样本,不会出现过拟合现象。


一):对于最高平均准确率所对应的 k 个模型,在验证数据集上,其组合方式可能出现的情况,能这样理解吗?

  1. 部分模型不同程度过拟合  +  部分模型达到真正的最佳模型范围  +  部分模型不同程度欠拟合

  2. 部分模型不同程度过拟合  +   部分模型达到真正的最佳模型范围

  3. 所有模型都不同程度的过拟合


二)如果是第一种情况,k 个模型的准确率的平均值,是不是也比 k 个全部是真正的最佳模型的平均准确率高?

三)如果问题(二)成立,是不是可以说交叉验证的分割方式也不能完全避免“最佳模型”一定程度过拟合验证数据集?

写回答

1回答

liuyubobobo

2018-08-16

如果你的黑体字是我的原话的话。那我的表述是错误的。过拟合是属于模型的一种属性,而交叉验证只是一种验证衡量模型好坏的方法而已。交叉验证无法阻止过拟合。阻止过拟合只能通过修改模型(彻底改变模型,或者调整模型参数)来完成。


准确的说,交叉验证能够更加准确地衡量出模型的好坏(相比只是单纯的trian_test_split)。因为交叉验证均匀地使用了所有的数据信息,既做训练数据,又做测试数据,所以尽量低地不再依赖随机划分的结果。其中的留一法(LOOCV),则完全不依赖随机这个概念(k=m)。但是由于留一法过于耗时,通常,根据你的数据量,k取3至10,得到的结果都是够用的的:)

2
4
何永灿
回复
liuyubobobo
明白了,谢谢老师。 可能因为我刚转行自学理论的内容,没有实践的经验,不知道“后续的行动和探索”会有哪些内容,就单纯的以为得到的“最佳模型”会被直接应用于实践中去,但又觉得这个“最佳模型”可能一定程度的过拟合了验证数据集,即使其泛化能力满足实际的需要了,但它依然不是最好的、最能真实反应样本分布规律的、泛化能力最强的那一个模型。
2018-08-16
共4条回复

Python3入门机器学习 经典算法与应用  

Python3+sklearn,兼顾原理、算法底层实现和框架使用。

5893 学习 · 2454 问题

查看课程