Dark Dwarf Blog background

向量空间

向量空间

1. 向量空间

a.a. 定义

向量空间的定义如下:一个向量空间是一个由“向量”组成的集合,在这个集合中,我们进行如下运算:

  1. 向量加法:空间内的任意两个向量相加,结果仍然在这个空间内。
  2. 标量乘法:空间内的任意一个向量乘以一个实数(标量),结果仍然在这个空间内。

这里的 “结果仍然在这个空间内” 被称为封闭性。

这里的“向量”是一个广义的概念。任何满足向量空间运算规则的对象都可以被称为向量。

一个检验某个东西是否为向量空间的简便方法是看它包不包含零向量。因为当标量乘法的标量为 0 时返回的就是零向量。

b.b. 子空间

一个向量空间 SS 如果位于另一个更大的向量空间 VV 内部,那么 SS 就被称为 VV 的一个子空间。子空间本身也必须是一个完整的向量空间

2. 列空间

a.a. 定义

对于一个取自向量空间 VV 的向量集合 SSSS 的张成空间是由 SS 中向量的所有有限线性组合构成的集合:

span(S)={k=1mαksk:  mN,  skS,  αkR}.\operatorname{span}(S)=\left\{\sum_{k=1}^m \alpha_k s_k:\; m\in\mathbb{N},\; s_k\in S,\; \alpha_k\in\mathbb{R}\right\}.

容易证明列空间是一个子空间。

b.b. 矩阵的列空间

一个矩阵 AA 的列空间是由 AA 的所有列向量的线性组合构成的集合,记作 C(A)C(A)

C(A)=span{a1,,an}={Aw:  wRn}.C(A)=\operatorname{span}\{a_1,\dots,a_n\}=\{A w:\; w\in\mathbb{R}^n\}.

这与解线性方程组 Ax=bAx=b 的形式是一样的,于是解 Ax=bAx=b 的问题转化成了 bb 是否落在列空间中,有:

Ax=b has a solution bC(A).Ax=b \text{ has a solution } \Leftrightarrow \,\, b\in C(A).

3. 零空间

a.a. 定义

矩阵 AA 的零空间 N(A)N(A) 是所有满足方程 Ax=0Ax = 0 的解向量 xx 所构成的集合:

N(A)={xRn:  Ax=0}.N(A)=\{\,x\in\mathbb{R}^n:\;A x=0\,\}.

容易证明零空间也是一个子空间。

注意:零空间和列空间的位置是不一样的,对于 m×nm \times n 矩阵:

  • 解向量 xxnn 个分量,零空间 N(A)N(A)Rn\mathbb{R}^n 的一个子空间。
  • 列向量有 mm 个分量,列空间 C(A)C(A)Rm\mathbb{R}^m 的一个子空间。

b.b. 零空间的描述方法

描述零空间的方法是找出零空间的基向量,我们称之为特殊解(Special Solutions)。零空间中的任何一个解,都可以表示为这些特殊解的线性组合。例如下面的方程:

A=[123],Ax=0x+2y+3z=0.A=\begin{bmatrix}1&2&3\end{bmatrix},\quad Ax=0\Leftrightarrow x+2y+3z=0.

的解可以写成下面的形式:

s1=[210],s2=[301],s_1=\begin{bmatrix}-2\\[4pt]1\\[4pt]0\end{bmatrix},\qquad s_2=\begin{bmatrix}-3\\[4pt]0\\[4pt]1\end{bmatrix},

从而 AA 的零空间为:

N(A)=span{s1,s2},N(A)=\operatorname{span}\{s_1,s_2\},

c.c. 特殊解计算的详细步骤

特殊解的计算步骤如下:

  1. 对矩阵 AA 进行消元,得到它的行简化阶梯形矩阵(Reduced Row Echelon Form, RREF)RR
  2. RR 中,找到主元列自由列。对应的变量就是主元变量和自由变量。
  3. 有几个自由列,就有几个特殊解。每次将一个自由变量设为 1,其他自由变量设为 0,然后解出所有主元变量即可。

我们以下面的矩阵为例,详细讲讲怎么计算矩阵的特殊解。给定矩阵

A=[12352481236713].A=\begin{bmatrix} 1 & 2 & 3 & 5\\[4pt] 2 & 4 & 8 & 12\\[4pt] 3 & 6 & 7 & 13 \end{bmatrix}.

首先进行消元如下:

A=[123500220022]REF=[123500220000]RREF(A)=[120200110000].\begin{aligned} A &= \begin{bmatrix} 1 & 2 & 3 & 5\\[4pt] 0 & 0 & 2 & 2\\[4pt] 0 & 0 & -2 & -2 \end{bmatrix} \quad\longrightarrow\quad \mathrm{REF}=\begin{bmatrix} 1 & 2 & 3 & 5\\[4pt] 0 & 0 & 2 & 2\\[4pt] 0 & 0 & 0 & 0 \end{bmatrix}\\[6pt] &\quad\longrightarrow\quad \operatorname{RREF}(A)=\begin{bmatrix} 1 & 2 & 0 & 2\\[4pt] 0 & 0 & 1 & 1\\[4pt] 0 & 0 & 0 & 0 \end{bmatrix}. \end{aligned}

然后找出 RR 的主元。主元位于第 1 列与第 3 列,因此:

  • 主元变量为 x1x_1x3x_3
  • 自由变量为 x2x_2x4x_4

我们为每个自由变量构造一个特殊解。对 Rx=0Rx=0 对应的方程组:

{x1+2x2+0x3+2x4=0,0x1+0x2+x3+x4=0.\begin{cases} x_1 + 2x_2 + 0\cdot x_3 + 2x_4 = 0,\\[4pt] 0\cdot x_1 + 0\cdot x_2 + x_3 + x_4 = 0. \end{cases}

x2=1,  x4=0x_2=1,\;x_4=0,得到第一个特殊解:

s1=[2100].s_1=\begin{bmatrix}-2\\[4pt]1\\[4pt]0\\[4pt]0\end{bmatrix}.

x4=1,  x2=0x_4=1,\;x_2=0,得到第二个特殊解:

s2=[2011].s_2=\begin{bmatrix}-2\\[4pt]0\\[4pt]-1\\[4pt]1\end{bmatrix}.

于是 AA 的零空间就可以由这两个特殊解张成:

N(A)=span{s1,s2}={c1[2100]+c2[2011]:  c1,c2R}.N(A)=\operatorname{span}\{s_1,s_2\} =\left\{c_1\begin{bmatrix}-2\\[4pt]1\\[4pt]0\\[4pt]0\end{bmatrix} +c_2\begin{bmatrix}-2\\[4pt]0\\[4pt]-1\\[4pt]1\end{bmatrix}:\;c_1,c_2\in\mathbb{R}\right\}.

d.d. 对 RREF 的进一步探讨

我们可以将 RREF 矩阵 RR 写成如下分块形式:

R=[IrF00],R=\begin{bmatrix}I_r & F\\[4pt]0 & 0\end{bmatrix},

其中 IrI_r 是主元列所在的 r×rr\times r 单位矩阵,FF 是对应的 r×(nr)r\times (n−r) 矩阵,下方若有零行则为零。

更准确地说,应该按列把矩阵分成“主元列集合”和“自由列集合”,写成列并排的形式:

R=[  Cpiv    Cfree  ],R=[\;C_{\text{piv}}\;\mid\;C_{\text{free}}\;],

然后我们可以用如下的方法快速构造特殊解向量:若 x=(xpiv,xfree)Tx=(x_{\text{piv}},x_{\text{free}})^T,由 Rx=0Rx=0 有:

xpiv+Fxfree=0xpiv=Fxfree.x_{\text{piv}} + F\,x_{\text{free}}=0\Rightarrow x_{\text{piv}} = -F\,x_{\text{free}}.

只需F-F 的列填入主元行,自己在自由位取 11

例如对下面的矩阵:

R=[10480111],R=\begin{bmatrix}1&0&4&8\\[4pt]0&1&-1&-1\end{bmatrix},

F=[4811]F=\begin{bmatrix}4&8\\-1&-1\end{bmatrix}。主元行为 1、2,则特殊解为:

s1=[4110],s2=[8101],s_1=\begin{bmatrix}-4\\[4pt]1\\[4pt]1\\[4pt]0\end{bmatrix},\qquad s_2=\begin{bmatrix}-8\\[4pt]1\\[4pt]0\\[4pt]1\end{bmatrix},

4. 矩阵的秩

a.a. 定义与性质

矩阵的大小由它的行数 mm 和列数 nn 决定,但这并不代表一个线性系统的“真实大小”。例如,一个 0=0 的方程是无效信息,一个重复的方程也应该被去掉。由此,我们引出秩的概念。

一个矩阵 AA 的秩 rr(Rank)是 AA 在经过行消元后,主元(pivot)的数量。等价的描述还有:

  • RREF中非零行的数量
  • 主元列的数量

例如下面的矩阵的秩为 2:

A=[112412251326]R=RREF(A)=[102301010000].A=\begin{bmatrix}1&1&2&4\\[4pt]1&2&2&5\\[4pt]1&3&2&6\end{bmatrix} \rightarrow R=\operatorname{RREF}(A)=\begin{bmatrix}1&0&2&3\\[4pt]0&1&0&1\\[4pt]0&0&0&0\end{bmatrix}.

秩告诉我们矩阵中真正独立的信息量

秩与自由列、特殊解有如下特殊关系:

  • 若矩阵 AAnn 列且秩为 rr,则其自由列的数量与特殊解的数量均为 nrn-r

b.b. 秩一矩阵

秩为 1 的矩阵结构非常特殊和简单:它只有一个主元。消元后,只有第一行是非零行,其他所有行都会变成全零。这意味着每一行都是主元行的倍数。同时,每一列也都是主元列的倍数。

因此,任意一个秩一矩阵都可以被写成下面的形式:

A=uvT,A = uv^T,

其中 uuvv 为列向量。

例如:

A=[131026203930]=[123][1310]=uvT.A=\begin{bmatrix}1&3&10\\[4pt]2&6&20\\[4pt]3&9&30\end{bmatrix} =\begin{bmatrix}1\\[4pt]2\\[4pt]3\end{bmatrix} \begin{bmatrix}1&3&10\end{bmatrix}=uv^T.

由外积的几何定义,可以从几何角度理解如上表达式:

  • AA 的列空间 C(A)C(A) 是一条直线,方向为 uu
  • AA 的行空间是一条直线,方向为 vv
  • AA 的零空间 N(A)={x:  vTx=0}N(A)= \lbrace x:\;v^T x=0 \rbrace 是与 vv 正交的超平面。

c.c. 对消元过程的进一步理解

根据秩中引入的“矩阵有效信息”概念,我们可以将对矩阵的高斯消元与高斯——若尔当消元理解成对矩阵列/行是否带来新信息的判断

  • 关于列:第 jj 列是否为之前列的线性组合?
    • 若该列在消元后出现主元,则“不是”,该列是主元列(提供了新的信息)。
    • 若无主元,则“是”,该列为自由列(冗余,没有提供新的信息)。
  • 关于行:第 ii 行是否为之前行的线性组合?
    • 若该行在消元后非零(含主元),则它提供新信息;若变为全零,则该行是其他行的线性组合。

AUA\to U(高斯消元)的操作让我们能够识别哪些列是主元列、哪些是自由列;而从 URU\to R(高斯—若尔当消元)则把这种关系量化:RR 明确给出每个自由列相对于主元列的线性组合系数。