平方的损失函数近似于残差证明

1. 先定义平方损失函数

对于单个样本 (xi,yi)(x_i, y_i)(xi,yi),平方损失的定义是:
L(yi,f(xi))=(yi−f(xi))2 L(y_i, f(x_i)) = \left(y_i - f(x_i)\right)^2 L(yi,f(xi))=(yi−f(xi))2

其中:

  • yiy_iyi 是样本的真实值
  • f(xi)f(x_i)f(xi) 是模型对该样本的预测值
  • 残差的定义就是 yi−f(xi)y_i - f(x_i)yi−f(xi)

2. 计算损失函数对预测值 f(xi)f(x_i)f(xi) 的偏导数

我们需要计算损失函数 LLL 关于 f(xi)f(x_i)f(xi) 的变化率,也就是偏导数 ∂L∂f(xi)\frac{\partial L}{\partial f(x_i)}∂f(xi)∂L:
∂L∂f(xi)=∂∂f(xi)(yi−f(xi))2 \frac{\partial L}{\partial f(x_i)} = \frac{\partial}{\partial f(x_i)} \left(y_i - f(x_i)\right)^2 ∂f(xi)∂L=∂f(xi)∂(yi−f(xi))2

根据链式法则,令 u=yi−f(xi)u = y_i - f(x_i)u=yi−f(xi),则 L=u2L = u^2L=u2,所以:
∂L∂f(xi)=2u⋅∂u∂f(xi)=2(yi−f(xi))⋅(−1) \frac{\partial L}{\partial f(x_i)} = 2u \cdot \frac{\partial u}{\partial f(x_i)} = 2\left(y_i - f(x_i)\right) \cdot (-1) ∂f(xi)∂L=2u⋅∂f(xi)∂u=2(yi−f(xi))⋅(−1)

化简后得到:
∂L∂f(xi)=−2(yi−f(xi)) \frac{\partial L}{\partial f(x_i)} = -2\left(y_i - f(x_i)\right) ∂f(xi)∂L=−2(yi−f(xi))


3. 计算负梯度

梯度提升树中,我们需要拟合的是负梯度 ,即:
−∂L∂f(xi)=−[−2(yi−f(xi))]=2(yi−f(xi)) -\frac{\partial L}{\partial f(x_i)} = -\left[-2\left(y_i - f(x_i)\right)\right] = 2\left(y_i - f(x_i)\right) −∂f(xi)∂L=−[−2(yi−f(xi))]=2(yi−f(xi))

在梯度下降算法中,常数因子 222 不影响梯度的方向(只影响步长,而步长可以通过学习率调整),因此通常会忽略这个常数,简化为:
−∂L∂f(xi)≈yi−f(xi) -\frac{\partial L}{\partial f(x_i)} \approx y_i - f(x_i) −∂f(xi)∂L≈yi−f(xi)

这正是残差的定义!


总结

平方损失的负梯度等于残差,本质是数学推导的直接结果

  • 平方损失的偏导数包含了残差的相反数
  • 取负后就得到了残差(忽略常数因子)

这也是为什么在平方损失场景下,GBDT和传统的残差提升树是等价的------它们都在拟合残差。而当损失函数不是平方损失(如分类任务的对数损失)时,负梯度就不再是残差,这正是GBDT的泛化能力所在。

相关推荐
人邮异步社区2 小时前
自学机器学习的路线是什么呢?
人工智能·机器学习
YiWait2 小时前
机器学习导论习题解答
人工智能·python·算法
嗯? 嗯。2 小时前
S32k144芯片学习笔记-IDE工具配置常见项
笔记·学习·s32k ide配置
电商API&Tina2 小时前
【电商API】淘宝/天猫拍立淘(按图搜索商品)API 全解析
大数据·开发语言·数据库·人工智能·json·图搜索算法
五度易链-区域产业数字化管理平台2 小时前
技术深一度|五度易链如何通过“AI+大数据”深度融合提升治理精准效能?
大数据·人工智能
俊哥V2 小时前
AI一周事件(2026年01月21日-01月27日)
人工智能·ai
云边云科技_云网融合2 小时前
下单、收银不中断,负载均衡是零售系统平稳运行的基石
大数据·网络·人工智能·安全
小宇的天下2 小时前
Cadence allegro---Cross section generater
人工智能
雷焰财经2 小时前
出海新航路:宇信科技以AI与生态协同,赋能全球金融智能化
人工智能·科技·金融