机器学习--Ensemble

Ensemble(集成学习)

Ensemble:好几个模型一起做的情况

1.Ensemble Bagging


将不同输出的模型做平均,来得到一个新的模型

什么时候做Bagging? 当模型复杂,会发生overfitting时,可以做Bagging,降低variance

对于Regression的模型,一般使用Average。对于classifier的模型,一般使用voting

Ensemble Bagging举例

1. Decision Tree

Decision Tree缺点:只要树够深,decision tree可以使error变0,易overfitting

2. Random Forest

该方法为无序

2.Ensemble Boosting


Boosting的目的是增强很弱的model,且该model不能fit data的情况

下图用\(u\)表示weight

Ensemble Boosting举例

1. Adaboost

作为二分类问题,其输出结果为\(1或者-1\),不是\(1或者0\)

然后将最后式子的分子分母互换

因为\(\varepsilon < 0.5\),所以\(d_1 > 1\)

Adaboost举例

\(H(x)\)为最后的classifier

证明H(x)可以保证越小的error

绿线为横轴的函数,即\(<0 = 1, 其余 = 0\),那么蓝线为绿线的upperbound

之后只需要证明\(Z_T+1\),即weight的和越来越小即可

adaboost不会发生过拟合的现象

通过margin,保证即使training data的error为0,adaboost还可以继续训练,更加robust

Gradient Boosting

Gradient Boosting是Boosting更general的方法

3. Ensemble Stacking


Share