Bagging,Boosting二者之间的区别

来源:13-3 Bagging 和 Pasting

lemonlxn

2020-04-27

老师好,两者的区别是否如下:

1)样本选择上:

	Bagging:训练集是在原始集中有放回选取的,从原始集中选出的各轮训练集之间是独立的。

	Boosting:每一轮的训练集不变,只是训练集中每个样例在分类器中的权重发生变化。
	          而权值是根据上一轮的分类结果进行调整。

2)样例权重:

	Bagging:使用均匀取样,每个样例的权重相等

	Boosting:根据错误率不断调整样例的权值,错误率越大则权重越大。

3)预测函数:

	Bagging:所有预测函数的权重相等。

	Boosting:每个弱分类器都有相应的权重,对于分类误差小的分类器会有更大的权重。

4)并行计算:

	Bagging:各个预测函数可以并行生成

	Boosting:各个预测函数只能顺序生成,因为后一个模型参数需要前一轮模型的结果。
写回答

2回答

liuyubobobo

2020-04-28

总结的挺好。


整体上,bagging 就是一个横向的“民主投票”,而 boosting 是一个纵向的逐渐完善的过程。


另外,你说的 Boosting:每个弱分类器都有相应的权重,对于分类误差小的分类器会有更大的权重。不很准确。boosting 的每个分类器的权重是一样的。区别是看待样本的视角不一样了。adaboosting 会让上一轮分类错误的样本有更高的权重;而 gradient boosting 则每轮看待的样本是正确值和预测值的差,即针对误差做训练。


继续加油!:)

0
1
lemonlxn
好的,谢谢老师。我把这里的boosting 只当做adaboost 了,没有考虑到GBDT
2020-04-28
共1条回复

GoFromZero

2020-04-27

我觉的总结的差不多 感觉没毛病

0
0

Python3入门机器学习 经典算法与应用  

Python3+sklearn,兼顾原理、算法底层实现和框架使用。

5839 学习 · 2437 问题

查看课程