采纳答案成功!
向帮助你的同学说点啥吧!感谢那些助人为乐的人
老师在课上说减少随机的影响,请问这随机的影响到底是什么呢?
不同的随机划分得到不同的结果。
一组数据a,b,c,d,使用a,b,c做训练集,d做测试集;和使用b,c,d做训练集,a做测试集,通常结果是不同的,而且有可能非常不一样。交叉验证相当于使用多次划分数据集进行训练最终取平均的方式,一定程度消除了这种随机划分数据带来的测试结果不同的影响。LOOCV则完全消除了这种影响。
老师,为什么不同的训练集和测试集的组合,训练得到的结果可能非常不一样? 是不是如果我的每种训练数据集都足够大,是不是得到的结果非常不一样的可能性就降低了?
对!!
拖延了一下午上网,晚上又想了一路,好像理清楚了一些。 我的理解是,对于交叉验证,比如有噪音的斜线样本数据集,分为abcde部分,,其中e作为测试数据,可以理解为伪真实数据,感觉这样不容易理解混淆了,用这个伪真实数据测试代入模型一次的结果,就好比真实环境代入模型一次的结果。 然后,abcd循环取其中一个作为验证数据集,其余作为训练数据集,对每组都做网格搜索,得到过拟合验证数据集的模型参数。 每组模型参数得到的线性方程可能都偏离了真实斜线方程,所以我们要对所有组的参数做个平均消除可能错的斜线,我就是比较奇怪,对所有组参数做平均可以得到正确模型参数,为什么是平均会不会是其他运算?
登录后可查看更多问答,登录/注册
Python3+sklearn,兼顾原理、算法底层实现和框架使用。
2.5k 19
3.5k 17
2.9k 15
1.6k 15
1.4k 14