前言
面试中几乎是必问的内容,不知道你掌握的怎么样了呢,不管怎么样,看完这篇就没问题!
提示:以下是本篇文章正文内容,下面案例可供参考
一、常见问题
- GBDT和XGBoost的区别?
- XGBoost和LightGBM的区别?
- XGBoost和RF(随机森林)的区别?
- XGBoost损失函数有什么要求?
- LightGBM的目标函数是什么?
二、解惑
Boosting家族,从最开始的AdaBoost到GBDT,需要明确的一点是XGB和LGB都是对GBDT的高效实现。而这类树模型又不可避免的涉及到决策树,其中最为著名的就是CART了。
不同的问法,面试官想得到的答案是不一样的,但无论怎么问,涉及到的本质问题不外乎以下两种:
- Boosting和Bagging的区别?
- XGB、LGB在继承的同时对他们的爸爸GBDT做了那些改进?
Boosting和Bagging
要想准确的回答这个问题并不容易,需要思考两者的本质区别,可以从偏差方差的角度来展开,也可以从两者算法的思想的不同来展开。
GBDT与它的两个孩子
XGB最先开源出来的,应用广泛,改进主要在损失函数、分裂方式。工程实现上也有诸多改进,如支持多种基分类器、数据采样、缺失值处理。
两个孩子中LGB当然是最优秀的,那么优秀在哪呢?快速直方图、带深度限制的leaf-wise生长策略、类别类型。
总结
只要抓住面试官的意图,相信这部分是没有问题的。