更多内容请关注微信公众号:
常见框架有三种:
为什么集成学习会好于单个学习器呢?
二、从方差和偏差的角度理解集成学习
2.1 什么是方差与偏差
偏差:描述样本拟合出的模型的预测结果的期望与样本真实结果的差距,要想偏差表现的好,就需要复杂化模型,增加模型的参数,但这样容易过拟合。
方差:描述样本上训练出来的模型在测试集上的表现,要想方差表现的好,需要简化模型,减少模型的复杂度,但这样容易欠拟合。
在集成学习框架中,通过计算模型的期望和方差,我们可以得到模型整体的期望和方差。为了简化模型,我们假设基模型的期望为,方差为,模型的权重为,两两模型间的相关系数为。
因为集成学习是加法模型,那么有:
模型的总体期望:
模型总体方差(利用协方差的性质,协方差与方差的关系):
模型的准确度可由偏差和方差共同决定:
我们可以使用模型的偏差和方差来近似描述模型的准确度;
一句话总结:Bagging 和 Stacking 中的基模型为强模型(偏差低,方差高),而Boosting 中的基模型为弱模型(偏差高:在训练集上准确度低;方差高:防止过拟合能力强)。
2.2 Bagging的偏差与方差
对于Bagging来说,每个基模型的权重等于且期望近似相等,所以可以得到:
通过上式可以得到:
在此我们知道了为什么 Bagging 中的基模型一定要为强模型,如果 Bagging 使用弱模型则会导致整体模型的偏差变大,而准确度降低。
随机森林是经典的基于 Bagging 框架的模型,并在此基础上通过引入特征采样和样本采样来降低基模型间的相关性,在公式中显著降低方差公式中的第二项,略微升高第一项,从而使得整体降低模型整体方差。
2.3 Boosting 的偏差与方差
对于 Boosting 来说,由于基模型共用同一套训练集,所以基模型间具有强相关性,故模型间的相关系数近似等于 1,针对 Boosting 化简公式为:
通过上式可以得到:
基于 Boosting 框架的GBDT模型中基模型也为树模型,同随机森林一样,也可以对特征进行随机抽样来使基模型间的相关性降低,从而达到减少方差的效果。