奇异值分解

Singular Value Decomposition SVD

A=UΣVT=u1σ1v1T++urσrvrT

The singular value theorem for A is the eigenvalue theorem for ATA and AAT. The Singular Value Decomposition separate any matrix into simple pieces

如果 A 为 rectangle 非方阵,那么 ATA AAT 为对称的正定矩阵
Square Symmetric Positive-Semidefinite

奇异值分解的理论,本质上就是矩阵和矩阵转置乘积的特征值理论
特征值将任意一个矩阵分解为列和行的形式

一个Rectangle Matrix A(m×n) 实际上为一个从维度 n 到维度 m 的线性变换

AATui=σi2uiATAvi=σi2vi

AAT=SL 的特征向量 vi 称为 Left singular vectors, 在 Rm 空间中
ATA=SR 的特征向量 vi 称为 Right singular vectors, 在 Rn 空间中

Avi=σiui AV=UΣ

AI 结构化补充(2026-05-02)

定义

Singular Value Decomposition 奇异值分解把任意矩阵
ARm×n 写成

A=UΣVT,

其中 URm×mVRn×n 是正交矩阵,ΣRm×n 只在主对角线上有非负数

σ1σ2σr>0,

其余对角线位置和非对角线位置为 0。这里 r=rank(A),非零的 σi 称为 奇异值UV 的列向量称为 奇异向量

SVD 对 A 没有方阵、可逆或可对角化要求。非零奇异值来自两个半正定矩阵的共同非零谱:

σi=λi(ATA)=λi(AAT),i=1,,r.

复数域中把转置改为共轭转置:

A=UΣV,UU=Im,VV=In,

奇异值仍是 AAAA 的非零特征值平方根。

如果把 V 看成输入空间 Rn 的正交坐标,把 U 看成输出空间 Rm 的正交坐标,那么 SVD 说明:任何线性变换都可以分解为

输入端正交换基沿坐标轴伸缩和降秩输出端正交换基.

这比普通特征向量分解适用范围更广。特征向量分解 A=XΛX1 有三个结构性限制:特征向量通常不正交;矩阵可能没有足够多的特征向量;等式 Ax=λx 只适合方阵。SVD 改用输入端的 vi 与输出端的 ui 两组正交基,因此可以处理非方阵、秩亏矩阵和不可对角化矩阵。

存在性、唯一性与域

任意有限维实矩阵或复矩阵都存在 SVD。奇异值作为 AA 的非负特征值平方根,由 A 唯一决定;按降序排列后,序列

σ1σmin(m,n)0

唯一。左右奇异向量不完全唯一:若 σi 是单重正奇异值,则对应的 ui,vi 在实数域中可同时改号,在复数域中可同时乘以同一单位相位;若奇异值重复,则对应奇异子空间内可以任取酉正交基。零奇异值对应的零空间与左零空间补基也不唯一。

完整 SVD 使用 m 个左奇异向量和 n 个右奇异向量;经济型 SVD 只保留非零奇异值对应的

A=UrΣrVr

或只保留 min(m,n) 个必要方向。截断 SVD 再进一步保留前 k 个最大奇异值,是低秩近似而不是精确分解。

基向量形式

U=[u1um],V=[v1vn].

SVD 的核心等式是

Avi=σiui,i=1,,r.

对于 i>rvi 位于零空间中,所以 Avi=0。按列合并可得 reduced SVD

AVr=UrΣr,

其中 Vr=[v1,,vr]Ur=[u1,,ur]Σr=diag(σ1,,σr)。再加入零空间和左零空间方向,得到完整形式

AV=UΣ,A=UΣVT.

这组基向量同时给出 四个基本子空间 的正交基:

u1,,ur 是 C(A) 的正交基,ur+1,,um 是 N(AT) 的正交基,v1,,vr 是 C(AT) 的正交基,vr+1,,vn 是 N(A) 的正交基.

因此 A 在行空间到列空间的限制上是一个由 σi 控制的对角伸缩,而零空间方向全部被送到 0

几何上,SVD 把单位球面送成列空间中的椭球:

{Ax:x2=1}.

椭球的主轴方向是 ui,半轴长度是 σi;若 A 秩亏,则若干半轴长度为 0,单位球被压扁到低维子空间。这个解释也说明奇异值为什么总是非负长度,而不是带方向符号的特征值。

秩一展开

UΣVT 按列乘行展开,得到

A=σ1u1v1T+σ2u2v2T++σrurvrT.

每一项 σiuiviT 都是 rank-one 矩阵:它只检测输入中的 vi 分量,并把该分量送到输出方向 ui。按照

σ1σ2σr>0

排序后,秩一项天然按重要性排列;最大项 σ1u1v1T 表示 A 中最强的输入-输出耦合方向。

从对称矩阵构造

SVD 的构造来自两个对称半正定矩阵:

ATA=VΣTΣVT,AAT=UΣΣTUT.

因此 viATA 的正交特征向量,σi2 是对应特征值。对所有 σi>0,左奇异向量由

ui=Aviσi

得到。

关键点是这些 ui 自动正交。若 ij,则

uiTuj=(Aviσi)T(Avjσj)=viTATAvjσiσj=σj2σiσjviTvj=0.

这一步解释了 SVD 为什么能从 ATA 的正交特征向量稳定地产生 A 的输出端正交基。最后用 N(A) 的任意正交基补齐 V,用 N(AT) 的任意正交基补齐 U

重复特征值与正交基

SVD 依赖的谱分解需要处理重复特征值。设 S=ATA 为对称矩阵,先取一个单位特征向量 q1,并把它补成正交矩阵

Q1=[q1q2qn].

由于 Sq1=λ1q1,矩阵 Q1TSQ1 的第一列除首项外全为 0,可写成分块形式

Q1TSQ1=[λ1wT0Sn1].

Q1TSQ1 仍然对称,所以必须有 w=0,并且 Sn1 也是对称矩阵。于是问题被限制到 q1 中的一个低一维对称块;对这个块重复同样过程,就通过归纳得到一组正交特征向量。

如果 λ1 与后续特征值重复,这个分块归纳不会失效:重复特征值对应的是一个特征子空间,子空间内任意正交基都可以作为特征向量。对称性保证不同特征值的子空间彼此正交,重复块内部再用正交化或同样的分块归纳选出正交基。这正是 ATA 能为 SVD 提供正交右奇异向量的原因。

与特征值分解的关系

SVD 与 A=XΛX1 一般不是同一件事。它们完全重合需要两个条件:

X=U=V,Λ=Σ.

这要求 A 有一组正交特征向量,而且特征值全为非负数。换言之,当且仅当 A 是对称正半定矩阵时,谱分解

A=QΛQT

可以直接看成 SVD。

A 是对称但有负特征值,SVD 会把负号吸收到某一侧奇异向量中,奇异值仍是非负长度;若 A 不是方阵或不可对角化,普通特征值分解甚至没有同等形式,而 SVD 仍存在。

S 是对称正定矩阵,则谱分解与 SVD 合并:

S=QΛQT,U=V=Q,Σ=Λ.

对称正半定矩阵也有同样读法,只是 ΛΣ 中允许出现零。

计算例子

A=[3045],

先计算

ATA=[25202025],AAT=[9121241].

二者的非零特征值同为

σ12=45,σ22=5,

所以

σ1=45,σ2=5.

ATA 的单位特征向量为

v1=12[11],v2=12[11].

ui=Avi/σi

u1=110[13],u2=110[31].

因此

U=110[1331],Σ=[45005],V=12[1111].

这个例子展示了计算顺序:先在输入端求 ATA 的正交特征向量 vi,再用 Avi=σiui 定出输出端的 ui,最后得到 A=UΣVT

把同一个例子按秩一项完全展开,可以看到 SVD 不只是给出 U,Σ,V,而是给出两个数值矩阵之和:

σ1u1v1T=4520[1133]=32[1133]=[1.51.54.54.5],σ2u2v2T=520[3311]=12[3311]=[1.51.50.50.5].

二者相加正好恢复

[1.51.54.54.5]+[1.51.50.50.5]=[3045].

极端上移矩阵

考虑严格上移矩阵

A=[0100002000030000].

它是严格三角矩阵,所有特征值都是 0。但是

ATA=diag(0,1,4,9),AAT=diag(1,4,9,0),

所以奇异值是

3, 2, 1.

SVD 会按 3,2,1 的强弱顺序排列对应的 uivi;第一项 σ1u1v1T 正好取出矩阵中最大的条目 3。如果删除最后一行得到 3×4 矩阵,奇异值仍为 3,2,1,只是 Σ 的形状变为 3×4,这体现了 SVD 对矩形矩阵的适配性。

矩形 data matrix 的行和列常常代表不同对象。课程成绩矩阵可以让每一行表示一门课程、每一列表示一个学生,aij 是成绩;此时 σ1u1v1T 把一个 combination course u1 与一个 combination student v1 配对,σ1 是这对组合上的主导成绩强度。期刊关键词矩阵也类似:行是 key words,列是 articles,aij 是某词在某文中的频率;最大的秩一项描述 hyperword u1 与 hyperarticle v1 之间最强的频率模式。

若把左下角条目从 0 改成

160000,

特征值会从四个 0 跳到半径为 1/10 的四个点

110,i10,110,i10.

相比之下,奇异值只变为

3, 2, 1, 160000.

这个例子说明:非正规矩阵的特征值可能对很小扰动极端敏感,而奇异值作为长度伸缩量更稳定。

变分刻画与计算

S=ATA。对称矩阵的最大特征值由 Rayleigh quotient 给出:

λ1(S)=maxx0xTSxxTx.

由于

Ax2x2=xTATAxxTx,

最大奇异值满足

σ1=maxx0Axx.

取得最大值的输入方向是 v1,并且 Av1=σ1u1。进一步限制 xv1,,vk1 可逐个得到后续 σk

因为

Axσ1x,

x 是方阵 A 的特征向量,则

|λ|x=Axσ1x,

所以

σ1|λ|max.

正交变换不改变奇异值。若 Q1,Q2 为正交矩阵,则

(Q1TAQ2)T(Q1TAQ2)=Q2TATAQ2,

它与 ATA 有相同特征值,因此 Q1TAQ2A 有相同奇异值。数值算法正是利用这一点:先用正交变换把一般矩阵化为 bidiagonal 矩阵;相应地,对称特征值问题会化为 tridiagonal 矩阵,因为

(bidiagonal)T(bidiagonal)

是 tridiagonal。后续迭代再在不改变奇异值或特征值的前提下逼近对角形式。

相邻概念