自适应提升算法(AdaBoost)介绍(二)
来源:互联网 发布:淘宝修改密码在哪里 编辑:程序博客网 时间:2024/06/05 16:21
提升方法(boosting)介绍:
提升方法基于这样一个思想:对于一个复杂任务来说,将多个专家的判断进行适当综合所得出的判断,要比其中任何一个专家单独的判断要好。实际上,就是“三个臭皮匠顶个诸葛亮”的道理。提升方法的问题在于,在学习中,如果已经发现了弱学习算法,能否将它提升为强学习算法。因为在应用中,发现弱学习算法要比强学习算法容易得多。关于提升的策略,最具代表性是AdaBoost算法。对于分类问题,在给定的训练样本上获得一个粗糙规则(弱分类器)要比获得一个精确规则(强分类器)容易的多。提升方法就是在弱学习算法上反复学习,得到一系列的弱分类器(也叫做基本分类器),然后组合这些弱分类器,构造一个能够更加准确分类的强分类器。此时会有两个问题:
自适应提升算法(adaboost)介绍:
给定一个二分类数据集
基本分类器的选择方法
在确定基本分类器时,AdaBoost通常采取的方法是遍历所有的弱分类器(或是所有的特征),求所有的弱分类器在正负样本上的错误率,将最小错误率对应的弱分类器作为本轮迭代的基本分类器。在遍历的过程要注意,弱分类器是有两个方向的,不同的方向判为正例和负例所导致的错误率也是不相同的,所以对一个弱分类器在训练样本上需要计算两次错误率,取最小值作为该弱分类器在训练集上的训练错误率。具体过程如下:
在实际的应用中由于训练的样本量巨大,如果一一比较所有样本的特征值是否过该弱分类器所设定的阈值,需要大量的计算时间,导致训练速度很慢。实际上我们采取的是这样的方法:
训练样本事先分成两类:正样本和负样本,并按照特征值从小到大进行排序。人脸检测的弱分类器(特征)的阈值选取的方法通常定义为两个样本特征值的平均数,选取最优的阈值(错误率最小的阈值)时要遍历所有的样本,由于事先已经排序,只需要计算该样前面或后面的样本个数即可。
例如,下图中为某一个特征10000正样本和1000负样本对应的特征值:
- 自适应提升算法(AdaBoost)介绍(二)
- AdaBoost(Adaptive Boosting 自适应提升)算法
- Adaboost(自适应提升树)算法原理
- 提升方法(Adaboost算法实现)
- AdaBoost装袋提升算法
- AdaBoost装袋提升算法
- AdaBoost(自适应增强算法)
- adaboost(二)程序
- 提升方法 - 1 - Adaboost 算法
- boosting(AdaBoost)算法
- 机器学习实战-Adaboost(自适应boosting)
- 提升方法之AdaBoost、提升树(GBDT)
- 白话机器学习算法(二十二)Adaboost
- 白话机器学习算法(二十二)Adaboost
- 强分类器(提升方法)-----------AdaBoost算法原理和推导过程
- Adaboost算法介绍
- Adaboost算法介绍
- Adaboost算法介绍
- java中堆内存与栈内存区别
- CAD图纸转换之cad图怎么转换成pdf的经验分享
- Redis VS. Memcached 均不适合数据量高于1千万条,且保证数据完整的key-value存储
- [LeetCode 204] Count Primes(Python)
- day15-session&jsp&验证码
- 自适应提升算法(AdaBoost)介绍(二)
- 总结:如何使用redis缓存加索引处理数据库百万级并发
- 活动和碎片的一些区别以及活动的启动模式
- Spring Cloud实战(四):微服务质量监控-Hystrix仪表盘
- HDU 6212 Zuma ACM/ICPC 2017 Qingdao Online(区间dp)
- Mac连接京瓷打印机Fs-1030MFP/DP
- java跳出多次循环
- Vue v-if v-show
- android 自定义ImageView显示圆形图片