课程/M02/秩:信息的维度
M02 · 向量空间核心约 40 分钟

2.6 秩:信息的维度

本节位置:模块 2 · 向量空间 | 前置:2.4 | 预计:40 分钟

一句话:秩是矩阵「真正撑起」的维数——它告诉你这个矩阵携带了多少独立信息,以及有多少输入会被压没。

0. 场景引入

一个室内体育馆的 5G 基站:4 根发射天线,手机 4 根接收天线,20 MHz 带宽。按 4 层空间流、256-QAM 算,理论峰值能到 1.2 Gbps——够 3000 名观众同时看多视角直播。

开网当天投诉「看着看着就转圈」。抓日志发现:基站一直按 4 流发送,但误块率 12%,重传把有效吞吐拖到 200 Mbps。

原因在信道矩阵。 描述这个场馆的传输特性,它的秩才是「真正能并行几条独立数据流」。这个场馆多径太强,4 条路径高度相关, 的秩掉到了 2——第 3、4 条流发出去就是互相干扰。

决策:立刻切到 2 流(预测吞吐 600 Mbps、误块率 < 1%),还是继续 4 流赌一把?代价:判断错,观众看的是卡顿与重连;判断对了但切晚了,一场 2 小时的比赛有几十万人次投诉。

问题:秩到底在量什么?为什么「矩阵看起来有 4 列」不等于「能传 4 条流」?怎么在 1 ms 内把它估出来?

读完本节,你应该能回答三件事:

  1. 秩的四种等价说法(列空间维数、主元个数、最大无关组、非零奇异值)为什么一致?
  2. 为什么秩亏意味着「有些输入被压没了」?
  3. 为什么数值上「秩」必须靠阈值判,而不能靠「是不是 0」?

1. 直觉

秩是「信息的维度」。

  • 一个 矩阵把 映射到 ;如果它的像只是一个平面,秩就是 2——有一个方向的信息被压没了。
  • 一个 矩阵如果秩为 1,它把所有输入都映射到同一条直线上——无论输入多复杂,输出只有「一个自由度」。

💡 一句话直觉:秩 = 输出的有效维数 = 独立列的个数 = 独立行的个数。

类比边界:秩衡量线性独立;非线性模型的有效维度可能更复杂,但局部仍可用秩分析。

1.1 它在现实世界里对应什么

秩是「能同时说几条独立的话」。

想象一个装了 4 个扬声器、4 个麦克风的房间。理论上可以放 4 路独立音频(4 条流);但如果房间回声把 4 条路径搅成 2 条可分辨的,那你放 4 路只会互相糊住——第 3、4 路的信息被前两路「盖」掉了。秩就是可分辨的声道数。

在数据侧同理:一个 的权重矩阵看起来有 100 万个参数,但若它的秩只有 10,那它只把输入投影到 10 个独立方向上,其余 990 个方向的信息被合并或压没。

量级直觉: 信道里,若最小奇异值只有最大奇异值的 ,有效秩通常只有 2~3——名义上 4 条流,实际上传不了 4 条。这个比值比「秩等于几」更能说明问题。

1.2 这个类比在哪里失效

房间的声学是非线性的(混响、削波),而秩只描述线性映射。更实际的边界是:秩是「精确的 0/1 判据」,可测量总有噪声——真实的奇异值不会恰好是 0,永远是 或 。

所以工程上问的不是「秩是多少」,而是「在什么阈值下秩是多少」。同一个 ,阈值取相对 (10%)时秩是 2,取 时秩可能是 4。秩是数学上明确、数值上模糊的量,这句话要记住。

2. 定义

2.1 秩

矩阵 的**秩(rank)**定义为列空间的维数:

也等于行空间的维数(行秩 = 列秩),也等于行简化阶梯形中主元的个数,也等于非零奇异值的个数(第 7.2 节)。

2.2 满秩

  • 若 ,称 满秩(full rank);
  • 方阵满秩 可逆 ;
  • 若 ,称秩亏(rank-deficient)。

2.3 秩-零化度定理

读作:输入的 个维度,要么被映射到输出(秩),要么被压成零(零空间),没有第三种去处。

这个等式就是 Halmos 书中的 rank–nullity 定理。

3. 为什么这样定义

如果只看「非零元素的个数」,无法判断信息量:一个所有元素都非零的矩阵可能秩为 1;一个有很多零的矩阵可能满秩。

秩抓住了线性结构:输出的所有可能方向中,有多少是真正独立的。它决定了:

  • 方程 对哪些 有解();
  • 解的自由度();
  • 矩阵能否压缩(低秩近似);
  • 深层网络是否「坍缩」(激活秩下降)。

3.1 反事实:把「秩」定义成「非零元素的个数」

这个定义很诱人:矩阵里非零的数越多,信息越多,秩应该越大。试两个 :

有 4 个非零元素,「秩」= 4; 只有 2 个,「秩」= 2。按这个判据, 携带的信息是单位矩阵的两倍。

但算一下 到底做了什么。对任意输入 :

输出永远落在「两个分量相等」的那条直线上——整个平面被压成一条线,秩是 1。而 把每个方向原样保留,秩是 2。

荒谬之处一眼可见: 的非零元素多一倍,独立方向却少一半。更糟的是这个定义会突破矩阵的物理上限: 矩阵的「秩」能算到 4,直接违反 。

拿它去估 MIMO 流数,你会把一个只能传 1 条流的信道判成 4 条——正是第 0 节那个 12% 误块率的现场。

4. 性质与推导

4.1 基本性质

性质式子说明
转置不变行秩 = 列秩
乘积上界复合不会增加维数
和的上界两个像的和
外积秩 1所有列都是 的倍数
可逆不变( 可逆)换基不改变秩
奇异值第 7.2 节

4.2 为什么行秩等于列秩

设 行简化后主元列为 ,对应的列构成列空间的一组基,所以列秩为 。行简化不改变行空间,非零行有 个,所以行秩也是 。

严格证明可用「转置 + 消元」,这里只要求记住结论与直觉:行与列从两个方向描述同一个线性映射,维数必然一致。

4.3 秩-零化度定理的推导

把 看成映射 。对每个输入 , 只依赖于 在「非零空间方向」上的分量;零空间方向被压成零。选零空间的一组基( 个)和补空间的一组基( 个),后者映到列空间的一组基。因此 。

4.4 Sylvester 秩不等式

当 满秩时取等号。这个不等式在分析「两个低秩矩阵相乘」时有用。

它通常称为 Sylvester 秩不等式。

5. 例子

5.1 手算:求秩与零空间

行变换:第二行 第一行,消去;第三行减第一行:

主元 2 个,。

零空间:,。令 ,则 ,。基为 ,维数 。

5.2 手算:低秩矩阵

,,:

两行成比例,秩为 1。任何输入 ,,输出永远在 的方向上。

5.3 场景:为什么低秩能压缩

存储 矩阵需要 100 万个数;若它秩为 10,可写成 (,),只需 2 万个数,压缩 50 倍。代价是只能近似原矩阵(第 7.3 节)。

5.4 场景闭环:1200 个子载波、每 1 ms 一次

输入: 复信道矩阵按子载波给。20 MHz 带宽、15 kHz 子载波间隔,约 个子载波。每个复矩阵 16 个复数、每复数 8 B(实虚各 fp32), B;1200 个就是 kB,每 1 ms 更新一次,折算 154 MB/s。

计算:对每个 做 SVD,, 里非零的个数就是秩。 复 SVD 约 FLOP,1200 个子载波是 FLOP/ms,即 1.2 GFLOP/s——基站 DSP 扛得住,但吃掉可观预算。

工程上不逐子载波算,按子带:每 12 个子载波一组,共 100 组,用组内平均信道估秩。算量降到 FLOP/ms,约 0.12 GFLOP/s。

输出:奇异值谱假设是 。比值 ,低于 10% 的阈值,判有效秩 2。决策:切 2 流,每流 256-QAM、编码率 3/4。

成本:0.12 GFLOP/s 算力、153.6 kB 估计缓存;切流本身要重配调度器约 20 ms,期间吞吐会掉。对照:坚持 4 流,误块率 12%,重传把吞吐拖到 200 Mbps,比 2 流的 600 Mbps 少 2/3。

失败条件:

  • 噪声抬高小奇异值:低 SNR 时真实为 0 的奇异值会被噪声顶到 0.3,秩被高估。兜底:用比值 + 随 SNR 变化的阈值,或用 MDL/AIC 这类模型阶数估计。
  • 用户一动就变:秩是 1 ms 尺度的量,人一转身就变。兜底:指数平滑 + 滞回(连续 5 帧判 2 流才切,避免抖动)。
  • 秩不是全部:秩 2 但条件数很大时,2 流也难解。兜底:同时看 ,超过 20 就退到 1 流。

6. 常见误区

  1. 误区:秩就是非零元素的个数。 纠正:秩是线性独立的行/列数,与零元素多少无直接关系。对角矩阵非零元素少但可以满秩。

  2. 误区:只有方阵才有秩。 纠正:任意 矩阵都有秩,最大为 。

  3. 误区:。 纠正:一般小于等于;例如 ,,和为 0,秩为 0。

  4. 误区:低秩矩阵一定「简单/可解释」。 纠正:低秩是结构约束,不保证语义可读;秩 1 矩阵也可能对应复杂的全局模式。

7. 概念网络

  • 前置:2.4 基与维数 —— 秩是列空间的维数。
  • 前置:2.3 线性无关 —— 秩是最大无关组大小。
  • 后续:3.7 四个基本子空间 —— 秩把四个空间串起来。
  • 后续:7.3 低秩近似 —— 用秩 逼近。
  • 后续:9.3 PCA —— 数据矩阵的秩与有效维数。

8. 通往大模型:低秩是主线

1. LoRA: 的秩至多 。 控制「允许改动的方向数」,参数量 。

2. 注意力矩阵的秩:,其中 的秩至多 ;softmax 是非线性的,会改变秩,但注意力仍受低秩结构约束。

3. 秩坍缩:深层 Transformer 中,token 表示趋于相似,激活矩阵 的秩下降。极端情况下所有 token 表示相同,秩为 1,模型无法区分位置/内容。

4. 梯度秩:反向传播得到的梯度矩阵也可能低秩,这与「LoRA 为什么有效」的假设相关:任务适配所需的更新可能集中在少数方向。

可检验结论:若 的秩为 ,则它把输入空间压缩到 维;若 ,大部分输入方向被「合并」。用 SVD 看奇异值谱,可以估计有效秩(保留 99% 能量所需的奇异值个数)。

如果这一步算错,用户会看到什么:秩坍缩在生成模型上的表现最好认——长回答到后半段开始复读同一句,或者不同段落的说法越来越像。原因很直:所有 token 的表示挤到一个低维子空间,模型没东西可区分了。另一头是秩估高了:以为 4 条流都能传、以为某个权重满秩可以无损压缩,结果是误块率上升、或压缩后某些输入被系统性压没——用户看到的是「某些问题永远答错,换个问法又对了」。

9. 练习

  1. 概念:为什么 ?从「像空间」的角度解释。
  2. 计算:求 的秩和零空间维数。
  3. 计算:,,求 的秩。
  4. 场景:一个 的权重矩阵,若有效秩为 64,用 LoRA 表示更新需要多少参数?与全参数更新相比压缩多少倍?
  5. 开放:秩坍缩一定有害吗?在什么情况下「低秩表示」反而是目标?
参考答案
  1. 的每一列都是 的列的线性组合,所以 ,维数不超过。
  2. 三行成比例,秩 1;零空间维数 。
  3. 外积秩 1(非零向量)。
  4. ,全参数 ,约压缩 32 倍。
  5. 不一定;若任务只需低维信息(如分类),低秩是归纳偏置,能省参数、抗过拟合;但生成任务需要保留细节,过度低秩会损失表达。

10. 一页速记

  • 秩 = 列空间维数 = 行空间维数 = 主元个数 = 非零奇异值个数。
  • 物理意义 / 现实对应:4 发 4 收的房间里能分辨几条独立声道;秩 2 就只能传 2 条流,多发就是互相干扰。
  • 秩-零化度:。
  • 。
  • 满秩方阵 ⇔ 可逆 ⇔ 行列式非零。
  • 低秩 = 可压缩,但压缩有信息代价;数值上「秩」要靠阈值判。

11. 参考文献与致谢

这一页的知识不是凭空来的。下面列出本页直接借用的原始工作与权威整理;正文中的人名、定理名已链接到对应条目。链接优先指向 DOI、arXiv 或可长期访问的原文存档。

  • 哈尔莫斯(Paul R. Halmos, 1958):Finite-Dimensional Vector Spaces(1958 年初版,Springer 1974 年重印)。把秩定义为像空间的维数,并证明 ;本页 2.3 的秩-零化度定理就是它的矩阵版。Springer 重印本
  • 霍恩与约翰逊(Roger A. Horn & Charles R. Johnson, 1985):Matrix Analysis。矩阵秩的等式与不等式在这里有完整证明,包括本页 4.4 的 Sylvester 秩不等式及其取等条件。Cambridge University Press

下一篇 → 2.7 内积空间与 Gram–Schmidt

返回 M02 导览去练习场

随堂测 · 5 题

数值难度 2第 1 / 5 题
矩阵 的秩是多少?

源文件:02-向量空间/06-秩.md

输入关键词开始搜索