机器学习进阶文档深度页
梯度提升树
按顺序添加树,拟合当前损失的负梯度方向,逐步修正已有模型。
学习前需要掌握
决策树梯度概念内容待补充
背景与问题
小学习率配更多弱树通常稳定,但训练成本增加;树过深或迭代过多会拟合噪声。
概念定义
梯度提升是加法模型,初始预测后每棵新树贡献 learning_rate×hₘ。
直观理解
每一轮专门学习当前模型还没解释好的残差方向。
核心原理
learning_rate、迭代数和单树复杂度联动;验证早停与子采样用于控制过拟合。
数学表达
核心表达
learning_rate、迭代数和单树复杂度联动;验证早停与子采样用于控制过拟合。
变量含义
变量定义与本页概念定义一致,代码中的同名变量保持相同语义。
计算步骤
- 1初始化常数模型
- 2计算损失负梯度
- 3训练弱树拟合
- 4按 η 加入
代码对应位置
示例 1梯度提升树 实现:对应文档中的训练与预测逻辑。
计算与实现步骤
- 1
初始化常数模型
- 2
计算损失负梯度
- 3
训练弱树拟合
- 4
按 η 加入
- 5
验证早停
代码实现
示例 1
梯度提升树 实现
梯度提升树 实现
scikit-learn
example_01.py用途:对应文档中的训练与预测逻辑。
from sklearn.ensemble import HistGradientBoostingClassifier
model=HistGradientBoostingClassifier(learning_rate=0.05,max_iter=200,max_leaf_nodes=15,early_stopping=True,random_state=42)代码解析
解析始终位于完整代码下方,并按实际代码段逐项对应。
输入数据与任务
对应文档中的训练与预测逻辑。
model- 组合预处理和估计器的模型对象。
Step 1 · 1–2 行
导入当前步骤需要的数值计算、预处理、模型或评价工具。依赖集中写在代码开头,便于复现。
from sklearn.ensemble import HistGradientBoostingClassifier
model=HistGradientBoostingClassifier(learning_rate=0.05,max_iter=200,max_leaf_nodes=15,early_stopping=True,random_state=42)预期输出或运行结果
得到带早停的直方图梯度提升分类器。
常见错误 · 3 条
- 学习率和轮数分开调
- 树过深
- 测试集决定停止
实际应用
- 高性能表格模型
- 非线性分类回归
常见错误
学习率和轮数分开调
树过深
测试集决定停止
文档来源
05|决策树与集成学习原始文档
学习资料/learning_tech/05_tree_and_ensemble.md- §9 梯度提升树
推荐学习资料
暂未收录相关资料
参考库不会生成虚假资源或无效外部链接。