zoukankan      html  css  js  c++  java
  • 树模型

    1. 提升树

      以决策树为基函数的提升方法称为提升树,决策树可以分为分类树和回归树,提升树模型可以表示为决策树的加法模型,其数学表达式为:

    其中表示决策树,表示决策树的参数,为决策树的个数。

    提升树算法流程:

      输入:训练数据集

      ① 初始化

      ②对每棵树

        ③对每个样本,计算残差

        ④利用训练一棵决策树,得到

        ⑤更新

      ⑥完成上述迭代,得到提升树

    2. 梯度提升决策树

    梯度提升决策树算法流程:

      输入:训练数据集 ;损失函数

      ①初始化

              

      ②对每棵树

        ③对每个样本,计算残差

            

        ④利用训练出第棵回归树,其叶子节点划分的区域为

        ⑤对于回归树的每一个叶子节点,计算其输出值

            

        ⑥更新

            

      ⑦得到最终提升回归树

            

    3. 随机森林

      随机森林是用随机的方式建立一个森林,森林由多棵决策树组成,每棵决策树之间无任何关联。在得到一个森林后,当输入一个新样本,让每棵决策树预测(投票或求均值)。

    随机性体现:

      样本随机性

      特征随机性

    随机森林算法优点:

      训练速度快,泛化能力强,可并行建树

      能够处理具有高维特征的输入样本,不需要降维

      对缺省值问题也能获得很好的结果

      可学到特征之间的相互影响

      在生成过程中,能够获取到内部生成误差的一种无偏估计

    4. XGBoost

    5. 提升树和梯度提升决策树

      提升树和梯度提升决策树主要区别在于梯度提升决策树是利用最速下降的近似方法,即利用损失函数的负梯度在当前模型的值作为回归问题中提升树算法的残差的近似值来拟合一棵回归树。

    6. 参考博客

      https://yq.aliyun.com/articles/667318

  • 相关阅读:
    spring源码阅读(一)
    多线程学习(十)
    多线程学习(九)
    多线程学习(八)
    多线程学习(七)
    多线程学习(六)
    多线程学习(五)
    多线程学习(四)
    matlab-table
    Matlab
  • 原文地址:https://www.cnblogs.com/LuckPsyduck/p/11983695.html
Copyright © 2011-2022 走看看