1.GBDT的基本原理是什么?
采用决策树作为弱分类器的Gradient Boosting算法被称为GBDT
梯度提升决策树(Gradient Boosting Decision Tree,GBDT)
其基本思想是根据当前模型损失函数的负梯度信息来训练新加入的弱分类器,然后将训练好的弱分类器以累加的形式结合到现有模型中。
开始训练第一棵树,训练的过程跟传统决策树相同,训练好第一棵树后,求得每个样本预测值与真实值之间的残差。用每个样本的残差训练下一棵树,直到残差收敛到某个阈值以下,或者树的总数达到某个上限为止。
首先计算出当前模型在所有样本上的负梯度,然后以该值为目标训练一个新的弱分类器进行拟合并计算出该弱分类器的权重,最终实现对模型的更新。
2梯度提升和梯度下降的区别和联系是什么?
GBDT使用梯度提升(Gradient Boosting)作为训练方法,而在逻辑回归或者神经网络的训练过程中往往采用梯度下降(Gradient Descent)作为训练方法。
两者都是在每一轮迭代中,利用损失函数相对于模型的负梯度方向的信息来对当前模型进行更新,只不过在梯度下降中,模型是以参数化形式表示,从而模型的更新等价于参数的更新。而在梯度提升中,模型并不需要进行参数化表示,而是直接定义在函数空间中,从而大大扩展了可以使用的模型种类。
3,GBDT的优点和局限性有哪些?
优点
(1)预测阶段的计算速度快,树与树之间可并行化计算。
(2)在分布稠密的数据集上,泛化能力和表达能力都很好
(3)采用决策树作为弱分类器使得GBDT模型具有较好的解释性和鲁棒性,能够自动发现特征间的高阶关系,并且也不需要对数据进行特殊的预处理如归一化等。
■ 局限性
(1)GBDT在高维稀疏的数据集上,表现不如支持向量机或者神经网络。
(2)GBDT在处理文本分类特征问题上,相对其他模型的优势不如它在处理数值特征时明显。
(3)训练过程需要串行训练,只能在决策树内部采用一些局部并行的手段提高训练速度。