强分类器(提升方法)-----------AdaBoost算法原理和推导过程
2017-06-06 12:30
239 查看
备注本文参考李航老师的统计学习方法第8章
提升方法的基本思路:对于复杂任务来说,将多个专家的判断进行综合所得的判断,要比其中任何一个专家的判断好,
其实就是三个臭皮匠顶个诸葛亮的道理,提升方法是从弱学习算法出发,反复学习得到一系列的分类器,然后组合这些
弱分类器构成一个强分类器。大多数的提升方法都是改变训练数据集的概率分布,针对不同的训练数据分布调用弱学习
算法学习一系列的弱学习算法。其基本拓扑图如下
![](https://oscdn.geek-share.com/Uploads/Images/Content/201706/a74d9d7e270271dd4fdeff16995341c6)
所以Adaboost主要分两步,第一基本分类器怎么形成,第二ai的值怎么确定,接下来就介绍Adaboost的求解过程
1.AdaBoost算法
输入:训练数据集T={(x1,y1),(x2,y2),...,(xn,yn)},其中每个样本点由实例和标记组成,AdaBoost利用一下算法,从训练数据中
学习一些列弱分类器或基本分类器,并将这些弱分类器线性组合成一个强分类器。
![](https://oscdn.geek-share.com/Uploads/Images/Content/201706/618abaad760122ef3a55e9ec9a92bffa)
![](https://oscdn.geek-share.com/Uploads/Images/Content/201706/a2c72fa097e60304c25cd3634442e7eb)
![](https://oscdn.geek-share.com/Uploads/Images/Content/201706/a008b7312cbe1f9129af87dbec8b643a)
实现AdaBoost例子:假设有数据集如下
![](https://oscdn.geek-share.com/Uploads/Images/Content/201706/dcb573b83b6341f6b3db6aaf84d84247)
能使数据分成两类的x取值范围分布,
![](https://oscdn.geek-share.com/Uploads/Images/Content/201706/252a301a1fb40bce2400663b828ea457)
![](https://oscdn.geek-share.com/Uploads/Images/Content/201706/1a3933015e0c134fe1d3f293821ec278)
![](https://oscdn.geek-share.com/Uploads/Images/Content/201706/6865fd307b6ae54051f8ce1dd75fad9c)
![](https://oscdn.geek-share.com/Uploads/Images/Content/201706/d2702814cf7365b3a8ad965a785ab108)
![](https://oscdn.geek-share.com/Uploads/Images/Content/201706/875469649b431e1af1979d06d50ceb83)
到此Adaboost的基本求解过程已完成,后续增加提升树算法的推到过程
提升方法的基本思路:对于复杂任务来说,将多个专家的判断进行综合所得的判断,要比其中任何一个专家的判断好,
其实就是三个臭皮匠顶个诸葛亮的道理,提升方法是从弱学习算法出发,反复学习得到一系列的分类器,然后组合这些
弱分类器构成一个强分类器。大多数的提升方法都是改变训练数据集的概率分布,针对不同的训练数据分布调用弱学习
算法学习一系列的弱学习算法。其基本拓扑图如下
所以Adaboost主要分两步,第一基本分类器怎么形成,第二ai的值怎么确定,接下来就介绍Adaboost的求解过程
1.AdaBoost算法
输入:训练数据集T={(x1,y1),(x2,y2),...,(xn,yn)},其中每个样本点由实例和标记组成,AdaBoost利用一下算法,从训练数据中
学习一些列弱分类器或基本分类器,并将这些弱分类器线性组合成一个强分类器。
实现AdaBoost例子:假设有数据集如下
能使数据分成两类的x取值范围分布,
到此Adaboost的基本求解过程已完成,后续增加提升树算法的推到过程
相关文章推荐
- 提升分类器准确率的组合方法
- 机器学习SVM之SMO方法α,ω和b迭代公式的推导过程
- (转)根据表中数据生成insert语句的存储过程(另一种方法)
- 用WinDbg探索CLR世界 [3] 跟踪方法的 JIT 过程
- .NET中统一的存储过程调用方法
- 存储过程调试过程中DATETIME参数的输入故障解决方法
- VS2005 beta 2 安装过程中出现error2337的解决方法
- 在.net中调用存储过程的另一种方法。cmd.commandtype为commandtypetext
- Guest权限提升方法总结
- 【教程】点燃一支蜡烛的过程-PS的写实方法
- SQL SERVER 2000 存储过程不支持数组的解决方法!
- .NET中统一的存储过程调用方法(收藏)
- oracle9i安装过程的错误的修改方法
- .NET中统一的存储过程调用方法
- 提升中国服务业服务最快的方法--百试不爽
- 串口通信过程中更改波特率的方法 C#实现
- 用WinDbg探索CLR世界 [3] 跟踪方法的 JIT 过程
- windows2000本地登陆过程及利用方法
- Guest权限提升方法总结
- 在PL/SQL 开发中调试存储过程和函数的一般性方法