定理 2.1:向量运算的性质 假设 $\vc{u}$、$\vc{v}$ 与 $\vc{w}$ 为相同维数的向量,且 $k$ 与 $l$ 为标量,
则下列规则成立:
\begin{gather}
\begin{array}{llr}
(i) & \vc{u}+\vc{v} = \vc{v}+\vc{u} & \spc\text{(交换律)} \\
(ii) & (\vc{u}+\vc{v})+\vc{w} = \vc{u}+(\vc{v}+\vc{w}) & \spc\text{(结合律)} \\
(iii) & \vc{v}+\vc{0} = \vc{v} & \spc\text{(零元存在)} \\
(iv) & \vc{v}+ (-\vc{v}) = \vc{0} & \spc\text{(负向量存在)} \\
(v) & k(l\vc{v}) = (kl)\vc{v} & \spc\text{(系数结合)}\\
(vi) & 1\vc{v} = \vc{v} & \spc\text{(乘法单位元)} \\
(vii) & 0\vc{v} = \vc{0} & \spc\text{(乘法零)} \\
(viii) & k\vc{0} = \vc{0} & \spc\text{(零向量的缩放)} \\
(ix) & k(\vc{u}+\vc{v}) = k\vc{u}+k\vc{v} & \spc\text{(分配律 1)} \\
(x) & (k+l)\vc{v} = k\vc{v}+l\vc{v} & \spc\text{(分配律 2)} \\
\end{array}
\end{gather}
方程 (5.34): \begin{equation}
\begin{cases}
\begin{array}{rrrl}
2 x_1 + 5 & \bs x_2 + 3 & \bs x_3 = 0, \\
4 x_1 + 2 & \bs x_2 +\hid{3}& \bs x_3 = 0, \\
2 x_1 - 3 & \bs x_2 - 2 & \bs x_3 = 0, \\
\end{array}
\end{cases}
\end{equation}
定义 8.1:零空间 若 $\mx{A}$ 为一个 $m\times n$ 矩阵(即有 $m$ 行和 $n$ 列),则
方程 $\mx{A}\vc{x}=\vc{0}$ 的全体解称为矩阵 $\mx{A}$ 的零空间 。
定义 6.2:矩阵的行与列向量 对于一个 $r \times c$ 矩阵 $\mx{A}$,第 $i$ 行向量记作 $\vc{a}_{i,}^\T$,其具有
它包含 $c$ 个分量。
第 $i$ 列向量记作 $\vc{a}_{,i}$,它包含 $r$ 个分量。
利用向量,矩阵可以用以下两种方式表示,
\begin{equation}
\mx{A} = \bigl(\vc{a}_{,1} \,\,\, \vc{a}_{,2} \,\,\,\dots\,\,\, \vc{a}_{,c}\bigr)
= \left(
\begin{array}{c}
\vc{a}_{1,}^\T\\
\vc{a}_{2,}^\T\\
\vdots \\
\vc{a}_{r,}^\T\\
\end{array}
\right).
\end{equation}
定义 2.5:列向量记法 给定一组基,$n$ 维空间中的列向量 $\vc{v}$(此处 $n\in[1,2,3]$)表示为由 $n$ 个分量组成的列。
这些分量为标量,有时称为向量元素。向量的分量可以编号,例如 $v_1, v_2, v_3$,在适当时也可使用 $x,y,z$ 作为下标。表示法如下:
\begin{gather}
\underbrace{ \vc{u} =
\begin{pmatrix} u_x
\end{pmatrix} =
\begin{pmatrix} u_1
\end{pmatrix}}_{\text{1D vector}},
\spc\spc
\underbrace{ \vc{v} =
\begin{pmatrix} v_x \\
v_y
\end{pmatrix} =
\begin{pmatrix} v_1 \\
v_2
\end{pmatrix}}_{\text{2D vector}},
\spc\spc
\\
\underbrace{ \vc{w} =
\begin{pmatrix} w_x \\
w_y \\
w_z
\end{pmatrix} =
\begin{pmatrix} w_1 \\
w_2 \\
w_3
\end{pmatrix}}_{\text{3D vector}},
\end{gather}
where $\vc{u} = u_x \vc{e}_1$, $\vc{v} = v_x \vc{e}_1 + v_y \vc{e}_2$,
and $\vc{w} = w_x \vc{e}_1 + w_y \vc{e}_2 + w_z \vc{e}_3$.
定义 5.1:线性组合 当向量 $\vc{u}$ 可表示为向量 $\vc{v}_1,\dots,\vc{v}_n$ 的线性组合时,称其为线性组合,即
$\vc{u}$ 可表示为
\begin{equation}
\vc{u} = k_1\vc{v}_1 + k_2\vc{v}_2 + \dots + k_n \vc{v}_n = \sum_{i=1}^{n} k_i \vc{v}_i,
\end{equation}
其中 $k_1, k_2, \dots, k_n$ 为标量。
定义 3.1:点积 向量 $\vc{u}$ 与 $\vc{v}$ 之间的点积记作 $\vc{u}\cdot \vc{v}$,其定义为
定义为标量值
\begin{equation}
\vc{u}\cdot \vc{v} = \left\{
\begin{array}{ll}
\ln{\vc{u}}\ \ln{\vc{v}} \cos[\vc{u},\vc{v}], & \text{if } \vc{u}\neq \vc{0} \text{ and } \vc{v}\neq \vc{0},\\
0, & \text{if } \vc{u}=\vc{0} \text{ or } \vc{v}=\vc{0}.
\end{array}
\right.
\end{equation}
定义 3.8:参数化平面 由参数 $t_1,t_2\in\R$ 参数化的平面可由起点 $S$ 和两条方向向量描述,形式为
方向向量 $\vc{d}_1$ 和 $\vc{d}_2$。
平面上所有点 $P(t_1,t_2)$ 可表示为
\begin{equation}
P(t_1, t_2) = S + t_1 \vc{d}_1 + t_2\vc{d}_2.
\end{equation}
若 $\vc{d}_1$ 或 $\vc{d}_2$ 为零向量,或 $\vc{d}_1$ 与 $\vc{d}_2$ 共线(同向或反向),则退化为参数化直线方程。
方程 (8.16): \begin{equation}
s
\begin{pmatrix}
1\\
2\\
3
\end{pmatrix}
+t
\left(
\begin{array}{r}
4\\
1\\
-3
\end{array}
\right),
\end{equation}
定理 5.2:高斯消元法规则 线性方程组的解在下述变换后不变:
交换两条方程的顺序;
将某条方程乘以非零常数;
用另一条方程的常数倍加到某条方程上。
方程 (8.12): \begin{equation}
\vc{x}^\T\mx{A}=
\vc{x}^\T
\left(\begin{array}{c} \vc{a}_{1,}^\T\\
\vc{a}_{2,}^\T\\
\vdots \\
\vc{a}_{m,}^T \end{array}
\right)
=
\left(\begin{array}{c} x_1\ \ x_2\ \ \dots\ \ x_m \end{array}
\right)
\left(\begin{array}{c} \vc{a}_{1,}^\T\\
\vc{a}_{2,}^\T\\
\vdots \\
\vc{a}_{m,}^T \end{array}
\right)
=
x_1\vc{a}_{1,}^\T + x_2 \vc{a}_{2,}^\T + \dots + x_m \vc{a}_{m,}^\T.
\end{equation}
方程 (8.18): \begin{gather}
k_1 \vc{a}_{1,}^{\T} + \dots + k_i \vc{a}_{i,}^{\T} + \dots + k_m \vc{a}_{m,}^{\T}\\
\Longleftrightarrow \\
k_1 \vc{a}_{1,}^{\T} + \dots + \left(\frac{k_i}{k}\right) \left( k \vc{a}_{i,}^{\T}\right) + \dots + k_m \vc{a}_{m,}^{\T}.
\end{gather}
方程 (8.17): \begin{equation}
\underbrace{ k_1 \vc{a}_{1,}^{\T} + \dots + k_i \vc{a}_{i,}^{\T} + \dots + k_m \vc{a}_{m,}^{\T} }_{\mathrm{row\ space}},
\end{equation}
定理 8.2: 高斯消元的任一基本操作在应用后不会改变 $m\times n$ 矩阵 $\mx{A}$ 的行空间。
定理 8.3: 设方程组 $\mx{A}\vc{x}=\vc{0}$ 在高斯消元后变为行阶梯形 $\mx{R}\vc{x}=\vc{0}$,即
$\mx{A}\vc{x} = \vc{0} \Longleftrightarrow \mx{R}\vc{x} = \vc{0}$,则:
$\mx{R}$ 的非零行构成 $\mx{R}$ 的行空间的一组基,因此亦为 $\mx{A}$ 的行空间的一组基。
行向量中首个非零元所在列的列向量构成 $\mx{R}$ 的列空间基,而 $\mx{A}$ 的列空间由 $\mx{A}$ 中对应列编号的列向量生成。
定理 8.8:维数定理 对于任意 $m\times n$ 矩阵 $\mx{A}$(即有 $n$ 列),成立关系:
\begin{equation}
\rank(\mx{A}) + \nullity(\mx{A}) = n.
\end{equation}
定理 2.1:向量运算的性质 假设 $\vc{u}$、$\vc{v}$ 与 $\vc{w}$ 为相同维数的向量,且 $k$ 与 $l$ 为标量,
则下列规则成立:
\begin{equation}
\proj{\vc{v}}{\vc{u}} = \frac{\vc{u} \cdot \vc{v}}{ \ln{\vc{v}}^2 } \vc{v}.
\end{equation}
注意,如果 $\ln{\vc{v}}=1$,即 $\vc{v}$ 已单位化,则投影的表达式简化为:
$\proj{\vc{v}}{\vc{u}} = (\vc{u} \cdot \vc{v})\vc{v}$。
定义 6.2:矩阵的行与列向量 对于一个 $r \times c$ 矩阵 $\mx{A}$,第 $i$ 行向量记作 $\vc{a}_{i,}^\T$,其包含 $c$ 个分量。
第 $i$ 列向量记作 $\vc{a}_{,i}$,它包含 $r$ 个分量。
利用向量,矩阵可以用以下两种方式表示:
border-radius: 6px; box-shadow: 5px 5px 2px #a0a0a0;" onclick="samHidePopup('auto_label_681')">
定理 8.9: 矩阵 $\mx{A}$(大小 $m\times n$)的秩是最大的整数 $r$,使得存在某个 $r\times r$ 的余子式不为 $0$。
定理 8.6:乘积的秩 矩阵乘积 $\mx{A}=\mx{B}\mx{C}$ 的秩不超过因子矩阵的秩,即
\begin{equation}
\rank \mx{A} \leq \rank \mx{C},
\end{equation}
并且
\begin{equation}
\rank \mx{A} \leq \rank \mx{B}.
\end{equation}
方程 (8.51): \begin{equation}
d_{ij} = v t_{ij} = {\ln{\mathbf{r}_i - \mathbf{s}_j}}.
\end{equation}
定理 8.6:乘积的秩 矩阵乘积 $\mx{A} = \mx{B} \mx{C}$ 的秩不超过各因子的秩,即
\begin{equation}
\rank \mx{A} \leq \rank \mx{C},
\end{equation}
并且
\begin{equation}
\rank \mx{A} \leq \rank \mx{B}.
\end{equation}
第8章:秩
本章介绍了一个称为的概念,它是矩阵的一个属性。
实际上,它揭示了矩阵的若干方面。这里的一些示例可能仅对方阵进行说明,但本章的所有内容也适用于矩形矩阵,例如大小为 $m \times n$ 的矩阵。
我们从一个应用示例开始,该示例涉及所谓的声音结构推断。
示例8.1:
声音结构推断
有许多应用数学的示例涉及到的概念。一个这样的例子是所谓的
声音结构推断 问题。在该示例中,声音在多个静止但未知位置的麦克风处被记录下来。未知的声源在未知的位置和时间发出声音。仅使用麦克风测得的声信号,就可以计算出 (i) 麦克风的位置,(ii) 声源的移动轨迹,以及 (iii) 声源发声的时间。在这里, 起着重要作用。
图8.1 显示了测量情况。八个麦克风在一个声源在房间内移动时捕捉声音。 这八个声音文件用于计算麦克风位置和声源运动。 另请参阅以下
Video 剪辑 。
计算出的3D声源路径和麦克风位置也在
交互式插图 8.2 中可视化。
我们首先解释矩阵的 、 与 。正如下文所示,这三类空间本身都是向量空间。它们是子空间的例子,下一节将对此作进一步解释。
一个向量空间的子空间是该空间的一个子集,它本身也是一个空间。 要证明一个空间的子集是一个子空间,只需检查三件事。 这由以下定理捕捉。
定理 8.1:
设$V$是标量$F$上的一个向量空间。 (这里我们通常只使用$F=\R $或$F=\mathbb{C}$)。
子集$W \subset V$是一个向量空间,即子空间,当且仅当$W$满足以下三个条件:
零向量$\vc{0} \in W$。
如果$\vc{v}_1 \in W$且$\vc{v}_2 \in W$,则$\vc{v}_1+\vc{v}_2 \in W$。
如果$\vc{v} \in W$且$\lambda \in F$,则$\lambda \vc{v}\in W$。
首先证明:若三条条件成立,则 $W$ 为向量空间。由条件 1 可知 $W$ 非空。条件 2 与条件 3 保证了向量加法和数乘的结果仍属于该子集。由于 $W$ 的元素已经是向量空间 $V$ 的元素,因此 定理 2.1 中的其他运算律同样成立。
其次证明:若子集 $W$ 本身是向量空间,则三条条件必然成立。因为 $W$ 为向量空间,性质 2 和 3 自动满足;又因 $W$ 非空,存在某 $\vc{w}\in W$,从而可构造零向量 $\vc{0}=0\vc{w}\in W$,因此性质 1 成立。
$\square$
示例 8.2:
设 $\mx{A}$ 为 $m\times n$ 矩阵。令 $V$ 为线性向量空间 $\R^n$,令 $W\subset V$ 为满足 $\mx{A}\vc{v}=\vc{0}$ 的向量集合。则 $W$ 是一个线性向量空间,理由如下:
零向量 $\vc{0} \in W$,因为 $\mx{A}\vc{0}=\vc{0}$。
若 $\vc{v}_1,\vc{v}_2\in W$,则 $\mx{A}(\vc{v}_1+\vc{v}_2)=\mx{A}\vc{v}_1+\mx{A}\vc{v}_2=\vc{0}+\vc{0}$,因此 $\vc{v}_1+\vc{v}_2\in W$。
若 $\vc{v}\in W$ 且 $\lambda\in F$,则 $\mx{A}(\lambda\vc{v})=\lambda\mx{A}\vc{v}=\lambda\vc{0}=\vc{0}$,因此 $\lambda\vc{v}\in W$。
这意味着齐次方程组的解集合构成一个线性空间。
示例 8.3:
设 $\mx{A}$ 为 $m\times n$ 矩阵。令 $V$ 为线性向量空间 $\R^m$,令 $W\subset V$ 为所有可以表示为 $\vc{v}=\mx{A}\vc{u}$(某 $\vc{u}\in\R^n$)的向量集合。则 $W$ 是一个线性向量空间,理由如下:
零向量 $\vc{0}\in W$,因为 $\vc{0}\in\R^m$ 可由 $\vc{0}\in\R^n$ 生成,且 $\vc{0}=\mx{A}\vc{0}$。
若 $\vc{v}_1,\vc{v}_2\in W$,则存在 $\vc{u}_1,\vc{u}_2\in\R^n$ 使 $\vc{v}_1=\mx{A}\vc{u}_1$ 与 $\vc{v}_2=\mx{A}\vc{u}_2$,因此 $\vc{v}_1+\vc{v}_2=\mx{A}(\vc{u}_1+\vc{u}_2)\in W$。
若 $\vc{v}=\mx{A}\vc{u}\in W$ 且 $\lambda\in F$,则 $\lambda\vc{v}=\mx{A}(\lambda\vc{u})\in W$。
这意味着一组向量的线性组合所构成的集合是一个线性空间。
正如我们在
第 5.5 节 中所见,形如 $\mx{A}\vc{x}=\vc{0}$ 的方程组称为齐次系统。下面我们将展示这类系统的解如何揭示矩阵 $\mx{A}$ 的若干有用性质。首先从一个例子出发。
假设有如下矩阵
\begin{equation}
\mx{A} =
\begin{pmatrix}
2 & \hid{-}5 & \hid{-}3 \\
4 & \hid{-}2 & \hid{-}1 \\
2 & -3 & -2
\end{pmatrix},
\end{equation}
(8.1)
并且我们要求解 $\mx{A}\vc{x}=\vc{0}$,其中 $\vc{x}=(x_1,x_2,x_3)$ 是一个 。
这就是
方程 (5.34) 中的相同例子,即:
\begin{equation}
\begin{cases}
\begin{array}{rrrl}
2 x_1 + 5 & \bs x_2 + 3 & \bs x_3 = 0, \\
4 x_1 + 2 & \bs x_2 +\hid{3}& \bs x_3 = 0, \\
2 x_1 - 3 & \bs x_2 - 2 & \bs x_3 = 0, \\
\end{array}
\end{cases}
\end{equation}
(8.2)
经过若干步的 ,我们得到
\begin{equation}
\begin{cases}
\begin{array}{rrrl}
2 x_1 + 5 & \bs x_2 + 3 & \bs x_3 = 0, \\
8 & \bs x_2 + 5 & \bs x_3 = 0, \\
& & \bs 0 = 0. \\
\end{array}
\end{cases}
\end{equation}
(8.3)
接下来令 $x_3=t$,则 $x_2=-\frac{5}{8}t$,最终得
$x_1=\frac{1}{16}t$,即
\begin{equation}
\vc{x}(t) =
\begin{pmatrix}
x_1 \\
x_2 \\
x_3
\end{pmatrix}
=
\begin{pmatrix}
\frac{1}{16}t \\
-\frac{5}{8}t \\
t
\end{pmatrix}
\end{equation}
(8.4)
如上所示,该解是一条仅由一个参数 $t$ 决定的直线。有时用 $\vc{x}_\mathrm{h}$ 来表示它,以表明这是齐次系统 $\mx{A}\vc{x}=\vc{0}$ 的解。整个解集称为矩阵 $\mx{A}$ 的零空间,在本例中零空间的维数为 1,因为解只依赖于一个参数 $t$。我们也把向量 $(1/16,-5/8,1)$ 称为零向量。接下来将给出形式化的定义。
定义 8.1:
零空间
设 $\mx{A}$ 为 $m\times n$ 矩阵(即有 $m$ 行 $n$ 列)。矩阵方程 $\mx{A}\vc{x}=\vc{0}$ 的所有解所组成的集合称为 $\mx{A}$ 的零空间 。
按定义,零空间是 $\R^n$ 的一个子空间,因此 $\nullity(\mx{A})\le n$。它是一个线性子空间(参见
示例 8.2 )。该子空间的维数很重要,下面给出相应定义。
定义 8.2:
零维数
零空间的维数记作 $\nullity(\mx{A})$。
由于零空间是 $\R^n$ 的子空间,我们有 $\nullity(\mx{A})\le n$。那么零空间比原来少了多少维呢?这可以从方程组 $\mx{A}\vc{x}=\vc{0}$ 中的约束数量来大致理解,但需注意并非简单地用行数 $m$ 去减维就能得到结论:存在 $m$ 条方程并不必然意味着 $\nullity(\mx{A})=n-m$。矩阵中实际有效约束的数量正是由矩阵的秩()来刻画的。我们稍后将证明 $\nullity(\mx{A})=n-r$,也就是说维数被降了 $r$(即 $\mx{A}$ 的秩)。
定义 8.3:
零向量
设 $\vc{p}_1,\ldots,\vc{p}_k$ 为零空间的一组基向量。
任意解 $\vc{x}$ 都可写成 $\vc{x}(t_1,\dots,t_k)=t_1\vc{p}_1+\dots+t_k\vc{p}_k$,其中 $k$ 为零空间的维数。基向量 $\vc{p}_i$ 有时被称为“零向量”,但有时零空间中的任意向量也可被称为零向量。
通过高斯消元可以得到零空间的一个基,从而确定零空间的维数。解中独立参数的个数决定了零空间的维数。
示例 8.4:
零空间
这里我们再次考察形如 $\mx{A}\vc{x}=\vc{0}$ 的方程组的解。
下面的方程组
\begin{equation}
\begin{cases}
\begin{array}{rrrrrl}
2 x_1\hid{+} & \bs \hid{x_2} + \hid{1} & \bs x_3 - 2 & \bs x_4 +\hid{1} & \bs x_5 = 0, \\
2 x_1+ & \bs x_2 + 5 & \bs x_3 \hid{+}\hid{2} &\bs \hid{x_4} + 2 & \bs x_5 = 0, \\
& \bs x_2+ 4 & \bs x_3 + 2 & \bs x_4 +\hid{1} & \bs x_5 = 0, \\
& & \hid{1} & \bs x_4 + 2 & \bs x_5 = 0, \\
\end{array}
\end{cases}
\end{equation}
(8.5)
因此可重写为
\begin{equation}
\underbrace{
\left(
\begin{array}{rrrrr}
2 & 0 & 1 & -2 & 1 \\
2 & 1 & 5 & 0 & 2 \\
0 & 1 & 4 & 2 & 1 \\
0 & 0 & 0 & 1 & 2 \\
\end{array}
\right)
}_{\mx{A}}
\underbrace{
\begin{pmatrix}
x_1 \\
x_2 \\
x_3 \\
x_4 \\
x_5 \\
\end{pmatrix}
}_{\vc{x}}
=
\underbrace{
\begin{pmatrix}
0 \\
0 \\
0 \\
0 \\
\end{pmatrix}
}_{\vc{0}}.
\end{equation}
(8.6)
接下来我们将使用
例 6.11 中的简洁符号,并通过来求解 $\mx{A}\vc{x}=\vc{0}$,
\begin{equation}
\left(
\begin{array}{rrrrr|r}
2 & 0 & 1 & -2 & 1 & 0\\
2 & 1 & 5 & 0 & 2 & 0\\
0 & 1 & 4 & 2 & 1 & 0\\
0 & 0 & 0 & 1 & 2 & 0\\
\end{array}
\right)
\Leftrightarrow
\left(
\begin{array}{rrrrr|r}
2 & 0 & 1 & -2 & 1 & 0\\
0 & 1 & 4 & 2 & 1 & 0\\
0 & 1 & 4 & 2 & 1 & 0\\
0 & 0 & 0 & 1 & 2 & 0\\
\end{array}
\right),
\end{equation}
(8.7)
上一步从第 2 行减去了第 1 行。由此可见,第 2 行和第 3 行现在相同,因此在它们相减时会得到一行全零,即:
\begin{equation}
\left(
\begin{array}{rrrrr|r}
2 & 0 & 1 & -2 & 1 & 0\\
0 & 1 & 4 & 2 & 1 & 0\\
0 & 0 & 0 & 1 & 2 & 0\\
0 & 0 & 0 & 0 & 0 & 0\\
\end{array}
\right).
\end{equation}
(8.8)
如我们在
第 5.5 节 所述,处理此类情形的做法是将部分未知数设为自由参数,例如令 $x_5=t$。由第 3 行得 $x_4+2x_5=0$,即 $x_4=-2t$。对于第 2 行,我们再引入一个自由参数 $x_3=s$,从而得到 $x_2=-4s+3t$。最后由第 1 行可得 $x_1=-\frac{1}{2}s-\frac{5}{2}t$。因此解为
\begin{equation}
\vc{x}_\mathrm{h} =
s
\underbrace{
\left(
\begin{array}{r}
-\frac{1}{2} \\
-4 \\
1 \\
0 \\
0 \\
\end{array}
\right)
}_{\vc{m}}
+
t
\underbrace{
\left(
\begin{array}{r}
-\frac{5}{2} \\
3 \\
0 \\
-2 \\
1 \\
\end{array}
\right)
}_{\vc{n}}
=s\vc{m} + t\vc{n}.
\end{equation}
(8.9)
根据
定义 8.1 ,上面的解就是矩阵 $\mx{A}$ 的零空间。由于解依赖于两个自由参数 $s$ 和 $t$,因此零空间的维数为 2,即 $\nullity(\mx{A})=2$。进一步地,我们也说向量 $\vc{m}$ 和 $\vc{n}$ 跨越该零空间,也就是说它们是零空间的一组基向量。
对于一个 $m\times n$ 矩阵 $\mx{A}$,回顾
定义 6.2 中对行 $\vc{a}_{i,}^\T$($i=1,\dots,m$)与列 $\vc{a}_{,j}$ 的访问方式,即
\begin{equation}
\mx{A} = \bigl(\vc{a}_{,1} \,\,\, \vc{a}_{,2} \,\,\,\dots\,\,\, \vc{a}_{,n}\bigr)
= \left(
\begin{array}{c}
\vc{a}_{1,}^\T\\
\vc{a}_{2,}^\T\\
\vdots \\
\vc{a}_{m,}^\T\\
\end{array}
\right).
\end{equation}
(8.10)
另外,重申本书中列向量与行向量的记法:默认情况下所有向量都视为。若需要使用一个,可将列向量 $\vc{x}$ 转置得到行向量 $\vc{x}^\T$。
例如,$(x_1,x_2,x_3)$(用逗号分隔)也表示一个,而 $(x_1 \spc x_2 \spc x_3)$ 则表示一个,详见
定义 2.5 。
现在我们已经知道了,可以引入两个相关概念:和。
定义 8.4:
列空间
设 $\mx{A}= \left(\vc{a}_{,1} \vc{a}_{,2} \dots \vc{a}_{,n}\right)$ 为一个 $m\times n$ 矩阵。
矩阵 $\mx{A}$ 的 定义为所有由矩阵的各列向量 $\vc{a}_{,i}$ 生成的 的集合。
下面我们注意到,矩阵与向量相乘 $\mx{A}\vc{x}$ 可以表示为
\begin{equation}
\mx{A}\vc{x}= \left(\vc{a}_{,1}\,\,\, \vc{a}_{,2}\,\,\, \dots\,\,\, \vc{a}_{,n}\right)\vc{x} =
x_1\vc{a}_{,1} + x_2\vc{a}_{,2} + \dots +x_n\vc{a}_{,n},
\end{equation}
(8.11)
也就是说,它可以看作是一个 (参见
定义 5.1 )
是矩阵 $\mx{A}$ 的 。
也就是说,列空间由矩阵列向量的线性组合生成(参见
定义 5.1 )。
换言之,列空间包含所有可以由取第一个列向量乘以某一常数、再加上第二个列向量乘以另一常数、以此类推所生成的向量。
注意,按定义列空间是 $\\R^m$ 的一个子空间,因为矩阵 $\mx{A}$ 的所有列向量都具有 $m$ 个分量。
定义 8.5:
行空间
设 $\mx{A}= \left(\begin{array}{c} \vc{a}_{1,}^\T\\ \vc{a}_{2,}^\T\\ \vdots \\\vc{a}_{m,}^T \end{array}\right)$ 为一个 $m\times n$ 矩阵。
矩阵 $\mx{A}$ 的 定义为所有由行向量 $\vc{a}_{i,}^\T$ 的线性组合构成的集合。
与 类似,我们也可以将其写成向量-矩阵相乘的形式,不过这次使用
a $\vc{x}^\T$,它有 $m$ 个分量并从右侧与矩阵相乘,即:
\begin{equation}
\vc{x}^\T\mx{A}=
\vc{x}^\T
\left(\begin{array}{c} \vc{a}_{1,}^\T\\ \vc{a}_{2,}^\T\\ \vdots \\\vc{a}_{m,}^T \end{array}\right)
=
\left(\begin{array}{c} x_1\ \ x_2\ \ \dots\ \ x_m \end{array}\right)
\left(\begin{array}{c} \vc{a}_{1,}^\T\\ \vc{a}_{2,}^\T\\ \vdots \\\vc{a}_{m,}^T \end{array}\right)
=
x_1\vc{a}_{1,}^\T + x_2 \vc{a}_{2,}^\T + \dots + x_m \vc{a}_{m,}^\T.
\end{equation}
(8.12)
因此,这也是由行向量的线性组合所生成的集合(参见
定义 5.1 )。不过这次所用的是矩阵 $\mx{A}$ 的行向量。
换言之,行空间包含所有可以由取第一个行向量乘以某一常数、再加上第二个行向量乘以另一常数、以此类推所生成的向量。
注意,按定义行空间是 $\\R^n$ 的一个子空间,因为矩阵 $\mx{A}$ 的所有行向量都具有 $n$ 个分量。
例 8.5
列空间(一)
本例延续
例 8.4 中的矩阵。回想我们已将方程组变换为
\begin{equation}
\left(
\begin{array}{rrrrr|r}
2 & 0 & 1 & -2 & 1 & 0\\
0 & 1 & 4 & 2 & 1 & 0\\
0 & 0 & 0 & 1 & 2 & 0\\
0 & 0 & 0 & 0 & 0 & 0\\
\end{array}
\right).
\end{equation}
(8.13)
在上一例中我们已计算出该例的,此处展示如何得到矩阵的。
实际上,经过高斯消元得到的行阶梯形矩阵中,每一非零行的首个非零元所在的列对应的列向量,就是列空间的一组基向量。因此可以直接从上式矩阵中取出这些列向量,得到以下向量:
\begin{align}
\begin{pmatrix}
2 \\
0 \\
0 \\
0
\end{pmatrix}
, \ \ \ \
\begin{pmatrix}
0 \\
1 \\
0 \\
0
\end{pmatrix}
, \ \ \ \ \mathrm{and}\ \ \ \
\left(
\begin{array}{r}
-2 \\
2 \\
1 \\
0
\end{array}
\right).
\end{align}
(8.14)
由于列空间有三个,因此 $\mx{A}$ 的列空间维数为 3。该方法为何可行将在本章后文中解释。
例 8.6
列空间(二)
设
\begin{equation}
\mx{A} = \left(\vc{a}_{,1}\,\,\, \vc{a}_{,2}\,\,\, \vc{a}_{,3}\right)=
\left(
\begin{array}{rrr}
1 & \hid{-}4 & -10 \\
2 & \hid{-}1 & 1\\
3 & -3 & 15
\end{array}
\right).
\end{equation}
(8.15)
可验证 $\vc{a}_{,3} = 2\vc{a}_{,1}-3\vc{a}_{,2}$,因此该矩阵的至多由两个向量的线性组合生成。
这意味着若 $\vc{a}_{,1}$ 与 $\vc{a}_{,2}$ 共线,则列空间只依赖于一个向量;否则,列空间依赖于两个向量。举例来说,计算可得
$\vc{a}_{,1}\cdot\vc{a}_{,2}=1\cdot(-4)+2\cdot(-1)+3\cdot(-3)=-3$(参见
定义 3.1 ),由此可以判断向量并不共线,故列空间由两个向量张成。
例如,列空间可以表示为
\begin{equation}
s
\begin{pmatrix}
1\\
2\\
3
\end{pmatrix}
+t
\left(
\begin{array}{r}
4\\
1\\
-3
\end{array}
\right),
\end{equation}
(8.16)
where $s$ and $t\in \R$。
也就是说, 可以由 $\vc{a}_{,1}$ 与 $\vc{a}_{,2}$ 的线性组合生成。
因此,我们可以断言 $\rank(\mx{A})=2$,因为列空间由两个向量的线性组合生成。
几何上,这表明 构成一个平面(参见
定义 3.8 ),这也可从
方程 (8.16) 看出。
定义 8.6:
行秩与列秩
设 $\mx{A}$ 为任意矩阵。矩阵 $\mx{A}$ 的 ,记为 $\rowrank(\mx{A})$,定义为 $\mx{A}$ 中线性无关的 的最大数量。类似地, ,记为 $\colrank(\mx{A})$,定义为矩阵 $\mx{A}$ 中线性无关的 的最大数量。
接下来我们将逐步介绍一些步骤,最终可以方便地得到矩阵的列(或行)空间中的列向量/行向量。
下面给出第一个引导性的定理。
定理 8.2:
对于任一 $m\times n$ 矩阵 $\mx{A}$,高斯消元的任一基本操作(参见
定理 5.2 )在应用后不会改变矩阵的。
矩阵 $\mx{A}$ 的行记作 $\vc{a}_{i,}^{\T}$,其中 $i\in\{1,\dots,m\}$。在本证明中,我们用下列符号表示
定理 5.2 中的三种变换:
$(i)$:$\vc{a}_{i,}^{\T} \leftrightarrow \vc{a}_{j,}^{\T}$,表示交换两行的顺序;
$(ii)$:$\vc{a}_{i,}^{\T} \rightarrow k\vc{a}_{i,}^{\T}$,表示将第 $i$ 行乘以非零常数 $k$;
$(iii)$:$\vc{a}_{i,}^{\T} \rightarrow \vc{a}_{i,}^{\T} + \vc{a}_{j,}^{\T}$,表示将第 $j$ 行加到第 $i$ 行上。
(i):显然,交换两行仅改变行的顺序,因此保持不变。
(ii):对于缩放某一行的操作,变换前后矩阵仅在第 $i$ 行不同。回想式 (8.12) 表示行空间为若干行向量的线性组合,
\begin{equation}
\underbrace{ k_1 \vc{a}_{1,}^{\T} + \dots + k_i \vc{a}_{i,}^{\T} + \dots + k_m \vc{a}_{m,}^{\T} }_{\mathrm{row\ space}},
\end{equation}
(8.17)
因此可重写为
\begin{gather}
k_1 \vc{a}_{1,}^{\T} + \dots + k_i \vc{a}_{i,}^{\T} + \dots + k_m \vc{a}_{m,}^{\T}\\
\Longleftrightarrow \\
k_1 \vc{a}_{1,}^{\T} + \dots + \left(\frac{k_i}{k}\right) \left( k \vc{a}_{i,}^{\T}\right) + \dots + k_m \vc{a}_{m,}^{\T}.
\end{gather}
(8.18)
由于我们可以把 $k \vc{a}_{i,}^{\T}$ 视为一个“新”的 ,且将 $k_i/k$ 看作该新行向量前的任意常数,
因此可以看出,凡是在
式 (8.18) 的第一行中能够表示的量,亦可在该式的最后一行中表示,反之亦然。
因此第二条基本变换保持了矩阵的 不变。
$(iii)$:对于第三条规则 $\vc{a}_{i,}^{\T} \rightarrow \vc{a}_{i,}^{\T} + \vc{a}_{j,}^{\T}$,我们将
等式 (8.17) 重写为
\begin{gather}
k_1 \vc{a}_{1,}^{\T} + \dots + k_i \vc{a}_{i,}^{\T} + \dots + k_j \vc{a}_{j,}^{\T} + \dots + k_m \vc{a}_{m,}^{\T}\\
\Longleftrightarrow \\
k_1 \vc{a}_{1,}^{\T} + \dots + k_i (\vc{a}_{i,}^{\T} + \vc{a}_{j,}^{\T}) + \dots + (k_j-k_i) \vc{a}_{j,}^{\T} + \dots + k_m \vc{a}_{m,}^{\T}.
\end{gather}
(8.19)
此处 $\vc{a}_{i,}^{\T}+\vc{a}_{j,}^{\T}$ 是更新后的行向量,并且如上所示,作用在 $\vc{a}_{j,}^{\T}$ 前的系数变为 $k_j-k_i$,因此通过适当调整 $k_j$ 可以得到任意所需的系数值。综上可知,经过规则 (iii) 变换后的矩阵的包含了原矩阵 $\mx{A}$ 的行空间。
我们还需证明反方向也成立。由于
\begin{gather}
k_1 \vc{a}_{1,}^{\T} + \dots + k_i (\vc{a}_{i,}^{\T} + \vc{a}_{j,}^{\T}) + \dots + k_j \vc{a}_{j,}^{\T} + \dots + k_m \vc{a}_{m,}^{\T}\\
\Longleftrightarrow \\
k_1 \vc{a}_{1,}^{\T} + \dots + k_i \vc{a}_{i,}^{\T} + \dots + (k_j+k_i) \vc{a}_{j,}^{\T} + \dots + k_m \vc{a}_{m,}^{\T},
\end{gather}
(8.20)
通过类似的论证,可得应用了规则 (iii) 的矩阵的也包含于原矩阵的行空间,从而两者相等。
证明完毕。
$\square$
注意:
定理 8.2 仅适用于
,
不适用于 。
下面我们需要一个专门术语来描述高斯消元得到的矩阵。下列定义给出该术语(行阶梯形)。
定义 8.7:
行阶梯形
若矩阵 $\mx{A}$ 的所有仅含零的行(若存在)被放在最下方,且对于编号为 $i$ 的每一行,其首个非零系数 $a_{ij}$ 所在的列位置使得任一编号 $i'$ 的行($i' < i$)的首个非零元所在列 $j'$ 满足 $j' < j$,则称 $\mx{A}$ 为行阶梯形矩阵。
注意:通过对矩阵进行 (直至无法再约简),可将该矩阵化为行阶梯形。
这会产生一种类似三角形的结构,例如下式所示:
\begin{equation}
\left(
\begin{array}{rrrrr}
\underline{2} & 0 & 1 & -2 & 1 \\
0 & \underline{1} & 4 & 2 & 1 \\
0 & 0 & 0 & \underline{1} & 2 \\
0 & 0 & 0 & 0 & 0 \\
\end{array}
\right).
\end{equation}
(8.21)
因此,这类矩阵有时被称为矩阵 $\mx{A}$ 的“阶梯等价”形式。
前述方阵中加下划线的首个非零系数称为主元。有些教材要求把这些主元化为 1,这可以通过将整行除以该主元来实现,但在这里我们不作此要求。
下面给出一个定理,说明如何从行阶梯形矩阵中直接找出行空间的基向量,并由此确定行空间的维数。
定理 8.3:
设线性方程组 $\mx{A}\vc{x}=\vc{0}$ 经高斯消元后得到行阶梯形矩阵 $\mx{R}$,即 $\mx{A}\vc{x}=\vc{0} \Longleftrightarrow \mx{R}\vc{x}=\vc{0}$。则:
矩阵 $\mx{R}$ 的所有非零行构成 $\mx{R}$ 的的一组基;由 定理 8.2 ,这些行也构成原矩阵 $\mx{A}$ 的行空间基。
对于 $\mx{R}$,在每一非零行中首个非零元所在的列(即首个非零元所在的列号)对应的列向量,构成 $\mx{R}$ 的的一组基;而 $\mx{A}$ 的列空间基则取自 $\mx{A}$ 中与这些列号相同的列向量。
要证明这些非零行构成一组基,需证明 (i) 它们张成该空间,以及 (ii) 它们线性无关。
(i) 任意行向量的线性组合都可以由这些非零行的线性组合表示,因此非零行张成了行空间。
(ii) 证明它们线性无关。对于行阶梯形矩阵中的任一非零行,其主元所在列在其他行中均为 0,因此该非零行不可能表示成其他行的线性组合,从而这些非零行线性无关。
$\square$
注意,行/列空间的 的数量等于对应的 。
接下来我们将证明 的维数(即 )与 的维数(即 )相同。
在下面的定理之后,我们将举例说明如何找到行空间与列空间的 。
定理 8.4:
列秩与行秩相等
矩阵 $\mx{A}$ 的等于其。
设矩阵 $\mx{A}$ 的行秩为 $k$,且 $\{\vc{b}_{1,}^\T,\dots,\vc{b}_{k,}^\T\}$ 为 $\mx{A}$ 的一组行空间基。第 $i$ 行 $\vc{a}_{i,}^\T=(a_{i1},a_{i2},\dots,a_{in})^\T$ 可以用这些基表示为 $\vc{a}_{i,}^\T=\sum_{r=1}^k c_{ir}\vc{b}_{r,}^\T$,其中 $c_{ir}$ 为某些常数。于是 $\vc{a}_{i,}^\T$ 的第 $j$ 个分量为
\begin{equation}
a_{ij} = \sum_{r=1}^k c_{ir} b_{rj},
\end{equation}
(8.22)
上式对任意列号 $j$ 都成立。因此,第 $j$ 列向量可写为
\begin{equation}
\vc{a}_{,j} = \begin{pmatrix} a_{1j}\\ \vdots \\ a_{mj} \end{pmatrix} = \sum_{r=1}^k b_{rj} \vc{d}_{r},
\ \ \mathrm{where}\ \
\vc{d}_{r} =
\begin{pmatrix}
c_{1r} \\
\vdots \\
c_{mr}
\end{pmatrix}.
\end{equation}
(8.23)
可以解释为:矩阵 $\mx{A}$ 的每一列都是 $k$ 个向量的线性组合,因此 $\colrank(\mx{A})\le k$。即 $\colrank(\mx{A})\le\rowrank(\mx{A})$。对转置矩阵同时应用该结论可得 $\rowrank(\mx{A})\le\colrank(\mx{A})$,因此两者相等,得证。
$\\square$
此后我们无需再区分 $\rowrank(\mx{A})$ 与 $\colrank(\mx{A})$,通常统一称之为矩阵的,记为 $\rank(\mx{A})$。该定理亦可表示为 $\rank(\mx{A})=\rank(\mx{A}^\T)$。
因此若要找到矩阵 $\mx{A}$ 的列空间基,可先对其转置为 $\mx{A}^\T$,再使用
定理 8.3 得到对应的基。
下面给出一个例子,说明如何找到列空间的基。
例 8.7
由
例 8.4 可得
\begin{equation}
\underbrace{
\left(
\begin{array}{rrrrr|r}
2 & 0 & 1 & -2 & 1 & 0\\
2 & 1 & 5 & 0 & 2 & 0\\
0 & 1 & 4 & 2 & 1 & 0\\
0 & 0 & 0 & 1 & 2 & 0\\
\end{array}
\right)
}_{\mx{A}}
\Leftrightarrow
\underbrace{
\left(
\begin{array}{rrrrr|r}
2 & 0 & 1 & -2 & 1 & 0\\
0 & 1 & 4 & 2 & 1 & 0\\
0 & 0 & 0 & 1 & 2 & 0\\
0 & 0 & 0 & 0 & 0 & 0\\
\end{array}
\right)
}_{\mx{R}}.
\end{equation}
(8.24)
使用
定理 8.3 (第 1 条),我们可以直接从 $\mx{R}$ 中读出作为行空间基的非零行:
\begin{gather}
\begin{pmatrix} 2 & 0 & 1 & -2 & 1 \end{pmatrix} \\
\begin{pmatrix} 0 & 1 & 4 & 2 & 1 \end{pmatrix} \\
\begin{pmatrix} 0 & 0 & 0 & 1 & 2 \end{pmatrix},
\end{gather}
(8.25)
这些即为 $\mx{R}$ 的非零行,因此 $\rank(\mx{A})=3$。
定理 8.3(第 2 条)还告诉我们,$\mx{R}$ 的的一组基向量为
\begin{equation}
\left(\begin{array}{c}
2 \\
0 \\
0 \\
0
\end{array}
\right),
\ \ \
\left(\begin{array}{c}
0 \\
1 \\
0 \\
0
\end{array}
\right),
\ \ \ \textrm{and}\ \ \
\left(\begin{array}{r}
-2 \\
2 \\
1 \\
0
\end{array}
\right),
\end{equation}
(8.26)
也就是说,观察每一行,找到该行的第一个非零元,然后取该元素所在列的列向量作为一组生成向量。
矩阵 $\mx{A}$ 的列空间可通过取与 $\mx{R}$ 的列空间基相同列号的 $\mx{A}$ 中列向量来获得,即:
\begin{equation}
\left(\begin{array}{c}
2 \\
2 \\
0 \\
0
\end{array}
\right),
\ \ \
\left(\begin{array}{c}
0 \\
1 \\
1 \\
0
\end{array}
\right),
\ \ \ \textrm{and}\ \ \
\left(\begin{array}{r}
-2 \\
0 \\
2 \\
1
\end{array}
\right).
\end{equation}
(8.27)
由于上述三个向量张成了该,因此使用列空间也可得到 $\rank(\mx{A})=3$。
这是预期的结果,因为 $\colrank(\mx{A})=\rowrank(\mx{A})$。
定理 8.5:
矩阵的等于对该矩阵进行后出现的主元元素的个数。
矩阵 $\mx{A}$ 的等于对其做高斯消元后得到的约化矩阵 $\mx{R}$ 的的维数。由于 $\mx{R}$ 的行空间基由那些含有主元的行构成,故该维数(也就是秩)等于主元的个数。
$\square$
下面我们给出一个定理,为矩阵乘积的提供一个上界。
定理 8.6:
乘积的秩
矩阵乘积 $\mx{A}=\mx{B}\mx{C}$ 的不超过因子矩阵的秩,即:
\begin{equation}
\rank \mx{A} \leq \rank \mx{C},
\end{equation}
(8.28)
并且
\begin{equation}
\rank \mx{A} \leq \rank \mx{B}.
\end{equation}
(8.29)
证明:
如前所示,积矩阵 $\mx{A}$ 的每一行都是 $\mx{C}$ 的各行的一个 。因此 $\mx{A}$ 的所有行都属于 $\mx{C}$ 的行空间,于是 $\rank\mx{A} \leq \rank\mx{C}$。由此可得乘积的秩不超过其最右因子的秩。
另一条不等式可通过研究 $\mx{A}$ 的行,它们是 $\mx{B}$ 的行的线性组合来证明。或者也可用转置关系 $\mx{A}^T = \mx{C}^T \mx{B}^T$ 来证明:右侧的最右因子为 $\mx{B}^T$,于是 $\rank\mx{A}^T \leq \rank\mx{B}^T$。结合 $\rank\mx{A}=\rank\mx{A}^T$,得到 $\rank\mx{A} \leq \rank\mx{B}$。
$\square$
定理 8.7:
设 $\vc{x}_\mathrm{h}$ 为齐次方程 $\mx{A}\vc{x}=\vc{0}$ 的解,且 $\vc{x}_\mathrm{p}$ 为非齐次方程 $\mx{A}\vc{x}=\vc{y}$ 的一组特解,则方程 $\mx{A}\vc{x}=\vc{y}$ 的通解为
\begin{equation}
\vc{x}_{\mathrm{tot}} = \vc{x}_\mathrm{p} + \vc{x}_\mathrm{h}.
\end{equation}
(8.30)
我们知道 $\mx{A}\vc{x}_\mathrm{h}=\vc{0}$ 且 $\mx{A}\vc{x}_\mathrm{p}=\vc{y}$。
由此可证该定理。
\begin{gather}
\mx{A}\vc{x}_\mathrm{p}=\vc{y} \\
\Longleftrightarrow \\
\mx{A}\vc{x}_\mathrm{p} + \vc{0}=\vc{y} \\
\Longleftrightarrow \\
\mx{A}\vc{x}_\mathrm{p} + \mx{A}\vc{x}_\mathrm{h} =\vc{y} \\
\Longleftrightarrow \\
\mx{A}(\underbrace{\vc{x}_\mathrm{p} + \vc{x}_\mathrm{h}}_{\vc{x}_{\mathrm{tot}}}) =\vc{y}.
\end{gather}
(8.31)
$\square$
现在我们知道 $\vc{x}_h$ 属于矩阵 $\mx{A}$ 的 ,而 $\vc{y}$ 必须属于 $\mx{A}$ 的 ,否则它不能成为方程 $\mx{A}\vc{x}=\vc{y}$ 的解。在
交互式图示 8.3 中,
我们演示了这两类解如何相互作用。
下面的维数定理非常有用:如果你已知 的维数或矩阵的 ,那么(在已知矩阵行数的前提下)就可以求出另一个。
定理 8.8:
维数定理
对于任意 $m\times n$ 矩阵 $\mx{A}$(即有 $n$ 列),成立关系:
\begin{equation}
\rank(\mx{A}) + \nullity(\mx{A}) = n.
\end{equation}
(8.32)
若 $\rank(\mx{A})=n$,则矩阵可逆(行列式非零)。因此齐次方程 $\mx{A}\vc{x}=\vc{0}$ 的唯一解为 $\vc{x}=\vc{0}$,
即 $\nullity(\mx{A})=0$,从而 $\rank(\mx{A})+0=n$,定理在此情形成立。
下面我们假设 $\rank(\mx{A})
示例 8.4 中,自由变量为 $s$ 与 $t$。我们把这些自由变量记作 $s_1,\dots,s_{n-r}$。
因此存在 $n-r$ 个线性无关的零向量,记为 $\vc{x}_1,\dots,\vc{x}_{n-r}$。
如前所述,齐次方程 $\mx{A}\vc{x}=\vc{0}$ 的通解由以下形式给出:
\begin{equation}
\vc{x} = s_1\vc{x}_1 + \dots + s_{n-r}\vc{x}_{n-r}.
\end{equation}
(8.33)
因此,$\vc{x}_1,\dots,\vc{x}_{n-r}$ 构成了该矩阵零空间的一组 ,
故 $\nullity(\mx{A}) = n-r$,从而证得该定理。
$\square$
回顾一下,$\nullity(\mx{A})$ 表示描述齐次线性系统
解 $\mx{A}\vc{x}=\vc{0}$ 所需的参数个数,而 $\rank(\mx{A})$ 则表示当 $\mx{A}\vc{x}=\vc{y}$ 有解时,右端向量 $\vc{y}$ 中线性无关的个数。
最后,这两个数之和等于 $n$,也就是矩阵 $\mx{A}$ 的列数。
示例 8.8:
维数定理
在
示例 8.4 与
示例 8.7 中,
我们考虑了一个 $4\times 5$ 的矩阵 $\mx{A}$,即 $m=4$ 且 $n=5$。我们首先观察到
\begin{equation}
\nullity(\mx{A}) = 2
\end{equation}
(8.34)
然后得到
\begin{equation}
\rank(\mx{A}) = 3.
\end{equation}
(8.35)
定理
8.8(维数定理) 说明 $2+3=n$,其中 $n$ 为矩阵的列数。可见该式在矩阵的列数为 5 时成立。
注意,矩阵 $\mx{A}$ 可以被看作一种变换或
(参见
第 9 章 ),
且 $n$ 是 $\mx{A}$ 的定义域()的维数。
由此,$\rank(\mx{A})$ 可视为经过 $\mx{A}$ 变换后“保留下来”的维数,而 $\nullity(\mx{A})$ 则是被 $\mx{A}$ 压缩掉的维数。
例 8.9:
点到平面的正交投影 — 复习
在
例 3.10 中,点 $P$ 被投影到由 所定义的平面上,该平面由 $\vc{n}$
和平面上的一点 $S$ 所确定,在本例中我们假定 $S$ 为原点 $O$。
我们得到点 $P$ 在该 上的正交投影可以表示为
\begin{equation}
Q = P - \proj{\vc{n}}{\vc{v}},
\end{equation}
(8.36)
这里 $Q$ 为投影点,$\vc{v}=P-O$。
正交投影的公式(参见
定义 3.2 )为
$\proj{\vc{n}}{\vc{v}} = \left(\dfrac{\vc{v} \cdot \vc{n}}{\vc{n} \cdot \vc{n}}\right) \vc{n}$。
因此,点 $Q$ 的表达式可以重写为
\begin{equation}
Q = P - \frac{\vc{v} \cdot \vc{n}}{\vc{n} \cdot \vc{n}} \vc{n}.
\end{equation}
(8.37)
为了用矩阵进行运算,我们需要使用向量而不是点,因此引入
$\vc{q} = \overrightarrow{OQ}$,而我们已有
$\vc{v} = \overrightarrow{OP}$。
由此得到
\begin{align}
\vc{q} &= \vc{v} - \frac{\vc{v} \cdot \vc{n}}{\vc{n} \cdot \vc{n}} \vc{n} \\
&=
\frac{1}{f}
\begin{pmatrix}
fv_x - n_x n_x v_x - n_x n_y v_y - n_x n_z v_z\\
fv_y - n_y n_x v_x - n_y n_y v_y - n_y n_z v_z\\
fv_z - n_z n_x v_x - n_z n_y v_y - n_z n_z v_z
\end{pmatrix},
\end{align}
(8.38)
其中 $f = \ln{\vc{n}}^2 = \vc{n} \cdot \vc{n}$。有趣的是,这可以表示为矩阵与向量的乘法
\begin{align}
\vc{q} &=
\underbrace{
\frac{1}{f}
\begin{pmatrix}
f - n_x^2 & - n_x n_y & - n_x n_z \\
- n_y n_x & f - n_y^2 & - n_y n_z \\
- n_z n_x & - n_z n_y & f - n_z^2
\end{pmatrix}
}_{\mx{A}}
\underbrace{
\begin{pmatrix}
v_x \\
v_y \\
v_z
\end{pmatrix}
}_{\vc{v}}
= \mx{A}\vc{v}.
\end{align}
(8.39)
定义域的维数为 3,因为输入为三维向量($\R^3$)。
由于只有位于该 内的向量被“保留”,因此我们立刻得到 $\rank(\mx{A})=2$,进而 $\nullity(\mx{A})=1$。
下面我们来研究矩阵 $\mx{A}$ 的 。由第
8.2 节 可知,
可以通过对方程 $\mx{A}\vc{x}=\vc{0}$ 施以 来计算零空间的维数(零维数)。不失一般性,
我们可以假设 $\vc{n}=(0,0,1)$,即 $f=1$,并且 $S=O=(0,0,0)$。
由此得到
\begin{equation}
\left(
\begin{array}{rrr|r}
1 & 0 & 0 & 0 \\
0 & 1 & 0 & 0 \\
0 & 0 & 0 & 0
\end{array}
\right),
\end{equation}
(8.40)
也就是说,结果已经处于 ,由于最后一行全为零,因此 $\rank(\mx{A})=2$。
我们可以设 $p_z=t$,其中 $t\in\R$。这不会影响前两行,因此零空间由 $(0,0,t)$ 张成,即 $\nullity(\mx{A})=1$。
这与法向量 $\vc{n}=(0,0,1)$ 一致:矩阵 $\mx{A}$ 将所有向量塌缩到平面 $z=0$。
矩阵的列空间基向量为第一列与第二列向量,即:
\begin{gather}
\vc{b}_1 =
\begin{pmatrix}
1\\
0\\
0
\end{pmatrix}
\ \ \ \mathrm{and}\ \ \
\vc{b}_2 =
\begin{pmatrix}
0\\
1\\
0
\end{pmatrix}.
\end{gather}
(8.41)
因此, 是由下列向量所描述的所有向量组成的集合:
\begin{equation}
\vc{q} = u\vc{b}_1 + v\vc{b}_2 =
\begin{pmatrix}
u\\
v\\
0
\end{pmatrix},
\end{equation}
(8.42)
其中 $u\in\R$ 且 $v\in\R$,这也意味着 $\rank(\mx{A})=2$。
最后我们注意到
定理 8.8 说明 $\rank(\mx{A}) + \nullity(\mx{A}) = n$,在本例中确实成立,因为 $2+1=3$。
例 8.10:
下面给出另一个示例,展示如何计算矩阵的 、 等。我们从下面的矩阵开始:
例如下面的一个 $4\times 6$ 矩阵 $\mx{A}$:
\begin{equation}
\mx{A}=
\left(
\begin{array}{rrrrrr}
1 & 1 & 1 & 1 & 1 & 1 \\
1 & 1 & 1 & 0 & 1 & 0 \\
1 & 1 & -1 & 0 & -1 & 2 \\
1 & 1 & 1 & 0 & 1 & 2 \\
\end{array}
\right).
\end{equation}
(8.43)
我们将对矩阵施以 ,以将矩阵化为行阶梯形()。
首先,对第 2、3、4 行,将顶行减去各自的行,得到:
\begin{equation}
\left(
\begin{array}{rrrrrr}
1 & 1 & 1 & 1 & 1 & 1 \\
0 & 0 & 0 & 1 & 0 & 1 \\
0 & 0 & 2 & 1 & 2 & -1 \\
0 & 0 & 0 & 1 & 0 & -1 \\
\end{array}
\right).
\end{equation}
(8.44)
下一步是用第 2 行减去第 4 行,并将结果放入第 4 行,得到
\begin{equation}
\left(
\begin{array}{rrrrrr}
1 & 1 & 1 & 1 & 1 & 1 \\
0 & 0 & 0 & 1 & 0 & 1 \\
0 & 0 & 2 & 1 & 2 & -1 \\
0 & 0 & 0 & 0 & 0 & 2 \\
\end{array}
\right).
\end{equation}
(8.45)
最后一步,我们交换第 2 行与第 3 行的位置,得到一个行阶梯形矩阵(),即:
\begin{equation}
\mx{R}=
\left(
\begin{array}{rrrrrr}
1 & 1 & 1 & 1 & 1 & 1 \\
0 & 0 & 2 & 1 & 2 & -1 \\
0 & 0 & 0 & 1 & 0 & 1 \\
0 & 0 & 0 & 0 & 0 & 2 \\
\end{array}
\right),
\end{equation}
(8.46)
接着将其代入 $\mx{R}\vc{x}=\vc{0}$。
从最下面一行我们立刻得到 $2 x_6 = 0$,即 $x_6=0$。
利用第 3 行可得 $x_4+x_6=0$,即 $x_4=0$。
第 2 行给出 $2x_3 + 0 + 2x_5 + 0 = 0$,即 $x_3+x_5=0$。
因此,设 $x_5=t$,得到 $x_3=-t$。
最顶行表示 $x_1 + x_2 + x_3 + x_4 + x_5 + x_6 = x_1+x_2 -t + 0 +t +0 =0$,即 $x_1+x_2=0$。
这一次我们令 $x_2=s$,因此 $x_1 = -s$。
综上,齐次方程组()$\mx{A}\vc{x}=\vc{0}$ 的解为:
\begin{equation}
\vc{x}_h=
\left(
\begin{array}{r}
-s \\
s \\
-t \\
0 \\
t \\
0
\end{array}
\right)
=
s
\underbrace{
\left(
\begin{array}{r}
-1 \\
1 \\
0 \\
0 \\
0 \\
0
\end{array}
\right)}_{\vc{z}^1}
+
t
\underbrace{
\left(
\begin{array}{r}
0 \\
0 \\
-1 \\
0 \\
1 \\
0
\end{array}
\right)}_{\vc{z}^2}.
\end{equation}
(8.47)
这意味着 $\nullity(\mx{A})=2$,因为该表达式中有两个变量($s$ 和 $t$)。
零向量为 $\vc{z}^1$ 和 $\vc{z}^2$。
由于 $n=6$ 且 $\nullity(\mx{A})=2$,因此 $\rank(\mx{A})= 6-2=4$。
跨越行空间的 是 $\mx{R}$ 的四个行向量,同时也是 $\mx{A}$ 的行向量,因为 不改变 。
张成列空间的 的索引在 $\mx{R}$ 中已被识别,
即第 1、3、4 和 6 列,因为这些列在相应的位置上包含首个非零元。
因此,张成列空间的列向量就是 $\mx{A}$ 中编号为 1、3、4 和 6 的那些列向量。
注意 $\mx{A}\vc{z}^1=\vc{0}$ 和 $\mx{A}\vc{z}^2=\vc{0}$(可通过矩阵-向量相乘验证)。
最后,如果我们有线性系统 $\mx{A}\vc{x}=\vc{b}$,那么解 $\vc{x}$ 将位于 $\mx{A}$ 的行空间中。
在
第7章 中,我们介绍了计算方阵行列式的不同方法。
利用(见
定义 7.8 ),也可以求出矩阵的,如下定理所述。
定理 8.9:
矩阵 $\mx{A}$(大小 $m\times n$)的是最大的整数 $r$,使得存在某个 $r\times r$ 的
不为 $0$。
证明分为两部分:首先证明矩阵的至少为 $r$,其次证明其至多为 $r$,从而完成证明。
$i)$
设 $\mx{S}$ 为某个 $r\times r$ 子矩阵,其行列式记为 $d$,且 $d\neq 0$,即 $d=|\mx{S}|\neq 0$。
如所周知,这样的余子式可以通过删去 $m-r$ 行和 $n-r$ 列得到。
令 $\mx{B}$ 为由未被删去的行组成的矩阵,因此 $\mx{B}$ 由 $\mx{A}$ 的这 $r$ 行构成,且 $\mx{S}$ 的元素也包含于 $\mx{B}$ 中。
换言之,余子式 $d$ 也可以通过从 $\mx{B}$ 中再去掉若干列得到。由于 $d\neq 0$,$\mx{S}$ 的列必然是线性无关的。
因此,$\mx{B}$ 中至少有 $r$ 个线性无关的列向量,故 $\mx{B}$ 的秩至少为 $r$。
然而,$\mx{B}$ 只有 $r$ 行,因此其 必须恰好为 $r$,并且 $\mx{B}$ 的
必须是 的。
因此,$\mx{A}$ 至少也要有 $r$ 个 的 ,
即 $\rank(\mx{A})\ge r$。
$ii)$
此步骤的目的是证明 $\mx{A}$ 的至多为 $r$。
设 $\mx{A}$ 具有 $t$ 个 的行。
取由这些行构成的矩阵 $\mx{C}$,则 $\mx{C}$ 的秩为 $t$,这意味着 $\mx{C}$ 中也存在 $t$ 个 的列。
接着通过去掉其它列来保留这 $t$ 列,得到一个 $t\times t$ 的矩阵,其行列式不为零,因为这些列线性无关。该 同时也是 $\mx{A}$ 的一个余子式。
因此,若 $\mx{A}$ 的秩大于 $r$,将导致存在超过 $r$ 个线性无关的行,与假设矛盾。
$\square$
由
定理 8.9 与
定理 7.8 可知(后者说明仅当行列式非零时矩阵才有逆),
若方阵 $n\times n$ 的矩阵 $\mx{A}$ 可逆,那么其秩必为 $n$,即 $\rank(\mx{A})=n$。
例 8.11:
假设我们要计算下面这个 $4\times 4$ 矩阵的 ,
\begin{equation}
\mx{A} =
\left(
\begin{array}{rrrr}
1 & 1 & 1 & 0 \\
1 & 0 & 1 & 1 \\
0 & 2 & 1 & -2 \\
1 & 2 & 2 & -1 \\
\end{array}
\right).
\end{equation}
(8.48)
矩阵 $\mx{A}$ 的行列式为零(留作练习),因此其 小于 4。
接下来我们计算其中一个 $3\times 3$ 的 ,例如:
\begin{equation}
D_{11} =
\left|
\begin{array}{rrr}
0 & 1 & 1 \\
2 & 1 & -2 \\
2 & 2 & -1 \\
\end{array}
\right| = 0,
\end{equation}
(8.49)
由于 $D_{11}=0$,我们并未获得新的信息,事实证明
$D_{12}=D_{13}=D_{14}=0$。
然而,若继续去掉第二行与第一列,我们得到
\begin{equation}
D_{21} =
\left|
\begin{array}{rrr}
1 & 1 & 0 \\
2 & 1 & -2 \\
2 & 2 & -1 \\
\end{array}
\right| = 1,
\end{equation}
(8.50)
因为至少存在一个 $3\times 3$ 的 非零(本例中 $D_{21}\neq 0$),
我们可得 $\rank(\mx{A})=3$。结合已知的 $4\times 4$ 行列式为 0(见
定理 8.9 ),该结论成立。
例 8.12:
声音结构问题
在
交互式图示 8.2 中,我们研究了如何从测得的声音数据确定声源位置和麦克风位置。在该情形下,信号处理方法可以用于获得所谓的到达时间差测量值。为简化叙述,我们在此改为讨论到达时间问题的等价表述。
在本例中,我们有 $m=8$ 个麦克风。记 $\vc{r}_i$($i=1,\dots,m$)为这 8 个麦克风的三维位置的列向量表示。我们在若干时间点 $t_1,\dots,t_n$ 处记录声音,令 $\vc{s}_j$($j=1,\dots,n$)为声音在这些时间点发射时的三维位置坐标。
假设我们测量了每个麦克风在每个时间点的到达时间差 $t_{ij}$(发射与接收的时间差)。将其乘以声速 $v$ 后,可以得到测得的距离值
\begin{equation}
d_{ij} = v t_{ij} = {\ln{\mathbf{r}_i - \mathbf{s}_j}}.
\end{equation}
(8.51)
现在的问题是如何从测得的距离 $d_{ij}$ 中恢复出 $\vc{r}_i$ 和 $\vc{s}_j$。
对测量方程
(8.51) 两边平方,
\begin{equation}
d_{ij}^2= ( \mathbf{r}_{i} - \mathbf{s}_{j} )^T ( \mathbf{r}_{i} - \mathbf{s}_{j} ) = \mathbf{r}_{i}^T\mathbf{r}_{i} + \mathbf{s}_{j} ^T\mathbf{s}_{j} - 2 \mathbf{r}_{i}^T \mathbf{s}_{j}
\end{equation}
(8.52)
可得到关于未知量的一组 $mn$ 个多项式方程。
下面定义所谓的压缩矩阵 $\mathbf{B}$:
\begin{equation}
\mathbf{B}=
\begin{pmatrix}
\frac{d_{22}^2 - d_{21}^2 - d_{12}^2 + d_{11}^2}{-2} &\dots& \frac{d_{2n}^2 - d_{21}^2 - d_{1n}^2 + d_{11}^2}{-2} \\
\vdots &\ddots& \vdots \\
\frac{d_{m2}^2 - d_{21}^2 - d_{12}^2 + d_{11}^2}{-2} &\dots& \frac{d_{2n}^2 - d_{21}^2 - d_{1n}^2 + d_{11}^2}{-2}
\end{pmatrix}
\end{equation}
(8.53)
因此,$\mathbf{B}$ 的 最多为 3,下面将解释原因。
令
\begin{equation}
\mathbf{q}_i = \left[ \begin{matrix} (\mathbf{r}_{i} - \mathbf{r}_1) \end{matrix} \right]
\end{equation}
(8.54)
并且
\begin{equation}
\mathbf{t}_j = \left[ \begin{matrix} ( \mathbf{s}_{j} - \mathbf{s}_1) \end{matrix} \right]
\end{equation}
(8.55)
作为相对于第一个接收器位置的其余接收器位置的相对向量,以及作为相对于第一个发射器位置的其余发射器位置的相对向量。
把这些向量分别作为矩阵 $\mathbf{R}$ 和 $\mathbf{S}$ 的,于是得到:
\begin{equation}
\mathbf{R}= \left[ \begin{matrix} \mathbf{q}_2 \ldots \mathbf{q}_m \end{matrix} \right]
\end{equation}
(8.56)
并且
\begin{equation}
\mathbf{S}= \left[ \begin{matrix} \mathbf{t}_2 \ldots \mathbf{t}_n \end{matrix} \right] .
\end{equation}
(8.57)
以此方式,$(m-1)(n-1)$ 的压缩矩阵约束可以写成
\begin{equation}
\mathbf{B} = \mathbf{R}^\T \mathbf{S},
\end{equation}
(8.58)
这里我们看到矩阵 $\mathbf{R}^\T$ 有三列,因此该矩阵的 至多为 3。类似地,
$\mathbf{S}$ 有三行,因此其 也至多为 3。
根据 定理 8.6 ,我们知道 $\mathbf{B}$ 的 不超过 $\mathbf{R}$ 与 $\mathbf{S}$ 的 中的较小者。
因此 $\mathbf{B}$ 的 至多为 3。
在上一例中,我们发现可以通过测量得到一个矩阵 $\mathbf{B}$,并且它与我们要估计的参数满足关系 $\mathbf{B} = \mathbf{R}^\T \mathbf{S}$。
如何从 $\mathbf{B}$ 计算出 $\mathbf{R}$ 和 $\mathbf{S}$?换言之,如何将矩阵 $\mathbf{B}$ 分解为两个因子 $\mathbf{R}$ 与 $\mathbf{S}$ 的乘积?
这属于矩阵分解的话题,在许多应用中非常有用,但遗憾地超出本书讨论范围。
提示:
设 $\mx{A}= \left(\vc{a}_{,1} \vc{a}_{,2} \dots \vc{a}_{,n}\right)$ 为一个 $m\times n$ 矩阵。
矩阵 $\mx{A}$ 的列空间 是由其列向量 $\vc{a}_{,i}$ 的所有线性组合构成的集合。
提示:
一个 $n$ 维列向量 $\vc{v}$ 关于某个表示为一列由 $n$ 个标量组成的向量。
向量的分量有时记为 $v_1, v_2, \dots, v_n$。对于二维或三维向量,有时也使用 $v_x, v_y, v_z$。
记法如下:
\begin{equation}
\underbrace{
\vc{u} =
\begin{pmatrix}
u_x
\end{pmatrix}
=
\begin{pmatrix}
u_1
\end{pmatrix}}_{\text{1D vector}},
\spc\spc
\underbrace{
\vc{v} =
\begin{pmatrix}
v_x \\
v_y
\end{pmatrix}
=
\begin{pmatrix}
v_1 \\
v_2
\end{pmatrix}}_{\text{2D vector}},
\spc\spc
\underbrace{
\vc{w} =
\begin{pmatrix}
w_x \\
w_y \\
w_z
\end{pmatrix}
=
\begin{pmatrix}
w_1 \\
w_2 \\
w_3
\end{pmatrix}}_{\text{3D vector}},
\end{equation}
其中 $\vc{u} = u_x \vc{e}_1$,$\vc{v} = v_x \vc{e}_1 + v_y \vc{e}_2$,
和 $\vc{w} = w_x \vc{e}_1 + w_y \vc{e}_2 + w_z \vc{e}_3$。
注意 $\vc{e}_i$ 是 。
在本文中,我们也使用简写表示法 $\vc{w} = \bigl(w_1,w_2,w_3\bigr)$,其含义与上文相同(向量元素之间用逗号分隔)。
行向量则不使用逗号分隔。
提示:
映射 $F$ 是一个规则,写作 $F: N \rightarrow M$,
对于集合 $N$ 中的每个元素,映射 $F$ 在集合 $M$ 中指定一个相应的元素。这里 $N$ 是定义域(domain)。