关于训练数据为什么这么划分?
来源:13-7 Stacking

慕函数4135502
2019-02-27
老师您好,您也提到了,Stacking这种方法非常像神经网络,那么它的训练为什么不像神经网络一样,直接将所有的训练数据直接用于第一层的输入,在最后一层拟合所有样本的输出?将样本数据集这么划分的道理是什么呢?
写回答
1回答
-
liuyubobobo
2019-02-28
Stacking的每一层训练的模型,需要新的数据集进行预测,通过预测的结果和新的数据集的真值,才能得到下一层模型。如果没有数据集,无法训练下一层模型:)
也可以参考这里,仔细理解我们分出来的数据到底有什么用。如果没有这个数据会怎样?https://coding.imooc.com/learn/questiondetail/47635.html
或者,具体按照你的思路,尝试一下不区分数据集,实现一下Stacking的思想,看看有什么问题:)
P.S. 神经网络解决这个问题的方式是大名鼎鼎的反向传播算法,而这个算法在神经网络的思想踢出来以后,又经过了十几年才被发明出来。如果有兴趣,自学一下神经网络,仔细体会一下这两种算法的区别是什么。(虽然都是多层网状结构)。仔细理解一下,神经网络为了在每一层不使用新的数据,新添加了什么机制(或者什么假设)。这些新的机制和假设,就是我们真正要实现神经网络要着重学习的,可能要讲两三章的内容才能讲清楚。而对于Stacking,如果你真正理解了的话,不需要引入任何新的内容,已经能实现出来了:)
加油!:)
022019-02-28
相似问题
交叉验证的疑惑
回答 1
为什么要用交叉验证?
回答 1