第 1 章 线性代数 I:向量空间、矩阵与四个基本子空间
第 1 章 线性代数 I:向量空间、矩阵与四个基本子空间
本章要建立的不是"会算矩阵",而是矩阵作为线性映射的思维方式:一个
m×n矩阵把n维空间线性地压到m维空间,压掉了什么(零空间)、留下了什么(列空间)、有效维度是多少(秩)。后面所有章节——最小二乘、特征分解、SVD、PCA、注意力机制的维度账本——都是在这一套语言上做加法。
学习目标
读完本章,你应当能够:
- 默写向量空间的八条公理,并用"对加法与数乘封闭"判定一个集合是否为子空间;
- 推导矩阵乘法两种定义(元素求和式与线性组合式)的等价性,并解释为什么没有交换律;
- 画出四个基本子空间的维度与正交关系图,写出秩-零化度定理并说明其证明思路;
- 判定可逆性,并能从十个等价条件中任选一条推出另一条;
- 辨析协方差矩阵与 Gram 矩阵的维度差异,说清"阶数由谁决定"。
前置知识检查
| 你需要知道 | 在哪一节补齐 |
|---|---|
| 向量、线性组合、方程组解集 | 1.1.1 |
| 什么是"运算封闭" | 1.1.2 |
| 矩阵乘法的机械算法(行乘列) | 1.2.1(并给出为什么这样定义) |
| 行列式怎么算 | 1.4.2(只用到 det = 0 的判定含义) |
| 高斯消元(只会消元、不知含义) | 1.3.3(重讲为"求秩与找基") |
| 正交、内积、投影 | 本章只给结论,完整推导见第 2 章 2.3、2.4 节 |
注意
本章出现的"正交"只用到一条事实:xᵀy = 0 表示两个方向垂直。内积的公理化定义、投影矩阵的构造与最小二乘的几何解释放在第 2 章,本章先把"四个子空间互相正交"这张地图画出来,第 2 章再用它做投影。
1.1 从向量到向量空间
1.1.1 先有直觉:向量是"可加、可缩放的东西"
中学阶段我们把向量理解为"带箭头的量",或者干脆是一个坐标数组 x = (x₁, x₂, …, xₙ)。这个理解对计算够用,但对理解机器学习不够用。因为在机器学习里,被当作向量处理的往往是函数、多项式、图像块、词嵌入——它们不是箭头,却同样满足"能相加、能按比例缩放"。
两个向量最基本的操作是:
| |
c₁…cₖ 是标量。线性代数的全部内容,本质上都在研究"线性组合能到达哪些点"以及"到达方式是否唯一"——前者是张成与列空间,后者是线性无关与零空间。
1.1.2 向量空间的公理化定义
设 V 是一个非空集合,在 V 上定义了加法 + 和数乘(标量乘法)两种运算。若对任意 u, v, w ∈ V 和任意标量 c, d ∈ R 都满足下列八条,则称 V 是向量空间(vector space),V 中的元素称为向量:
| 类别 | 公理 | 内容 |
|---|---|---|
| 加法 | A1 交换律 | u + v = v + u |
| 加法 | A2 结合律 | (u + v) + w = u + (v + w) |
| 加法 | A3 零元 | 存在 0 ∈ V,使 v + 0 = v |
| 加法 | A4 负元 | 对每个 v 存在 −v,使 v + (−v) = 0 |
| 数乘 | M1 单位元 | 1·v = v |
| 数乘 | M2 结合律 | c(dv) = (cd)v |
| 混合 | D1 分配律 | c(u + v) = cu + cv |
| 混合 | D2 分配律 | (c + d)v = cv + dv |
为什么要费劲列这八条? 因为一旦某个结论只从这八条推出,它就自动对所有满足这八条的对象成立。后面我们会用同样的方式定义内积(第 2 章 2.1 节)、范数(2.2 节)、概率(第 4 章)——这叫"公理化方法",是数学把特例升级为通用工具的标准手段。工程上的收益很直接:Faiss 里能对向量做的操作、NumPy 里能对数组做的操作,只要满足这八条就能共用同一套算法。
需要立刻记住的两个常见向量空间:
R^n:所有n元实数列向量,加法和数乘按分量做。R^{m×n}:所有m×n实矩阵。注意矩阵本身也是向量——R^{m×n}与R^{mn}只是排列方式不同。这一点在理解"梯度是一个向量"时很关键。
警告
以下集合不是向量空间,是高频陷阱:
{x ∈ R² : x₁ ≥ 0}:对数乘不封闭,取c = −1就跑到集合外。{x ∈ R² : x₁x₂ = 0}:即两条坐标轴之并,对加法不封闭,(1,0) + (0,1) = (1,1)不在集合里。{x ∈ R^n : ‖x‖ = 1}:单位球面,加法、数乘都不封闭。- 关键区分:齐次线性方程组的解集是向量空间,非齐次方程组的解集不是(不含零元,见 1.3.3)。
1.1.3 子空间与判定条件
V 的子集 W 若在继承的加法与数乘下自身也是向量空间,则称 W 是 V 的子空间(subspace)。
逐条验证八条公理是浪费的。因为 W ⊆ V,加法交换律、结合律、分配律等"等式型"公理自动继承。唯一可能失效的是封闭性与零元、负元是否存在。于是得到最常用的判定条件:
| |
(2)(3) 常合并成一句"对线性组合封闭":∀ c₁,c₂ ∈ R, ∀ u,v ∈ W,c₁u + c₂v ∈ W。此时 0 的存在性由 c₁ = c₂ = 0 自动得到,−v 由 c₁ = −1, c₂ = 0 得到。
三类最重要的子空间来源(这三条要背下来,它们把"解方程"与"空间结构"连起来):
n元齐次线性方程组Ax = 0的解集是R^n的子空间,即零空间N(A)。- 一组向量的全部线性组合构成子空间,即张成空间(span)。
- 矩阵
A的各列的全部线性组合构成子空间,即列空间Col(A)。
1.1.4 张成、基与维数
给定向量组 {v₁, …, vₖ},它的张成空间是
| |
直觉:span 是这组向量"用有限步线性组合能够到"的全部位置。span{(1,0),(0,1)} = R²;span{(1,0),(2,0)} = x 轴(第二个向量没带来任何新方向)。
如果一组向量 {b₁, …, b_d} 同时满足:
- 张成
W:span{b₁,…,b_d} = W; - 线性无关:没有任何一个向量能由其余向量线性表示;
那么它称为 W 的一组基(basis)。基的两条要求恰好回答了两个问题:够不够用(张成)与有没有多余(无关)。所以基是"恰好够用的最小生成组",也是"最大的无关组"。
维数(dimension) 定义为基中向量的个数。这里有一个必须证过才能安心使用的事实:同一个空间的所有基含有的向量个数相同。证明思路是标准的"替换论证"——若存在一组 d 个无关向量和一组 e 个张成向量,则 d ≤ e(否则方程 Σcᵢvᵢ = 0 的未知数比方程多,必有非零解,破坏无关性)。对两组基互相代入即得 d ≤ e 且 e ≤ d,故 d = e。有了这条,维数才是空间自身的属性,而不是"某个基的属性"。
几个必背维数:
| |
1.2 矩阵:线性映射的坐标表示
1.2.1 矩阵乘法为什么这样定义
教材给出的是"左行乘右列、逐项相乘再相加"。这个算法本身没有解释力,需要问的是:为什么不是对应元素相乘? 答案要从"矩阵是线性映射"说起。
设 A 是 m×n 矩阵,x ∈ R^n。我们定义 A 作用于 x 的结果为 A 的各列按 x 的分量加权组合:
| |
这个定义的含义是:Ax 一定是 A 的列向量的线性组合。于是"Ax = b 有解"与"b ∈ Col(A)“是同一句话,这就把线性方程组问题翻译成了空间问题。这是四个基本子空间的起点。
现在设 B 是 n×p 矩阵,复合映射 x ↦ A(Bx) 也是线性的,它的矩阵表示应该就是 AB。按上面的列组合定义推:
| |
即 AB 的第 j 列 = A 乘以 B 的第 j 列。再展开 Abⱼ:
| |
这就回到了教材的"行乘列"公式。所以矩阵乘法的定义不是约定,是被"复合映射"逼出来的唯一选择:只有这种乘法的第 j 列才等于 A 作用在 B 第 j 列上的结果。如果改用逐元素相乘(Hadamard 积),复合映射就不再被正确表示,反传公式、层叠网络、注意力机制都会崩掉。
为什么没有交换律? 因为映射的复合本身不可交换:先把 R² 沿 x 轴压扁再旋转,与先旋转再压扁,结果不同。另外 AB 要求 A 的列数等于 B 的行数,而 BA 有定义需要另一组条件,很多时候只有一边能乘。代数上,“乘法可交换"是极强约束——能与所有矩阵交换的矩阵只有 cI(标量矩阵)。
1.2.2 运算律与常见错误
| 表达式 | 是否恒成立 | 正确形式 / 说明 |
|---|---|---|
(AB)C = A(BC) | 是 | 结合律;对应映射复合的结合性 |
A(B + C) = AB + AC | 是 | 分配律;线性性 |
(AB)ᵀ = AᵀBᵀ | 否 | (AB)ᵀ = BᵀAᵀ,转置反序,等于逆序复合 |
(A + B)² = A² + 2AB + B² | 否 | 展开为 A² + AB + BA + B²;中间两项需 AB = BA 才能合并 |
(A + B)(A − B) = A² − B² | 否 | 展开为 A² − AB + BA − B² |
(Aᵀ)ᵀ = A、(A+B)ᵀ = Aᵀ + Bᵀ | 是 | 转置对加法线性 |
(cA)ᵀ = cAᵀ、(A⁻¹)ᵀ = (Aᵀ)⁻¹ | 是 | 后者要求 A 可逆 |
(ABC)ᵀ = CᵀBᵀAᵀ | 是 | 反序规律推广到任意有限个因子 |
转置的几何含义:(AB)ᵀ = BᵀAᵀ 与 (A⁻¹)ᵀ = (Aᵀ)⁻¹ 都是"反序”。转置的计算规则是主对角线元素不动、其余元素关于主对角线对称交换:(Aᵀ)_{ij} = A_{ji}。
| |
重要
一切"等式恒成立"的判断题,先想三件事:转置有没有反序、可交换性有没有被偷偷使用、维度是否匹配。考场上绝大多数干扰项的病根都是这三条之一。
1.3 四个基本子空间
1.3.1 定义与坐标归属
设 A ∈ R^{m×n},r = r(A)。四个基本子空间(fundamental subspaces)如下。最容易被忽略、也最容易记错的是每个子空间住在哪个空间里,这取决于它是一个"输入侧"还是"输出侧"的概念。
| 名称 | 记号 | 定义 | 所在空间 | 维数 |
|---|---|---|---|---|
| 列空间 | Col(A) | {Ax : x ∈ R^n},即 A 各列的所有线性组合 | R^m(输出侧) | r |
| 零空间 | N(A) | {x ∈ R^n : Ax = 0} | R^n(输入侧) | n − r |
| 行空间 | Col(Aᵀ) | A 各行的所有线性组合 | R^n(输入侧) | r |
| 左零空间 | N(Aᵀ) | {y ∈ R^m : Aᵀy = 0},等价于 yᵀA = 0 | R^m(输出侧) | m − r |
判断象限的方法只有一句:看这个子空间的元素是什么东西。Col(A) 与 N(Aᵀ) 的元素是 m 维向量(它们住在输出空间 R^m);N(A) 与 Col(Aᵀ) 的元素是 n 维向量(住在输入空间 R^n)。
| |
1.3.2 正交补关系
“正交补"的意思是:两个子空间里任取一个向量都互相垂直,并且两者合起来的维数恰好等于整个空间的维数。
N(A) ⊥ Col(Aᵀ),即R^n = N(A) ⊕ Col(Aᵀ)(⊕表示直和,即两者之和覆盖全空间且只交于零向量)。N(Aᵀ) ⊥ Col(A),即R^m = N(Aᵀ) ⊕ Col(A)。
先看第一条为什么成立。取 x ∈ N(A)、v ∈ Col(Aᵀ),则 v = Aᵀy 对某个 y ∈ R^m 成立。于是
| |
关键一步是 xᵀAᵀ = (Ax)ᵀ——这正是转置的定义 (Ax)ᵀ = xᵀAᵀ。所以 N(A) 中每个向量与 Col(Aᵀ) 中每个向量正交。第二条把 A 换成 Aᵀ 即得。
为什么要关心正交补? 因为它给出了"解的分解”。任意 x ∈ R^n 可以唯一写成
| |
其中 x_row 是 x 里”A 能感知的部分",x_null 是"A 完全看不见的部分"。这正是梯度下降中"平坦方向"的数学刻画:往 x_null 方向走多远,Ax 都不变,所以损失的一阶变化为 0。
1.3.3 秩-零化度定理
定理(rank-nullity theorem):对任意 A ∈ R^{m×n},
| |
证明思路(必须能复述):取 N(A) 的一组基 {z₁, …, z_{n−r}}(设 dim N(A) = n − r),把它扩充成 R^n 的一组基
| |
分两步走。
第一步,证明 {Ax₁, …, Ax_r} 张成 Col(A)。任取 b ∈ Col(A),有 b = Ax。把 x 用上面这组基展开:x = Σaᵢzᵢ + Σbⱼxⱼ。两边左乘 A,由于 Azᵢ = 0,得 Ax = Σbⱼ(Axⱼ)。于是 b 是 {Axⱼ} 的线性组合。
第二步,证明 {Ax₁, …, Ax_r} 线性无关。设 Σcⱼ(Axⱼ) = 0,则 A(Σcⱼxⱼ) = 0,说明 Σcⱼxⱼ ∈ N(A)。但 N(A) 由 {zᵢ} 张成,而 {xⱼ} 与 {zᵢ} 合起来是一组基(无关),所以 Σcⱼxⱼ 只能等于 0;再由 {xⱼ} 无关得所有 cⱼ = 0。
两步合起来说明 {Ax₁, …, Ax_r} 是 Col(A) 的基,故 dim Col(A) = r,即 r(A) + dim N(A) = n。证毕。
证明里唯一容易卡住的地方是第一步的"展开 x 必须用一组扩充后的基"。这里用到线性代数的一条基本引理:无关向量组一定能扩充成空间的基。直觉解释是,若 {xⱼ} 还没张满空间,就一定能找到不在当前张成空间里的向量加进去;由于维数有限,这个过程必然在 n 个向量时停止。
把定理用到行空间上,还能得到两条常考的推论:
| |
再代入 1.3.1 的表,四个维数全部由 m、n、r 三个数决定——这就是"四个基本子空间"这个名字的来历:它们把 R^n 和 R^m 各自完整地劈成了两块,四块拼起来刚好是全部信息。
1.3.4 一个贯穿全书的实例:梯度矩阵的秩与零空间
考虑一个参数量 n = 2000、样本量 m = 1000 的模型,某个参数点处的梯度矩阵为 A ∈ R^{1000×2000},r(A) = 500。代入定理:
| |
由此可以读出三条工程结论:
- 可自由漂移的方向有 1500 个。任取
d ∈ N(A),有Ad = 0,即所有样本的梯度在这个方向上的投影同时为 0,损失沿d的一阶变化为 0。参数可以沿着这些方向移动而不改变一阶损失,这正是平坦区域与鞍点的代数刻画。 - 有效信息维度只有 500。2000 个参数方向里,只有 500 个能被梯度信号覆盖。这不是"参数量决定容量"的反例,而是提醒:参数量与实际有效维度是两回事,这是低秩微调(LoRA 一类方法)能成立的根本原因(详见第 3 章 3.4 节的低秩近似)。
- 增大 batch 不能"直接降低零空间维数"。增大 batch 只增加
m(行数),而r(A) ≤ min(m, n)。如果新样本的梯度仍落在原有的 500 维行空间内,秩不会增加,dim N(A)也不变。这是最容易选错的一条——它违反"数据越多信息越多"的直觉,但代数上完全成立:秩的上限由min(m, n)和数据的实际张成能力共同决定。
小心
计算 dim N(A) 时用列数减秩。A: R^2000 → R^1000 是从参数空间映到样本空间的映射,零空间是"被压成零的输入",所以它住在 R^2000 里。用行数去减会得到 500,恰好是左零空间 N(Aᵀ) 的维数,两者含义完全不同(一个是无效参数方向,一个是不可达残差方向)。
1.4 可逆性:十个等价条件
1.4.1 为什么这些条件彼此等价
对 n 阶方阵 A,下列十条命题两两等价。等价性不是巧合,而是同一条链条的不同表述:
| 编号 | 命题 | 它实际上在说什么 |
|---|---|---|
| 1 | A 可逆,存在 A⁻¹ 使 AA⁻¹ = A⁻¹A = I | 映射可逆(双向一一) |
| 2 | A 的列向量线性无关 | 输入方向两两不同,没有信息被合并 |
| 3 | A 的列向量张成 R^n | 每个输出都可达 |
| 4 | A 的行向量线性无关 | 每条约束都提供新信息 |
| 5 | A 的行向量张成 R^n | 方程组的约束足以定出唯一解 |
| 6 | Ax = 0 只有零解 x = 0 | 零空间是平凡的 |
| 7 | 对任意 b,Ax = b 有唯一解 | 可逆的直接含义 |
| 8 | r(A) = n(满秩) | 有效维度没有损失 |
| 9 | det(A) ≠ 0 | 体积缩放因子非零,映射不压扁空间 |
| 10 | A 的特征值全非零(见第 3 章 3.1 节) | 没有方向被压成零 |
把链条串起来,只需要两个关键环节:
6 ⟺ 8:由秩-零化度定理,r(A) + dim N(A) = n。所以N(A) = {0} ⟺ dim N(A) = 0 ⟺ r(A) = n。2 ⟺ 6:列向量线性无关的定义就是"x₁a₁ + … + xₙaₙ = 0只有零解",而左边恰好是Ax。8 ⟺ 3:dim Col(A) = r(A) = n,而Col(A) ⊆ R^n,维数相同的子空间必等于全空间,故Col(A) = R^n,即列向量张成R^n。7 ⟺ 3:Ax = b有解对所有b成立,等价于Col(A) = R^n;解的唯一性等价于N(A) = {0}。9与8的联系来自行列式的乘性:det(AB) = det(A)det(B),且高斯消元中det非零当且仅当无自由变量,即r(A) = n。4、5与2、3的联系来自r(Aᵀ) = r(A):对A用2 ⟺ 8,对Aᵀ用同样的推理即得行的版本。
因此这十条不是十个独立知识,而是一条等价链:从"解唯一"出发,无论从哪一条切入都能走到其他九条。做题时只要有任意一条成立,就可宣称其余九条同时成立;反之任意一条不成立,其余九条全部不成立。
提示
考场速判记忆锚点:“方阵 + 满秩” 是四个字的通关密码。看到"矩阵逆运算的前提",答案必是"方阵且满秩";看到选项里出现 det(A) = 0、列向量线性相关、r(A) < n,它们都是"不可逆"的判据,出现即排除。
1.4.2 行列式在其中的角色
det(A) 的几何含义是线性映射对体积的缩放倍数(带符号,符号表示是否翻转手性)。det(A) = 0 意味着映射把 n 维体积压成了低维对象——必然有方向被压成零,于是 N(A) ≠ {0},映射不可逆。这就是"det ≠ 0 等价于可逆"的几何解释。
需要强调的是:det = 0 是不可逆的判据,不是可逆的判据。选项里写"行列式为零则矩阵可逆"或"可逆的前提是行列式为零"都是把结论说反了。
另外,det 只对方阵有定义。长方形矩阵谈不上可逆,它最多有单边的伪逆 A⁺(见第 3 章 3.4.3 节):当 A ∈ R^{m×n} 且列满秩时 A⁺ = (AᵀA)⁻¹Aᵀ 是左逆,满足 A⁺A = I_n 但 AA⁺ ≠ I_m(它是到 Col(A) 上的投影,见第 2 章 2.3.2 节)。
1.4.3 线性相关的定义与两个充分条件
向量组 {α₁, …, αₘ} 线性相关(linearly dependent) 的定义是:
| |
定义的核心是"存在不全为零“这五个字。与它等价的表述是"其中至少有一个向量可由其余向量线性表示”,但注意是至少一个,不是"任意一个"。两个常见误判:
- “含零向量的向量组必相关”——这是充分条件,不是定义。反例:
{(1,0), (2,0)}不含零向量却相关(2·(1,0) − 1·(2,0) = 0)。 - “向量个数大于维数则必相关”——这也是充分条件。反例:
n维空间里两个共线向量,个数不超过维数但依然相关。
定义与"至少一个可由其余表示"的等价性证明很短,值得记住:若 Σkᵢαᵢ = 0 且 kⱼ ≠ 0,则 αⱼ = −(1/kⱼ)Σ_{i≠j}kᵢαᵢ,即 αⱼ 由其余向量表示;反之若 αⱼ = Σ_{i≠j}cᵢαᵢ,则移项得到一组系数(第 j 个为 −1 ≠ 0)使组合为零,故相关。
但"任意一个向量都可由其余表示"是错的。反例:{(1,0), (2,0), (0,1)} 线性相关(前两个共线),但 (0,1) 无法由前两个线性表示。所以在相关组里,有些向量是"冗余的",有些不是——这也是"极大无关组"这个概念的动机。
1.5 用秩统一看几个高频场景
1.5.1 协方差矩阵的维度:由谁决定
把 A ∈ R^{n×d} 读作 n 个样本、每个样本 d 维特征。协方差矩阵定义为
| |
第 (i,j) 个元素是特征 i 与特征 j 的协方差,所以它是 d×d 的对称方阵。判据只有一句:协方差矩阵刻画的是特征与特征的关系,阶数由特征数 d 决定,与样本数 n 无关。
| 矩阵 | 表达式 | 形状 | 刻画什么 |
|---|---|---|---|
| 协方差矩阵 | (A−Ā)ᵀ(A−Ā) | d×d | 特征与特征之间的关系 |
| Gram 矩阵 | (A−Ā)(A−Ā)ᵀ | n×n | 样本与样本之间的关系 |
两者通过共同的特征值(严格说是非零特征值)联系起来,这是第 3 章 3.5 节 SVD 与 PCA 的核心工具。
1.5.2 用高斯消元求秩与找基
实际计算中不去数线性无关的个数,而是用初等行变换把矩阵化成行阶梯形:
| |
三条必须记住的性质:
- 初等行变换不改变秩,也不改变行空间,但会改变列空间。所以求列空间的基要回到原矩阵去取主元所在的列,而不是取阶梯形的主元列。
- 主元列在原矩阵中对应的列向量构成
Col(A)的一组基;非主元列对应的"自由变量"个数就是dim N(A)。 - 自由变量个数 =
n − r,这正是秩-零化度定理在消元过程中的具体体现。
本章小结
| 关键结论 | 一句话表述 | 常见错误 |
|---|---|---|
| 向量空间判定 | 只需验三条:含零元、对加法封闭、对数乘封闭 | 去逐条验八条公理;把单位球面当子空间 |
| 矩阵乘法定义 | (AB)_{ij} = Σ_k A_{ik}B_{kj},因为 AB 的第 j 列必须等于 A 作用在 B 第 j 列上 | 把交换律搬过来;以为 (AB)ᵀ = AᵀBᵀ |
| 四个基本子空间 | Col(A) ⊆ R^m(维 r)、N(A) ⊆ R^n(维 n−r)、Col(Aᵀ) ⊆ R^n(维 r)、N(Aᵀ) ⊆ R^m(维 m−r) | 把 Col(A) 和 Col(Aᵀ) 都当成 R^m |
| 秩-零化度定理 | r(A) + dim N(A) = n,减的是列数 | 用行数 m 去减 |
| 可逆性 | 十条等价条件;核心是"方阵 + 满秩" | 认为 det = 0 才可逆;以为长方形矩阵可逆 |
| 线性相关 | 存在不全为零的系数使组合为零 | 把"含零向量"“个数 > 维数"当成定义 |
| 协方差矩阵 | d×d,阶数由特征数决定 | 与 n×n 的 Gram 矩阵混淆 |
自测题
Q1(判断并说明理由)集合 W = {x ∈ R³ : x₁ + x₂ + x₃ = 1} 是 R³ 的子空间吗?把等号右边的 1 换成 0 之后呢?
答案与解析
不是。三条判定中第一条就不满足:0 = (0,0,0) 代入得 0 ≠ 1,零元不在 W 中。也可以看封闭性:取 u = (1,0,0) ∈ W、v = (0,1,0) ∈ W,则 u + v = (1,1,0) 的和为 2 ≠ 1,加法不封闭。
换成 0 后 W = {x : x₁ + x₂ + x₃ = 0} 是子空间:它恰好是矩阵 A = [1 1 1] 的零空间 N(A),而任何齐次方程组的解集都是子空间(因为 Ax = 0、Ay = 0 蕴含 A(cx + dy) = 0)。
这就是"非齐次方程组的解集不是向量空间、齐次方程组的解集是向量空间"的具体例子。 非齐次解集是零空间的一个平移(仿射集),不含零元。
Q2(计算)已知 A = [1 2 3; 2 4 6; 1 1 1](分号换行),求 r(A)、dim N(A)、dim Col(Aᵀ)、dim N(Aᵀ)。
答案与解析
消元:r2 − 2r1 得 [0 0 0];r3 − r1 得 [0 −1 −2]。此时非零行为 [1 2 3] 与 [0 −1 −2],互换后已是阶梯形,主元个数为 2,所以 r(A) = 2。
n = 3(列数),由秩-零化度定理dim N(A) = 3 − 2 = 1。dim Col(Aᵀ) = r(Aᵀ) = r(A) = 2。m = 3(行数),dim N(Aᵀ) = m − r = 3 − 2 = 1。
常见错误是用 m = 3 去算 dim N(A) 得到 1——数值碰巧也是 1,但那是 N(Aᵀ) 的维数,含义完全不同。本题设成方阵正是为了让这个错误"算对了数、答错了概念”,考试中若遇到长方形矩阵就会直接暴露。
Q3(推导)设 A ∈ R^{m×n},B ∈ R^{n×p},证明 Col(AB) ⊆ Col(A),并说明什么时候取等号。
答案与解析
任取 y ∈ Col(AB),则存在 x ∈ R^p 使 y = (AB)x。由矩阵乘法的结合律,y = A(Bx)。令 z = Bx ∈ R^n,则 y = Az ∈ Col(A)。所以 Col(AB) ⊆ Col(A)。
等号成立的条件是 Col(B) 能覆盖到 A 的列空间所需的方向,最常用的充分条件是 B 行满秩(r(B) = n)。此时 Col(B) = R^n,于是 A 能作用到任意输入上,Col(AB) = Col(A)。特别地,若 B 可逆则必有 Col(AB) = Col(A)。
另一侧的结论是 r(AB) ≤ min(r(A), r(B))——这是"矩阵乘积的秩不超过任一因子的秩",来源正是上面的包含关系加上 r(AB) ≤ r(B)(把 AB 的每一列看成 B 的列的线性组合)。
这个结论的工程含义:任何一串线性层叠起来,能表达的函数集合不会超过第一层的列空间;这也是"低秩瓶颈层"(如 LoRA 的 BA 结构,r 远小于 d)能确定性降参的直接依据。
Q4(辨析)下面四条关于可逆性的说法,哪些正确?
A. 若 A 是 n 阶方阵且 Ax = 0 只有零解,则 A 可逆
B. 若 det(A) = 0,则 A 可逆
C. 长方矩阵 A ∈ R^{3×5} 可能有逆矩阵
D. 若 A 的 n 个列向量线性无关,则 A 可逆
答案与解析
A、D 正确。
A:Ax = 0 只有零解等价于 N(A) = {0},即 dim N(A) = 0;由秩-零化度定理得 r(A) = n,即满秩,故可逆。这是等价链条上的一环。
B:说反了。det(A) = 0 是不可逆的判据(映射把体积压成 0,必有非零的零空间)。若改成 det(A) ≠ 0 才正确。
C:错。可逆要求 AA⁻¹ = A⁻¹A = I 左右同时成立,两边维数必须匹配,这强制 A 是方阵。3×5 矩阵若行满秩则存在右逆 A⁻¹_right ∈ R^{5×3} 使 AA⁻¹_right = I₃,但不是双边逆;工程上更常用的是伪逆 A⁺(第 3 章 3.7 节)。
D:列向量线性无关是十条等价条件之一(对 n 阶方阵而言),正确。注意这条只对方阵成立:3×5 矩阵的 5 个列向量不可能在 R³ 中线性无关(n > m 必相关),而 5×3 矩阵的三列可以无关但它不是方阵,仍不可逆。
Q5(计算)某两层线性网络的权重为 W₁ ∈ R^{d×r}、W₂ ∈ R^{r×d},中间维度 r 远小于 d。已知输入 x ∈ R^d,前向为 y = W₁W₂x。若 W₂ 行满秩,问 y 落在什么空间里?参数量是多少?
答案与解析
把 P = W₁W₂ ∈ R^{d×d} 看成一个整体。由 Col(W₁W₂) ⊆ Col(W₁) 知 y ∈ Col(W₁),而 dim Col(W₁) ≤ r(W₁ 只有 r 列)。所以无论 x 取什么,输出都被限制在一个维数不超过 r 的子空间里——这就是低秩结构的本质限制,也是 LoRA 能生效的前提:微调需要的更新量本身就近似低秩(与 1.3.4 节"有效维度远小于参数量"是同一件事)。
参数量:W₁ 有 d·r 个,W₂ 有 r·d 个,合计 2dr,而直接用一个 d×d 矩阵需要 d² 个。当 r ≪ d/2 时 2dr ≪ d²,压缩比约为 2r/d。例如 d = 4096、r = 8 时压缩到约 0.39%。
注意 W₂ 行满秩的条件在这里是用来保证 Col(W₂) = R^r、从而中间层不被进一步压缩的;若 W₂ 也降秩,则秩会进一步下降为 r(W₁W₂) ≤ min(r(W₁), r(W₂))。
与真题的关联
| 真题 | 考查角度 | 对应本章小节 |
|---|---|---|
【08-05 选择 Q18】A ∈ R^{1000×2000}、r(A)=500,判多选 | 秩-零化度定理用列数减;零空间方向对应平坦区域 | 1.3.3、1.3.4 |
| 【09-02 选择 Q1】矩阵逆运算的前提 | 方阵 + 满秩;det = 0 与线性相关都是反向判据 | 1.4.1、1.4.2 |
| 【09-09 选择 Q1】下列等式恒成立的是 | 只有结合律恒成立;交换律与转置反序是干扰项病根 | 1.2.2 |
【09-09 选择 Q9】求 A = [1 2; 3 4] 的转置 | 主对角线不动、副对角线交换;区别于旋转 180° | 1.2.2 |
| 【09-09 选择 Q5】向量组线性相关的定义 | “存在不全为零的系数”;含零向量与个数 > 维数只是充分条件 | 1.4.3 |
【09-09 选择 Q2】A ∈ R^{n×d} 的协方差矩阵维度 | d×d,由特征数决定;与 n×n 的 Gram 矩阵对比 | 1.5.1 |
延伸阅读
- Gilbert Strang, Introduction to Linear Algebra, 第 5 版:第 2 章(线性组合与子空间)、第 3 章(四个基本子空间与秩-零化度定理)——本章 1.3 节的组织方式基本沿用 Strang 的"四子空间图"。
- Sheldon Axler, Linear Algebra Done Right, 第 3 版:第 1 章(向量空间公理化)、第 2 章(基与维数)——想看清"哪些结论依赖公理、哪些依赖坐标"时读这本。
- 3Blue1Brown 的 Essence of Linear Algebra 系列前四集:从几何直觉上把"矩阵是线性变换"这件事看一遍,再回头读本章 1.2 节会顺畅很多。