前言
上一次记录了矩阵求导的基本法则和公式,并且大部分给出了基于矩阵乘法的证明(本质证明)。然而这样记忆矩阵求导还是比较困难的。
这里给出一种作者使用的快速记忆矩阵求导的方法。
注意:该方法仅是作者个人记忆用方法,公式推导并不严格符合数学规范。
基本约定
默认向量是列向量。只涉及标量对向量,向量对向量的求导。
本次矩阵求导默认使用分子布局,即分子不变分母转置。
引例
标量对标量求导
我们都知道下面函数的求导:
f ( x 0 ) = a x 0 2 + b x 0 + c f ′ ( x 0 ) = 2 a x 0 + b f(x_0)=ax_0^2+bx_0+c \\ f'(x_0)=2ax_0+b f(x0)=ax02+bx0+cf′(x0)=2ax0+b
其中,多项式的系数写在自变量的前面。我们把这种表示叫做变量后置。对于标量而言,变量前置后置是没有区别的。
标量对向量求导
先看一个分母布局的例子:
f ( x ) = a T x ∂ ( a T x ) T / ∂ x = a f(x)=a^Tx \\ \quad \\ \partial (a^Tx)^T/\partial x= a f(x)=aTx∂(aTx)T/∂x=a
a T x a^Tx aTx这个标量对列向量求导,得到列向量 a a a。但是结果出现了 a T a^T aT的转置,不好记。
而从直观的角度上, ∂ ( a T x ) / ∂ x = a T \partial (a^Tx)/\partial x= a^T ∂(aTx)/∂x=aT这种类似标量对标量求导的表示更符合我们的思维直觉。
分子布局刚好符合这种直觉:
f ( x ) = a T x ∂ ( a T x ) / ∂ x T = a T f(x)=a^Tx \\ \quad \\ \partial (a^Tx)/\partial x^T= a^T f(x)=aTx∂(aTx)/