首页
题库
面试
求职
学习
竞赛
More+
所有博客
搜索面经/职位/试题/公司
搜索
我要招人
去企业版
登录 / 注册
首页
>
试题广场
>
说明GBDT和Xgboost的异同点(仅需要说明理论差异,不
[问答题]
说明GBDT和Xgboost的异同点(仅需要说明理论差异,不需要回答工程实现细节)。
添加笔记
求解答(0)
邀请回答
收藏(51)
分享
纠错
2个回答
添加回答
2
失败人士做数据
1.GBDT的损失函数只利用了函数一阶导的信息,而xgboost利用了函数的二阶导信息,效率更高更准确。同时xgboost的损失函数还添加了模型复杂度的惩罚项,防止过拟合。
2.Xgboost可以自定义弱学习器类型,自定义损失函数,前提是损失函数具有二阶导特性。
3.Xgboost每一轮的训练中,不仅支持样本采样,还支持特征采样
4.Xgboost每一轮的训练,各层节点可以并行训练,gbdt不行
5.xgboost可以处理缺失值
6.xgboost在寻找分裂节点和分裂值时,是采用了分位数的方法
发表于 2019-02-28 14:35:11
回复(0)
0
食堂在逃干饭王
1. GBDT只用了损失函数一阶导,而XGB用了损失函数的二阶导,能更高效更精确地逼近真实损失;
2. XGB在损失函数中加入了正则项,避免过拟合;
3. XGB能够自动处理缺失值;
4. XGB支持多种基学习器,如线性学习器,而GBDT只支持CART;
5. XGB预先将各特征按值排序并存储于block中,且预先根据score的值的分位点确定候选切分点,在建立树时,能并行地对每个特征并行计算其最大增益,能极大提高计算效率;
6. XGB支持对特征的类似RF的列采样,而GBDT不行;
7. XGB支持自定义损失函数,但要求二阶可导;
编辑于 2021-01-26 15:46:40
回复(0)
这道题你会答吗?花几分钟告诉大家答案吧!
提交观点
问题信息
运维工程师
算法工程师
乐信
2019
滴滴
来自:
2019校园招聘算法工...
上传者:
小小
难度:
2条回答
51收藏
2884浏览
热门推荐
相关试题
下面描述中,符合结构化程序设计风格...
搜狐
Java工程师
C++工程师
iOS工程师
安卓工程师
运维工程师
前端工程师
算法工程师
PHP工程师
2018
评论
(1)
当n=6时,下列函数的返回值是:(...
C++
测试工程师
乐信
C语言
评论
(21)
来自
2019乐信校园招聘测试...
常用的排序算法中,平均时间复杂度为...
运维工程师
算法工程师
滴滴
乐信
2019
评论
(2)
来自
2019校园招聘算法工程...
决策树算法只能做2值分类,不能做多...
运维工程师
算法工程师
滴滴
乐信
2019
评论
(0)
来自
2019校园招聘算法工程...
扫描二维码,关注牛客网
意见反馈
下载牛客APP,随时随地刷题