集成学习原理:Adaboost
2016-01-07 14:41
381 查看
集成学习通过从大量的特征中挑出最优的特征,并将其转化为对应的弱分类器进行分类使用,从而达到对目标进行分类的目的。
核心思想
它是一种迭代算法,其核心思想是针对同一个训练集训练不同的分类器(弱分类器),然后把这些若分类器集合起来,构成一个更强的最终分类器(强分类器)。其算法本身是通过改变数据分布来实现的,它根据每次训练集中每个样本的分类是否正确,以及上次总体分布的准确率,来确定每个样本的权值,将修改过权值的新数据集送给下层分类器进行训练,最后将每次训练得到的分类器最后融合起来,作为最终的分类器。使用Adaboost可以排除一些不必要的训练数据特征,并主要集中于关键数据。训练过程
算法中不同的训练集是通过调整每个样本对应的权重来实现的。开始时,每个样本对应的权重是相同的,在此样本分布下训练出一弱分类器。对于分类错误的样本,加大其对应的权值;而对于分类正确的样本,降低其对应的权值,这样分错的样本就被突出出来,从而得到一个新的样本分布。在新的样本分布下,再次对弱分类器进行训练,得到另一个弱分类器。以此类推,经过T次循环,得到T个弱分类器,把这T个弱分类器按照一定的权值叠加(boost)起来,得到最终需要的强分类器。种类
相关文章推荐
- leetcode 删除数组指定值的元素
- 思念来了请关灯
- DefaultAnnotationHandlerMapping
- 【Python那些事儿之七】Iterators详解
- 源码推荐(01.07B):MVVM登录页面,一句代码设置UILabel的行距间距
- iOS 开发中遇见的小bug
- jquery on() 给js动态新添加的元素 绑定的点击事件。
- 信号量semaphore
- Objective-C 计算代码运行时间
- StringUtils中 isNotEmpty 和isNotBlank的区别
- android基础学习之上下文菜单
- How does Log.wtf() differ from Log.e()?
- PHP实现基于Swoole简单的HTTP服务器
- Nagios全方位告警接入-电话/微信/短信都支持
- 把现在作为所有曾经的归宿
- Js中获取节点对象
- Android 实例:在Activity 之间跳转的intent
- 基于dubbo的分布式架构
- H5 App设计者需要注意的21条禁忌
- Linux系统中怎么设置java环境变量?