AdaBoost(Adaptive Boosting)算法详解
来源:互联网 发布:韩国网络小男孩表情包 编辑:程序博客网 时间:2024/05/14 05:25
AdaBoost(Adaptive Boosting)算法详解
- 主要内容
- AdaBoost算法详解
- AdaBoost算法实例讲解
1、AdaBoost算法详解
假设有一位患者,存在某些症状。患者选择咨询多位医生,而不是一位。假设患者根据医生先前的诊断准确率,对每位医生的诊断赋予一个权重。然后,这些加权诊断的组合作为最终的诊断。这就是提升的基本思想。在提升(boosting)方法中,权重赋予每个训练元组。迭代地学习
Adaboost(Adaptive Boosting)是一种流行的提升算法。假设我们想提升某种学习方法的准确率。给定数据集
如果元组被错误分类,则它的权重增加。如果元组被正确分类,则它的权重减少。元组的权重反映元组被分类的困难程度——权重越高,被错误分类的可能性越高。然后,使用这些权重,为下一轮分类器(下一个分类器)产生训练样本。其基本的思想是,当建立分类器时,希望它更关注上一轮分类器(上一个分类器)错误分类的元组。整个分类过程中,某些分类器对某些“困难”元组的分类效果可能比其他分类器好。这样,建立了一个互补的分类器系列。
AdaBoost算法构建组合分类器的步骤如下:
算法:AdaBoost(Adaptive Boosting)输入: S:类标记的训练元组集合; T:轮数(轮数即为分类器(分类方案)个数。第t轮分类,相当于第t个分类器进行分类,相当于训练集第t种分类方案); 一个基础分类算法;输出: 一个组合分类器模型:包含T个分类器,以及分类器的表决权的权重,即公式(5);方法: 将S中每个元组的权重初始化为1/n; for t=1 to T do 根据元组的权重从S中有放回抽样,得到St; 根据St导出(训练出)分类器Mt; 根据公式(1)计算Mt的错误率error(Mt); if error(Mt)>0.5 then 转向步骤11; endif 根据公式(4)计算该分类器的表决权的权重; for St的每个被正确分类的元组 do 根据公式(2)更新正确分类的元组的权重; 根据公式(3)规范化每个元组的权重; endfor endfor
第
注:关于元组权重的更新,不同文献对其描述略有不同,周志华《机器学习》将其描述为:
对于组合分类器最终的分类结果,每个分类器有一个“表决权”(即表决元组属于哪个类别),对每个分类器的“表决权”赋予一个权重。分类器的错误率越低,则准确率越高,则它的表决权的权重越大。分类器
注:关于公式(4),不同文献对其描述略有不同,周志华《机器学习》将其描述为:
一旦提升完成,如何使用分类器的组合预测元组
使用组合分类器对待分类元组X分类:将每个类别的权重初始化为0;for t=1 to T do //对所有基本分类器 分类器的表决权的权重加至划分X所属类别的权重上,即公式(5);endfor返回具有最大权重的类别;
2、AdaBoost算法实例讲解
关于AdaBoost算法实例讲解,网上大致有两个版本:一个是直接摘抄的李航《统计学学习方法》中关于AdaBoost算法的描述,另一个是大数据经典算法AdaBoost讲解的版本。后者关于元组权重更新以及分类器表决权权重的公式,采用周志华《机器学习》的描述。同时,后者关于AdaBoost算法的实例讲解,非常清晰,感兴趣的读者(初次接触AdaBoost算法的读者)可以尝试阅读。
- AdaBoost(Adaptive Boosting)算法详解
- AdaBoost(Adaptive Boosting 自适应提升)算法
- Adaboost(Adaptive boosting)
- Adaptive Boosting(AdaBoost)
- boosting(AdaBoost)算法
- Leveraging weak learners via adaptive boosting(AdaBoost)
- Ng机器学习系列补充:6、集成学习算法AdaBoost(Adaptive Boosting)
- Boosting & AdaBoost算法
- boosting、Adaboost、CascadeAdaboost算法
- 机器学习技法总结(五)Adaptive Boosting, AdaBoost-Stump,决策树
- [转]Adaboost/Boosting算法简介
- Boosting算法和Adaboost算法的关系
- boosting方法和AdaBoost算法概述
- Adaptive Compressive Tracking via Online Vector Boosting Feature Selection(ACT算法解读)
- Adaptive Compressive Tracking via Online Vector Boosting Feature Selection(ACT算法解读)
- Boosting, Online Boosting,adaboost
- Boosting, Online Boosting,adaboost
- Boosting, Online Boosting,adaboost
- Oracle 事务ACID基本概念(原子性、一致性、隔离性、持久性)
- Spring MVC 注解 @ResponseStatus
- 【数据库-MySql】函数
- Android访问Https协议的接口
- 关于treegrid与combotree的使用
- AdaBoost(Adaptive Boosting)算法详解
- 【量化干货合集】你想要的,都在这里!
- JAVA--数据库
- jquery 监听div大小变化函数|div resize事件
- sqlite相关操作的sqlite语句
- “ 一个程序员的Java和C++学习之路”阅读笔记2
- js简单表单验证,判断不能为空
- ReactNative学习问题笔记1:android工程中需要引用jar包中的aidl类时不能编译的问题
- Android几个常用的正则表达式