标签:集成学习
1. 什么是集成学习?
集成学习通过构建并结合多个学习器来完成学习任务,有时也被称为多分类器系统。
基于同种类型的个体学习器,这样集成是同质,不同种类型的个体是异质的。
2. 集成学习方法大致分为哪两大类?
个体学习器间存在强依赖关系,必须串行生成的序列化方法,前者的代表是Boosting族。个体学习器不存在强依赖关系,可同时生成的并行化方法,后者的代表是Bagging和随机森林。
Boosting是一族可将弱学习器提升为强学习器的算法。这族算法的工作机制相似:先从初始训练集训练出一个基学习器,在根据基学习器的表现对训练样本分布进行调整,使得先前基学习器的训练样本在后续受到更多关注,然后基于调整后的样本分布来训练下一个基学习器;如此重复进行,直至基学习器数目达到事先指定的值T,最终将这个T个基学习器进行加权结合。Boosting族中算法最著名的代表是AdaBoost。
Bagging是并行式集成学习方法最著名的代表。给定包含m个样本的数据集,我们先随机取出一个样本放入采样集中,在把该样本放回初始数据集,使得下次采样时该样本任有可能被选中,这样经过m次随机采样操作,我们得到含m个样本的采样集。Bagging对含m个训练样本的采样集,然后基于每个采样集训练出一个基学习器,在将这些基学习器进行结合。这就是Bagging的基本流程。Bagging通常对分类任务使用简单投票法,对回归任务使用简单平均法,若分类预测时出现两个收到同票的情形,则最简单的做法是随机选择一个,也可进一步考察学习器投票的置信度来确定最终胜者。
随机森林(Random Forest)Bagging的一个扩展变体。RF在以决策树为基学习器构建Bagging集成的基础上,进一步在决策树的训练过程中引入了随机属性选择。具体来说传统决策树在选择划分时是在当前结点的属性集合中选择一个最优属性,而在RF中,对基决策树的每个结点,先从该结点的属性集合中随机选择一个包含K个属性的子集,然后在从这个子集中选择一个最优属性用于划分。这里的参数K控制了随机性的引入程度。
3. 组合策略?
假定集成包含T个基学习器{h1,h2….ht}其中hi在示例x上的输出为hi(x)
1. 简单平均法(个体学习器性能相差不大时宜使用加权平均法)。
2. 加权平均法(个体学习器性能相差较大时宜使用加权平均法)。
3. 绝对多数投票
4. 相对多数投票
5. 加权投票
4. 多样性
欲构建泛化能力强的集成,个体学习器应好而不同。现在我们来做一个简单的理论分析。
5. 多样性度量
6. AdaBoost改进与推广主要在三个方面:
1. 改进AdaBoost的样本权值调整策略。
2. 对Adaboost算法的训练速度进行改进,提出对权重小的样本进行裁剪以及减少样本数来缩短训练时间。
3. AdaBoost与各种具体训练方法结合方面的讨论。
7. 组合分类器最重要的是同时满足精确和相异两个特征。
集成分类一般包含两个阶段,即基分类器的生成阶段和组合阶段。对于给定的问题,不同的生成方式和不同的组合方式会得到不同的集成效果。
如何生成差异很大的基分类器?
1. 是特征选择?
可以用不同的方法,如卡方统计量,信息熵方法以及互信息和期望交叉熵等方法生成不同的特征。来产生差异性。
还可以这样搞,随机的选择m/T个类,在这个m/T个类中,随机选择30%的作为测试样本,而在其他类中,随机选择70%的样本,构成新的训练子集。进行T此操作。
2. 2.是选择性集成
差异度如何度量呢?
本文出自 “简答生活” 博客,谢绝转载!
标签:集成学习
原文地址:http://1464490021.blog.51cto.com/4467028/1974067