链式法则解释上游梯度应用

过程。

假设我们有一个计算图:
Code 代码

CodeBlock-module__code--gyjSL 复制代码
<span style="background-color:var(--bgColor-default)"><span style="color:var(--fgColor-default, var(--color-fg-default))"><code>x → x² → L (损失函数)
</code></span></span>

根据链式法则:
Code 代码

CodeBlock-module__code--gyjSL 复制代码
<span style="background-color:var(--bgColor-default)"><span style="color:var(--fgColor-default, var(--color-fg-default))"><code>dL/dx = dL/d(x²) * d(x²)/dx
</code></span></span>

其中:

  • dL/d(x²) 就是 upstream_grad(上游梯度)
  • d(x²)/dx = 2x 是平方函数的导数
  • x 就是 self.data

所以:
Python

CodeBlock-module__code--gyjSL 复制代码
<span style="background-color:var(--bgColor-default)"><span style="color:var(--fgColor-default, var(--color-fg-default))"><code><span style="color:var(--color-prettylights-syntax-keyword)">self</span>.grad += upstream_grad * <span style="color:var(--color-prettylights-syntax-constant)">2</span> * <span style="color:var(--color-prettylights-syntax-keyword)">self</span>.data
<span style="color:var(--color-prettylights-syntax-comment)">#          = dL/d(x²)   * d(x²)/dx</span></code></span></span>
相关推荐
海寻山几秒前
Java常用API详解(二):集合类API(ArrayList/HashMap/HashSet)实战,一篇吃透
开发语言·python
XMYX-0几秒前
19 - Go 并发限制:限流与控制并发数
开发语言·golang
踩着两条虫1 分钟前
VTJ:架构设计模式
前端·架构·ai编程
孙凯亮2 分钟前
Three.js VR 模拟器(Immersive Web Emulator)踩坑全记录:从报错到可用,避坑指南一次性奉上
前端·three.js
CDN3603 分钟前
2026年Web性能优化实测:360CDN如何通过“时效性”与“地域性”双杀提升排名?
前端·性能优化
卵男(章鱼)7 分钟前
汽车网络通讯分析与仿真工具的系统工程:Vector CANoe与ZLG ZCANPRO深度剖析
开发语言·汽车·php
Dxy123931021611 分钟前
Python使用XPath定位元素:and和or组合条件
前端·javascript·python
摇滚侠12 分钟前
Java 零基础全套视频教程,面向对象(进阶),笔记 90-103
java·开发语言·笔记
say_fall12 分钟前
红黑树底层原理全解析:从 5 大性质到 STL 容器底层实现
开发语言·c++