形象化理解 矩阵-向量求导

矩阵和向量求导看起来符号复杂,但其实可以用一种形象的方式理解,把它类比成 多个标量的组合求导。我们从最基础的标量求导出发,一步步带你理解:


一、从标量求导出发

1. 标量对标量的求导(最熟悉的)

y=f(x)y = f(x)y=f(x),这是高中学的普通函数求导:

∂y∂x \frac{\partial y}{\partial x} xy

理解:x 变化一点,y 变化多少。

比如:
y=x2y = x^2y=x2∂y∂x=2x\frac{\partial y}{\partial x} = 2xxy=2x


二、向量对标量的求导

如果 x=[x1x2]\mathbf{x} = \begin{bmatrix} x_1 \\ x_2 \end{bmatrix}x=[x1x2]
yyy 是一个标量

y=f(x1,x2) y = f(x_1, x_2) y=f(x1,x2)

x\mathbf{x}x 求导,就是 对每个分量分别求导
∂y∂x=[∂y∂x1∂y∂x2] \frac{\partial y}{\partial \mathbf{x}} = \begin{bmatrix} \frac{\partial y}{\partial x_1} \\ \frac{\partial y}{\partial x_2} \end{bmatrix} xy=[x1yx2y]

这是我们最常见的梯度(gradient)


三、标量对向量的求导:形象理解

∂y∂x=[∂y∂x1∂y∂x2…] \frac{\partial y}{\partial \mathbf{x}} = \begin{bmatrix} \frac{\partial y}{\partial x_1} & \frac{\partial y}{\partial x_2} & \dots \end{bmatrix} xy=[x1yx2y]

可以形象理解为:

  • y 是一个标量,取决于很多变量。
  • 每个变量 xix_ixi微小变化,会让 y 产生不同程度的变化
  • 梯度告诉我们 y 对每个 x 的敏感程度

四、向量对向量的求导(核心难点)

假设:
y=[y1y2],x=[x1x2] \mathbf{y} = \begin{bmatrix} y_1 \\ y_2 \end{bmatrix}, \quad \mathbf{x} = \begin{bmatrix} x_1 \\ x_2 \end{bmatrix} y=[y1y2],x=[x1x2]

定义的 y\mathbf{y}yx\mathbf{x}x 的求导

∂y∂x=[∂y1∂x1∂y1∂x2∂y2∂x1∂y2∂x2] \frac{\partial \mathbf{y}}{\partial \mathbf{x}} = \begin{bmatrix} \frac{\partial y_1}{\partial x_1} & \frac{\partial y_1}{\partial x_2} \\ \frac{\partial y_2}{\partial x_1} & \frac{\partial y_2}{\partial x_2} \end{bmatrix} xy=[x1y1x1y2x2y1x2y2]

这其实就是一个 雅可比矩阵(Jacobian Matrix)

形象理解:

  • y\mathbf{y}y 是一个“向量输出”,由 x\mathbf{x}x 这个“向量输入”决定。
  • 我们想知道:每个 x 的变化会如何影响每个 y
  • 每个格子都是 “第 i 个输出 yiy_iyi 对第 j 个输入 xjx_jxj 的影响”

五、矩阵对向量的求导:特殊简单情况

最常见的是线性形式:
y=Ax \mathbf{y} = A\mathbf{x} y=Ax

  • y\mathbf{y}ym 维向量
  • x\mathbf{x}xn 维向量
  • AAAm×n 矩阵

对于这种线性变换,求导特别简单
∂y∂x=A \frac{\partial \mathbf{y}}{\partial \mathbf{x}} = A xy=A

理解:

  • 线性关系里,每个 xjx_jxj 的变化,对 yiy_iyi 的影响就是 AijA_{ij}Aij
  • 本质上就是 yi=∑jAijxjy_i = \sum_j A_{ij} x_jyi=jAijxj

六、形象理解的 终极口诀总结

类型 数学形式 形象理解
标量对标量 ∂y∂x\frac{\partial y}{\partial x}xy xxx 变一点,yyy 变多少
标量对向量 ∂y∂x\frac{\partial y}{\partial \mathbf{x}}xy 每个 xix_ixi 变一点,yyy 变多少(梯度)
向量对向量 ∂y∂x\frac{\partial \mathbf{y}}{\partial \mathbf{x}}xy 每个 xjx_jxj 变一点,每个 yiy_iyi 变多少(雅可比)
矩阵对向量 y=Ax\mathbf{y} = A \mathbf{x}y=Ax 线性变换,求导就是矩阵本身

七、一个直观例子总结

假设:
x=[x1x2],y=[y1y2] \mathbf{x} = \begin{bmatrix} x_1 \\ x_2 \end{bmatrix}, \quad \mathbf{y} = \begin{bmatrix} y_1 \\ y_2 \end{bmatrix} x=[x1x2],y=[y1y2]

y=[x1+2x23x1+4x2] \mathbf{y} = \begin{bmatrix} x_1 + 2x_2 \\ 3x_1 + 4x_2 \end{bmatrix} y=[x1+2x23x1+4x2]

则:
∂y∂x=[1234] \frac{\partial \mathbf{y}}{\partial \mathbf{x}} = \begin{bmatrix} 1 & 2 \\ 3 & 4 \end{bmatrix} xy=[1324]

这个矩阵的每个元素:

  • 第 (1,1)x1x_1x1y1y_1y1 的影响,系数是 1
  • 第 (1,2)x2x_2x2y1y_1y1 的影响,系数是 2
  • 第 (2,1)x1x_1x1y2y_2y2 的影响,系数是 3
  • 第 (2,2)x2x_2x2y2y_2y2 的影响,系数是 4

这就是雅可比矩阵的意义!


八、结尾总结:理解矩阵向量求导的三句话

  1. 向量 = 多个标量的组合,矩阵求导 = 每个分量对每个变量的偏导数,排列成矩阵
  2. 标量 -> 向量 -> 矩阵,求导本质不变,就是链式求导,把每个分量分开看
  3. 线性变换求导是最简单的,导数就是矩阵本身

你觉得这套形象理解有没有帮助?
如果你想看 更复杂的矩阵求导推导(比如带转置、迹运算、二次型),或者 代码实现雅可比矩阵计算,告诉我,我可以详细写给你!😊

Logo

火山引擎开发者社区是火山引擎打造的AI技术生态平台,聚焦Agent与大模型开发,提供豆包系列模型(图像/视频/视觉)、智能分析与会话工具,并配套评测集、动手实验室及行业案例库。社区通过技术沙龙、挑战赛等活动促进开发者成长,新用户可领50万Tokens权益,助力构建智能应用。

更多推荐