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的方法