Bagging和Boosting是两类最常用的模型融合解决方案。

Bagging方法是通过对训练样本和特征做有放回的抽样,并拟合若干个基础模型,进而通过投票方式做最终分类决策的框架。每个基础分类器(可以是树形结构、神经网络等任何分类模型)的特点是低偏差、高方差,框架通过加权投票方式降低方差,使得整体趋于低偏差、低方差。 其示意图如下所示:

Bagging.png

Boosting方法通过迭代方式训练若干基础分类器,每个分类器依据上一轮分类器产生的残差做权重调整,每轮的分类器需要够“简单”,具有高偏差、低方差的特点,框架再辅以加权投票方式降低偏差,使得整体趋于低偏差、低方差。 其示意图如下所示:

Boosting.png

Boosting,即通过迭代多分类器来共同决策。举例来说,一个人A,第一个分类器认为是30岁,第二个分类器认为是20岁,第三棵树认为是40岁,我们就取平均值30岁做最终结论?不是的!比如A的真实年龄是18岁,但第一个分类器预测年龄是12岁,差了6岁,即残差为6岁。那么在第二个分类器里我们把A的年龄设为6岁去学习,如果第二个分类器真的能把A分到6岁的叶子节点,那累加两个分类器的结论就是A的真实年龄。如果第二个分类器的结论是5岁,则A仍然存在1岁的残差,第三个分类器里A的年龄就变成1岁,继续学。