《机器学习数学基础》补充资料:矩阵运算技巧和矩阵指数

《机器学习数学基础》第 2 章的 2.1.3 节、2.1.4 节和 2.1.5 节分别介绍了矩阵的加(减)法、数量乘法和矩阵乘法,这些构成了矩阵的基本运算,并且列出了矩阵的所有运算性质。在手工计算或者原理证明中,这些计算性质会经常用到。

本文作为上述章节内容拓展阅读。

运算技巧

若 A \pmb{A} A 和 B \pmb{B} B 是 n × n n\times n n×n 阶矩阵,且 A + B \pmb{A} + \pmb{B} A+B 是可逆的,则:

A ( A + B ) − 1 B = B ( A + B ) − 1 A \pmb{A}(\pmb{A}+\pmb{B})^{-1}\pmb{B}=\pmb{B}(\pmb{A}+\pmb{B})^{-1}\pmb{A} A(A+B)−1B=B(A+B)−1A

上述运算技巧来自参考文献 [1]。

证明:

因为 A + B \pmb{A}+\pmb{B} A+B 可逆,所以 ( A + B ) ( A + B ) − 1 = I (\pmb{A}+\pmb{B})(\pmb{A}+\pmb{B})^{-1}=\pmb{I} (A+B)(A+B)−1=I ,即:

A ( A + B ) − 1 + B ( A + B ) − 1 = I A ( A + B ) − 1 = I − B ( A + B ) − 1 \begin{split} \pmb{A}(\pmb{A}+\pmb{B})^{-1}+\pmb{B}(\pmb{A}+\pmb{B})^{-1}=\pmb{I} \\\pmb{A}(\pmb{A}+\pmb{B})^{-1}=\pmb{I}-\pmb{B}(\pmb{A}+\pmb{B})^{-1} \end{split} A(A+B)−1+B(A+B)−1=IA(A+B)−1=I−B(A+B)−1

计算:

A ( A + B ) − 1 B − B ( A + B ) − 1 A = ( I − B ( A + B ) − 1 ) B − B ( A + B ) − 1 A = B − B ( A + B ) − 1 B − B ( A + B ) − 1 A = B − B ( A + B ) − 1 ( B + A ) = B − B ( ∵ A + B 可逆 ) = 0 \begin{split}\pmb{A}(\pmb{A}+\pmb{B})^{-1}\pmb{B}-\pmb{B}(\pmb{A}+\pmb{B})^{-1}\pmb{A}&=(\pmb{I}-\pmb{B}(\pmb{A}+\pmb{B})^{-1})\pmb{B}-\pmb{B}(\pmb{A}+\pmb{B})^{-1}\pmb{A}\\&=\pmb{B}-\pmb{B}(\pmb{A}+\pmb{B})^{-1}\pmb{B}-\pmb{B}(\pmb{A}+\pmb{B})^{-1}\pmb{A}\\&=\pmb{B}-\pmb{B}(\pmb{A}+\pmb{B})^{-1}(\pmb{B}+\pmb{A})\\&=\pmb{B}-\pmb{B}\quad(\because\pmb{A}+\pmb{B}可逆)\\&=0\end{split} A(A+B)−1B−B(A+B)−1A=(I−B(A+B)−1)B−B(A+B)−1A=B−B(A+B)−1B−B(A+B)−1A=B−B(A+B)−1(B+A)=B−B(∵A+B可逆)=0

所以: A ( A + B ) − 1 B = B ( A + B ) − 1 A \pmb{A}(\pmb{A}+\pmb{B})^{-1}\pmb{B}=\pmb{B}(\pmb{A}+\pmb{B})^{-1}\pmb{A} A(A+B)−1B=B(A+B)−1A

证毕。

矩阵指数

本内容来自参考资料 [2] 。

定义和性质

对于 n × n n\times n n×n 矩阵 A \pmb{A} A 可以定义矩阵指数(matrix exponential)。

设指数函数: e x = 1 + x + x 2 2 ! + x 3 3 ! + ⋯ e^x = 1+x+\frac{x^2}{2!}+\frac{x^3}{3!}+\cdots ex=1+x+2!x2+3!x3+⋯

若将 x x x 替换为矩阵 A \pmb{A} A ,常数 1 1 1 用单位矩阵 I \pmb{I} I 代替,则:

e A = I + A + A 2 2 ! + A 3 3 ! + ⋯ e^{\pmb{A}}=\pmb{I}+\pmb{A}+\frac{\pmb{A}^2}{2!}+\frac{\pmb{A}^3}{3!}+\cdots eA=I+A+2!A2+3!A3+⋯

上述指数矩阵也收敛。

性质:

  • 若 A B = B A \pmb{AB}=\pmb{BA} AB=BA ,则 e A e B = e B e A = e A + B e^{\pmb{A}}e^{\pmb{B}}=e^{\pmb{B}}e^{\pmb{A}}=e^{\pmb{A}+\pmb{B}} eAeB=eBeA=eA+B

    根据假设:

    e A + B = ∑ k = 0 ∞ ( A + B ) k k ! = ∑ k = 0 ∞ ∑ j = 0 k ( k j ) A j B k − j k ! = ∑ k = 0 ∞ ∑ j = 0 k k ! ( k − j ) ! j ! 1 k ! A j B k − j = ( ∑ j = 0 ∞ A j j ! ) ( ∑ l = 0 ∞ B l l ! ) = e A e B = e B e A \begin{split}e^{\pmb{A}+\pmb{B}} &= \sum_{k=0}^{\infty}\frac{(\pmb{A}+\pmb{B})^k}{k!}\\&= \sum_{k=0}^{\infty}\frac{\sum_{j=0}^k\binom{k}{j}\pmb{A}^j\pmb{B}^{k-j}}{k!}\\&=\sum_{k=0}^{\infty}\sum_{j=0}^k\frac{k!}{(k-j)!j!}\frac{1}{k!}\pmb{A}^j\pmb{B}^{k-j}\\&=\left(\sum_{j=0}^{\infty}\frac{\pmb{A}^j}{j!}\right)\left(\sum_{l=0}^{\infty}\frac{\pmb{B}^l}{l!}\right)\\&=e^{\pmb{A}}e^{\pmb{B}}=e^{\pmb{B}}e^{\pmb{A}}\end{split} eA+B=k=0∑∞k!(A+B)k=k=0∑∞k!∑j=0k(jk)AjBk−j=k=0∑∞j=0∑k(k−j)!j!k!k!1AjBk−j=(j=0∑∞j!Aj)(l=0∑∞l!Bl)=eAeB=eBeA

  • e A T = ( e A ) T e^{\pmb{A}^T} = (e^{\pmb{A}})^T eAT=(eA)T

    e A T = ∑ k = 0 ∞ ( A T ) k k ! = ( ∑ k = 0 ∞ A k k ! ) T = ( e A ) T e^{\pmb{A}^T}=\sum_{k=0}^{\infty}\frac{(\pmb{A}^T)^k}{k!}=\left(\sum_{k=0}^{\infty}\frac{\pmb{A}^k}{k!}\right)^T=(e^{\pmb{A}})^T eAT=∑k=0∞k!(AT)k=(∑k=0∞k!Ak)T=(eA)T

特征值

设 A x = λ x \pmb{Ax}=\lambda\pmb{x} Ax=λx ,则 A k x = λ k x \pmb{A}^k\pmb{x}=\lambda^k\pmb{x} Akx=λkx ,有: e A x = ( 1 + λ + λ 2 2 ! + λ 3 3 ! + ⋯   ) x = e λ x e^{\pmb{A}}\pmb{x}=\left(1+\lambda+\frac{\lambda^2}{2!}+\frac{\lambda^3}{3!}+\cdots\right)\pmb{x}=e^{\lambda}\pmb{x} eAx=(1+λ+2!λ2+3!λ3+⋯)x=eλx

令 n n n 阶矩阵 A \pmb{A} A 的特征值为 λ i \lambda_i λi ,对应的特征向量 x i \pmb{x}_i xi ,故 e A e^{\pmb{A}} eA 特征值为 e λ i e^{\lambda_i} eλi ,对应特征向量仍然是 x i \pmb{x}_i xi 。

又因为:

行列式: det ⁡ ( A ) = λ 1 λ 2 ⋯ λ n \det(\pmb{A})=\lambda_1\lambda_2\cdots\lambda_n det(A)=λ1λ2⋯λn

迹: t r ( A ) = λ 1 + λ 2 + ⋯ + λ n tr(\pmb{A})=\lambda_1+\lambda_2+\cdots+\lambda_n tr(A)=λ1+λ2+⋯+λn

所以: det ⁡ ( e A ) = e λ 1 e λ 2 ⋯ e λ n = e λ 1 + λ 2 + ⋯ + λ n = e t r ( A ) \det(e^{\pmb{A}})=e^{\lambda_1}e^{\lambda_2}\cdots e^{\lambda_n}=e^{\lambda_1+\lambda_2+\cdots+\lambda_n}=e^{tr(\pmb{A})} det(eA)=eλ1eλ2⋯eλn=eλ1+λ2+⋯+λn=etr(A)

因为 e x ≠ 0 e^x\ne0 ex=0 ,所以矩阵指数必定可逆。

对角化

若 A \pmb{A} A 可对角化, A = S D S − 1 \pmb{A} = \pmb{SDS}^{-1} A=SDS−1 ,则:

e A = e S D S − 1 = I + S D S − 1 + S D 2 S − 1 2 ! + S D 3 S − 1 3 ! + ⋯ = S ( I + D + D 2 2 ! + D 3 3 ! + ⋯   ) S − 1 = S e D S − 1 \begin{split}e^{\pmb{A}} &= e^{\pmb{SDS}^{-1}}\\&=\pmb{I}+\pmb{SDS}^{-1}+\frac{\pmb{SD^2S}^{-1}}{2!}+\frac{\pmb{SD^3S}^{-1}}{3!}+\cdots\\&=\pmb{S}\left(\pmb{I}+\pmb{D}+\frac{\pmb{D}^2}{2!}+\frac{\pmb{D}^3}{3!}+\cdots\right)\pmb{S}^{-1}\\&=\pmb{S}e^{\pmb{D}}\pmb{S}^{-1}\end{split} eA=eSDS−1=I+SDS−1+2!SD2S−1+3!SD3S−1+⋯=S(I+D+2!D2+3!D3+⋯)S−1=SeDS−1

其中, e D e^{\pmb{D}} eD 也是对角矩阵:

e D = [ e λ 1 ⋯ 0 ⋮ ⋱ ⋮ 0 ⋯ e λ n ] e^{\pmb{D}}=\begin{bmatrix}e^{\lambda_1}&\cdots&0\\\vdots&\ddots&\vdots\\0&\cdots&e^{\lambda_n}\end{bmatrix} eD= eλ1⋮0⋯⋱⋯0⋮eλn

应用举例

对于: e A t = I + t A + t 2 A 2 2 ! + ⋯ e^{\pmb{A}t}=\pmb{I}+t\pmb{A}+\frac{t^2\pmb{A}^2}{2!}+\cdots eAt=I+tA+2!t2A2+⋯

求导数:

d d t e A t = A + t A 2 + t 2 2 ! A 3 ⋯ = A ( I + t A + t 2 A 2 2 ! + ⋯   ) = A e A t \begin{split}\frac{d}{dt}e^{\pmb{A}t}&=\pmb{A}+t\pmb{A}^2+\frac{t^2}{2!}\pmb{A}^3\cdots\\&=\pmb{A}\left(\pmb{I}+t\pmb{A}+\frac{t^2\pmb{A}^2}{2!}+\cdots\right)\\&=\pmb{A}e^{\pmb{A}t}\end{split} dtdeAt=A+tA2+2!t2A3⋯=A(I+tA+2!t2A2+⋯)=AeAt

上述结果用于求解微分方程: d u d t = A u \frac{d\pmb{u}}{dt}=\pmb{Au} dtdu=Au ,令 u ( 0 ) = c \pmb{u}(0)=\pmb{c} u(0)=c ,一般解是: u ( t ) = e A t c \pmb{u}(t)=e^{\pmb{A}t}\pmb{c} u(t)=eAtc

参考资料

[1]. 矩阵运算的基本技巧[DB/OL]. https://ccjou.wordpress.com/2010/10/04/矩陣運算的基本技巧/, 2022.3.29.

[2]. 线代启示录:矩阵指数[DB/OL]. https://ccjou.wordpress.com/2009/08/20/矩陣指數/, 2022.3.29

相关推荐
Sol-itude2 小时前
【文献阅读】Collective Decision for Open Set Recognition
论文阅读·人工智能·机器学习·支持向量机
lihuhelihu4 小时前
精神分裂症患者GAF评分的可视化分析|使用集成学习模型 LightGBM
人工智能·python·机器学习·scikit-learn·集成学习·sklearn·boosting
明明真系叻6 小时前
2025.3.2机器学习笔记:PINN文献阅读
人工智能·笔记·深度学习·机器学习·1024程序员节·pinn
Donvink6 小时前
【AIGC系列】4:Stable Diffusion应用实践和代码分析
人工智能·深度学习·机器学习·stable diffusion·aigc·transformer
果冻人工智能7 小时前
使用AI后为什么思考会变得困难?
人工智能·机器学习·ui·ai员工
从入门-到精通7 小时前
通过统计学视角解读机器学习:从贝叶斯到正则化
人工智能·深度学习·神经网络·机器学习
CS创新实验室7 小时前
《机器学习数学基础》补充资料:可逆矩阵的手工计算方法和总结
人工智能·机器学习·矩阵·机器学习数学基础
nuise_8 小时前
李宏毅机器学习课程学习笔记04 | 浅谈机器学习-宝可梦、数码宝贝分类器
笔记·学习·机器学习
一小路一8 小时前
通往 AI 之路:Python 机器学习入门-数据结构
数据结构·后端·python·学习·机器学习
想吃砸到牛顿的苹果的籽9 小时前
点云 PCL 滤波在自动驾驶的用途。
人工智能·机器学习·自动驾驶