笔记︱决策树族——梯度提升树(GBDT)
每每以为攀得众山小,可、每每又切实来到起点,大牛们,缓缓脚步来俺笔记葩分享一下吧,please~
———————————————————————————
本笔记来源于CDA DSC,L2-R语言课程所学进行的总结。
一、介绍:梯度提升树(Gradient Boost Decision Tree)
Boosting算法和树模型的结合。按次序建立多棵树,每棵树都是为了减少上一次的残差(residual),每个新的模型的建立都是为了使之前模型的残差往梯度方向减少。最后将当前得到的决策树与之前的那些决策树合并起来进行预测。
相比随机森林有更多的参数需要调整。
————————————————————————————————————————————————————————————
二、随机森林与梯度提升树(GBDT)区别
随机森林:决策树+bagging=随机森林
梯度提升树:决策树Boosting=GBDT
两者区别在于bagging boosting之间的区别,可见:
bagging |
boosting |
|
取样方式 |
bagging采用均匀取样 |
boosting根据错误率来采样 |
精度、准确性 |
相比之,较低 |
高 |
训练集选择 |
随机的,各轮训练集之前互相独立 |
各轮训练集的选择与前面各轮的学习结果相关 |
预测函数权重 |
各个预测函数没有权重 |
boost有权重 |
函数生成顺序 |
并行生成 |
顺序生成 |
应用 |
象神经网络这样极为消耗时间的算法,bagging可通过并行节省大量的时间开销 baging和boosting都可以有效地提高分类的准确性 |
baging和boosting都可以有效地提高分类的准确性 一些模型中会造成模型的退化(过拟合) boosting思想的一种改进型adaboost方法在邮件过滤,文本分类中有很好的性能 |
随机森林 |
梯度提升树 |
三、R中与决策树有关的Package
单棵决策树:rpart/tree/C50
随机森林:randomforest/ranger
梯度提升树:gbm/xgboost
树的可视化:rpart.plot
每每以为攀得众山小,可、每每又切实来到起点,大牛们,缓缓脚步来俺笔记葩分享一下吧,please~
———————————————————————————
笔记︱决策树族——梯度提升树(GBDT)的更多相关文章
- scikit-learn 梯度提升树(GBDT)调参笔记
在梯度提升树(GBDT)原理小结中,我们对GBDT的原理做了总结,本文我们就从scikit-learn里GBDT的类库使用方法作一个总结,主要会关注调参中的一些要点. 1. scikit-learn ...
- scikit-learn 梯度提升树(GBDT)调参小结
在梯度提升树(GBDT)原理小结中,我们对GBDT的原理做了总结,本文我们就从scikit-learn里GBDT的类库使用方法作一个总结,主要会关注调参中的一些要点. 1. scikit-learn ...
- 梯度提升树(GBDT)原理小结(转载)
在集成学习值Adaboost算法原理和代码小结(转载)中,我们对Boosting家族的Adaboost算法做了总结,本文就对Boosting家族中另一个重要的算法梯度提升树(Gradient Boos ...
- 机器学习 之梯度提升树GBDT
目录 1.基本知识点简介 2.梯度提升树GBDT算法 2.1 思路和原理 2.2 梯度代替残差建立CART回归树 1.基本知识点简介 在集成学习的Boosting提升算法中,有两大家族:第一是AdaB ...
- 梯度提升树(GBDT)原理小结
在集成学习之Adaboost算法原理小结中,我们对Boosting家族的Adaboost算法做了总结,本文就对Boosting家族中另一个重要的算法梯度提升树(Gradient Boosting De ...
- 梯度提升树GBDT算法
转自https://zhuanlan.zhihu.com/p/29802325 本文对Boosting家族中一个重要的算法梯度提升树(Gradient Boosting Decison Tree, 简 ...
- 梯度提升树GBDT总结
提升树的学习优化过程中,损失函数平方损失和指数损失时候,每一步优化相对简单,但对于一般损失函数优化的问题,Freidman提出了Gradient Boosting算法,其利用了损失函数的负梯度在当前模 ...
- 机器学习(七)—Adaboost 和 梯度提升树GBDT
1.Adaboost算法原理,优缺点: 理论上任何学习器都可以用于Adaboost.但一般来说,使用最广泛的Adaboost弱学习器是决策树和神经网络.对于决策树,Adaboost分类用了CART分类 ...
- GBDT(梯度提升树)scikit-klearn中的参数说明及简汇
1.GBDT(梯度提升树)概述: GBDT是集成学习Boosting家族的成员,区别于Adaboosting.adaboosting是利用前一次迭代弱学习器的误差率来更新训练集的权重,在对更新权重后的 ...
随机推荐
- JDK配置测试
JDK配置测试 介绍两种JDK配置方式: 一:大多数人配置方法 1.下载JDKhttps://www.baidu.com2.配置环境变量单击"计算机-属性-高级系统设置",单击&q ...
- Markdown内嵌Html语言
概述 Markdown是内嵌Html语言的,这使得我们可以在Markdown文档里面实现很多有趣的东西.现在记录在此,供自己以后参考,相信对其他人也有用. 介绍 Markdown的语法只有一个目标:作 ...
- 树莓派小车By 树莓派爱好者ITJoker(通过python socket通信实现树莓派视频小车)(一)
本文由树莓派爱好者ITJoker 编辑,转载请注明出处.本人也有新浪博客同样是树莓派爱好者ITJoker 所需材料:树莓派2B或者2B以上,L2985n驱动板,若干排线,电池及电池盒,usb无线网卡( ...
- 以Apache模块的方式编译安装php-5.5.4
新建用户及用户组 groupadd webuser useradd -g webuser webuser 下载php-5.5 下载地址:http://pan.baidu.com/s/1o6I6Lnk ...
- Install MongoDB on Linux Systems 速记
下载mongodb最新版本: 下载链接:http://pan.baidu.com/s/1kTDnkyz curl -O http://downloads.mongodb.org/linux/mongo ...
- BZOJ 1069: [SCOI2007]最大土地面积 [旋转卡壳]
1069: [SCOI2007]最大土地面积 Time Limit: 1 Sec Memory Limit: 128 MBSubmit: 2978 Solved: 1173[Submit][Sta ...
- 在C#中“?”有三种用法
在C#中“?”有三种用法. 1.可空类型修饰符(?):引用类型可以使用空引用表示一个不存在的值,而值类型通常不能表示为空,例如:string str=null;是正确的.int i=null:编译器将 ...
- stat,fstat,lstat三者区别
fstat ,lstat,stat; 头文件:#include<sys/stat.h> #include<sys/types.h> #include<unistd.h&g ...
- typedef void(*Fun)(void);
typedef void(*Fun)(void); 函数类似于数组,函数名就是它的首地址: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 ...
- MySQL对sum()字段 进行条件筛选,使用having,不能用where
显示每个地区的总人口数和总面积.仅显示那些面积超过1000000的地区. SELECT region, SUM(population), SUM(area) FROM bbc GROUP BY reg ...