机器学习的梯度下降法离不开微积分(尤其是 涉及矩阵乃至高维张量的微积分),机器学习涉及的大量元素的批量操作离不开线性代数(科学计算工具为批量操作提供了一系列的优化).
参考:Matrix calculus - Wikipedia
变量说明
不加说明的情况下:
- 非粗体小写字母 (x,a,u,v) 为标量;
- 粗体小写字母 (x,a,u,v) 为向量;
- 非粗体大写字母 (X,A,U,V) 为矩阵;
- x、x、X 表示自变量;
- a,a,A 表示常量;
- u,v,u,v,U,V 表示关于 x、x、X 的因变量;
- f,g 表示标量函数 (标量场);
- F,G 表示向量函数 (向量场).
向量对标量的导数
- 常向量
dxda=0dxd(f(x)a)=0
- 标量乘向量
dxd(av)=adxdv
- 矩阵乘向量
dxd(Av)=Adxdv
- 转置
dxdv⊤=(dxdv)⊤
- 外积
dxd(u×v)dxd(a×v)=dxdu×v+u×dxdv=a×dxdv
- 向量场
dxdF(u)=∂u∂Fdxdu
即雅可比矩阵和向量的乘积.
标量对向量的导数 (梯度)
- 常数
∇x(a)=∂x∂a=0
- 乘积
∇x(uv)=∂x∂(uv)=v∂x∂u+u∂x∂v=v∇xu+u∇xv
- 链式法则
∇xf(u)∇xf=∂x∂f(u)=dudf(u)∂x∂u=f′(u)∇xu=∂x∂f=(∂x∂u)⊤∂u∂f=(∂u∂v∂x∂u)⊤∂v∂f=(∂v∂w∂u∂v∂x∂u)⊤∂w∂f
- 内积
∇x(u⊤v)=∂x∂(u⊤v)∇x(a⊤v)=∂x∂(a⊤v)∇x(a⊤x)=∂x∂(a⊤x)∇x(x⊤x)=∂x∂(x⊤x)=∂x∂uv+∂x∂vu=∂x∂va=a=2x
其中 ∂x∂u,∂x∂v 是雅可比矩阵.
- 二次型 (A 为对称矩阵)
∇x(x⊤Ax)=∂x∂(x⊤Ax)=2Ax∇x∇x⊤(x⊤Ax)=∂x∂x⊤∂2(x⊤Ax)=2A
向量对向量的导数 (雅可比矩阵)
- 常向量
∂x∂a=O
- 自身向量
∂x∂x=I
- 标量乘向量
∂x∂(av)∂x∂(va)∂x∂(ax)=a∂x∂v=∂x∂va⊤=aI
- 矩阵乘向量
∂x∂(Av)∂x∂(Ax)=∂x∂vA⊤=A⊤
- 向量场
∂x∂F(u)=∂u∂F∂x∂u
即两个雅可比矩阵的乘积.
正定
若 A 正定,则
- (对称性)A 是对称矩阵;
- (二次型)∀x=0,x⊤Ax>0.类似 y=ax2,a>0;
- (特征值)A 的所有特征值 λi>0.相当于在线性变换中,空间不被压缩或被翻转任何方向;
- (椭球)x⊤Ax=1 在二维上是椭圆、三维上是椭球;
- (Sylvester 准则)各阶顺序主子式全正;
- (可逆性)A 可逆(非奇异、满秩、行列式非零),且 A−1 正定;
- (Cholesky 分解)A 可被唯一分解成 A=LL⊤,其中 L 为下三角矩阵且主对角线元素全正;
- (凹凸性)x⊤Ax 为严格凸函数(convex),在 x=0 处取全局唯一最小值 0,用于 凸优化;
- (对角线)A 的主对角线元素全正;
- (标准型)A 合同于 I,即存在可逆矩阵 P 使得 P⊤AP=I,即二次型可化为标准型 ∑yi2;
- (迹为正)trA=∑λi>0;
- (惯性)正惯性指数为 n,负惯性指数为 0,二次型仅含正平方项;
- (平方根)存在唯一的正定矩阵 B,使得 B2=A.类似正数的算术平方根;
正定矩阵在优化问题、数值计算中具有广泛的应用,例如 共轭梯度法.
合同:保持类型的变形
对于同型矩阵 A,B,若存在可逆矩阵 P,使得 P⊤AP=B,则称 A 与 B 合同.
合同矩阵描述的是 同一个二次型 在 不同坐标变换 下的表现形式,保持几何体的形状类型(椭球、双曲面).
想象一个橡皮泥捏成的球体,你可以拉伸或压缩它,使其变成椭球,但无法将其变成马鞍形.
在这里,“拉伸或压缩” 对应可逆的合同变换 P,尽管形状、大小发生改变(不保持特征值),但 类型不变:你不可能通过捏椭球(正定:正惯性指数为 n,负惯性指数为 0)捏出一个双曲面(正惯性指数小于 n,负惯性指数大于 0)!这就是合同变换的 惯性定理:合同变换保持惯性指数.特别地,合同变换保持正定性.
比如二次型 x2+2y2 对应矩阵 [1002],通过合同变换 P=[1011] 得到
B=P⊤AP=[1011]⊤[1002][1011]=[3223]
对应的新二次型为 3x′2+4x′y′+3y′2,尽管大小变化,形状变化、倾斜,但仍是椭圆(正定).
除此之外,合同变换还保持秩、对称性,但不保持特征值.
相似:同一变换的不同视角
对于同型矩阵 A,B,若存在可逆矩阵 P,使得 P−1AP=B,则称 A 与 B 相似.
相似矩阵描述的是 同一个线性变换 在 不同基 下的表现形式,保持变换的数量特征(特征值、行列式、迹、秩).
小明从 A 点走到 B 点.你在正视情况下,小明从左边走到了右边;在斜视情况下,小明从左上方走到了右下方.小明客观上就是从 A 点走到了 B 点,走过的路程(数量特征)不受你视角的影响,但走的方向(非数量特征)会随着你的视角不同而改变.“正视着看到小明从左边走到右边”和“斜视着看到小明从左上走到右下”描述了同一个事实:小明从 A 点走到了 B 点.
在这里,小明走路是线性变换,矩阵“小明从左边走到右边”与矩阵“小明从左上走到右下”相似,P 就是视角的切换.
凸性分析
考虑二次型
f(x)=21x⊤Ax−x⊤b+c
其凸性由 Hessian 矩阵
(∇x∇x⊤)f=∂x∂x⊤∂2f=A
的正定性决定.要判断该矩阵是否正定,一般通过 惯性指数判定(低阶手算一般用各阶顺序主子式的正负性).这时由于原矩阵的惯性指数不好直接得到,我们需要对其进行 合同变换(保持惯性指数均不变),转化成易得惯性指数的 对角矩阵:
P⊤AP=D
- 如果 A 对称,那么可以对 A 进行对角化,即可得到正交矩阵 P 和对角矩阵 D;
- 更进一步,如果 A 正定,那么可以对 A 进行 Cholesky 分解 A=LL⊤,得 P=L−1 和 D=I.
若 A 正定,则令一阶导
∇xf=∂x∂f=Ax−b=0
若有解,得到线性方程
Ax=b
的解 x∗ 即为最小值点.由于 A 正定,A 满秩,A 可逆,于是该最小值点有唯一性.