【西瓜书阅读笔记】第8章 集成学习

第8章 集成学习

  • 8.1 个体与集成
  • 8.2 Boosting
  • 8.3 Bagging 与随机森林
    • 8.3.1 Bagging
    • 8.3.2 随机森林RF
  • 8.4 结合策略
    • 8.4.1 平均法
    • 8.4.2 投票法
    • 8.4.3 学习法
  • 8.5 多样性
    • 8.5.1 误差-分歧分解
    • 8.5.2 多样性度量
    • 8.5.3 多样性增强

8.1 个体与集成

集成学习:通过构建并结合多个学习器来完成学习任务(也称多分类器系统、基于委员会的学习)
【西瓜书阅读笔记】第8章 集成学习_第1张图片
同质集成:个体学习器(基学习器、基学习算法)类型相同
异质集成:个体学习器(组件学习器)由不同算法生成

对于分类问题,使用3个不同个体分类器,可以用投票的方法
【西瓜书阅读笔记】第8章 集成学习_第2张图片
要获得好的集成:个体学习器应该“好而不同”,个体学习器要有一定的准确性(不需最好,但要比最差的要好),并且要有多样性(学习器之间具有差异)

集成学习研究的核心:个体学习器越准确,多样性就越差。所以要“好而不同”

集成学习可分为两大类:

  1. 个体学习器之间存在强依赖关系、必须串行生成的序列化方法(代表:Boosting)
  2. 个体学习器之间不存在强依赖关系,可同时生成的并列化方法(代表:Bagging和随机森林Random Forest)

8.2 Boosting

Boosting:将弱学习器提升为强学习器
思想:

  1. 先从初始数据集训练一个基学习器
  2. 根据及学习器的表现,对数据集的分布进行重新调整,特别关注在先前基学习器做错的
  3. 基于调整后的数据集再训练一个基学习器
  4. 重复2、3直至基学习器的个数达到T
  5. 将T个基学习器加权结合

AdaBoost算法的推导(跳过!):加性模型【只适用于二分类】

基学习器对特定分布进行学习:重赋权法,在训练的每一轮中,根据样本的分布重新为样本赋权
对于无法带权的学习算法:重采样法,在每一轮学习中,根据样本分布对训练集进行重采样

注意:Boosting算法在每一轮生成基学习器时,都要判断当前及分类器是否要比随机猜测好。一旦不满足条件,则抛弃该基学习器且终止。(这种情况很不好)
——如果是采用“重采样”,可以重启动(在抛弃之后,可以再重采样,再重新训练基学习器,达到T轮)

Boosting主要关注降低偏差,对泛化性弱的基学习器表现很好。

8.3 Bagging 与随机森林

对于强学习器,为了提高多样性,本来想着对训练集采样出不同的子集训练,但这样导致个体学习器太差。
所以,考虑相互有交叠的采样子集

8.3.1 Bagging

并行式学习方法
思想流程:

  1. 自助采样法:“‘有放回”的随机抽取样本,所以每次的训练集都会出现某样本出现多次。采样出T个采样集
  2. 对每个采样集训练一个基学习器
  3. 对这些基学习器进行结合(分类任务:投票法;回归任务:平均法)

Bagging高效:训练一个Bagging集成,与直接适用于一个基学习器的复杂度同阶。
【支持二分类、多分类、回归】

优点:包外估计:对于每一个基学习器,没选上的样本可以作为验证集

Bagging主要关注降低方差

8.3.2 随机森林RF

随机森林:在基于决策树的Bagging集成的基础上,加入随机属性选择。
思想:假设d个属性,对基决策树(基学习器)的每个节点,随机选择k个属性,在这k个属性中选择一个最优属性用于划分。(推荐k=log2(d))

随机森林的训练效率一般优于Bagging:Bagging是“确定型”的决策树(对所有属性进行考察),随机森林是“随机型”的决策树,只考察一个属性子集。

8.4 结合策略

学习器的结合带来三个好处:
【西瓜书阅读笔记】第8章 集成学习_第3张图片
接下来讲讲常见策略

8.4.1 平均法

  1. 简单平均法(直接平均)(个体学习器性能相近时用)
  2. 加权平均法(权重一般从训练集中学习而得。但,训练样本一般存不充分或存在噪声,使得学习得到的权重不可靠,反而比简单平均还要差)(个体学习器性能相差较大时用)

8.4.2 投票法

分类任务

  1. 绝对多数投票法:若某类得票数过半,则预测为该类,否则拒绝
  2. 相对多数投票法:预测为得票最多的标记
  3. 加权投票法:加权平均类似

个体学习器有两种产生的值:
1.类标记:0或1,硬投票
2.类概率:0到1的概率,软投票

分类置信度可转化为类概率使用
类概率转换成类标记:由于基学习器的不同,将类概率按照某种阈值分为0、1

8.4.3 学习法

通过学习进行结合(个体学习器-初级学习器,用于结合的学习器-次级学习器或元学习器)(典型代表:Stacking)
Stacking思想:
1.先从初始数据集训练处初级学习器,生成新的数据集
2.用生成的新数据集训练次级学习器

直接使用初级学习器生成的训练集,拟合风险会比较大。因此,一般使用交叉验证或留一法,使用初级学习器未使用的样本。

多响应线性回归,较好

8.5 多样性

8.5.1 误差-分歧分解

定义分歧,分歧表征了个体学习器在样本x上的不一致性,反映了个体学习器的多样性
【西瓜书阅读笔记】第8章 集成学习_第4张图片
只适用于回归学习,而且现实任务很难直接对这个式子优化

8.5.2 多样性度量

成对型多样性度量:↓
1.不合度量:值越大,多样性越大
2.相关系数:正相关(+)、负相关(-),无关(0)
3.Q-统计量
4.k-统计量

8.5.3 多样性增强

1.数据样本抖动:给定初始数据集,从中生成不同的数据子集,利用不同的数据子集训练出不同的个体学习器(对不稳定基学习器有效)
2.输入属性抖动:随机子空间算法(冗余属性多效果好)
3.输出表示抖动:翻转法,输出调制法,ECOC法
4.算法参数抖动
可以同时使用不同多样性增强机制

你可能感兴趣的:(西瓜书,机器学习)