机器学习之集成学习简介

Posted 未央夜色

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了机器学习之集成学习简介相关的知识,希望对你有一定的参考价值。

综述

集体学习:
将不同的分类器组合起来。
先产生个体学习,在根据多个个体学习完成学习任务。
每个个体学习可以采用的算法可以不同

集成学习可能有不同的提升/不变/降低
这要求学习器:

  • 单个个体不能太差
  • 学习器之间要有差异/多样性

理论上来说,如果单个学习器之间相互独立,当个数很多的时候,集成学习的正确率非常高,趋近于满分

如何产生好而不同的个体学习器,是集成学习的核心问题

bagging

有放回

  • 从有放回的从原数据集中选择S次,得到一个大小为S的新数据集(大小和原数据集相等)
  • 对于每个新数据集,建立分类器(可以用不同方法)
  • m个分类器的结果投票,多数表决

随机森林

综述

在baggiung基础上的改进。相对于普通DT有改进。
普通DT是在某个节点的所有属性中选择一个最优的
RD是在所有节点的属性中随机选择K个,在这K个里面选择最优的

随机性

样本随机,属性随机。

  • 随机的从原始数据集中选择样本组成新的数据集
  • 随机选择K个属性,建立决策树(N个属性,K选择log(N))

流程

  • 从数据集中又放回的选出M个样本
  • 重复上述操作N次,得到N个子集,每个子集中有M个样本
  • 建立分类器,对每个子集训练

评价

  • 实现简单,性能强大
  • 可以并行化计算,代价小,适合处理大数据
  • 能够在结果中给出哪些特征比较重要
  • 防止过拟合,准确率高

boosting

  • boosting集中关注被已有分类器错分的那些数据来获得新的分类器。重点关注做错的训练样本。
  • boosting的每个分类器都有不同的权重
  • 训练过程的每一轮中,根据样本分布为每个训练样本重新赋一个新的权重。

adaboost

综述

  • 将弱学习提升为强学习,不改变所给的训练数据,而不断改变训练数据权值的分布,使得训练数据在基本分类器的学习中起不同的作用,这就是AdaBoost的一个特点。
  • 前一个分类器改变权重,同时组成最后的分类器。
  • 分类器的重要性依赖于他的错误率
  • 最基本的性质是在学习过程中不断减少训练误差

adaboost总体结构

算法流程

  • 初始化所有样本,权重设置为一样的
  • 训练分类器,对每个样本进行分类
  • 根据样本判断的结果,更新每个样本的权重,分类正确的样本降低权重,分类错误的样本增加权重
  • 开始第二次训练
  • 重复上述,直到达到指定的精确度/分类器个数

权重

样本的权重和分类器的权重。
错误率–>G1的系数alpha–>更新权重。
错误率影响分类器权重alpha,分类器权重alpha影响样本权重。
不改变训练数据,不断改变训练数据的权重分布,让不同的训练数据在学习器中起不同的作用

  • 计算分类器在数据集上的错误率
    错误率 = 错误分类的样本个数/所有的样本个数

  • 根据错误率计算分类器权重alpha的值

  • 更新样本的权重

  • 总体的分类判决:

  • 分类结果的判定规则

评价

  • 能把弱分类器组合成强分类器,准确度高
  • 相比于RF,给每个分类器也赋给了权重
  • 不易出现过拟合
  • 代价大,每次迭代都要重新训练分类器
  • 对噪声和异常数据敏感。

adaboost两个最大的特点:

  • 每次调整训练数据的权重
  • 利用基本分类器的线性组合构建最终分类器

性能指标

  • 正确率
    对预测结果而言,预测为正的样本中有多少是真正的正样本。
    A个正例,预测B个正例
    A中出现在B中的个数/B的个数

  • 召回率
    针对我们原来的样本而言,表示的是样本中的正例有多少被预测正确了。
    A个正例,预测B个正例
    B中出现在A中的个数/A的个数

  • ROC
    接收者操作特征。
    AUC:曲线下的面积。表征分类器的平均性能值。

GBDT

梯度提升决策树

结合策略

  • 平均法

    • 简单平均
    • 加权平均
    • 加权平均不一定优于简单平均
      • 当分类器效果差不多时,简单平均更合适
      • 当分类器效果差别较大,加权平均更合适
  • 投票法

    • 绝对多数投票:过半
    • 相对多数投票:选最多票的
    • 加权投票
  • 学习法

    • 将初级学习器的结果当做输入

对比adaboost和随机森林

  • 二者都是进行投票表决,RF进行的是公平投票,ada进行的是权重投票
  • RF是并行的,ada是串行的
  • 都会给权重,ada是给分类器和样本权重,RF只给样本权重(随机选择样本点个数)
  • RF在总体数据集中速记选取样本,ada选择所有样本。

以上是关于机器学习之集成学习简介的主要内容,如果未能解决你的问题,请参考以下文章

机器学习之集成学习

机器学习之集成学习

机器学习之集成学习

机器学习之Adaboost算法原理

机器学习之集成学习

集成学习之Adaboost算法原理小结