1.提升树

  以决策树为基函数的提升方法称为提升树。决策树可以分为分类树和回归树。提升树模型可以表示为决策树的加法模型。

  针对不同的问题的提升术算法的主要区别就是损失函数的不同,对于回归问题我们选用平方损失函数,对于分类问题,我们使用指数损失函数。特别的,对于二分类问题,我们提升树就是把AdaBoost的基分类器选为二分类树即可。

  对于回归问题的提升树,我们每一步都是在拟合残差,为什么是在拟合残差?,看公式

                                     

  其中,r代表的就是残差。我们并不是说我们在拟合残差,而是说我们对于回归问题,选用平方损失函数,然后推导求解fm时,可以认为它是在拟合残差。

  对应的回归问题的提升算法如下:

  

  (1)初始化f0

  (2)对m = 1,2,3...,M

    (2.1) 计算每一个数据的残差:

                   

   (2.2)拟合残差学习一颗回归树,得到

   (2.3)

(3)得到回归问题的提升树

          

  以上就是提升树的内容,主要理解为什么说提升树是拟合残差的,数学推导

2.梯度提升树

  梯度提升的思想主要借鉴了梯度下降法。

  

  

 

  

梯度提升决策树(GBDT)的更多相关文章

  1. 机器学习之梯度提升决策树GBDT

    集成学习总结 简单易学的机器学习算法——梯度提升决策树GBDT GBDT(Gradient Boosting Decision Tree) Boosted Tree:一篇很有见识的文章 https:/ ...

  2. [机器学习]梯度提升决策树--GBDT

    概述 GBDT(Gradient Boosting Decision Tree) 又叫 MART(Multiple Additive Regression Tree),是一种迭代的决策树算法,该算法由 ...

  3. GBDT:梯度提升决策树

    http://www.jianshu.com/p/005a4e6ac775 综述   GBDT(Gradient Boosting Decision Tree) 又叫 MART(Multiple Ad ...

  4. chapter02 三种决策树模型:单一决策树、随机森林、GBDT(梯度提升决策树) 预测泰坦尼克号乘客生还情况

    单一标准的决策树:会根每维特征对预测结果的影响程度进行排序,进而决定不同特征从上至下构建分类节点的顺序.Random Forest Classifier:使用相同的训练样本同时搭建多个独立的分类模型, ...

  5. Spark2.0机器学习系列之6:GBDT(梯度提升决策树)、GBDT与随机森林差异、参数调试及Scikit代码分析

    概念梳理 GBDT的别称 GBDT(Gradient Boost Decision Tree),梯度提升决策树.     GBDT这个算法还有一些其他的名字,比如说MART(Multiple Addi ...

  6. scikit-learn 梯度提升树(GBDT)调参小结

    在梯度提升树(GBDT)原理小结中,我们对GBDT的原理做了总结,本文我们就从scikit-learn里GBDT的类库使用方法作一个总结,主要会关注调参中的一些要点. 1. scikit-learn ...

  7. 梯度提升树(GBDT)原理小结(转载)

    在集成学习值Adaboost算法原理和代码小结(转载)中,我们对Boosting家族的Adaboost算法做了总结,本文就对Boosting家族中另一个重要的算法梯度提升树(Gradient Boos ...

  8. 机器学习 之梯度提升树GBDT

    目录 1.基本知识点简介 2.梯度提升树GBDT算法 2.1 思路和原理 2.2 梯度代替残差建立CART回归树 1.基本知识点简介 在集成学习的Boosting提升算法中,有两大家族:第一是AdaB ...

  9. 【深度森林第三弹】周志华等提出梯度提升决策树再胜DNN

    [深度森林第三弹]周志华等提出梯度提升决策树再胜DNN   技术小能手 2018-06-04 14:39:46 浏览848 分布式 性能 神经网络   还记得周志华教授等人的“深度森林”论文吗?今天, ...

随机推荐

  1. spring-mvc访问本地html文件

    项目中要用到在线预览word文档,刚开始考虑是要将word转成pdf文件,然后再直接在浏览器打开pdf文档即可, 但是项目部署在Linux下,在网上搜了一下没有找到合适的方法, 后来项目组讨论用POI ...

  2. Charles使用心得总结

    一.下载/安装/配置 1.1下载并安装Charles. mac版和window版都有,下载可以去Charles官网(http://www.charlesproxy.com/download/),下载下 ...

  3. gitignore规则探究

    PS:转自https://blog.csdn.net/o07sai/article/details/81043474 网上有好多gitignore的帖子,文章,都说很简单的.但是我怎么就用不好呢? 我 ...

  4. Android回调监听的实现

    一.首先定义监听函数 public interface OnKeyValueListener { void getKeyValueClick(String value); } 二.在需要传递内容的 A ...

  5. Jace 上新建 Station 配置 笔记

    1.Station站点的结构图 2.niagara 结构框架图 Niagara 系统的架构是围绕着“以组件(Component)为导向的编程”为核心设计的.组件(Component)是使用Java 编 ...

  6. 树链剖分——NOI2015

    8说了上代码 给定一棵树,两种操作 a x:x->root路径上的点权值置1 b x: 把x的子树所有结点权值置0 树上的区间更新操作,显然是要维护dfs 第一个操作暴力显然是t,用树剖把复杂度 ...

  7. linux 相关( 随时更新)

    Linux笔记: 本地文件传到服务器上: scp -P8022 /文件路径 niehaidong@101.201.75.57:/tmp/ 从服务器上到本地 scp -P8022  niehaidong ...

  8. Net Core Docker 容器部署,修改,保存

    运行镜像 [root@localhost opt]# docker run -itd -p : microsoft/dotnet:latest 查看运行的docker [root@localhost ...

  9. Docker 的点点滴滴

    Docker 是一个开源的应用容器引擎,基于 Go 语言 并遵从Apache2.0协议开源. Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级.可移植的容器中,然后发布到任何流行的 Li ...

  10. CentOs查看某个字符串在某个目录下的行数

    如果你想在当前目录下 查找"hello,world!"字符串,可以这样: grep -rn "hello,world!" ./ ./ : 表示路径为当前目录. ...