奇异值分解:找到矩阵的主方向
Singular Value Decomposition (SVD)
两组正交方向,一组伸缩系数,把任意矩阵看清楚。
这节课的核心问题
这节课从特征值方法的边界出发,构造任意实矩阵的 SVD,证明左右奇异方向的正交性,再把它读成几何变换、极分解与数据的秩一成分。快速回顾保留每段的主线;完整讲义展开课堂推理,并标明字幕校正及补充计算。
能从维数解释为什么需要两组奇异向量。
能复述从 AᵀA 出发构造 SVD 的证明,并处理重根与零奇异值。
能把 UΣVᵀ 与单位圆、椭圆、四个基本子空间对应起来。
能区分完整与紧凑 SVD,解释极分解和第一秩一成分。
从特征向量出发:为什么还需要 SVD?
特征值方法要求输入和输出在同一空间;SVD 用两组正交基,把任意矩阵的作用解释清楚。
上一讲中最理想的对象是实对称矩阵:它可以写成 ,特征向量组成正交基。Strang 从这里提出新的问题:实际数据矩阵常常是 的矩形矩阵,这套语言还够用吗?
如果 ,则 。当 时, 的两边甚至不在同一空间,因此不能直接给 定义通常意义的特征值。即使 是实方阵,它的特征值也可能是复数,特征向量也未必正交。我们需要一个适用于任意实矩阵、又能保留正交结构的分解。
想一想两种描述的区别:特征向量寻找「变换以后还沿着原方向」的向量;奇异向量允许输入方向和输出方向不同。换来这个自由之后,输入空间与输出空间都能拥有一套整齐的正交坐标系。
本讲沿着这条路线前进:提出 → 借助对称矩阵 找到输入方向 → 构造输出方向并证明正交 → 读出几何意义 → 为下一讲提取数据的主要部分做准备。
依据本讲 00:22–01:51 字幕;公式条件按实矩阵表述。 教材 I.8 印刷56 / PDF70 核对引入动机。
矩形矩阵不能直接使用通常的特征方程。
SVD 分别描述输入方向、伸缩量和输出方向。
两组奇异向量与三个因子
A=UΣVᵀ:V 的列是输入方向,U 的列是输出方向;中间的奇异值始终非负。
Strang 在黑板上把谱分解与新的分解并列:
这里 。完整 SVD 中,、 都是正交矩阵, 是矩形对角矩阵。 称为左奇异向量,处在输出空间 ; 称为右奇异向量,处在输入空间 。
若 ,通常将非零奇异值排列为
其余对角位置为零。奇异值没有负号;反向、旋转或反射由 和 承担。因而不能把特征值简单改名为奇异值:两者回答的问题不同。
「任意矩阵都有 SVD」是本讲需要证明的结论。完整分解和只保留 个方向的紧凑分解稍后会作明确区分;不要在还没检查维数时把每个因子都当成同阶方阵。
符号与板书 19:05、44:40 对照;正奇异值按课堂 30:32 的约定降序排列。 教材 I.8 印刷56–57 / PDF70–71 核对定义。
完整 SVD 的三个尺寸是 m×m、m×n、n×n。
奇异值非负,左右奇异向量位于不同的空间。
关键桥梁:AᵀA 与 AAᵀ
两个 Gram 矩阵都是对称半正定矩阵;它们的正特征值相同,但零特征值的个数可以不同。
我们不能直接要求矩形 有正交特征向量,但可以把它变成两个方阵:
它们都是对称矩阵。更进一步,对任意 ,
因此 的特征值非负,可以取平方根; 同理。这正好把上一讲的正定与半正定理论接到了本讲。
条件校正:一般应说「半正定」。 课堂口语多次说 positive definite,同时允许特征值为零。严格地说, 正定当且仅当 的列线性无关; 正定当且仅当 的行线性无关。秩亏时一定会有零特征值。
为什么两个不同尺寸的矩阵会有同样的正特征值?若 且 ,那么 ,并且
这把一个正特征值对应的方向送到了另一侧。反向用 也成立。两侧共有 个正特征值(计重数),其余分别是 与 个零。课堂在 06:50 后也特意把「特征值相同」修正为「非零特征值相同」。
依据 04:09–07:47 字幕;对称分解式由 19:05、40:05 板书核对。二次型论证为补全课堂条件的解释。 教材 I.8 印刷58–59、64 / PDF72–73、78 核对谱关系。
σᵢ² 是 AᵀA 的正特征值。
AᵀA 与 AAᵀ 的正谱相同,零谱取决于维数和秩。
Avᵢ=σᵢuᵢ:把四个基本子空间接起来
非零奇异方向把行空间一一送往列空间;另外两组方向分别构成 A 与 Aᵀ 的零空间。
新的基本方程是
这里 和 都是单位向量, 正好是 的长度。超过秩之后,,那些输入方向被矩阵彻底消去。
Strang 画出的「线性代数大图景」把两组奇异向量放进四个基本子空间:
| 输入空间 | 输出空间 |
|---|---|
| 张成行空间 | 张成列空间 |
| 张成 | 张成左零空间 |
在每一侧,上下两个空间互相正交。 把行空间中的 个选定方向送到列空间中的 个正交方向,并沿第 个方向放大 倍;它把整个 送到零。
特别之处是「这组正交方向变换后仍然正交」。 一般矩阵不会保持任意两条正交向量的夹角。SVD 找到的是专门适配于 的一组方向,并不是证明 本身是正交矩阵。
依据 07:48–11:03 字幕及 19:05、32:30 板书中的四子空间图和 Avᵢ 方程。 教材 I.8 印刷56、59 / PDF70、73 核对四子空间。
非零奇异值的个数就是秩。
输入被消去的方向由 N(A) 描述;到不了的输出方向由 N(Aᵀ) 描述。
从逐向量方程装配成矩阵分解
把向量按列排列,Avᵢ=σᵢuᵢ 就成为 AV=UΣ;紧凑形式需要注意投影矩阵。
把前 个右奇异向量排成 ,把对应的左奇异向量排成 ,再令 ,所有逐向量方程就合在一起:
如果把两组基补全,使用完整的 和矩形 ,则有 。因为方阵 正交,,右乘 就得到 。
这里有一个值得补清的细节。 紧凑矩阵只满足 ,一般没有 。那么为什么仍然可以写
是到行空间的正交投影。任意 可以拆成行空间部分与零空间部分;后者被 消去,因此 。这才是紧凑形式成立的完整理由。
同一个事实现在有三种读法:对一个方向写 ,对一组方向写 ,对任意输入写 。
课堂 11:07–13:10;矩阵方程可见 49:20 板书。投影解释为补充,避免把紧凑 Vᵣ 当成方阵。 教材 I.8 印刷57–58 / PDF71–72 核对完整与紧凑形式。
按列装配方程能看清矩阵乘法。
紧凑 VᵣVᵣᵀ 是投影,完整 VVᵀ 才是单位矩阵。
消去正交因子:奇异向量从哪里来?
展开 AᵀA 会消去 U,展开 AAᵀ 会消去 V,两个谱分解分别暴露出左右奇异向量。
现在暂时假设目标分解已经存在,反过来观察它必须满足什么。转置时必须把因子顺序颠倒:
于是
中间的 消失了, 是对角矩阵,前 个对角元为 。这正是熟悉的对称矩阵谱分解,所以 是 的正交单位特征向量, 是相应非负特征值的平方根。
换一个次序,得到完全对称的结论:
因此 是 的正交单位特征向量。注意两个对角矩阵的尺寸不同: 为 , 为 。
这是一个「先分析应有形式,再寻找构造」的证明策略。到这里还不能说证明完全结束:我们找到了左右两边各自应当长什么样,但还需让它们真正配成 。
核心乘积已与 19:05、49:20 板书核对。 教材 I.8 印刷58–59 / PDF72–73 核对两个乘积。
右奇异向量来自 AᵀA,左奇异向量来自 AAᵀ。
σ 是特征值的平方根,不是 A 的特征值。
重特征值:为什么不能两边各算各的?
重特征值给出一个子空间而非唯一方向;先选 V,再用 uᵢ=Avᵢ/σᵢ 让左右方向正确配对。
Strang 接着追问一个容易漏掉的问题:假如 或 有二重、三重特征值,单独说「取它们的特征向量」够不够?
课堂例子是
对应特征值 的方向是 ;对应特征值 的则是整个 平面中的非零向量,因为 。这个平面里可以选择许多不同的正交单位基。
因此,如果分别计算 与 的特征基,两套选择未必相互匹配。即使没有重根,也可能有符号不匹配。Strang 的处理是:先选定 的正交单位特征向量 ,再定义
这样 自动成立,左右方向也不会配错。零奇异值不能用这个式子,因为不能除以零;相应的基向量要在零空间中另外补齐。
SVD 因而通常不是逐列唯一的:同一对 同时变号不改变乘积;重奇异值对应的子空间内还能同时更换正交基。唯一确定的是排好序的奇异值,以及适当条件下的子空间,而不是每个向量的符号。
19:05 板书明确核对 S=diag(1,1,5);构造式也可见 32:30 帧。唯一性说明为课堂问题的补充解释。 教材 I.8 印刷59 / PDF73 核对重根与符号配对。
重根空间可以有很多正交基。
用 Avᵢ/σᵢ 构造 uᵢ,自动解决正奇异方向的配对问题。
证明闭环:新构造的 uᵢ 确实正交归一
证明的关键不是仅用 vᵢ⊥vⱼ,而是同时使用 AᵀAvⱼ=σⱼ²vⱼ。
剩下的工作是验证构造出的 真满足要求。课堂把注意力集中在 上;同样的计算可以一次处理所有指标:
若 ,最后的内积是零;若 ,结果为 。所以 不仅互相正交,而且都是单位向量。
为什么一般的正交向量做不到? 单独知道 ,并不能随意删掉中间的 。我们能把它替换成一个数,是因为 同时还是这个矩阵的特征向量。课堂在 24:20–25:45 反复强调的正是这一步。
再补上另一项检查:
因此这些 也确实是 的特征向量。连同零空间的正交补基,SVD 的存在性证明就完成了。
回顾证明依赖的已有知识:对称矩阵有正交单位特征基; 半正定;正交基可扩充。Strang 在随后简短谈到 SVD 比特征值理论更晚被发现,而大型矩形数据矩阵让它的重要性越来越突出。本讲没有展开历史考证,复习的重点仍是这条构造链。
25:45 板书完整核对了从 (Av₁/σ₁)ᵀ(Av₂/σ₂) 到零的计算;统一指标与 AAᵀuᵢ 检查是展开说明。 教材 I.8 印刷59 / PDF73 核对式(9)–(11)。
正交性来自「正交基 + AᵀA 的特征方向」两个条件。
同一内积公式同时证明互相正交与长度为 1。
证明方法与数值算法要分清
AᵀA 让存在性证明简洁,却可能使实际计算更大、更贵,并平方条件数。
Strang 随即提醒:刚才的证明不应直接变成大规模 SVD 的算法。他举出 的矩阵 ;显式形成 会得到 的方阵,需要大量运算和存储。
更重要的是舍入误差。对于满列秩矩阵,在二范数下
小奇异值会变成更小的平方值,区分它们更困难。若矩阵本身秩亏,通常的条件数已经是无穷大;课堂中的宽矩阵例子也会令 有零特征值。因此上面的有限条件数等式需要它自己的满列秩条件。
本讲的结论是:用 理解数学,用专门的稳定算法做实际 SVD。 手算一个 教学例子可以走这条路线;大型数据处理中应直接使用数值库的 SVD 例程。课程后续会讨论计算方法,此处没有把具体算法展开。
依据 26:46–28:29 字幕;条件数公式补充了满列秩前提。
不要把存在性证明自动当作推荐算法。
条件数平方会放大辨别小奇异值时的数值困难。
几何:先转向,再拉伸,再转向
Vᵀ 对齐输入坐标,Σ 沿坐标轴伸缩,U 确定输出主轴;二维单位圆变为椭圆。
读取 时,要从最右边开始。课堂用二维单位圆上的所有向量说明三个步骤:
- 是正交变换,保持长度与夹角。整个圆仍是圆,但每个被标记的向量换了方向。
- 把两个坐标分别乘以 、。圆变为轴对齐的椭圆,半轴长度就是奇异值。
- 再做正交变换,把椭圆放到最终位置。最终两条主轴沿着 ,对应端点是 。
所以 告诉你从哪个输入方向出发, 告诉你落在哪个输出方向, 告诉你长度放大多少。正交变换可以包括反射;课堂为了画图方便主要说「旋转」,但一般的 SVD 不要求 。
Strang 接着问:什么时候可以让 ?对于实对称半正定矩阵,可以选同一组正交特征向量,并令 。反过来,若 且 ,则 必为对称半正定。正定是没有零奇异值的特殊情况。若对称矩阵有负特征值,相应的负号需要放入左右奇异向量之间,不能原样令 。
操作前先预测: 只改变输入旋转角,最终椭圆外轮廓会不会变?轮廓不会,因为整个单位圆在 下不变,但固定输入向量的落点会变。再把 降到零,椭圆会退化成线段,表示一个输入方向被消去。
这里的交互实验是为了复现课堂的变换图景;降秩与参数预设是补充探索。
32:30 板书核对三个变换阶段;半正定边界和降秩观察为补充说明。 教材 I.8 印刷61–62 / PDF75–76 核对特殊矩阵与几何。
动手实验 · 补充可视化
把矩阵变换拆开看
改变正交基和奇异值,观察单位圆如何变成椭圆。
一个矩阵,三步几何变换
观察任务 先把 σ₂ 拉到零,再切换四个步骤:究竟是哪一步让平面变成了线?
U 将椭圆转向左奇异向量 u₁、u₂。长短半轴仍是 σ₁、σ₂,输入的 vᵢ 最终变成 σᵢuᵢ。
课堂预设 A = [3, 4; 0, 5] 使用精确奇异值 3√5、√5;控件小数为四舍五入显示。
改变 α、β 只会改变方向;改变 σ₁、σ₂ 才会改变半轴长度。这一族示例的 U、V 都选作旋转,普通 SVD 的正交矩阵也可以包含反射。
想一想:σ₂ = 0 时,是否一定有 A = 0?
不一定。只要 σ₁ > 0,就仍有 A = σ₁u₁v₁ᵀ,是一个秩一矩阵。两个奇异值都为零才有 A = 0。
单位圆的像揭示奇异值与左奇异方向。
U=V 的准确对应是实对称半正定;正交变换还可能含反射。
数一数:矩阵中的自由度去了哪里?
二维的四个数分成 1+2+1;三维的九个数分成 3+3+3;四维每个正交因子有六个连续自由度。
SVD 不只给出图像,也应当能容纳原矩阵的自由度。一个一般 矩阵有四个实数,课堂将它们重新数成: 的一个角度、两个奇异值、 的一个角度,总计 。
二维旋转可以写成
虽然矩阵有四个位置,它只需要一个连续参数。反射与否属于离散选择,不再增加连续参数的个数。
三维时,原矩阵有九个数;三个奇异值加上两侧各三个旋转参数,得到 。课堂与学生用飞机的滚转、俯仰、偏航来说明三维姿态可由三个角度描述。这是理解自由度的直观联系,不是在本讲建立完整的姿态参数化理论。
四维原矩阵有十六个数,除去四个奇异值,左右两边各留下六个连续参数。课堂到这里停住。补充一般规律: 正交矩阵的连续自由度为 ,于是
这个计数针对一般情形。重奇异值与零奇异值会带来表示的冗余,不能用它推出「每个 SVD 都唯一」,也不能仅凭参数数目相等就证明分解存在。
依据 34:13–39:21 字幕;n 维公式和退化情形说明为补充。 教材 I.8 印刷62 / PDF76 核对二维参数。
正交矩阵的条目受到正交约束,并非彼此独立。
自由度计数是结构检查,不是存在性或唯一性的证明。
课堂矩阵:特征值、奇异值与面积缩放
对 A=[[3,4],[0,5]],特征值为 3、5,奇异值为 3√5、√5;两者乘积都为 15。
课堂在黑板上写出
并把完整的数值计算留给教材。下面是按这个课堂矩阵补做的手算,不是视频中逐步完成的例题。
与书页对照时注意转置: 本地教材印刷第 57、60 页使用 ,正好是课堂矩阵的转置。因此奇异值不变,但左右奇异向量交换;本页保留视频黑板上的矩阵。
因为 上三角,特征值直接是 。但
因此按降序排列,、。一组相互配对的奇异向量为
可以直接计算 验证每一对。这个例子里,较小奇异值小于两个特征值,较大奇异值大于它们:。它说明奇异值一般不等于特征值;也不要把这张大小图不加条件地推广到任意矩阵的全部特征值。
课堂接着讨论乘积。对任意实方阵,准确公式是
这是因为正交矩阵的行列式为 。本例 ,所以奇异值乘积也恰好是 。几何上它给出面积缩放的绝对倍数;行列式的符号另外记录方向是否翻转。
字幕校正: 40:51 附近的奇异值下标与前面的降序约定冲突,这里统一按 书写。课堂关于「正交矩阵行列式是 1」的说法对应旋转情形;一般表述应使用绝对值。
矩阵由 40:05 板书确认;完整手算为本站补充,数值与分解另行核验。 教材 I.8 印刷57、60 / PDF71、74 已核对转置版本。
手算先求 AᵀA 的特征值,再开平方。
方阵奇异值之积等于行列式的绝对值。
紧凑与完整 SVD:哪些列真正参与重建?
紧凑形式只保留 r 个非零方向;完整形式补出两侧零空间,二者重建同一个 A。
Strang 在最后一块黑板上把两种尺寸并排写出。只保留非零奇异值时:
这里 的列都是正交单位向量,但通常是矩形矩阵。它们只负责真正参与 的作用的 个方向。
完整形式是
把 补到完整 时,额外的列属于 ;把 补到完整 时,额外的列属于 。 在对应位置补零,所以新增的那些基向量没有给乘积添上任何非零项。
例如补充设想一个 、秩为 的矩阵:紧凑因子尺寸为 、、;完整因子尺寸为 、、。左零空间维数为 ,右零空间维数为 。从尺寸就能发现左右两侧剩余的方向不必一样多。
术语约定: 本页用「紧凑 SVD」专指只保留 个正奇异值的形式。软件文档中的 thin/economy SVD 有时保留 个方向,包含零奇异值;使用软件时需要核对其具体约定。
44:40 板书核对两种尺寸。44:45 字幕对额外 u 的零空间有混淆,此处按维数及四子空间关系写为 N(Aᵀ)。5×3 示例是补充练习。 教材 I.8 印刷56–59 / PDF70–73 核对维数与零空间。
补零空间基不改变 A,但让两个正交因子都成为方阵。
额外左奇异向量属于 N(Aᵀ),维数为 m−r。
极分解:从三个因子变成「拉伸 × 正交」
给方阵 SVD 插入 UᵀU=I,立即得到 A=(UΣUᵀ)(UVᵀ)=SQ。
在提到讲义 I.8 的例子与另一种构造方法之后,Strang 选择用一个新的分解结束纯数学部分:极分解。他从复数的极形式 类比: 描述大小, 描述不改变长度的转向。
对于实方阵 ,在 SVD 中插入 :
第一个因子 对称半正定,描述沿主轴的拉伸;第二个因子 正交,因为
因此一般线性变换可以拆成先做正交变换,再做对称拉伸。课堂用弹性物体的拉伸与内部转向说明它在几何和工程中的意义。若 可逆, 正定;若 奇异, 可以有零方向。
维数要补上: 上面直接写 的版本要求 是方阵,因为完整 只有这时也是同阶方阵。矩形矩阵也有广义极分解,但正交因子要改成适当的部分等距映射;本讲没有展开,不能照搬这行尺寸不符的乘法。
作为补充,可以验证 ,也就是 ;同样可写另一侧的形式 ,其中 。这与复数「模长 × 相位」的联系就更清楚了。
49:20 板书明确核对 A=(UΣUᵀ)(UVᵀ)=SQ。方阵条件、平方根与另一侧形式为补充说明。
极分解由 SVD 插入单位矩阵直接得到。
SQ 形式读取时先作用 Q,再作用 S。
走向数据:最重要的部分是一个秩一矩阵
把 A 拆成 σᵢuᵢvᵢᵀ,最大奇异值对应第一块;下一讲要证明截断这些块的最优性。
讲到这里,Strang 把注意力拉回课程目的:对一个巨大的数据矩阵,我们希望提取信号中的主要结构。看「最大的单个条目」并不足够,因为重要信息通常分布在许多行和列之间。
按列乘行展开 SVD,可得
每个 都是一个 的秩一矩阵。左右向量均已归一化,因此衡量这一块大小的权重是 ;最大的那块是
也可以直接看它如何作用于输入:。先测量 在 方向的分量,乘以强度 ,再沿 输出。一个秩一成分正好把一种输入模式与一种输出模式联系起来。
课堂说这些方向会与统计中的高方差、低方差及主成分联系起来。补充前提: 将奇异向量解释成通常的 PCA 方向时,要先明确数据按行还是按列摆放,并完成相应的均值中心化;本讲这里只做预告,也没有证明最大的奇异方向一定是有用信号。
回到刚才的矩阵,补充计算得到第一块为 。它不是只保留原矩阵中最大的数字,而是用一个覆盖所有条目的秩一模式来近似整个矩阵。
从这里继续到第 7 讲:为什么只保留前 块能得到最佳低秩近似?「最佳」使用哪一种误差?剩下的误差与舍弃的奇异值有什么关系?这三件事正是下一讲的任务。本讲最后关于 MIT 调整星期课表的几句属于课程安排,不新增数学内容。
依据 50:04–53:32 字幕;秩一展开、算例第一块与 PCA 中心化提示为补充解释。 教材 I.8 印刷57–58 / PDF71–72 与 I.9 印刷71 / PDF85 核对秩一展开。
SVD 给出按奇异值加权的秩一展开。
前 k 项为什么最优,要由下一讲的 Eckart–Young 定理回答。
CLOSE THE LOOP
合上讲义,还能讲清楚吗?
用几道问题,检查你是否掌握了这一讲的关键区别。
概念索引 · 中英术语对照
- 奇异值 singular value
AᵀA 非负特征值的平方根,描述沿对应奇异方向的长度伸缩。
- 右奇异向量 right singular vector
V 的列,在输入空间中;可取为 AᵀA 的正交单位特征向量。
- 左奇异向量 left singular vector
U 的列,在输出空间中;正奇异值处由 uᵢ=Avᵢ/σᵢ 配对。
- 紧凑 SVD compact SVD
仅保留 r 个正奇异值及其左右方向的分解 A=UᵣΣᵣVᵣᵀ。
- 正交矩阵 orthogonal matrix
实方阵 Q 满足 QᵀQ=I;保持长度和内积,可能包含反射。
- 极分解 polar decomposition
本讲对实方阵写为 A=SQ,S 对称半正定、Q 正交。
- 秩一成分 rank-one component
SVD 中的一块 σᵢuᵢvᵢᵀ,把一个输入模式连接到一个输出模式。
- 条件数 condition number
满秩时的二范数条件数由最大与最小相关奇异值之比给出,衡量问题对扰动的敏感程度。