Bagging、Boosting的区别
- 样本选择:Bagging算法是有放回的随机采样;Boosting算法是每一轮训练集不变,只是训练集中的每个样例在分类器中的权重发生变化,而权重根据上一轮的分类结果进行调整;
- 样例权重:Bagging使用随机抽样,样例的权重;Boosting根据错误率不断地调整样例的权重值,错误率越大则权重越大;
- 预测函数:Bagging所有预测模型的权重相等;Boosting算法对于误差小的分类器具有更大的权重;
- 并行计算:Bagging算法可以并行生成各个基模型;Boosting理论上只能顺序产生,因为后哟个模型需要前一个模型的结果;
- Bagging是减少模型的方差;Boosting是减少模型的偏度;
- Bagging里每个分类模型都是强分类器,因为降低的是方差,方差过高需要降低是过拟合;Boosting里每个分类模型都是弱分类器,因为降低的是偏度,偏度过高是欠拟合。
Bagging对样本重采样,对每一轮的采样数据集都训练一个模型,最后取平均。
由于样本集的相似性和使用的同种模型,因此各个模型都具有相似的偏差bias和方差variance:
E
(
∑
i
=
1
n
X
i
n
)
=
E
(
X
i
)
E(\frac{\sum_{i=1}^{n}X_{i}}{n})=E(X_{i})
E(n∑i=1nXi)=E(Xi)
V
a
r
(
∑
i
=
1
X
i
n
)
=
V
a
r
(
X
i
)
n
,
模
型
完
全
独
立
Var(\frac{\sum_{i=1}X_{i}}{n})=\frac{Var(X_{i})}{n},模型完全独立
Var(n∑i=1Xi)=nVar(Xi),模型完全独立
V
a
r
(
∑
i
=
1
X
i
n
)
=
V
a
r
(
X
i
)
,
模
型
完
全
相
同
Var(\frac{\sum_{i=1}X_{i}}{n})=Var(X_{i}),模型完全相同
Var(n∑i=1Xi)=Var(Xi),模型完全相同