机器学习问题:bagging和boosting方法的区别与联系

Bagging和Boosting都是一种整合类方法,它们都是将弱分类器组装成强分类器的方法即把已有的分类回归模型通过一定的方式组合起来,制造出一个功能更加强大的预测模型。

bagging方法,也成为自举汇聚法(bootstrap aggregating),是在原始数据集选择Y次后得到Y个新数据集的一种技术,也可以叫做对原始数据集的一种有放回抽样技术。新数据集和原始数据集的大小相等。每个数据集都是通过在原始数据集中随机选择一个样本来得到的,这就说明可以多次选择同一个样本,允许新数据集中可以有重复的值。 在取得Y个数据集后,利用某个学习算法分别作痛与每个数据集即可得到Y个分类器,当我们需要做回归分类问题时,就可以应用这Y个分类器,选择投票结果最多或者取平均值的方法得到最终的拟合结果。
boosting是一种与bagging很类似的方法,在两者的任何一个中,使用的分类器类型都是一致的,但boosting是串行训练的,每个分类器都是根据已经训练出的分类器性能来进行更进一步的训练。其中最流行的版本要数AdaBoost(adaptive boosting),其运行过程如下所述:训练数据中的每个样本(每个分类器)赋予其一个权值,这些权重构成了向量F。一开始这些权重的初始化值都相等。首先在训练数据上训练出一个弱分类器并计算该分类器的错误率,然后在同一数据集上再次训练弱分类器,接下来的训练过程中将会重新调整每个样本的权重,其中第一次中对的样本(分类器)权重将会降低而分错的样本权重将会提高,AdaBoost算法会不断地重复训练和调整权重,直到训练的错误率达到用户的指定要求。

== 下面对上述两个方法进行系统性的总结:==

1)样本选择上:Bagging:训练集是在原始集中有放回选取的,从原始集中选出的各轮训练集之间是独立的。Boosting:每一轮的训练集不变,只是训练集中每个样例在分类器中的权重发生变化。而权值是根据上一轮的分类结果进行调整。
2)样例权重:Bagging:使用均匀取样,每个样例的权重相等Boosting:根据错误率不断调整样例的权值,错误率越大则权重越大。
3)预测函数:Bagging:所有预测函数的权重相等。Boosting:每个弱分类器都有相应的权重,对于分类误差小的分类器会有更大的权重。
4)并行计算:Bagging:各个预测函数可以并行生成Boosting:各个预测函数只能顺序生成,因为后一个模型参数需要前一轮模型的结果。

猜你喜欢

转载自blog.csdn.net/qq_42308217/article/details/106391157