考虑到很多常见问题的目标函数都是仿射或二次型形式的,若其为凸函数,梯度为0的点即为最优解。因此,在最小二乘等问题中常要对矩阵求导。
基本规则
设 $A \in \mathbb{R}^{m \times n}$,$x \in \mathbb{R}^{n}$,$b \in \mathbb{R}^{m}$,对如下 $\mathbb{R}^n \to \mathbb{R}$ 的函数求导:
- 常数函数: 当然为0
- 线性函数: $f(x) = a^T x$,则 $\nabla f(x) = a$
- 二次型: $f(x) = x^T A x$,则 $\nabla f(x) = (A + A^T) x$。若 $A$ 对称,则 $\nabla f(x) = 2 A x$
最小二乘
考虑如下最小二乘问题:
$$ \min_x \| A x - b \|_2^2 $$即:
展开:
$$ \min_x x^T A^T A x - 2 b^T A x + b^T b $$对 $x$ 求导,应用以上三种规则:
$$ \nabla_x = 2 A^T A x - 2 A^T b $$令梯度为0,解得:
$$ x = (A^T A)^{-1} A^T b $$