Appearance
导论:∇ 算子 —— 参数空间中的“万有引力”
在机器学习的参数空间中,求导不是简单的数值变化率,而是微分算子 ∇(Nabla / Del) 在高维流形上的几何作用。∇ 算子定义为各方向偏导数的向量:
当它作用于标量损失函数
∇ 算子不仅是微积分的缩写,更是对偶空间(Dual Space) 中线性泛函的坐标表示。理解 ∇ 在不同张量上的作用规则(梯度、雅可比、散度),是掌握自动微分(Autograd)底层逻辑的数学基石。
第一部分:∇ 算子的基本张量运算与布局约定
∇ 算子的输出形状取决于被作用对象的张量阶数和布局约定。
1.1 标量场 → 梯度向量(Gradient)
设标量
也可以写成
几何直观:
指向函数值增长最快的方向,其反方向 是梯度下降的方向。
(此处应有证明)
1.2 向量场 → 雅可比矩阵(Jacobian Matrix)
设向量函数
雅可比矩阵是线性化映射:在
1.3 梯度场 → 海森矩阵(Hessian Matrix) 类似二阶导
若对标量函数
海森矩阵衡量了损失地形的曲率(Curvature)。在凸优化中,其正定性决定了牛顿法的更新方向
(refer to LBGFS)
第二部分:微分法——∇ 算子的“隐式表达”
直接展开 ∇ 算子的链式法则极易出错,尤其在矩阵乘法和迹运算中。微分法(Differential Calculus) 利用 ∇ 算子的对偶性质,提供了最严谨的推导路径。
2.1 核心对偶关系(∇ 的泛函定义)
对于任意矩阵变量
这一定义的威力在于:我们无需显式计算 ∇ 中的偏导数,只需将
(wc Tr是什么东西)
2.2 微分代数法则(配套 ∇ 算子使用)
利用微分法则时,必须严格遵循矩阵乘法的非交换性:
- 乘积法则:
- 迹的循环置换:
。此性质是我们将 从表达式中间“挪”到最右侧的标准操作。 - 转置与迹:
。
第三部分:机器学习中三大黄金 ∇ 公式的推导
3.1 基础线性层 的 ∇ 传播
场景:已知标量损失
- 微分:
。 - 全微分连接:
。 - 提取
项: 。 由对偶关系 。 - 提取
项: 。直接读出: 这是反向传播的原子公式:误差 通过转置权重矩阵 回传。
3.2 线性回归的最小二乘 ∇ 解
目标:
- 微分:
。 - 由于
,立即得到: 令 ,即得到解析解的正规方程(Normal Equation)。
3.3 分类任务:Softmax + 交叉熵损失的 ∇ 奇迹
场景:线性得分
几何意义:梯度 ∇ 直接将模型的“预测概率分布”与“真实硬标签”之间的差值作为误差信号回传。若模型预测完美(
第四部分:∇ 算子视角下的链式法则与自动微分
4.1 计算图中的 ∇ 流(反向传播)
在深度计算图中,前向传播是函数复合
其中
4.2 PyTorch Autograd 中的 ∇ 缓存
现代框架并不显式计算巨大的雅可比矩阵,而是向量-雅可比积(Vector-Jacobian Product, VJP)。给定上游梯度向量
第五部分:高阶 ∇ 算子与海森矩阵的困境
5.1 二阶 ∇ 与牛顿法
将 ∇ 算子连续作用于梯度向量,得到海森矩阵
理论上,∇ 的二阶信息能自动适应地形曲率,收敛极快。
5.2 在深度学习中被废弃的原因
- 维度灾难:对于
个参数, 是 矩阵,存储 需要 空间(参数量过亿时完全不可行)。 - 鞍点问题:深度学习损失地形非凸,
不一定正定。此时 可能指向鞍点方向,而非下降方向(梯度下降的 ∇ 反而能逃离鞍点)。因此,业界彻底抛弃了二阶 ∇,转而使用一阶 ∇ 的自适应变体(如 Adam)。
结语:∇ 算子的本质——对偶空间中的坐标变换
∇ 算子不是一串代码符号,而是对偶空间映射的物理直觉:
- 当 ∇ 作用于标量(损失),它吐出协变向量(Covector),指引参数移动的方向。
- 当 ∇ 沿反向传播链移动时,它通过雅可比矩阵的转置完成从输出空间到输入空间的拉回(Pullback)。
- 在微分法中,∇ 算子被巧妙地“隐藏”在全微分的迹形式中,等待我们通过代数变形将其显式解出。
掌握了 ∇ 的代数运算,你就拥有了在参数空间中自由探索的“指南针”——无论模型结构如何复杂(MLP、Transformer、扩散模型),其权重更新的最底层公式,永远是