线性代数10. 四个基本子空间

本文将重点探讨线性代数中最核心的概念之一:矩阵所蕴含的四个基本子空间。在深入探讨之前,我们先通过回顾一个关于矩阵列向量相关性的问题,来揭示行空间与列空间之间的内在联系。

一、引言:行空间与列空间的关联

在构建三维空间 \(\mathbb{R}^3\) 的基时,我们知道需要三个线性无关的向量。假设我们选取了向量 \( \begin{pmatrix} 1 \\1 \\2\end{pmatrix} \) 和 \( \begin{pmatrix} 2 \\2 \\5 \end{pmatrix} \) ,它们显然是线性无关的。如果我们试图加入第三个向量 \( \begin{pmatrix} 3 \\3 \\8\end{pmatrix} \) 来构成一组基,这将会失败。

原因不需要通过复杂的线性组合计算来验证。只需将这三个列向量组成一个 \(3 \times 3\) 的矩阵:
观察这个矩阵可以发现,它的第一行和第二行是完全相同的。一个具有两行相等的方阵,其行列式必为零,矩阵不可逆。这也意味着该矩阵的行向量是线性相关的。行向量的线性相关性直接决定了列向量的线性相关性,因此这三个列向量无法构成 \(\mathbb{R}^3\) 的基。

这个例子引出了一个重要的结论:矩阵的行空间与列空间有着极其紧密的联系。 接下来,我们将系统地定义和剖析这四个基本子空间。

二、四个基本子空间的定义与位置

对于一个 \(m \times n\) 的矩阵 \(A\) ,它自然地生成了四个基本子空间:

  1.  列空间 (Column Space),记为 \(C(A)\) 。
    它是矩阵 A 所有列向量的线性组合。
  2.  零空间 (Null Space),记为 \(N(A)\) 。
    它是方程组 \(Ax = 0\) 的所有解向量的集合。
  3.  行空间 (Row Space),记为 \(C(A^T)\) 。
    它是矩阵 \(A\) 所有行向量的线性组合。为了在数学表达上统一使用列向量的形式,我们对矩阵 \(A\) 进行转置,将行空间的求法转化为求转置矩阵 \(A^T\) 的列空间,因此记作 \(C(A^T)\) 。
  4.  左零空间 (Left Null Space),记为 \(N(A^T)\) 。
    它是转置矩阵 \(A^T\) 的零空间。之所以称为“左”零空间,是因为根据方程 \(A^T y = 0\) ,对其两边取转置可得 \(y^T A = 0^T\) 。此时向量 \(y^T\) 以行向量的形式在左侧乘上矩阵 \(A\) 。

这些子空间分别位于哪个多维空间中?

  • 矩阵 \(A\) 有 \(n\) 列,因此解向量 \(x\) 包含 \(n\) 个分量,零空间 \(N(A)\) 位于 \(\mathbb{R}^n\) 中。
  • 矩阵 \(A\) 的行向量包含 \(n\) 个分量,因此行空间 \(C(A^T)\) 也位于 \(\mathbb{R}^n\) 中。
  • 矩阵 \(A\) 有 \(m\) 行,其列向量包含 \(m\) 个分量,列空间 \(C(A)\) 位于 \(\mathbb{R}^m\) 中。
  • 转置矩阵 \(A^T\) 的解向量包含 \(m\) 个分量,因此左零空间 \(N(A^T)\) 也位于 \(\mathbb{R}^m\) 中。

三、四个子空间的维数与基

理解这些空间的本质,就是要弄清它们的维数(Dimension)以及如何构造它们的基(Basis)。假设矩阵 \(A\) 的秩(Rank)为 \(r\) 。

1. 列空间 \(C(A)\)

  • 维数: \(r\)(即矩阵的秩)。
  • 基的构造: 通过行化简操作找到矩阵 \(A\) 的主元列(包含主元的列)。需要注意的是,基向量必须是原矩阵 \(A\) 中对应的主元列,而不是化简后矩阵中的列。

2. 行空间 \(C(A^T)\)

  • 维数: \(r\) 。行空间与列空间的维数相等,这是一个极其优美的数学事实。
  • 基的构造: 对矩阵 \(A\) 进行消元,得到简化行阶梯形式的矩阵 \(R\) 。行变换会改变原矩阵的列空间,但绝对不会改变行空间。因为行变换本质上是对行向量进行线性组合,生成的新行依然在原行空间内。因此,矩阵 \(R\) 的前 \(r\) 个非零行构成了矩阵 \(A\) 行空间的一组最优且最简洁的基。

3. 零空间 \(N(A)\)

  • 维数: \(n – r\) 。即自由变量的数量。在 \(\mathbb{R}^n\) 空间中,行空间的维数 \(r\) 与零空间的维数 \(n-r\) 之和恰好等于总维数 \(n\) 。
  • 基的构造: 通过令自由变量分别取特殊的基准值(如一个取 \(1\) ,其余取 \(0\) ),求得的 \(n – r\) 个“特解”(Special Solutions)即构成了零空间的基。

4. 左零空间 \(N(A^T)\)

  • 维数: \(m – r\) 。在 \(\mathbb{R}^m\) 空间中,列空间的维数 \(r\) 与左零空间的维数 \(m-r\) 之和恰好等于总维数 \(m\) 。
  • 基的构造: 左零空间的基并不容易直接从化简后的矩阵 \(R\) 中看出来,它需要记录从 \(A\) 到 \(R\) 的所有行变换过程。

如何求解左零空间的基?

我们可以用前面文章中求逆矩阵时使用的 Gauss-Jordan 消元法。我们将一个 \(m \times m\) 的单位矩阵 \(I\) 拼接在 \(m \times n\) 的矩阵 \(A\) 右侧,构成增广矩阵 \([A \mid I]\)。
经过一系列行变换,矩阵 \(A\) 变成了简化行阶梯矩阵 \(R\) ,而单位矩阵 \(I\) 记录了所有的行变换步骤,变成了一个记录矩阵 \(E\) 。即:$$E A = R$$ 矩阵 \(E\) 将 \(A\) 转化为了 \(R\) 。如果 \(R\) 中出现了全零行,那么 \(E\) 中对应的行向量,就是使得 \(A\) 的行向量线性组合为零的系数向量。这些向量恰好满足 \(y^T A = 0^T\) ,因此,矩阵 \(E\) 中对应于 \(R\) 中零行的那些行向量,就构成了左零空间的基。

四、拓展视角:从实数空间到矩阵空间

到目前为止,我们讨论的向量空间都是实数空间 \(\mathbb{R}^n\) 或其子空间。现在,我们扩展一下“向量”的概念:矩阵也可以作为向量空间中的向量。

以所有 \(3 \times 3\) 的实数矩阵组成的集合 \(M\) 为例。
虽然它们是矩阵,但如果我们将它们视作整体,它们满足向量空间的所有八条公理(例如:矩阵可以相加、可以数乘、存在零矩阵等)。在这个视角下,我们只关心矩阵的线性组合,忽略矩阵之间的乘法操作。

在这个矩阵空间 \(M\) 中,同样存在子空间:

  1.  上三角矩阵子空间:所有对角线下方元素为零的 \(3 \times 3\) 矩阵。
  2.  对称矩阵子空间:所有满足 \(A = A^T\) 的 \(3 \times 3\) 矩阵。
  3.  对角矩阵子空间 D:两个子空间的交集必然是子空间。上三角矩阵与对称矩阵的交集就是对角矩阵。

对角矩阵子空间 D 的维数是多少?
为了找到维数,我们需要构造一组基。对于 \(3 \times 3\) 的对角矩阵,任意矩阵都可以由以下三个矩阵线性组合而成,且这三个矩阵线性无关:

$$\begin{pmatrix} 1 & 0 & 0 \\ 0 & 0 & 0 \\ 0 & 0 & 0 \end{pmatrix}, 
\begin{pmatrix} 0 & 0 & 0 \\ 0 & 1 & 0 \\ 0 & 0 & 0 \end{pmatrix}, \begin{pmatrix} 0 & 0 & 0 \\ 0 & 0 & 0 \\ 0 & 0 & 1 \end{pmatrix}$$

因此,所需基向量的数量为 \(3\) ,对角矩阵子空间 \(D\) 的维数为 \(3\) 。

通过将向量空间的概念延伸到矩阵层面,我们证明了线性代数的核心思维(基、维数、线性组合、子空间)具有极强的普适性。无论是分析传统的列向量,还是研究复杂的矩阵系统,四个基本子空间的框架始终是我们最有力的数学工具。

发表评论

您的邮箱地址不会被公开。 必填项已用 * 标注

滚动至顶部