Boosting和Bagging

本文介绍了集成学习中的两种关键技术:Boosting和Bagging。Boosting通过调整训练集使新模型关注先前模型难以处理的数据,而Bagging则通过随机抽取训练样本增加模型间的差异,两者都能有效提升模型的泛化能力。

在生成集成中个体网络方面,最重要的技术是Boosting [Sch90] 和Bagging [Bre96]。
Boosting最早由Schapire [Sch90] 提出,Freund [Fre95] 对其进行了改进。通过这种方法可以产生一系列神经网络,各网络的训练集决定于在其之前产生的网络的表现,被已有网络错误判断的示例将以较大的概率出现在新网络的训练集中。这样,新网络将能够很好地处理对已有网络来说很困难的示例。另一方面,虽然Boosting方法能够增强神经网络集成的泛化能力,但是同时也有可能使集成过分偏向于某几个特别困难的示例。因此,该方法不太稳定,有时能起到很好的作用,有时却没有效果 [Sch90]。值得注意的是,Schapire [Sch90] 和Freund [Fre95] 的算法在解决实际问题时有一个重大缺陷,即它们都要求事先知道弱学习算法学习正确率的下限,这在实际问题中很难做到。1995年,Freund和Schapire [FS97] 提出了AdaBoost(Adaptive Boost)算法,该算法的效率与Freund算法 [Fre95] 很接近,却可以非常容易地应用到实际问题中,因此,该算法已成为目前最流行的Boosting算法。
Bagging [Bre96] 方法中,各神经网络的训练集由从原始训练集中随机选取若干示例组成,训练集的规模通常与原始训练集相当,训练例允许重复选取。这样,原始训练集中某些示例可能在新的训练集中出现多次,而另外一些示例则可能一次也不出现。Bagging方法通过重新选取训练集增加了神经网络集成的差异度,从而提高了泛化能力。Breiman [Bre96] 指出,稳定性是Bagging能否发挥作用的关键因素,Bagging能提高不稳定学习算法的预测精度,而对稳定的学习算法效果不明显,有时甚至使预测精度降低。学习算法的稳定性是指如果训练集有较小的变化,学习结果不会发生较大变化,例如,k最近邻方法是稳定的,而判定树、神经网络等方法是不稳定的。
Bagging与Boosting 的区别在于Bagging 的训练集的选择是随机的,各轮训练集之间相互独立,而Boosting的训练集的选择不是独立的,各轮训练集的选择与前面各轮的学习结果有关;Bagging 的各个预测函数没有权重,而Boosting是有权重的;Bagging的各个预测函数可以并行生成,而Boosting的各个预测函数只能顺序生成。对于象神经网络这样极为耗时的学习方法,Bagging可通过并行训练节省大量时间开销。
此外还存在多种个体生成方法。例如,有些研究者 [OS96a, YL98] 利用遗传算法来产生神经网络集成中的个体;有些研究者使用不同的目标函数 [HW90]、隐层神经元数 [Che96]、权空间初始点 [MS95] 等来训练不同的网络,从而获得神经网络集成的个体。

### 回答1: Boosting是一种用于提升模型预测准确性的机器学习算法,它将多个弱学习器结合成一个强学习器。Bagging是一种组合模型,它将多个模型结合起来,以提高预测准确性。两者之间的主要区别在于,Boosting将多个弱学习器结合起来,而Bagging则将多个模型结合起来。 ### 回答2: BoostingBagging是两种常见的集成学习方法,它们的区别主要体现在以下几个方面。 首先,它们对数据的采样方式不同。对于Bagging来说,它采用的是自助采样(bootstrap)的方式,即从原始数据集中有放回地随机抽取样本来构建多个子数据集。而Boosting则是通过调整样本权重的方式,使得在前一个基学习器分类错误的样本,在后续学习中得到更多的关注纠正。 其次,它们对于基学习器的使用方式不同。Bagging是通过并行地训练多个基学习器,并最终通过投票或取平均的方式来确定最终分类结果。而Boosting是通过依次训练多个基学习器,每个基学习器都在前一个学习器的基础上进行训练,并通过集中关注分类错误的样本,逐渐提升分类性能。 此外,它们对于样本权重的更新方式也不同。在Bagging中,每个基学习器都是独立地进行训练,样本的权重没有变化。而在Boosting中,每个基学习器的训练都会调整样本的权重,将前一个学习器分类错误的样本权重增加,以使得后续学习中更加关注这些难以分类的样本。 最后,它们对于多样性的利用也有所区别。Bagging通过自助采样引入了样本的随机性,从而产生多样的基学习器。而Boosting则通过调整样本权重关注难以分类的样本,不同的基学习器关注不同的难以分类的样本,从而产生多样的基学习器。 综上所述,BoostingBagging的区别主要包括采样方式、基学习器的使用方式、样本权重的更新方式以及对多样性的利用方式等。 ### 回答3: BoostingBagging是两种常见的集成学习方法。 首先,Bagging(Bootstrap aggregating)是一种将弱学习器集成为强学习器的方法。在Bagging中,我们通过对原始数据集进行有放回的抽样,得到B个样本集。然后,每个样本集独立地训练一个基学习器,最后将这B个基学习器的输出进行平均或投票来决定最终预测结果。Bagging能够减小模型的方差,提高模型的稳定性。 其次,Boosting是一种迭代的方法,通过训练一系列的弱学习器来构建一个强学习器。在Boosting中,每个基学习器的训练都会根据前一个基学习器的表现来调整样本权重,即对于前一个基学习器预测错误的样本,会增加其权重,使得下一个基学习器更关注这些样本。最终,将所有基学习器的预测结果进行加权累加来得到最终的预测结果。Boosting能够减小模型的偏差,提高模型的拟合能力。 总结一下,关于两者的区别: 1. Bagging是通过对原始数据集进行有放回抽样,构建多个独立的基学习器,而Boosting是通过迭代调整样本权重来训练一系列的基学习器。 2. Bagging是通过平均或投票来决定最终预测结果,而Boosting是通过加权累加来得到最终预测结果。 3. Bagging主要减小模型的方差,提高模型的稳定性,而Boosting主要减小模型的偏差,提高模型的拟合能力。 需要注意的是,两者在构建基学习器时都是通过使用原数据集的某种扰动版本(如有放回采样或权重调整)来增加数据集的多样性,从而提高模型表现。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值