GBDT 全称gradient boost descion tree 梯度上升决策树
既可以解决回归问题也可以解决分类问题(解决分类问题的时候也是按回归问题来处理的,把分类换成One-hot向量,然后对每一维作回归)
基模型一般用回归树
模型的计算是根据加法模型和前向分布算法,根据当前学习到的模型的和与标签定义损失函数(支持自定义损失),然后类似梯度上升的做法,只不过这里不进行梯度上升,更新原模型参数,而是用一个新的模型去拟合这部分的梯度。
当使用均方损失时,梯度即为残差,即y-y'。
具体做法是假设当前的模型F(x),标签值为y,根据自定义的损失函数Loss(y-F(x))计算对F(x)的一阶导,然后对每个样本xi的导数,得到每个样本对应的梯度δ(xi),再根据这些梯度得到的新数据(xi,δ(xi))去拟合一个基模型,
得到当前的基模型后,对每个叶节点的区域,反带回去Loss(y-F(x)),使得loss(y-F(x+C))最小,C为对应叶子节点的预测值。得到每个叶子区域的预测值
最后把模型相加 ,即为最后的强模型。