梯度提升算法

【梯度提升(Gradient Boosting)算法系列(一) - GBDT】 Boosting方法介绍Boosting是一种集成学习方法,核心思想是通过错误学习,即不断训练一系列基学习器,每个学习器的目标是前一个学习器预测结果与实际标签差值的累积。理想情况下,堆叠基学习器并组合其预测结果可有效逼近真实值。Gradient Boosting方法介绍...

梯度提升(Gradient Boosting)算法系列(一) - GBDT

Boosting方法介绍

Boosting是一种集成学习方法,核心思想是通过错误学习,即不断训练一系列基学习器,每个学习器的目标是前一个学习器预测结果与实际标签差值的累积。理想情况下,堆叠基学习器并组合其预测结果可有效逼近真实值。

Gradient Boosting方法介绍

Gradient Boosting是Boosting方法的一种,基于梯度下降思想,使用当前模型负梯度信息作为下一个学习器的学习目标,不断训练新学习器并累加至现有模型中,直至满足终止条件,得到强学习器。

Gradient Boosting与传统梯度下降的异同:都是基于损失函数负梯度进行优化,但梯度下降优化模型参数,Gradient Boosting直接优化模型,适用于非参数化模型,如决策树,实现不断堆叠优化。

GBDT(Gradient Boosting Decision Tree)

GBDT是Gradient Boosting算法的一种,使用CART回归树作为基学习器,适用于回归与分类问题。基本算法包括初始化弱学习器、基于损失函数负梯度迭代构建决策树。

GBDT for Regression

处理回归问题时,使用MSE损失函数,初始化学习器预测值为所有样本标签平均值。基于MSE损失,训练新树时,目标为负梯度值,进行树结构训练与叶节点权重计算,最终预测为各树权重和。

GBDT for Binary Classification

二分类问题中,通过逻辑回归原理,使用梯度提升树拟合对数几率,训练流程包括初始化学习器、计算负梯度、构建决策树、确定叶节点权重,最终预测概率。

GBDT for Multi-class Classification

多分类任务中,构建多组决策树预测各类概率,使用softmax函数计算最终概率。

总结

GBDT是一款高效机器学习算法,适用于多种任务,但训练时间长,易过拟合,处理缺失值能力不足。后续文章将介绍GBDT的升级版本,如xgboost、lightgbm以及多任务梯度提升机。
继续阅读:梯度提升(Gradient Boosting)算法系列(一) - GBDT