gradient boosted regression tree
这个算法出自Greedy function Approximation – A Gradient Boosting Machine
作者实在是有够抽象,一个不复杂的算法让他讲的那么复杂
本人也参考了这篇博客
http://www.cnblogs.com/LeftNotEasy/archive/2011/01/02/machine-learning-boosting-and-gradient-boosting.html
但是,最终让我基本明白这个算法还是看了这篇论文 web-search ranking with initialized gradient boosted regression trees
1. 首先讲下decision tree, 按照书上的算法是通过信息增益进行结点的分割和建树,这里我们是通过
建树
2. 再讲下random forest.RF与boosted trees没有多大关系。RF就是每次随机选择实例,并随机选择k个特征进行建树,决策的过程就是对所有树输出的结果的平均。
优点就是不会有过拟合。
这里说的不错:http://www.cnblogs.com/LeftNotEasy/archive/2011/03/07/random-forest-and-gbdt.html
按这种算法得到的随机森林中的每一棵都是很弱的,但是大家组合起来就很厉害了。我觉得可以这样比喻随机森林算法:每一棵决策树就是一个精通于某一个窄领域的专家(因为我们从M个feature中选择m让每一棵决策树进行学习),这样在随机森林中就有了很多个精通不同领域的专家,对一个新的问题(新的输入数据),可以用不同的角度去看待它,最终由各个专家,投票得到结果。
3. gradient boosted trees
和rf类似,也是建立多颗树,并且决策的过程也是所有树输出结果的平均
但是当前树的建立是基于前面所有树的建立的。
每一次建立模型是在之前建立模型损失函数的梯度下降方向。这句话有一点拗口,损失函数(loss function)描述的是模型的不靠谱程度,损失函数越大,则说明模型越容易出错(其实这里有一个方差、偏差均衡的问题,但是这里就假设损失函数越大,模型越容易出错)。如果我们的模型能够让损失函数持续的下降,则说明我们的模型在不停的改进,而最好的方式就是让损失函数在其梯度(Gradient)的方向上下降。
首先,前m-1个模型是
其损失函数的梯度是:
那么下一个模型m,注意,就是要等于这个梯度,使得前m个模型相加的损失函数最小
对于g的系数,完全可以不管,影响不大
让r = g
那么就可以建立一颗树,
所以,gradient tree的装B算法可以这样描述:
其实,算法很简单,就是
注意其中,r = r- aT,r就是梯度
然后在下一轮的迭代中,就是根据梯度r来建树
gradient boosted regression tree相关推荐
- 台湾大学林轩田机器学习技法课程学习笔记11 -- Gradient Boosted Decision Tree
红色石头的个人网站:redstonewill.com 上节课我们主要介绍了Random Forest算法模型.Random Forest就是通过bagging的方式将许多不同的decision tre ...
- 机器学习技法 之 梯度提升决策树(Gradient Boosted Decision Tree)
梯度提升决策树从名字看是由三个部分组成,这里的提升(Boosted)指的是 AdaBoost 的运用,现在先看一下后两个部分提升决策树(Adaptive Boosted Decision Tree). ...
- 机器学习技法11: Gradient Boosted Decision Tree(GBDT)
文章目录 11.1 Adaptive Boosted Decision Tree 11.2 Optimization View of AdaBoost 11.3 Gradient Boosting 1 ...
- Gradient Boosted Decision Trees详解
感受 GBDT集成方法的一种,就是根据每次剩余的残差,即损失函数的值.在残差减少的方向上建立一个新的模型的方法,直到达到一定拟合精度后停止.我找了一个相关的例子来帮助理解.本文结合了多篇博客和书,试图 ...
- Gradient Boosting Decision Tree学习
Gradient Boosting Decision Tree,即梯度提升树,简称GBDT,也叫GBRT(Gradient Boosting Regression Tree),也称为Multiple ...
- Gradient Boosted Decision Trees(GBDT)详解
感受 GBDT集成方法的一种,就是根据每次剩余的残差,即损失函数的值.在残差减少的方向上建立一个新的模型的方法,直到达到一定拟合精度后停止.我找了一个相关的例子来帮助理解.本文结合了多篇博客和书,试图 ...
- 机器学习中的算法:决策树模型组合之GBDT(Gradient Boost Decision Tree)
转载自:http://blog.csdn.net/holybin/article/details/22914417 前言 决策树这种算法有着很多良好的特性,比如说训练时间复杂度较低,预测的过程比较快速 ...
- GBDT(Gradient Boosting Decision Tree
GBDT(Gradient Boosting Decision Tree) 又叫 MART(Multiple Additive Regression Tree),是一种迭代的决策树算法,该算法由 ...
- 转载——Regression Tree 回归树
本文转载于" 一个拉风的名字"的"Regression Tree 回归树" 1. 引言 AI时代,机器学习算法成为了研究.应用的热点.当前,最火的两类算法莫过于 ...
最新文章
- C:内存中供用户使用的存储空间
- 计算机科学导论第二章,计算机科学导论第二章.doc
- cmos全局曝光算法_2019腾讯广告算法大赛方案分享(冠军)
- 【python 3.6】调用另一个文件的类的方法
- iOS内存管理机制解析
- Unity超基础学习笔记(二)
- 秋风下的萧瑟 NOIP2018 游记
- HDU2519 新生晚会【组合计算】
- 天天工作拧螺丝,怎么突破瓶颈?
- 计算机应用技术拼音,搜狗拼音输入法研究 - 东北大学计算机应用技术研究所Web信息处理小组 - BlogJava...
- 点击页面出现富强民主,文明和谐之类的文字
- 植树节推文如何排版?—135植树节样式上新
- 什么是Galil(加利尔)运动控制卡,它是用来干嘛的呢?galil开发文件dmc32.dll,动态链接库,API
- win10系统可禁用的服务器,window10哪些服务可以禁止
- 从基础出发,带你深入了解Synchronized ,Synchronized 相 关 问 题讲解
- IDEA搜索上一个下一个搜索关键字的快捷键
- 国产FPGA Ethercat从站实时低成本运动控制系统方案
- HTML基础 - HTML列表
- Android自定义View 学习整理
- 从“天地一体”到“移动组网”,中国量子通信产业是如何“炼成”的?
热门文章
- 【小白学习C++ 教程】二十二、C++ 中的STL容器stack、queue和map
- 【小白学习PyTorch教程】十五、BERT:通过PyTorch来创建一个文本分类的Bert模型
- 一、使用两台Centos7系统搭建Hadoop-3.1.4完全分布式集群
- jieba分词小案例
- 文本分类和序列标注“深度”实践
- 岗位推荐 | 百度视觉技术部招聘移动端视觉算法工程师
- 微信小程序view动态长度_微信小程序实现动态改变view标签宽度和高度的方法【附demo源码下载】...
- 已经无法合并还报请合并git_GIT 分支管理:创建与合并分支、解决合并冲突
- 全排列代码python_python全排列代码,求解释
- pagehelper 不分页几种情况的解决方法