列空间:从所有 Ax 到矩阵的秩
The Column Space of A Contains All Vectors Ax
从一次矩阵乘向量,到列空间、秩与外积构件。
这节课的核心问题
这节课从课堂三维矩阵出发,把 Ax 读成列组合,再用独立列建立基与 A=CR,解释行秩为什么等于列秩,最终把矩阵乘法看成秩一外积的求和。讲义完整对应字幕时间线,并区分课堂例子、教材补充、本站补齐的证明与二维交互实验。duration 记录字幕终点;视频总时长另存 videoDuration。
写出 的列组合并解释行列写法相同。
用 判断可解性。
选出列空间的基并解释秩。
用 说明行秩=列秩。
写出 并核对 。
课程动机:为什么重看最熟悉的矩阵乘法?
这门从数据学习的课程先回到线性代数基本操作,目的是把矩阵看成整体。
Strang 把本课定位为线性代数的进阶应用:先建立看待矩阵的语言,再走向数据中的结构。开场提到的手写识别、图像拼接和在线作业说明,数学概念最终需要和真实计算连接。
原课还介绍了当时的课程网站、正在写作的教材及以作业为主的考核安排。这些是 2018 年课堂背景,不是今天的课程通知。老师准备从 讲起,听众可能觉得已经会做;他的追问却是:会算每个数字,是否就看见了整个矩阵的作用?
本讲沿着一个连续链条前进:把 读成列组合 → 让 遍历所有可能值得到列空间 → 找出独立列与基 → 把坐标装进 → 用行列两种读法认识秩 → 将 推广为 的外积之和。
完整读取字幕 00:23.55–04:08.17:课程定位、教材和作业说明。无额外数学板书需核。
熟悉的乘法是进入列空间和矩阵分解的起点。
原课课程安排作为历史背景保留。
同一个 $Ax$:逐行算,按列理解
标量 $x_j$ 缩放第 $j$ 列;把这些向量相加就是整个输出。
课堂的实际矩阵是
注意老师先念第一列的 ,再念第二列 ,不能按字幕数字顺序误排成行。
逐行点积给出输出的三个分量,例如第一分量是 。把同样的乘加按列归组,就得到
两种算法完全一致,区别是看到的层次:行点积一次告诉我们一个坐标,列组合一次告诉我们整个向量来自哪里。
对一般 ,输入 有 个系数,输出 有 个分量。矩阵把 中的向量送到 ,这是比“一堆数字”更有用的整体理解。
字幕 04:08.17–07:37.83;板书 lecture1-board-410.jpg(06:50)确认课堂矩阵及列组合。教材印刷2/PDF16页图是同一原理但数字不同的例子。
系数个数对应列数,输出分量个数对应行数。
行点积与列组合只是同一批乘加的不同分组。
把一个输出变成全部输出:列空间
列空间收集所有可能的 $Ax$;可达的右端向量正是这些输出。
取一个 得到一个输出;现在固定 ,让 取遍整个输入空间:
Strang 问:这一无限多向量的集合是什么形状?对三行矩阵,它可能是整个 ,也可能只是一张平面或一条直线。教材补全了退化边界:零矩阵的列空间只有原点。所有这些子空间都过原点,且对加法和数乘封闭。
课堂说随机 矩阵通常可逆,是在表达一般位置直觉;严谨地说,对独立连续分布抽样的条目,满秩以概率 1 成立。不能把它说成任意随机分布都保证可逆。
教材联系与补充实验:印刷3/PDF17 将成员资格写成
在下方二维实验取 。先令 ,拖动 ,观察两条缩放后的列向量相加得到 ;再把 调到 ,输出只能沿水平轴移动。选择轴上的预设 与轴外的预设 ,比较可解性;解释为什么调系数也无法到达轴外点。
这是本站设计的二维补充模型,课堂原例是上面的三维矩阵。滑块只显示有限系数范围的样本;真实列空间允许所有实数系数,满秩时是整个平面,不能把有限图窗当作空间边界。
字幕 07:37.83–10:52.51;教材印刷2–3/PDF16–17页图核对定义与可解性等价。概率条件和二维实验是明确补充,不声称原课证明。
沿着列空间移动:哪些 b 真能写成 Ax?
观察任务拖动两个系数,观察 Ax 如何由两列向量合成;把 t 压到 0,再比较列空间中的 b 与轴外 b。
t≠0 时两列独立,任意二维 b 都在列空间中。
当前目标可达;一组系数为 x=(1, 1)。
第 1 讲:Ax 是列组合,C(A) 收集全部输出;教材印刷第 2–3 页 / OCR PDF 第 16–17 页补充可解性等价。
是全部输出的集合,位于输出空间 。
有解意味着存在组合系数;当前滑块未命中不等于无解。
直线还是平面?课堂的两个秩例子
非零列数不等于维数:共线列只能给一条线,第三列的和关系不会增加维度。
老师先问:“给出一个列空间只有一条线的矩阵。”学生提出全 1 矩阵,老师把列的倍数改成 :
三列分别是 ,其中 。任意输出都是
所以输出只沿 方向;允许所有系数就得到整条过原点的直线,而非只有三个列端点。它的秩为 1。
回到最初的课堂矩阵,第三列满足 ,但前两列不平行。于是
前两列产生平面,第三列已经在其中,因此秩为 2。课堂提问“为什么不是整个三维?”的答案是这个依赖关系;不能只说因为三个数字相加碰巧相同。
这里的定义是 :数的是一组最大独立列的数量,而不是非零列的数量。
字幕 10:52.51–13:50.49;lecture1-board-865.jpg 回看仍保留的秩一矩阵,lecture1-board-410.jpg确认原矩阵。教材印刷3–4/PDF17–18核对维数与秩。
同方向的多个非零列只提供一个独立方向。
课堂 矩阵的秩为2,第三列是冗余列。
把秩一矩阵写成“列乘行”
一个非零外积覆盖整个矩阵,同时只保留一个列方向和一个行方向。
课堂把刚才的矩阵直接分解:
这是普通矩阵乘法:左因子 ,右因子 ,内维相同,结果为 。不要和行乘列的内积混淆;内积得到一个数,列乘行的外积得到一整个矩阵。
一般 时,。每一列是 的倍数,每一行是 的倍数。若 都非零,矩阵秩为 1;若某一因子为零,秩降为 0。
Strang 把这种块称为数据科学的基本构件。后面的乘法 会成为许多这种块的和;第6讲 SVD 则会以特殊的正交方向选取这些块。此刻只是看到构件,还没有讨论哪块最重要。
字幕 13:50.49–15:10.75;板书 lecture1-board-865.jpg(14:25)确认 。教材印刷9/PDF23页图核对外积及非零条件。
外积 的输出是一整个 矩阵。
非零条件不可省略:零外积秩为0。
基必须同时满足“独立”与“张成”
找到基就是保留足够表达全部输出、又没有冗余的方向。
回到原矩阵,前两列是列空间的一组基。为什么?一方面它们不成倍数,彼此独立;另一方面第三列已经是它们之和,因此每个 都能用这两列表示。
这两个要求不能拆开:只有一列虽可独立,却张不满二维平面;全部三列虽张成同一平面,却含冗余而不独立。正式地,一组向量线性无关,是指
这个条件也说明基坐标唯一:若两个组合给出同一向量,相减得到零组合,独立性迫使两组系数相同。这里的等价推理是为复习补写的定义展开。
老师从 、列空间到独立列再到秩依次串联:基告诉我们“用什么计算”,秩告诉我们“真正需要几个独立方向”。基可以不止一组,但同一空间每组基都有相同数量的向量。
字幕 15:10.75–17:27.45;教材印刷3–4/PDF17–18页图核对独立性、基与维数。零组合形式和坐标唯一性为补充解释。
独立负责无冗余,张成负责不遗漏。
基中的系数唯一;冗余列组合的系数不必唯一。
逐列扫描,把真正新增的列放进 $C$
保留不属于已有列张成空间的列,跳过零列和相关列。
Strang 重新写出矩阵,开始系统地构造 :
- 第一列 非零,保留。零列无法贡献方向,不应放入基。
- 第二列 不是第一列的倍数,保留。老师反问:若它是 呢?那是第一列的两倍,应跳过。
- 第三列 ,跳过。
因此
这个算法每次只加入新方向,所以保留列独立;每个被跳过的列都是此前保留列的组合,最终所有原列都可重建,所以张成性也成立。两个要求由构造同时保证。
补充提醒:一般矩阵判断第三列是否冗余,必须看它是否属于“全部已选列”的张成空间,不能只逐一检查是否与某一列平行。三列两两不平行,也完全可能三列一起相关。
字幕 17:27.45–20:15.39完整问答;教材印刷4/PDF18页图核对逐列构造。两两不平行的提醒是补充。
取自原矩阵,列空间与 相同。
逐列选基是增量判断,不能把“两两不平行”当作多向量独立。
逐列填写坐标,得到 $A=CR$
$R$ 的每列回答:用 $C$ 的两列按什么比例,能恢复 $A$ 对应列?
已选出 ,下一步需要矩阵 使 。形状先决定: 为 , 为 ,故 必须为 。
老师逐列提问:
- 恢复第一列,需要 ,所以系数为 。
- 恢复第二列,需要 ,所以系数为 。
- 恢复第三列,需要 ,所以系数为 。
合在一起就是
一般秩为 时,形状为
存储基向量, 存储全部列在这组基下的坐标。这里的 是 分解中的系数矩阵;不能和后续 QR 分解的同名字母混为一谈。教材印刷5的 Example 4 第三列系数为 ,那是另一矩阵,不应代入课堂例子。
字幕 20:15.39–23:25.81;lecture1-board-1940.jpg保留完整CR板书;教材印刷5/PDF19页图核对形状,并确认书中数字例与课堂不同。
的列是方向, 的列是坐标。
形状必须匹配;原基列对应 中单位阵的列。
列相关容易看见,行相关藏在哪里?
老师从 $CR$ 发现行秩=列秩定理,并留下一个可以实际算出的课堂问题。
第三列等于前两列之和非常显眼;但老师盯着同一矩阵的行,没能立即看出第三行是前两行的什么组合。这说明“看见列相关”与“直接读出行关系”不是同一回事。需要一条适用于矩形矩阵的结构性定理:
补齐课堂未算出的系数:设第一、二行分别为 、,要找 。前两个坐标给出
解得 ,第三坐标检验 。因此
这不是课堂已经写出的结果,而是本站对老师提问的补充计算。列依赖系数 与行依赖系数 不同;秩相同从来不表示依赖关系的系数相同。
接下来不能只依靠这个算例,必须先定义行空间,再把 从行的方向重新读一遍。
字幕 23:25.81–26:16.29保留原课提问;原矩阵以06:50及32:20板书帧核对。行系数是补充精确计算,不归为老师板书结论。
行列秩相同,不代表行列关系的系数相同。
课堂问题的补充答案为第三行=16倍第一行−9倍第二行。
行空间:把行转成列,写作 $C(A^T)$
行空间与列空间有不同含义;矩形数据中甚至属于不同维数的环境。
行空间是所有行向量的线性组合。Strang 不另发明一个空间记号,而是把行竖起来成为转置的列:
例如第一行 转成 ,就是 的第一列。这样讨论的向量统一用列形式表示。
本例恰好是 ,所以 和 都位于三维空间,但仍通常不是同一个平面。一般 为 :
课堂用数据矩阵举意象例子:列可以代表患者,行可以代表疾病或测量特征。患者方向与特征方向是两类不同对象,矩阵没有理由必须是方阵。
因此“行秩=列秩”应读成这两个空间的维数相等,不是空间相等,也不是行数等于列数。
字幕 26:16.29–29:08.63;教材印刷5/PDF19说明不同向量,印刷9/PDF23页图明确行空间为 。
矩阵有 行不等于行空间维数为 。
行列空间可能处于不同环境,却有同样的内在维数。
同一个 $CR$,两种读法与秩定理
$C$ 给出列空间基,$R$ 给出行空间基;复习时需把独立、张成和所属空间都说完整。
设 两行为 。课堂逐行验证:
系数在哪里?就在 的三行中。这是同一个 的另一种读法:按列读,是 的列组合产生 的列;按行读,是 的行组合产生 的行。
的前两坐标组成单位阵,因而独立。补全反向包含:从前两个等式还可解得
所以 本身确实属于 的行空间,且生成该空间。行空间维数为 2,正好等于列空间维数。不能仅从“ 的行都能由 的行生成”跳过反向包含。
一般情形的补充严谨证明:按定义取 个独立列构造 。 的每行是 的 行的组合,因此行秩 列秩。将完全相同的构造应用于 ,得到列秩 行秩,故二者相等。这里没有预先假定秩定理,因此不会循环论证。
课堂最后询问列空间的另一个名称,学生答 range(值域);并回顾非零 的两条直线:列空间沿 ,行空间沿 。两条方向可以不同,维数却都为 1。
字幕 29:08.63–35:37.45;板书 lecture1-board-1940.jpg核对CR和行系数。教材印刷5/PDF19核对秩定理;反向包含及双不等式证明是本站补充严谨化。
乘法可以同时读作左因子列组合与右因子行组合。
“独立且生成”之外,还要确认候选基属于所讨论空间。
转置把一个方向的不等式变成反向不等式。
随机组合与结合律:大矩阵的预告
随机 $Ax$ 总在列空间中;同样,$ABCx$ 也逃不出最左边矩阵的列空间。
如果一个矩阵规模巨大,读取、存储全部条目可能很昂贵。课堂预告后续的随机化方法:取随机向量 ,形成多个列的混合 ,可获得列空间中的样本。重复取许多 ,有时已能捕捉主要结构。
这里确定的代数事实只有 ;“100 个样本往往够用”是课堂启发,不是无条件恢复整个列空间的保证。矩阵秩若远大于100,100个样本至多张成100维;能否近似主要部分还依赖奇异值衰减等条件。
接着老师临时提问: 是否也在 ?只要形状可乘,答案是肯定的,因为
令 ,它就是某个输入向量,结果仍是 。不要求 可逆,也不要求方阵。但这只能推出 ;例如 ,可能使乘积列空间缩成零空间。
维数校正:课堂随机向量板书写过 rand(m,1),仍在方阵背景。一般若 是 ,这里必须取 ; 才属于 。
字幕 35:37.45–38:33.77;lecture1-board-2420.jpg保留 rand(m,1)、A(BCx)板书。一般维数、100维上限和B=0反例为补充说明。
随机组合保证落在列空间,近似质量需要更多条件。
结合律给出包含关系,不能无条件写成空间相等。
右因子不是原行:从 CR 预告 CUR
CR 的右因子是坐标矩阵;若要同时保留原列和原行,需要中间校正。
老师回到 的名称:按从左到右选择主元列的标准做法, 就是 的行最简阶梯形去掉零行后的部分。本例为
的列直接取自 ,但 的行经过了线性组合,通常不是原数据中的行。若选取另一组基列或改变其顺序,坐标矩阵也会改变,不能仍一律称作同一个标准 rref。
如果确实想让右因子取原矩阵的独立行,记作 ,通常必须加入一个 的中间矩阵:
课堂用 ,教材印刷8用 并写作 ,含义相同。 的当前例子中,校正矩阵就是 。
这是 CUR 的动机预告,本讲没有实际求中间矩阵。教材补充解释其吸引力:取真实列、行能够保留非负性、稀疏模式等原数据特征,而正交化会改变这些列行的形态。
字幕 38:33.77–40:31.77;lecture1-board-2420.jpg核对CUR记号;教材印刷5/PDF19明确“去掉零行”,印刷8/PDF22核对CMR与原数据说明。
CR中的R记录坐标,并非从A剪下的原行。
rref关系依赖标准的主元列选择顺序。
应用作业与编程语言:原课背景
这一段回到课程组织:纸上数学题与在线计算练习配合。
Strang 暂时放下数学,介绍上一年课程的组织与 Raj Rao 的贡献,以及在线作业、Julia 入门活动和 MATLAB、Python 等选择。其教学意义是:学会列空间和分解后,要用代码操作实际数据,而不是停在手算。
老师还提到助教、评分人员、课程网站和选择其他机器学习课程的考虑。这些是录课当年的安排;本网站只保留它们说明课程背景,不把当年的地点、时间或工具流行度当成今天的建议。本段没有新的定理或推导,下一段恢复矩阵乘法。
完整字幕 40:31.77–45:41.57;原课行政及工具背景,单独成节以保持真实覆盖。
线性代数题与在线应用作业互相补充。
历史课程安排不等于当前通知。
从 $Ax$ 到 $AB$:把乘积拆成外积之和
行点列计算一个条目;列乘行一次产生一块矩阵,累加得到相同的乘积。
先约定 ,。通常算法是取 第 行和 第 列做内积,得到
课堂希望换成“列乘行”视角。记 的第 列为 , 的第 行为 ,则
第 块有 行、 列,秩至多为1;两因子都非零时秩恰为1。外积的 条目为 ,对 加起来正是旧公式,所以没有改变乘法规则。
教材补充算例(不是原课已演算的数值例):
第一块来自第一列乘第一行,第二块来自第二列乘第二行。课堂讲到了求和结构,并表示可以检查数值,随后转入成本计数;这里用教材例补上可手算的检查。
现在可回读 :它不仅按列存坐标,也可写成 个秩一外积的和。后续 SVD 会对这些构件作更有结构的选择。
字幕 45:41.57–49:44.09;lecture1-board-2980.jpg核对抽象列乘行求和。教材印刷9–10/PDF23–24核对条目证明与数值例;数值例明确标教材补充。
与按共同的内维指标k配对。
每个外积都是整个结果矩阵大小,不是其中一行或一列。
同样的 $mnp$ 次乘法,新的结构视角
两种展开的标量乘法完全相同,只是按条目还是按秩一块组织。
课堂最后用提问核对算术次数。先按行乘列:一个输出条目需要 次乘法,而输出矩阵有 个条目,共
再按列乘行:一个 列乘 行需要 次乘法,共有 块,仍是
字幕在约50:59、51:56处把字母连读识别成了不清楚的“M and P”;由两种计数和教材页图可确定应为 ,不是 或 。
计数针对朴素稠密乘法,不因为外积视角就自动减少乘法次数。是否利用零条目、缓存或只保留部分低秩成分,是另外的问题;本站的这些提醒不是原课已经展开的算法比较。
本讲完成的结构链条是:一个 是列组合,所有 是列空间,基给出秩, 联系行列两侧,而 是秩一块之和。老师在52:03后结束课堂并预告下一次继续线性代数。字幕止于52:13.71;视频总长52:14.46,二者分开记录。
字幕 49:44.09–52:13.71;lecture1-board-3085.jpg核对外积形状;教材印刷10/PDF24逐页渲染核对mnp;ffprobe记录视频3134.461678秒。
是标量乘法次数;同一批数乘在不同顺序下求和。
外积的意义首先在结构,而不是自动降低计算成本。
CLOSE THE LOOP
合上讲义,还能讲清楚吗?
用几道问题,检查你是否掌握了这一讲的关键区别。
概念索引 · 中英术语对照
- 列空间 column space / range
所有Ax组成的输出子空间C(A),位于Rᵐ。
- 线性无关 linear independence
只有全部系数为零的线性组合才能得到零向量。
- 基 basis
属于目标空间、线性无关且张成该空间的一组向量。
- 秩 rank
列空间维数,也是行空间维数;不等于非零列数量。
- 行空间 row space
所有行的组合;转成列向量约定后记为C(Aᵀ),位于Rⁿ。
- 外积 outer product
列u乘行vᵀ,得到m×n矩阵;两因子非零时秩为1。
- 行最简阶梯形 reduced row echelon form / rref
每个主元为1且为所在列唯一非零条目的标准阶梯形;CR的标准坐标矩阵取其非零行。
- CUR分解 CUR factorization
用原矩阵的列、行与中间校正矩阵构造的分解;本讲仅预告。