GBDT总结复习课程.doc

GBDT总结复习课程.doc

ID:57850233

大小:253.50 KB

页数:10页

时间:2020-09-02

GBDT总结复习课程.doc_第1页
GBDT总结复习课程.doc_第2页
GBDT总结复习课程.doc_第3页
GBDT总结复习课程.doc_第4页
GBDT总结复习课程.doc_第5页
资源描述:

《GBDT总结复习课程.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、GBTs目录1.GBTs与随机森林的比较2.GBTs的介绍2.1GBTs的简单介绍2.2GBTs算法2.3损失函数2.4使用技巧2.5训练误差3.示例3.1回归3.2分类4.参数设置1.GBTs与随机森林的比较GBTs和随机森林都是对决策树的集成学习算法。但是它们的学习过程却不一样:①GBTs一次只能训练一棵树(个体学习器间存在强依赖关系,必须使用串行生成序列化方法),而随机森林个体学习器间不存在强依赖关系,可同时生成并行化,所以GBTs的训练时间要比随机森林长。另一方面,与随机森林相比,GBTs通常使用更小(深度更浅)的树,这样训练更小的树花费的时间更少。②随机森林不太

2、容易过度拟合。在随机森林中训练更多的树可以减少过度拟合的可能性,但是使用GBTs训练更多的树会增加过度拟合的可能性。(在统计学中,随机森林通过使用更多的树来减少方差,而GBTs通过使用更多的树来减少偏差)。③随机森林可以更容易调整树的数量,因为它性能随着树的数量单调递增(然而,如果GBTs树的数量变得太大,则其性能开始降低)。④组成随机森林的树可以是分类树,也可以是回归树;而GBTs只由回归树组成。(尽管GBTs调整后也可用于分类,但不代表GBTs是分类树)⑤对于最终的输出结果而言,随机森林采用多数投票等;而GBDT则是将所有结果累加起来,或者加权累加起来。2.GBTs的

3、介绍2.1GBTs的简单介绍GBTs是对决策树的集成学习。GBTs迭代地训练决策树以使得损失函数最小化。类似于决策树,GBTs可处理特征分类问题,也可扩展到多类问题,不需要特征缩放。spark.mllib支持GBTs用于二分类和回归问题。spark.mllib使用现有的决策树实现来实现GBTs。注:GBTs还不支持多分类问题,对于多分类问题可以使用决策树或者随机森林。2.2GBTs算法2.2.1提升树算法回归问题提升树使用以下前向分步算法:在前向分步算法的第步,给定当前模型,需求解得到,即第棵树的参数。当采用平方误差损失函数时,其损失变为:这里,称为当前模型拟合数据的残差

4、。☆算法(回归问题的提升树算法)输入:训练数据集输出:提升树(1)初始化(2)对(a)计算残差(b)拟合残差学习一个回归树,得到(c)更新(3)得到回归提升树2.2.2梯度提升当损失函数是平方损失和指数损失,每一步的优化是很简单的。但针对一般损失函数而言,往往每一步优化并不容易。针对这一问题,Freidman提出了梯度提升(gradientboosting)算法。这是利用最速下降的近似方法,其关键是利用损失函数的负梯度在当前模型的值作为回归问题提升树算法中的参差近似值,拟合一棵回归树。☆算法(梯度提升算法)输入:训练数据集损失函数;输出:回归树(1)初始化(2)对(a)对

5、,计算(b)对拟合一个回归树,得到第颗树的叶节点区域,(c)对,计算(d)更新(3)得到回归树2.3损失函数下表列出了spark.mllib中当前支持GBTs的损失函数。注意,每个损失函数适用于一个分类或回归中,而不是两者。注:=实例的数目;=第个实例的标签;=第个实例的特征;=第个实例的预测标签。损失函数任务公式对数损失函数分类均方误差回归绝对误差回归2.4使用技巧①损失函数:见上一节关于损失函数及其对任务(分类与回归)的适用性的信息。不同的损失可以产生不同的结果,这取决于具体数据集。②numIterations:为树的数量。每次迭代产生一棵树。增加树的数量会使得模型更

6、具表达力,提高了训练数据的准确性。然而,如果树的数量太大,测试时间会变长。2.5训练误差当训练很多树时,提升树会出现过拟合。为了防止出现过拟合问题,在训练过程中进行验证是很有必要的。当训练误差落在某一范围时,停止训练。在实践过程中,训练误差往往是先降低后上升。还可能存在一种训练误差不单调变化的情形,此时建议设置足够大的误差范围,并使用evaluateEachIteration(每次迭代给出的误差和损失)来检查验证曲线以调整迭代次数。3.示例3.1GBTs的分类3.2GBTs的回归4.参数设置4.1分类程序参数①数据②将数据划分:70%为训练数据集,30%为测试数据集③算法

7、类型④迭代次数,每训练一次产生一棵树(实际要使用更多的迭代次数)⑤分类的类别数⑥决策树的最大深度4.2回归程序参数①数据②将数据划分:70%为训练数据集,30%为测试数据集③算法类型④迭代次数,每训练一次产生一棵树(实际要使用更多的迭代次数)⑤决策树的最大深度信贷管理系统技术人员业务学习资料本资料针对的学习对象是开发信贷管理系统的技术人员,旨在全面概括地介绍我国商业银行通行的业务处理、业务管理手段,重点介绍商业银行信贷业务的处理和管理方法,以便更有针对性地开展系统开发工作。同时对于其他银行系统开发技术人员以及市场销售人员也可起

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。