boosting(AdaBoost)算法
来源:互联网 发布:002174游族网络雪球 编辑:程序博客网 时间:2024/05/22 16:07
本文只是对算法的步骤进行简单的介绍和解释,以求对算法步骤有个直观的了解,没有对算法进行性能分析。
1、bagging算法
bagging算法来源于boosttrsp aggregation(自助聚类),表示过程主要如下:从大到小为n的原始数据集D中,分别独立随机地抽取n‘个数据(n'<n)形成数据集,并且将这个过程独立许多次,直到产生很多个独立的数据集。然后,每个数据集都被独立地用于训练一个“分量分类器”。最终的分类判决将根据这些“分量分类器”各自的判决结果的投票决定。
2、boosting算法
boosting算法的目的是提高任何给定的学习算法的分类准确率。在boosting算法中,我们先根据已有的训练样本集设计一个分类器,要求这个分类器的准确率比平均性能要好。然后,依次顺序地加入多个分量分类器系统,最后形成一个总体分类器。最终的判决结果根据分类器的结果共同决定。
以一个两类问题创建三分量分类器为例:首先,从大小为n的原始样本集D中不放回地随机抽取n1个样本点,组成样本集D1,然后根据D1训练出第一个分类器C1(只要比瞎猜准确率高就好,当然这是最低要求)。然后选取C1中最富信息的样本点组成D2,D2中的一般样本应该能被C1正确分类,另外一半则被错分。具体为:可以采用抛硬币法,当为正面的时候,就从D中剩余样本中选取样本送入C1,如果分类正确,则被舍弃,继续选样本点,如果分类错误,把错误的样本送入D2,本次过程结束,继续抛硬币。如果为反面,就从C1正确分类的样本点中挑选一个送入D2。这样,D2中就有一半的样本是C1正确分类,一半的样本是C1错误分类的。继续构造D3,仍然是在D中剩余样本中选取样本点,分别送入C1和C2进行分类,如果分类一致就舍弃,如果判决不一致,,就送入D3。然后又用D3训练分类器C3。
下面就可以对新样本a进行分类了。如果C1和C2的判决结果相同,就把a判决为这个类别,如果判决结果不同,就采用C3判决的判决结果。
3、AdaBoost
基于boosting有许多变形,AdaBoost就是其中一种,该方法允许设计者不断加入新的弱分类器,直到达到某个预定的足够小的误差率。我们使用xi和yi表示原始样本集中D中样本点和他们的标记。用wk(i)表示第k次迭代的全体样本权重分布。算法流程如下:
下面我们举一个简单的例子来看看Adaboost的实现过程:
图中,“+”和“-”分别表示两种类别,在这个过程中,我们使用水平或者垂直的直线作为分类器,来进行分类。
第一步:
根据分类的正确率,得到一个新的样本分布D2,一个子分类器h1
其中划圈的样本表示被分错的。在右边的途中,比较大的“+”表示对该样本做了加权。
第二步:
根据分类的正确率,得到一个新的样本分布D3,一个子分类器h2
第三步:
得到一个子分类器h3
整合所有子分类器:
因此可以得到整合的结果,从结果中看,及时简单的分类器,组合起来也能获得很好的分类效果。
- boosting(AdaBoost)算法
- AdaBoost(Adaptive Boosting)算法详解
- AdaBoost(Adaptive Boosting 自适应提升)算法
- Boosting & AdaBoost算法
- boosting、Adaboost、CascadeAdaboost算法
- [转]Adaboost/Boosting算法简介
- Boosting算法和Adaboost算法的关系
- boosting方法和AdaBoost算法概述
- Boosting, Online Boosting,adaboost
- Boosting, Online Boosting,adaboost
- Boosting, Online Boosting,adaboost
- Boosting, Online Boosting,adaboost
- 机器学习实战-Adaboost(自适应boosting)
- 集成方法(ensemble method) Boosting Adaboost
- Boosting,AdaBoost ,Online Boosting,online Adaboost介绍
- cvpr读书笔记[2]:boosting方法和AdaBoost算法概述
- 机器学习sklearn19.0——集成学习——boosting与梯度提升算法(GBDT)、Adaboost算法
- Adaboost与boosting
- TKStudio内置51编译器SDCC对C语言的扩展(1)
- _variant_t 数据类型 注释 vt类型
- iOS 中捕获程序崩溃日志
- 蓝牙4.0芯片nrf51822资料
- 警惕 十种短命的生活方式
- boosting(AdaBoost)算法
- Oracle 索引 详解
- Office使用技巧
- C06_C语言-变量作用域
- How can I add or import a picture to a QWidget?
- C#字符串转MD5码函数
- 解决Access文件越来越大的问题
- 开启3389常用终端命令
- 基于Web服务的应用、解决方案和开发平台