zoukankan      html  css  js  c++  java
  • 集成学习基础知识总结-Bagging-Boosting

    理论

    概率近似正确((probably approximately correct)学习框架下。一个概念是强可学习的充分必要条件是这个概念是弱可学习(仅比随机猜测稍好)。

    要求

    个体学习器要好而不同。好-要不随机猜测强,不同--多样性

    Bagging (Bootstrap Aggregating):随机森林

    通过bootstrap采样形成N个数据集(样本扰动来保证多样性),每个数据集训练一个模型,最终预测结果由投票法决定。

    特点:

    • boostrap采样。
    • 并行结构
    • 大多数投票决定最终结果。

    随机森林的特点:

    • CART树的集合。

    • Binary Partition。

    • 没有剪枝。

    • 两个随机性。

    stacking:带权重的bagging

    Boosting: H(x) = sign(∑αi hi(x))

    先从初始训练集训练出一个基学习器,再根据基学习器的表现对训练样本分布进行调整,使得先前基学习器做错的训练样本在后续受到更多关注,然后基于调整后的样本分布来训练下一个基学习器如此重复进行,直至基学习器数目达到事先指定的值T , 最终将这T 个基学习器进行加权结合.

    特点:

    • 关注降低偏差。
    • 分类器串行生成
    • 训练样本有权重(调整权重等价于调整分布)。
    • 输出结果通过加权结合(weighted voting)

    AdaBoost: Adaptive Boosting,权重自适应

    特点:

    • 提高那些被前一轮弱分类器错误分类样本的权值,降低那些被正确分类样本的权值(训练样本分布调整方式)。
    • 加权多数表决加大分类误差率小的弱分类器的权值,使其 在表决中起较大的作用,减小分类误差率大的弱分类器的权值,使其在 表决中起较小的作用。(加权结合方式).

    梯度提升树(Gradient Boosting Decison Tree, GBDT;Gradient Boosting Tree)

    特点:

    • 采用CART树为基学习器
    • 提升树采用前向分步算法:从前向后,每一步只学习一个基函数及其系数,逐步逼近目标函数式。
    • 损失函数的负梯度作为残差的估计值。

    XGBoost

    特点:

    • 正则化项防止过拟合。
    • XGBoost使用了一阶和二阶偏导, 二阶导数有利于梯度下降的更快更准。
  • 相关阅读:
    java.lang.Math.pow方法
    【动态代理】增强代理方法、代理多种方法
    Exception in thread "main" java.net.ConnectException: Connection refused: connect
    serialVersionUID设置自动添加
    三个线程之间的通信
    LinkedList源码分析
    JavaScript学习
    Java学习大纲
    w3cschool-javascript教程-学习笔记
    FreeMarker学习总结
  • 原文地址:https://www.cnblogs.com/justisme/p/12835288.html
Copyright © 2011-2022 走看看