在此「第一部分」中,我们将从矩阵运算的尺度来导出一些常见的导数公式;在后续的「第二部分」中,我们将找到更加通用的全微分方法,以求更快捷地计算复杂公式的导数。
会了第二部分,第一部分就是个瘠薄。所以第一部分大概看一下就好。
对于以 $N$ 维列向量 $\boldsymbol x = \left[ x_1, x_2, \cdots, x_N \right]^{\rm T}$ 为变元的标量函数 $f(\boldsymbol x)$,其对变元 $\boldsymbol x$ 的导数为一个 $N$ 维的导数向量(如下为列向量):
$$ \frac{\partial f(\boldsymbol x)}{\partial \boldsymbol x} = \left[
\frac{\partial f(\boldsymbol x)}{\partial x_1}, \frac{\partial f(\boldsymbol x)}{\partial x_2}, \cdots, \frac{\partial f(\boldsymbol x)}{\partial x_N}
\right]^{\rm T} $$
运算性质如下:
下面列出几种特殊的 $f(\boldsymbol x)$ 下的导数公式,并在后文详细证明。
向量 $\boldsymbol x$ 与同为行向量、同样长度的常向量 $\boldsymbol a$ 做内积的结果,是该常向量。
$$ \frac{\partial (\boldsymbol a ^{\rm T} \boldsymbol x)}{\partial \boldsymbol x} = \frac{\partial (\boldsymbol x ^{\rm T} \boldsymbol a)}{\partial \boldsymbol x} = \boldsymbol a $$
证明
记 $f(\boldsymbol x) = \boldsymbol a^{\rm T}\boldsymbol x = \sum_{n=1}^N a_nx_n$,有 $\frac{\partial f(\boldsymbol x)}{\partial x_n} = a_n$,故 $\frac{\partial (\boldsymbol a ^{\rm T} \boldsymbol x)}{\partial \boldsymbol x} = \boldsymbol a$,另一式因 $\boldsymbol a^{\rm T}\boldsymbol x = \boldsymbol x^{\rm T} \boldsymbol a$ 同理。
$$ \frac{\partial (\boldsymbol x ^{\rm T} \boldsymbol x)}{\partial \boldsymbol x} = 2 \boldsymbol x $$
证明
记 $f(\boldsymbol x) = \boldsymbol x ^{\rm T} \boldsymbol x = \| \boldsymbol x \|^2 = \sum_{n=1}^N x_n^2$,有 $\frac{\partial f(\boldsymbol x)}{\partial x_n} = 2 x_n$,故 $\frac{\partial f(\boldsymbol x)}{\partial \boldsymbol x} =2\boldsymbol x$。
另,根据复合运算求导法则,可证 $\frac{\partial \|\boldsymbol x\|}{\partial \boldsymbol x} = \frac{\boldsymbol x}{\|\boldsymbol x\|}$:
$$ \frac{\partial \|\boldsymbol x\|}{\partial \boldsymbol x}
= \frac{\partial \sqrt{\boldsymbol x^{\rm T} \boldsymbol x}}{\partial \boldsymbol x}
\xlongequal[]{v=\boldsymbol x^{\rm T}\boldsymbol x} \frac{\partial \sqrt v}{\partial v} \cdot \frac{\partial (\boldsymbol x ^{\rm T} \boldsymbol x)}{\partial \boldsymbol x}
=\frac{1}{2\sqrt{\boldsymbol x ^{\rm T} \boldsymbol x}} \cdot 2\boldsymbol x = \frac{\boldsymbol x}{\|\boldsymbol x\|} $$
$$ \frac{\partial (\boldsymbol x ^{\rm T}\boldsymbol A \boldsymbol x)}{\partial \boldsymbol x} = (\boldsymbol A + \boldsymbol A^{\rm T}) \boldsymbol x $$