机器学习进阶扩展内容
随机森林与梯度提升
集成学习组合多棵树,利用差异降低方差或逐步修正错误。
前置知识
通俗直觉
随机森林让许多不同的树投票;Boosting 则让后一棵树重点修正前面的残差。
核心原理
Bagging 并行训练多模型以降低方差;Boosting 串行添加弱模型以降低当前误差。
数学公式
梯度提升以学习率 η 逐步加入新树。
工作流程
- 1
明确输入、输出与评价方式
- 2
建立简单基线
- 3
实现并检查关键中间量
- 4
在验证数据上诊断和迭代
代码示例
随机森林与梯度提升 示例
Python
example.py用途:两种方法都基于树,但训练关系、主要超参数和误差特性不同。
from sklearn.ensemble import RandomForestClassifier, HistGradientBoostingClassifier
forest = RandomForestClassifier(n_estimators=300, min_samples_leaf=2, random_state=42)
boost = HistGradientBoostingClassifier(learning_rate=0.05, max_iter=200)代码解析
两种方法都基于树,但训练关系、主要超参数和误差特性不同。
- — 先检查数据和张量形状
- — 把会学习参数的步骤限制在训练数据内
应用场景
- 建立可靠训练流程
- 诊断模型行为
常见误区
只记接口而不检查数据边界
只看单次分数而忽略泛化
推荐学习资料
暂未收录相关资料
参考库不会生成虚假资源或无效外部链接。