没有合适的资源?快使用搜索试试~ 我知道了~
首页集成学习之bagging、boosting及AdaBoost的实现
集成学习之bagging、boosting及AdaBoost的实现

前面博客分享,我们已经讲解了不少分类算法,有knn、决策树、朴素贝叶斯、逻辑回归、svm。我们知道,当坐重要决定时,大家可能都会考虑吸取多个专家而不是一个人的意见。机器学习处理问题时同样如此。集成学习(ensemblelearning)通过构建并结合多个学习器来完成学习任务,有时被称为多分类器学习系统、基于委员会的学习等。下图显示出集成学习的一般结构:先产生一组“个体学习器”,再用某种策略将它们结合起来。我们前面已经分享了五种不同的分类算法,我们可以将其用不同的分类器组合起来,这种组合结果则被称为集成方法或者元算法。使用集成方法时会有多种形式:1.集成中只包含同种类型的个体学习器,这种个体学习
资源详情
资源评论
资源推荐

集成学习之集成学习之bagging、、boosting及及AdaBoost的实现的实现
引言
前面博客分享,我们已经讲解了不少分类算法,有knn、决策树、朴素贝叶斯、逻辑回归、svm。我们知道,当坐重要决定
时,大家可能都会考虑吸取多个专家而不是一个人的意见。机器学习处理问题时同样如此。集成学习(ensemble learning)通
过构建并结合多个学习器来完成学习任务,有时被称为多分类器学习系统、基于委员会的学习等。
个体与集成
下图显示出集成学习的一般结构:先产生一组“个体学习器”,再用某种策略将它们结合起来。
我们前面已经分享了五种不同的分类算法,我们可以将其用不同的分类器组合起来,这种组合结果则被称为集成方法或者元算
法。使用集成方法时会有多种形式:1.集成中只包含同种类型的个体学习器,这种个体学习器也被称为基学习器。2.集成中也
可包含不同类型的个体学习器,这种异质集成的个体学习器是由不同的学习算法生成。
一般来说,集成学习通过将多个学习器进行结合,常可获得比单一学习器显著优越的泛化性能。但是从实际经验中发现,要获
得好的集成,个体学习器应“好而不同”,即个体学习器要有一定的“准确性”,即学习器不能太坏,并且要有“多样性”,即学习器
之间具有差异。
bagging
自举汇聚法,也称bagging方法,是一种基于数据随机重抽样的分类器构建方法。bagging原理如下:
给定包含m个样本的数据集,我们先随机取出一个样本放入采样集中,再把该样本放回初始数据集,使得下次采样时刻该样本
仍有肯能被选中,这样经过m次随机采样操作,我们得到含m个样本的采样集,初始训练集中有的样本在采样集中多次出险,
有的则从未出现。照这样,我们可采样出T个含m个训练样本的采样集。
bagging的特点
1.训练一个bagging集成与直接使用基学习算法训练一个学习器的复杂度同阶
2.与标准的adboost只适用于二分类任务不同的是,bagging能不经修改地用于多分类、回归等任务
3.由于自助采样过程的性质,包外样本可以用作包外估计,可用来辅助剪枝,减小过拟合风险
4.从偏差-方差角度看,bagging主要关注降低方差,因此它在不剪枝决策树、神经网络等易受样本扰动的学习器上效用更明
显。
随机森林
随机森林是更先进的bagging方法。RF是在以决策树为基学习器构建bagging集成的基础上,进一步在决策树的训练过程中引
入了随机属性选择。此处详情请戳:RF
boosting
boosting是一种与bagging很类似的技术。不论是boosting还是bagging,所使用的分类器的类型都是一致的。但是bagging是
个体学习器间不存在强依赖关系、可同时生成的并行化方法;boosting是个体学习器间存在强依赖关系、必须串行生成的序列
化方法。
boosting不同的分类器是通过串行训练而获得的,每个新分类器都根据已训练出的分类器性能来进行训练。boosting是通过集
中关注被已有分类器错分的那些数据来获得新的分类器。
由于boosting分类的结果是基于所有分类器的加权求和结果的,因此boosting与bagging不太一样。bagging中的分类器权重是
相等的,而boosting中的分类器权重并不相等,每个权重代表其对应分类器在上一轮迭代中的成功度。
boosting族算法最具代表性的是AdaBoost。关于AdaBoost我前面有篇博客有分享:利用AdaBoost元算法提高分类性能。这里
我将结合那篇博客的内容深入分析AdaBoost的原理与实现。
最小化指数损失函数
AdaBoost算法有很多的推导方式,比较容易理解的是基于“加性模型”,即基学习器的线性组合:



















安全验证
文档复制为VIP权益,开通VIP直接复制

评论1