机器学习:集成算法 - GBDT
GBDT(Gradient Boosting Decison Tree):梯度提升决策树
GBDT 的弱学习器通常使用 CART 回归树
GBDT 的核心在于,每棵树学的是之前所有树的结论和的残差,比如 A 的年龄 18 岁,第一棵树依据特征值预测 12 岁,差 6 岁,即残差为 6 岁,那么第二棵树把 A 的年龄 Y 设为 6 岁,如果第二棵树依据特征值预测 6 岁,那累加两棵树的结论就是 A 的真实年龄,如果第二棵树的结论是 5 岁,则 A 仍存在 1 岁的残差,第三棵树里 A 的年龄 Y 变成 1 岁,然后继续训练下一棵树
设有样本数据
第 j 棵树记为
则由 m 棵树组成的 GBDT 输出为
注意:每棵树都接收相同的 X 值
通常 GBDT 使用负梯度构建下一棵树要预测的 Y 值,设 是第 m 棵树要预测的值
这样得出的 Y 值也称为伪残差
以上的简单例子用的是均方损失函数
对应的负梯度是
这个伪残差结果刚好是真残差
Shrinkage(收缩)
给每棵树一个权值进行加权求和,Shrinkage 能减少过拟合是经验证明的,但没有理论证明
分类
GBDT 本质是回归问题,要用于分类需要将分类转化为回归
比如通过逻辑回归函数将结果限制在 0~1 之间,代表两种分类的概率
分类:
MachineLearning
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 提示词工程——AI应用必不可少的技术
· 地球OL攻略 —— 某应届生求职总结
· 字符编码:从基础到乱码解决
· SpringCloud带你走进微服务的世界