热门标签 | HotTags
当前位置:  开发笔记 > 人工智能 > 正文

GBDT面试相关问题

GBDT基本原理GBDT基本原理是通过多轮迭代,每轮迭代产生一个弱分类器(利用CART回归树构建),每个分类器在上一轮分类器的残差基础上进行训练GBDT优点1.可以灵活处理各种类型

GBDT基本原理


GBDT基本原理是通过多轮迭代,每轮迭代产生一个弱分类器(利用CART回归树构建),每个分类器在上一轮分类器的残差基础上进行训练


GBDT优点


1.可以灵活处理各种类型的数据,包括连续值和离散值;
2. 在相对少的调参时间情况下,预测的准确率也比较高 ;
3. 使用一些健壮的损失函数,对异常值的鲁棒性非常强。比如 Huber损失函数和Quantile损失函数。


GBDT缺点


由于弱学习器之间存在依赖关系,难以并行训练数据。不过可以通过自采样的SGBT来达到部分并行


GBDT分裂规则


GBDT分裂会选取使得误差下降最多的特征进行分裂(在进行节点的分裂时,需要计算每个特征的信息增益,最终选信息增益最大的那个特征去做分裂),如果这棵树不能拟合好,那么就要通过负梯度计算出新的残差向量来拟合新的cart回归树
信息增益: 表示在一个条件下,信息不确定性减少的程度


GBDT继续分裂的终止条件


主要可以通过以下手段进行操作:
1.节点分裂时的最小样本数;
2.树的最大深度;
3.树的最大叶子节点数;
4.loss满足约束条件


GBDT的“梯度提升”体现在哪个阶段


前面提到,在构建CART树时使用了损失函数的负梯度,而不是所谓的残差=真值-预测值;实际上是一种更宽广的概念,但是在平方损失的情况下,上面等式是成立的。另外使用损失函数的梯度可以保证损失函数最小值。所以GBDT的梯度提升体现在构建cart树的所需的负梯度阶段,其利用最快速下降的近似方法


GBDT如何做特征选择


通过特征j在单颗树中的重要度的平均值来衡量特征j的全局重要度,从而做特征选择


GBDT为什么使用CART回归树而不是使用分类树


这个是GBDT基本原理决定的,GBDT主要是利用残差逼近的方式,这就意味每棵树的值是连续的可叠加的,这一点和回归树输出连续值不谋而合,如果采用分类树,那么残差逼近进行叠加就会使得这种叠加没有意义


GBDT哪些部分可以并行


1.计算每个样本的负梯度;
2.分裂挑选最佳特征及其分割点时,对特征计算相应的误差及均值时;
3.更新每个样本的负梯度时;
4.最后预测过程中,每个样本将之前的所有树的结果累加的时候


为什么GBDT的树深度较RF通常都比较浅


对于机器学习来说,泛化误差可以理解为两部分,分别是偏差(bias)和方差(variance);偏差指的是算法的期望预测与真实预测之间的偏差程度,反应了模型本身的拟合能力;方差度量了同等大小的训练集的变动导致学习性能的变化,刻画了数据扰动所导致的影响。当模型越复杂时,拟合的程度就越高,模型的训练偏差就越小;但此时如果换一组数据可能模型的变化就会很大,即模型的方差很大,所以模型过于复杂的时候会导致过拟合。对于RF来说由于并行训练很多不同的分类器的目的就是降低这个方差(variance)。所以对于每个基分类器来说,目标就是如何降低这个偏差(bias),所以我们会采用深度很深甚至不剪枝的决策树。而对于GBDT来说由于利用的是残差逼近的方式,即在上一轮的基础上更加拟合原数据,所以可以保证偏差(bias),所以对于每个基分类器来说,问题就在于如何选择 variance 更小的分类器,即更简单的分类器,所以我们选择了深度很浅的决策树。


GBDT与RF的区别


相同点:
GBDT与RF都是采用多棵树组合作为最终结果
不同点:
1.RF的树可以是回归树也可以是分类树,而GBDT只能是回归树。
2.RF中树是独立的,相互之间不影响,可以并行;而GBDT树之间有依赖,是串行。
3.RF最终的结果是有多棵树表决决定,而GBDT是有多棵树叠加组合最终的结果。
4.RF对异常值不敏感,原因是多棵树表决,而GBDT对异常值比较敏感,原因是当前的错误会延续给下一棵树。
5.RF是通过减少模型的方差来提高性能,而GBDT是减少模型的偏差来提高性能的。
6.RF不需要进行数据预处理,即特征归一化。而GBDT则需要进行特征归一化


参考文章
参考文章1

如有侵权,请联系,速删除


推荐阅读
author-avatar
黑马@梦想
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有