请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

为什么要用交叉验证?

老师在课上说减少随机的影响,请问这随机的影响到底是什么呢?

正在回答

1回答

liuyubobobo 2018-01-14 01:38:41

不同的随机划分得到不同的结果。


一组数据a,b,c,d,使用a,b,c做训练集,d做测试集;和使用b,c,d做训练集,a做测试集,通常结果是不同的,而且有可能非常不一样。交叉验证相当于使用多次划分数据集进行训练最终取平均的方式,一定程度消除了这种随机划分数据带来的测试结果不同的影响。LOOCV则完全消除了这种影响。

0 回复 有任何疑惑可以回复我~
  • 老师,为什么不同的训练集和测试集的组合,训练得到的结果可能非常不一样?
    是不是如果我的每种训练数据集都足够大,是不是得到的结果非常不一样的可能性就降低了?
    回复 有任何疑惑可以回复我~ 2018-03-06 16:43:33
  • 对!!
    回复 有任何疑惑可以回复我~ 2018-03-07 00:43:36
  • 拖延了一下午上网,晚上又想了一路,好像理清楚了一些。
    我的理解是,对于交叉验证,比如有噪音的斜线样本数据集,分为abcde部分,,其中e作为测试数据,可以理解为伪真实数据,感觉这样不容易理解混淆了,用这个伪真实数据测试代入模型一次的结果,就好比真实环境代入模型一次的结果。
    然后,abcd循环取其中一个作为验证数据集,其余作为训练数据集,对每组都做网格搜索,得到过拟合验证数据集的模型参数。
    每组模型参数得到的线性方程可能都偏离了真实斜线方程,所以我们要对所有组的参数做个平均消除可能错的斜线,我就是比较奇怪,对所有组参数做平均可以得到正确模型参数,为什么是平均会不会是其他运算?
    回复 有任何疑惑可以回复我~ 2018-03-07 19:17:57
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信