集成学习 —— 梯度提升树GBDT、XGBoost

目录

一、梯度提升树

[1、残差提升树 Boosting Decision Tree](#1、残差提升树 Boosting Decision Tree)

[2、梯度提升树 Gradient Boosting Decision Tree](#2、梯度提升树 Gradient Boosting Decision Tree)

二、构建案例

[1、 初始化弱学习器(CART树):](#1、 初始化弱学习器(CART树):)

[2、 构建第1个弱学习器](#2、 构建第1个弱学习器)

[3、 构建第2个弱学习器](#3、 构建第2个弱学习器)

[4、 构建第3个弱学习器](#4、 构建第3个弱学习器)

[5、 构建最终弱学习器](#5、 构建最终弱学习器)

[6、 构建总结](#6、 构建总结)

三、XGBoost

一、梯度提升树

1、残差提升树 Boosting Decision Tree

思想:通过拟合残差的思想来进行提升,残差:真实值 - 预测值

例如:

2、梯度提升树 Gradient Boosting Decision Tree

梯度提升树不再拟合残差,而是利用梯度下降的近似方法,利用损失函数的负梯度作为提升树算法中的残差近似值。

GBDT 拟合的负梯度就是残差。如果我们的 GBDT 进行的是分类问题,则损失函数变为 logloss,此时拟合的目标值就是该损失函数的负梯度值。

二、构建案例

已知:

1、 初始化弱学习器(CART树):

当模型预测值为何值时,会使得第一个弱学习器的平方误差最小,即:求损失函数对 f(xi) 的导数,并令导数为0。

2、 构建第1个弱学习器

根据负梯度的计算方法得到下表:

以此类推,计算所有切分点情况,得到:

由此得到,当 6.5 作为切分点时,平方损失最小,此时得到第1棵决策树。

3、 构建第2个弱学习器

以此类推,计算所有切分点情况,得到:

以3.5 作为切分点时,平方损失最小,此时得到第2棵决策树

4、 构建第3个弱学习器

以此类推,计算所有切分点情况,得到:

以6.5 作为切分点时,平方损失最小,此时得到第3棵决策树

5、 构建最终弱学习器

以 x=6 样本为例:输入到最终学习器中的结果 :(存在误差,说明学习器不够)

以此类推计算其他的预测值

6、 构建总结

  1. 初始化弱学习器(目标值的均值作为预测值)
  2. 迭代构建学习器,每一个学习器拟合上一个学习器的负梯度
  3. 直到达到指定的学习器个数
  4. 当输入未知样本时,将所有弱学习器的输出结果组合起来作为强学习器的输出

三、XGBoost

待补充..........

相关推荐
测试员周周3 小时前
【Appium 系列】第16节-WebView-H5上下文切换 — 混合应用的自动化难点
运维·开发语言·人工智能·功能测试·appium·自动化·测试用例
K姐研究社5 小时前
怎么用AI制作电商口播视频,开拍APP一键生成
人工智能·音视频
LaughingZhu5 小时前
Product Hunt 每日热榜 | 2026-05-21
前端·人工智能·经验分享·chatgpt·html
传说故事6 小时前
【论文阅读】MotuBrain: An Advanced World Action Model for Robot Control
论文阅读·人工智能·具身智能·wam
北京耐用通信6 小时前
全域适配工业场景耐达讯自动化Modbus TCP 转 PROFIBUS 网关轻松实现以太网与现场总线互通
网络·人工智能·网络协议·自动化·信息与通信
火山引擎开发者社区6 小时前
TRAE × 火山引擎 Supabase:为你的 AI 应用装上“数据引擎”
人工智能
小a彤7 小时前
GE 在 CANN 五层架构中的位置
人工智能·深度学习·transformer
前端若水7 小时前
会话管理:创建、切换、删除对话历史
前端·人工智能·python·react.js
Upsy-Daisy7 小时前
AI Agent 项目学习笔记(八):Tool Calling 工具调用机制总览
人工智能·笔记·学习
企学宝7 小时前
企学宝5月专题课程丨《OpenClaw AI 智能体实战营:从零基础部署到全场景自动化落地》
人工智能·ai·企业培训