矩阵分解与矩阵求导

基础

  1. 向量运算:(模长 |x|=x2
    • 内积(inner product,数量积,点乘):xy=i=1nxiyi=xHy=|x||y|cosθ(投影)
    • 外积(exterior product,向量积,叉乘):|x×y|=|x||y|sinθ(右手定则)
    • 外积(outer product):xy=xyH=xyH
  2. 矩阵运算:(A=(c1,,cm)=(r1,,rn)Cn×m
    • 乘积:(AB)ij=k=1maikbkj
      • 左乘变行 xA=x(r1,,rn)=k=1nxiri=x(c1,,cm)=(xc1,,xcm)
      • 右乘变列 Ax=(c1,,cm)x=k=1mxici=(r1,,rn)x=(r1x,,rnx)
    • Hadamard 积(逐分量积,Schur 积):(AB)ij=aijbij
      • (xxH)(yyH)=(xy)(xy)H
      • x(yz)=(xy)Hz
    • 内积(inner product,数量积,点乘):A,B=AB=i=1nj=1maijbij=tr(AHB)
      • A,BApBq
    • Kronecker 积(直积,圈乘):AB=(a11Ba1mBan1BanmB)
      • (AB)H=AHBH,(AB)=AB
      • rank(AB)=rank(A)rank(B),tr(AB)=tr(A)tr(B)
      • (AB)(CD)=(AC)(BD)
      • ACn×n 的特征值和特征向量分别为 λi,uiBCn×n 的特征值和特征向量分别为 μi,vi,那么 AB 的特征值为 λiμj,特征向量为 uivj1i,jn)。
    • 向量化(vectorization,列堆栈):vec(A)=[c1,,cm]
      • tr(AHB)=(vec(A))H(vec(B))
      • vec(A)=Knmvec(A)
      • Knm=j=1m(eiInei)=Kmn1=Kmn
      • Kpn(An×mBp×q)Kmq=BA
      • vec(ABC)=(CA)vec(B)
  3. 范数:非负性,绝对(模)齐次性,次可加性(三角不等式);
    • 复数模的推广,a|z|=a2+b2=zz,z=a+bi
    • 有限维赋范线性空间范数等价(诱导相同的拓扑)
    • 向量范数 xCn:(xp=i=1n|xi|pp
      • 1p+ 时为范数
      • x1=i=1n|xi|(曼哈顿距离)
      • x2=xHx=i=1n|xi|2(欧氏距离)
      • x=max1in|xi|(切比雪夫距离 )
      • 1731926232413
      • 1p<q+:n1/q1/pxpxqxp
    • 矩阵范数 ACn×m:(相容性/次可乘性:ABAB
      • 逐元素(entrywise)范数 Alp=i=1nj=1m|aij|pp(列堆栈后向量范数)
        • 1 范数 A1=i=1nj=1m|aij|
        • F 范数 A2=AF=tr(AHA)=i=1nj=1m|aij|2
        • 范数 A=max1in,1jm|aij|(其 m 倍相容)
      • 算子(operator)范数 Aa,b=maxxa1Axb(由向量范数诱导的从属范数,作为线性变换作用到单位向量上的最大拉伸倍数)
        • 最大绝对列和范数 A1=max1jmi=1n|aij|
        • 谱范数(2 范数) A2=λmax(AHA)=σmax(A)
        • 最大绝对行和范数 A=max1inj=1m|aij|
      • Schatten 范数 Asp=i=1rσip(A)p(由矩阵奇异值定义的范数,酉不变)
        • 核范数 As1=A=tr(AHA)=i=1rσi(A)(矩阵秩的凸包络,即最佳凸逼近 / 凸松弛)
        • s2 范数 As2=AF=i=1rσi(A)2(自对偶)
        • s 范数 As=A2(与核范数互为对偶范数)
    • 矩阵范数不等式:
      • 1p<q:m1q1pAqApn1p1qAq
      • A2AFmin{m,n}A2
  4. 矩阵 ACn×n 的性能指标
    • 二次型 xHAx (半)正定性
      • 每个二次型对应唯一的 Hermite 矩阵以及该矩阵的合同等价类
    • 行列式 det(A)=|A|=1inλi(A) 奇异性
      • 行列式是矩阵行(列)向量组构成的平行多面体的有向体积,是矩阵作为线性变换对有向体积拉伸倍数
      • 余子式 Mij,代数余子式 Aij=(1)i+jMij
      • 矩阵行列式等于其任意行(列)的元素与相对应的代数余子式乘积之和
      • det(AB)=det(A)det(B)
    • tr(A)=1inaii=1inλi(A)
      • tr(AB)=tr(BA)
    • rank(A)=(λi(A)0)(非零特征值的代数重数)
  5. 矩阵 A,BCn×n 的等价关系
    • 相抵:B=PAQ,其中 P,Q 可逆 秩相同
    • 相似:B=P1AP Jordan 标准型相同
      • 同一个线性变换在不同基下的对应矩阵
    • 合同:B=PHAP 正负惯性指数相同
      • 同一个二次型(双线性型)在不同基下的对应矩阵
  6. 对于方阵 ACn×n,谱半径定义为 ρ(A)=max1in|λi(A)|
    • 对于任意相容范数 ,均成立 ρ(A)A
    • 对于任意 ε>0,总存在一个相容范数 使得 A<ρ(A)+ε,即 ρ(A)=inf为相容范数A
    • ρ(A)=limk+Ak1k
    • ρ(A)<1k=0Ak 收敛;收敛时极限为 (IA)1
  7. 对于方阵 ACn×n,条件数定义为 κ(A)=AA1,表征矩阵 A 对向量的拉伸能力和缩放能力;
    • 条件数刻画了求解线性方程组 Ax=b 时,误差经过矩阵 A 的传播扩大为解向量的误差的程度,是衡量线性方程组数值稳定性的重要指标
    • =2κ(A)=σmax(A)/σmin(A)
    • A(x+Δx)=b+Δb1κ(A)ΔbbΔxxκ(A)Δbb
    • (A+ΔA)(x+Δx)=bΔxx+Δxκ(A)ΔAA
  8. von Neumann 定理:设 A,BCm×n 分别有奇异值 α1αn0β1βn0,那么 maxUUm,VUnRetr(UAVBH)=i=1nαiβi.
    • 酉变换:旋转、反射和相位变换的组合
    • ACn×n 为酉矩阵 A 正规且 |λ(A)|=1
    • 酉矩阵 WUn 的列(行)向量标准正交,进而 |wii|1
    • WUn,Retr(WA)Retr(A)A0
      • 矩阵经酉变换后迹的实部只减不增当且仅当半正定
    • 序列重排不等式:逆序和 乱序和 顺序和
  9. 矩阵打洞技巧(分块初等变换)
    • (IOVA1I)(AUVC)(IA1UOI)=(AOOA/A)
    • Schur 补:A/A=CVA1U
  10. S-procedure(利用优化对偶理论);
  11. SMW 公式:(A+UCV)1=A1A1U(C1+VA1U)VA1

矩阵分解

矩阵的满秩分解

  • 对于 ACrn×m,使用可以分解为列满秩矩阵 FCrn×r 和行满秩矩阵 GCrr×m 的乘积,即 A=FG
    • 满秩分解一定存在但不唯一,因为 A=(FD)(D1G),其中 DCrr×r
    • 相抵标准形:取 P=(F,F)Cnn×n,Q=(GG)Cmm×m,则 A=P(Ir000)Q
    • 算法:经初等行变换化 A 为(简化)行阶梯形矩阵
  • 应用:计算广义逆,解线性方程组

矩阵的三角分解

  • LU(Doolittle)分解:对于 ACrn×m,使用将矩阵 A 分解为单位下三角形矩阵 LCnn×n 和上三角形矩阵 UCrn×m 的乘积,即 A=LU
    • ACrn×m,则存在行置换阵 PCnn×n)和列置换阵 QCmm×m)使得 PAQ=LU=(Lr0C3L4)(UrUrB00)=(LrC3)(UrUrB)
    • ACrn×m,如果矩阵 A 的前 r 阶顺序主子式 dk0,k=1,2,,r,那么存在 LU 分解 A=LU=(Lr0C3L4)(UrUrB00)=(LrC3)(UrUrB)(不一定唯一)。
    • ACn×n,那么 A 的 LU 分解存在且唯一 其前 n1 阶顺序主子式 dk0,k=1,2,,n1
    • ACnn×n,则存在行置换阵 PCnn×n,使得 PA=LU
    • 算法:Gauss 消去法(经初等行变换化 A 为行阶梯形矩阵),(选主元)直接递推法
  • LDU* 分解:将上三角形矩阵 U 分解为对角矩阵 DCrn×n 和单位上三角形矩阵 UCrn×m 的乘积,即 A=LU=LDU
    • 块 LDU 分解:

    (ABCD)=(I0CA1I)(A00DCA1B)(IA1B0I)

  • L*U*(Crout)分解:记 L=LD,有分解 A=LDU=LU
  • Cholesky 分解(Hermite 三角分解):对于 AH++n,有唯一的 LU 分解 A=LDU,由于 AH=(LDU)H=(U)HDLH=A=LDU ,有 U=LH,进而有 A=LDLH=LD1/2D1/2LHTTH,其中 T=LD1/2 为下三角形矩阵。
    • AH++n,如果规定下三角形矩阵的对角元素均取正,那么 Cholesky 分解存在且唯一。
    • AH+n,如果允许下三角形矩阵的对角元素取零,那么 Cholesky 分解存在。
    • 算法:直接递推算法,顺序 Cholesky 分解算法(平方根分解算法)
  • 应用:行列式计算,回代法解线性方程组

矩阵的酉三角分解

  • QR 分解:对于 ACrn×m,使用将矩阵 A 分解为酉矩阵 QCrn×n 和上三角形矩阵 RCrn×m 的乘积,即 A=QR
    • ACrn×m,则存在列置换阵 PCnn×n 使得 AP=QR=(QrQ2Q3Q4)(RrRrB00)==(QrQ3)(RrRrB)
    • ACmn×mmn),则 A 可以分解为 A=QR,其中 Qn×m 阶列正交矩阵(即 QHQ=Im),Rm 阶上三角形矩阵;如果规定 R 的对角元素取正,那么分解式唯一。
    • 算法:Householder 变换法,Givens 变换法,Gram-Schmidt 正交化方法,修正的 Gram-Schmidt 正交化算法(MGS 算法)
  • 应用:行列式计算,回代法解线性方程

基于特征值(奇异值)的分解

  • Jordan 分解:对于 ACrn×n,使用将矩阵 A 分解为非奇异矩阵 PCnn×n、Jordan 标准形 JCrn×nP 的逆矩阵的乘积,即 A=PJP1,其中 $J=\begin{pmatrix}J

\end{pmatrix}$ 为特征值 λi 对应的特征向量;

  • Schur 分解:对于 ACrn×n,使用将矩阵 A 分解为非奇异矩阵 PCnn×n、Jordan 标准形 JCrn×nP 的逆矩阵的乘积,即 A=PJP1,其中 $J=\begin{pmatrix}J

\end{pmatrix}$ 为特征值 λi 对应的特征向量;

  • 特征值分解:对于可相似对角化矩阵 ACrn×n,使用将矩阵 A 分解为非奇异矩阵 PCnn×n、对角矩阵 ΛCrn×nP 的逆矩阵的乘积,即 A=PΛP1,其中 P=(u1,,un)ui 为特征值 λi 对应的特征向量;
    • 设可相似对角化的矩阵 ACrn×ns 个相异的特征值,那么谱分解 A=i=1sλiEi 存在且唯一,其中 E1,,Es 称为 A 的谱族,其满足如下条件:
      • EiEj=δijEis 个互补的特征子空间的投影矩阵)
      • i=1sEi=In
      • EiA=AEi=λiEi
      • rankEi=mi(代数重数)
    • 对于正规矩阵的酉相似特征值分解 A=UΛUH,如果规定 Λ 中特征值按顺序排列,那么分解式的不唯一性来自于各特征值对应的特征向量取法,对于 mi 重特征值 λi,其特征向量集 Ui 可取为 (u1i,,umii)Qmi,其中 QmiCmimi×mi 为酉矩阵。
    • ACrn×n 的特征值分解存在(可相似对角化)An 个线性无关的特征向量
    • ACrn×n 可酉相似对角化(即 P 可取为酉矩阵)A 为正规矩阵
      • A 为 Hermite 矩阵 A 正规且 λ(A)R
    • ARrn×n 可正交相似对角化(即 P 可取为正交矩阵)A 为实对称矩阵
    • 可相似对角化的同阶方阵 A,B 可同时相似对角化AB=BA;实对称矩阵 A,B 可同时正交相似对角化AB=BA
    • 对于可相似对角化且特征值全为正值的矩阵的平方根矩阵,有 (PDP1)12=PD12P1
    • 算法:Jacobi 算法,循环 Jacobi 算法,变限值循环 Jacobi 算法(过关 Jacobi 算法),QR 算法
  • 奇异值分解:对于 ACrn×m,使用将矩阵 A 分解为酉矩阵 UCnn×n、对角矩阵 ΣCrn×n 和 酉矩阵 VCnn×n 的乘积,即 A=UΣVH=i=1rσiuiviH,其中 ui,vi 为奇异值 σi (矩阵 AAH,AHA 的特征值 λi 的算术平方根,即 λi)对应的左、右奇异向量(矩阵 AAH,AHA 的特征向量);
    • 如果规定 Σ 中奇异值按顺序排列,那么分解式的不唯一性来自于各奇异值对应的左右奇异向量取法,即 A=i=1sσiUiQmi(ViQmi)H,其中 s 为相异奇异值的个数,QmiCmimi×mi 为酉矩阵。
    • 算法:特征值分解法,经 Householder 变换化 A 为双对角形后进行奇异值分解
    • 应用:计算广义逆(解线性方程组),计算矩阵幂级数,主成分分析

矩阵求导

posted @   _烟岚云岫  阅读(67)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
点击右上角即可分享
微信分享提示