机器学习:集成算法

1 集成算法概念

集成方法是将几种机器学习技术组合成一个预测模型元算法。把多个弱监督模型集合在一起,组成一个更全面的强监督模型。算法理念:取长补短。

1.1 集成算法使用规模

  • 数据大,划分多个小数据集,学习多个模型进行组合。
  • 数据小,利用booststrap方法进行抽样,得到多个数据集,分别训练多个模型再组合。

1.2 集成算法分类

  • bagging 袋装法(减小方差) - 并行集成 并联
  • boosting 提升法(减小偏差) - 序列集成 串联
  • stacking 堆叠法(改进预测) - 前一个模型输出的y是有一个模型的X,递进运算

1.3 集成算法特点

  • 1.集成算法不是一种分类器,而是一种分类器结合方法。
  • 2.通常来说,集成算法由于单个分类器算法。
  • 3.集成学习法由训练数据构建一组基分类器,然后通过对每个基分类器额预测投票来进行分类。
  • 4.集成算法选择弱分类器进行组合。
  • 5.集成算方效率比较低。

2 bagging算法

bagging方法是booststrap aggregating的缩写,采用的是随机有放回的选择训练数据然后构造多个分类器,最后组合投票。 代表算法随机森林。
在这里插入图片描述

  • 必要条件:

    • 各分类器之间相互独立
    • 基分类器应当好于随机猜测分类器(概率)
  • 总结:

    • bagging中多个基分类器得到的结果交叉叠加在一起,通过投票将有效部分筛选出,降低基分类器的方差,改善了泛化误差
    • 性能依赖基分类器的稳定性;如果基分类器不稳定,bagging有助于降低训练数据的随机波动导致的误差;如果稳定,则集成分类器误差主要由基分类器额偏仪倚引起
    • bagging选的样本随机,不能特定

2.1 随机森林算法

随机森林是最常用的集成算法之一。随机森林基分类器为决策树。

2.1.1 决策树之间的独立性

通过以下方法,保证决策树之间独立性,避免随机森林过拟合

  • 数据随机化:输入数据是随机的一部分。
  • 属性随机化:每棵决策树的构建所需要的特征是从整体的“特征集”中随机选取的。

2.1.2 bootstrap

bootstrap也称自助法

  • 从原数据集中有放回的抽取n个训练样本,进行k轮,得到k个训练集。
  • 每次使用一个训练集得到一个模型,最后得到k个模型。
  • 对分类问题:将上步得到的k个模型进行投票得到分类结果;对回归问题:计算上述模型的均值作为最后的结果。(所有模型重要性都相同)
  • 在统计中,所有样本有放回的抽取,完全没有抽取到的概率约等于63%
    在这里插入图片描述
  • 因此 ,当原数据样本中存在很大噪声的时候,通过bootstrap,最多能有1/3数据(袋外数据out of bag data)被拒绝。

2.1.3 随机森林算法流程

  • 1 从N样本中选取n个数据作为训练数据输入,一般情况n远小于N。每被捕捉到的就是袋外数据,可以用做误差估计。可以直接用袋外数据来测试模型,obb_score
  • 2 在特征集M中选m个特征构建决策树
  • 3 选最小基尼指数
  • 4 重复2和3步,得到森林
  • 5 预测,多棵树同时决策,最后投票决策

3 boosting算法

boosting算法训练过程是依次训练基础模型,并在训练过程中对训练集不断进行调整,最终将所有模型组合起来。代表算法adaboost。

  • 基本思想:不同训练集通过调整每个样本对应的权重,不同的权重应对不同的样本分布,而这个权重为分类器不断增加对错分样本的重视程度。利用弱分类器更新每个样本的权重,分类错误的样本就增加权重,正确就降低权重,得到新样本继续下一个分类器。直到k个分类去,最后某种策略得到最后的强分类器。
  • 只要弱分类器的分类精度高于随机分类器(概率)
  • boosting对噪声非常敏感。
    在这里插入图片描述

3.1 Adaboost算法流程:

Adaboost(自适应adaptive boosting)在当前基础模型训练时,提高训练集中前一个基础模型误分类样本的权重,使得前面被误分类的样本获得更高的关注,从而提高当前模型的效果。

  • 1 计算样本权重,初始化每个样本一个相同权重向量D
  • 2 计算错误率:训练样本进行训练后,再以训练样本进行测试,得到错误率 ϵ = 分 错 的 样 本 数 量 样 本 总 数 ϵ=\frac{分错的样本数量}{样本总数} ϵ=
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值