XGBoost 是极致优化的梯度提升框架,通过并行处理、正则化和近似算法显著提升性能。
目标函数
正则项:
发展历程
| 时间 | 里程碑 |
|---|---|
| 2014 | 初版开源发布 |
| 2015 | Kaggle 竞赛主导方案 |
| 2018 | GPU 加速支持 |
| 2020 | GPU 外部存储支持 |
关键参数
| 参数 | 描述 | 典型值 |
|---|---|---|
| learning_rate | 学习率 | 0.01-0.3 |
| max_depth | 树的最大深度 | 3-10 |
| gamma | 分裂所需最小损失减少 | 0-1 |
| subsample | 样本采样率 | 0.5-1 |
适用场景
适用:表格数据、大规模数据集、特征重要性分析、竞赛场景
不适用:图像/音视频处理、小样本学习、在线学习
代码示例
import xgboost as xgb
dtrain = xgb.DMatrix(X_train, label=y_train)
params = {'objective': 'reg:squarederror', 'learning_rate': 0.05, 'max_depth': 6}
model = xgb.train(params, dtrain, num_boost_round=1000)最新进展
| 发展 | 说明 |
|---|---|
| GPU加速 | tree_method='gpu_hist' |
| ONNX支持 | 跨平台部署 |
| SHAP集成 | 模型可解释性 |