3 线性方程组
3.1 逆变换与逆矩阵
若向量
v
\boldsymbol{v}
v经过
A
\boldsymbol{A}
A变换后可以经过另一种变换
B
\boldsymbol{B}
B还原,则称
A
\boldsymbol{A}
A变换是可逆的。
例如,矩阵
A
=
[
0
−
1
1
0
]
\boldsymbol{A}=\left[ \begin{matrix} 0& -1\\ 1& 0\\ \end{matrix} \right]
A=[01−10]表示逆时针旋转
90
°
90\degree
90°的变换,则
A
\boldsymbol{A}
A的逆变换就是顺时针旋转
90
°
90\degree
90°,即:
B
=
[
0
1
−
1
0
]
\boldsymbol{B}=\left[ \begin{matrix} 0& 1\\ -1& 0\\ \end{matrix} \right]
B=[0−110]。
即:矩阵
B
\boldsymbol{B}
B是矩阵
A
\boldsymbol{A}
A的逆矩阵。
显然,逆矩阵与自身的乘积是单位矩阵:
A
−
1
A
=
E
\boldsymbol{A}^{-1}\boldsymbol{A}=\boldsymbol{E}
A−1A=E可以理解为什么都不做。
像
A
\boldsymbol{A}
A变换这样的变换称为恒等变换。
若
A
\boldsymbol{A}
A变换降低了空间的维度,此时
det
(
A
)
=
0
\det \left( \boldsymbol{A} \right) =0
det(A)=0,我们称
A
\boldsymbol{A}
A变换为不可逆变换。例如一个变换将一个平面压缩成一条直线,此时就没有逆变换,因为不能将一条直线解压缩成一个平面。否则就会映射出多个向量,但函数只能将一个输入变成一个输出,变换也是如此。
线性变换只存在等维变换
和降维变换
,不可能升高空间的维度。在平面内的两个任意向量的任意线性组合都不可能表示成一个与它们不共面的向量
,即使是在三维空间中,也不存在升维的线性变换。
矩阵的逆存在,当且仅当矩阵的行列式不为零,或者说,变换矩阵是可逆变换。
3.2 非齐次线性方程组的求解
假设有线性方程组:
{
2
x
+
5
y
+
3
z
=
−
3
4
x
+
0
y
+
8
z
=
0
1
x
+
3
y
+
0
z
=
2
\left\{ \begin{aligned} 2x+5y+3z&=-3\\ 4x+0y+8z&=0\\ 1x+3y+0z&=2\\ \end{aligned} \right.
⎩
⎨
⎧2x+5y+3z4x+0y+8z1x+3y+0z=−3=0=2
可以将其写成矩阵向量乘积的形式:
[
2
5
3
4
0
8
1
3
0
]
[
x
y
z
]
=
[
−
3
0
2
]
\left[ \begin{matrix} 2& 5& 3\\ 4& 0& 8\\ 1& 3& 0\\ \end{matrix} \right] \left[ \begin{array}{c} x\\ y\\ z\\ \end{array} \right] =\left[ \begin{array}{c} -3\\ 0\\ 2\\ \end{array} \right]
241503380
xyz
=
−302
即:
A
x
=
v
\boldsymbol{Ax}=\boldsymbol{v}
Ax=v由于矩阵
A
\boldsymbol{A}
A代表一种线性变换,所以求解方程组
实质(几何意义)是寻找一个向量
x
\boldsymbol{x}
x使它经过
A
\boldsymbol{A}
A变换后与向量
v
\boldsymbol{v}
v重合。
要求解向量
x
\boldsymbol{x}
x,则反过来,从向量
v
\boldsymbol{v}
v逆变换到向量
x
\boldsymbol{x}
x。
对于方程
A
x
=
v
\boldsymbol{Ax}=\boldsymbol{v}
Ax=v,当
det
(
A
)
≠
0
\det \left( \boldsymbol{A} \right) \ne 0
det(A)=0时,左乘
A
−
1
\boldsymbol{A}^{-1}
A−1得:
A
−
1
A
x
=
A
−
1
v
\boldsymbol{A}^{-1}\boldsymbol{Ax}=\boldsymbol{A}^{-1}\boldsymbol{v}
A−1Ax=A−1v由于
A
−
1
A
\boldsymbol{A}^{-1}\boldsymbol{A}
A−1A是恒等变换,就有
x
=
A
−
1
v
\boldsymbol{x}=\boldsymbol{A}^{-1}\boldsymbol{v}
x=A−1v因此,求解向量
x
\boldsymbol{x}
x,可以对向量
v
\boldsymbol{v}
v进行
A
\boldsymbol{A}
A的逆变换。
对于方程
A
x
=
v
\boldsymbol{Ax}=\boldsymbol{v}
Ax=v,如果
det
(
A
)
≠
0
\det \left( \boldsymbol{A} \right) \ne 0
det(A)=0,则
A
\boldsymbol{A}
A变换不会改变空间维度,因此有且仅有一个向量
x
\boldsymbol{x}
x经过
A
\boldsymbol{A}
A变换后与向量
v
\boldsymbol{v}
v重合,即方程有唯一解
。
当
det
(
A
)
=
0
\det \left( \boldsymbol{A} \right) =0
det(A)=0时,
A
\boldsymbol{A}
A变换会将空间压缩到更低维度,此时必然出现多个向量压缩后重合
的现象,因此没有逆变换,因为不能将一条直线解压缩成一个平面。
但方程仍然可能有解。例如,
A
\boldsymbol{A}
A变换将三维空间压缩成一个二维平面,而向量
v
\boldsymbol{v}
v刚好处于这个平面上,能在空间压缩后与向量
v
\boldsymbol{v}
v重合的向量
x
\boldsymbol{x}
x有无数个,所以此时方程有无穷多解
。如果
A
\boldsymbol{A}
A变换将空间压缩成一条直线,而向量
v
\boldsymbol{v}
v刚好处于这条直线上,此时,会有更多的空间向量
x
\boldsymbol{x}
x压缩后能与向量
v
\boldsymbol{v}
v重合,而这些向量向量
x
\boldsymbol{x}
x是由某些向量的线性组合表示的(这个问题后面会重点讲解),所以此时方程有无穷多解
。
当一个线性变换将三维空间缩成一条直线时,与压缩成平面相比,解存在的难度更高了。
3.3 列空间
矩阵
A
\boldsymbol{A}
A的秩
为经过矩阵
A
\boldsymbol{A}
A变换后的空间的维度,记为
R
(
A
)
\mathrm{R}\left( \boldsymbol{A} \right)
R(A)。
当
A
\boldsymbol{A}
A变换的结果是一条直线时,结果是一维的,称这个变换的秩是1;当
A
\boldsymbol{A}
A变换后的向量落在某个二维平面上时,称这个变换的秩是2。
向量
x
\boldsymbol{x}
x通过线性变换矩阵
A
\boldsymbol{A}
A变换得到的所有可能的输出向量所构成的集合,称为矩阵
A
\boldsymbol{A}
A的列空间,也就是所有可能的输出向量
A
x
\boldsymbol{Ax}
Ax构成的集合。前面讲过,矩阵的列向量可看作其变换后空间的基向量,换句话说,列空间就是矩阵的列向量所张成的空间。
矩阵的秩更精确的定义是矩阵列空间的维度
。
零向量一定在列空间中,因为线性变换必须保持原点不变;矩阵的秩也可看做是矩阵列空间的维度。
当秩达到最大时,秩与列数相等,称之为满秩
。
3.4 零空间与齐次线性方程组
对于满秩的线性变换,只有零向量在变换后会落在原点。而对于非满秩的变换,它会将空间压缩到更低的维度上,因而会有一系列向量在变换后成为零向量。
如下图,左边直线上的所有向量在经过非满秩变换之后,全部降维为右边的一个点(黄色点)。
变换后落在原点的向量的集合,称为矩阵的零空间。即:
{
x
∣
A
x
=
0
}
\left\{ \left. \boldsymbol{x} \right|\boldsymbol{Ax}=0 \right\}
{x∣Ax=0}变换后一些向量落在零向量上,而零空间正是这些向量所构成的空间。对齐次线性方程组来说,零空间给出的就是方程所有可能的解。
当
det
(
A
)
≠
0
\det \left( \boldsymbol{A} \right) \ne 0
det(A)=0时,零空间里只有零向量,齐次线性方程组只有零解。
当
det
(
A
)
=
0
\det \left( \boldsymbol{A} \right) =0
det(A)=0时,零空间存在非零向量,齐次线性方程组有非零解。
综合来看,线性方程组 A x = v \boldsymbol{Ax}=\boldsymbol{v} Ax=v和 A x = 0 \boldsymbol{Ax}=0 Ax=0求解的实质,就是寻找一个向量 x \boldsymbol{x} x使它经过 A \boldsymbol{A} A变换后,与向量 v \boldsymbol{v} v重合或成为零向量。换言之,在矩阵 A \boldsymbol{A} A的列空间中寻找 v \boldsymbol{v} v向量或零向量。
4 非方阵
到目前为止,讨论的变换都是等维度向量间的变换,那么会不会出现向量维度升高或者降低的变换呢?答案是肯定的。向量是可能从输入空间的二维输出一个三维向量的。
4.1 非方阵变换矩阵的实质
前面讲过,可以把矩阵的列向量看作是变换后的基向量,对于一个非方阵,同样可以这样理解。
例如,非方阵变换矩阵
[
1
2
3
4
5
6
]
\left[ \begin{matrix} 1& 2\\ 3& 4\\ 5& 6\\ \end{matrix} \right]
135246
可以认为是把基向量
i
\boldsymbol{i}
i和
j
\boldsymbol{j}
j(
i
\boldsymbol{i}
i和
j
\boldsymbol{j}
j是二维向量)分别变换成
[
1
3
5
]
T
\left[ \begin{matrix} 1& 3& 5\\ \end{matrix} \right] ^T
[135]T和
[
2
4
6
]
T
\left[ \begin{matrix} 2& 4& 6\\ \end{matrix} \right] ^T
[246]T。矩阵有两列,表明原始空间有两个基向量;矩阵有三行,表明每个基向量在变换后都用三个独立的坐标来描述,也就是变换后的两个向量是三维的。
同样地,对于矩阵
[
1
2
3
4
5
6
]
\left[ \begin{matrix} 1& 2& 3\\ 4& 5& 6\\ \end{matrix} \right]
[142536]就可以理解成把三维空间的基向量
i
\boldsymbol{i}
i、
j
\boldsymbol{j}
j、
k
\boldsymbol{k}
k(
i
\boldsymbol{i}
i、
j
\boldsymbol{j}
j、
k
\boldsymbol{k}
k是三维向量)分别变换成向量
[
1
4
]
\left[ \begin{array}{c} 1\\ 4\\ \end{array} \right]
[14],
[
2
5
]
\left[ \begin{array}{c} 2\\ 5\\ \end{array} \right]
[25]和
[
3
6
]
\left[ \begin{array}{c} 3\\ 6\\ \end{array} \right]
[36]。矩阵是两行三列,表明原始空间有三个基向量,变换后的三个向量是二维的。
实际上,对于一个
m
×
n
m\times n
m×n的非方阵,实际是把一个
n
\boldsymbol{n}
n维向量转换为
m
\boldsymbol{m}
m维向量。
4.2 几何意义
从几何空间的角度来考虑,对于矩阵
[
1
2
3
4
5
6
]
\left[ \begin{matrix} 1& 2\\ 3& 4\\ 5& 6\\ \end{matrix} \right]
135246
列空间是由两个三维向量张成的空间,即三维空间中的一个平面。
[
1
2
3
4
5
6
]
[
1
4
]
\left[ \begin{matrix} 1& 2\\ 3& 4\\ 5& 6\\ \end{matrix} \right] \left[ \begin{array}{c} 1\\ 4\\ \end{array} \right]
135246
[14]的几何意义就是将一个二维向量映射到三维空间中的一个平面。
[
1
2
3
4
5
6
]
[
1
3
5
]
\left[ \begin{matrix} 1& 2& 3\\ 4& 5& 6\\ \end{matrix} \right] \left[ \begin{array}{c} 1\\ 3\\ 5\\ \end{array} \right]
[142536]
135
的几何意义就是将一个三维向量映射到二维平面。
同样地,
[
1
4
]
[
1
4
]
\left[ \begin{matrix} 1& 4\\ \end{matrix} \right] \left[ \begin{array}{c} 1\\ 4\\ \end{array} \right]
[14][14]表示把二维向量映射到一维,结果是一个数值。
[
1
4
]
4
\left[ \begin{array}{c} 1\\ 4\\ \end{array} \right] 4
[14]4表示把一维向量(即数值标量)映射到二维平面。因此向量数乘的几何意义就是将标量映射到二维平面。
4.3 非方阵的变换
4.3.1 矩阵行数大于列数
若向量
x
=
[
m
n
]
T
\boldsymbol{x}=\left[ \begin{matrix} m& n\\ \end{matrix} \right] ^T
x=[mn]T经过变换
A
=
[
a
b
c
d
e
f
]
\boldsymbol{A}=\left[ \begin{matrix} a& b\\ c& d\\ e& f\\ \end{matrix} \right]
A=
acebdf
后变成向量
v
=
[
x
y
z
]
T
\boldsymbol{v}=\left[ \begin{matrix} x& y& z\\ \end{matrix} \right] ^T
v=[xyz]T,即
A
x
=
v
\boldsymbol{Ax}=\boldsymbol{v}
Ax=v
经过
A
\boldsymbol{A}
A变换后,二维空间里的向量
x
\boldsymbol{x}
x变成了三维空间里的向量
v
\boldsymbol{v}
v。因此当线性变换矩阵
A
\boldsymbol{A}
A的行数大于列数时,此线性变换实际上是一个向量的升维操作。这一点在理解了4.2节非方阵变换的几何意义后很好理解。
变换后的所有可能的向量 v \boldsymbol{v} v所构成的空间为矩阵 A \boldsymbol{A} A的所有列向量所张成的空间。而矩阵 A \boldsymbol{A} A只有两个三维列向量,因此 A \boldsymbol{A} A的列空间仍是二维的,即两个列向量在三维空间中所张成的一个二维平面。变换后的列空间与变换前维度相同,所以 A \boldsymbol{A} A是满秩的。
4.3.2 矩阵行数小于列数
若三维向量 v = [ x y z ] T \boldsymbol{v}=\left[ \begin{matrix} x& y& z\\ \end{matrix} \right] ^T v=[xyz]T经过变换 A = [ a b c d e f ] \boldsymbol{A}=\left[ \begin{matrix} a& b& c\\ d& e& f\\ \end{matrix} \right] A=[adbecf]后变成向量 x = [ x y ] T \boldsymbol{x}=\left[ \begin{matrix} x& y\\ \end{matrix} \right] ^T x=[xy]T,即 A v = x \boldsymbol{Av}=\boldsymbol{x} Av=x
因此,若线性变换矩阵的行数小于列数,此线性变换实际上是一个向量降维的操作。矩阵有三个二维列向量,只能张成二维空间。此时变换后列空间的维度与原始空间维度不同。
4.4 非方阵的变换复合
两个变换复合,就是两个矩阵相乘。矩阵为非方阵时,相乘的条件是左边矩阵的列数等于右边矩阵的行数。
现有矩阵
A
=
[
a
b
c
d
e
f
]
\boldsymbol{A}=\left[ \begin{matrix} a& b\\ c& d\\ e& f\\ \end{matrix} \right]
A=
acebdf
和
B
=
[
g
h
i
j
k
l
]
\boldsymbol{B}=\left[ \begin{matrix} g& h& i\\ j& k& l\\ \end{matrix} \right]
B=[gjhkil](其中
A
\boldsymbol{A}
A和
B
\boldsymbol{B}
B满秩),以及向量
x
=
[
m
n
]
T
\boldsymbol{x}=\left[ \begin{matrix} m& n\\ \end{matrix} \right] ^T
x=[mn]T和向量
v
=
[
x
y
z
]
T
\boldsymbol{v}=\left[ \begin{matrix} x& y& z\\ \end{matrix} \right] ^T
v=[xyz]T
B
A
\boldsymbol{BA}
BA变换:若对向量
x
\boldsymbol{x}
x先进行
A
\boldsymbol{A}
A变换,即
A
x
\boldsymbol{Ax}
Ax,在此过程中,向量
x
\boldsymbol{x}
x先从二维变成三维,此时所有可能的向量
A
x
\boldsymbol{Ax}
Ax构成的空间是在三维空间中的一个二维平面
;然后再进行
B
\boldsymbol{B}
B变换,即
B
A
x
\boldsymbol{BAx}
BAx,向量
A
x
\boldsymbol{Ax}
Ax从三维变成二维。此时所有可能的向量
B
A
x
\boldsymbol{BAx}
BAx构成的空间从三维空间中的二维平面
变成一个二维平面空间
。
在此变换过程中,所有可能的向量
x
\boldsymbol{x}
x构成的空间一直都是一个二维平面,因此向量
x
\boldsymbol{x}
x没有信息损失,即经过变换,可以从
B
A
x
\boldsymbol{BAx}
BAx中完整地恢复
x
\boldsymbol{x}
x的信息。
A
B
\boldsymbol{AB}
AB变换:若对向量
v
\boldsymbol{v}
v先进行
B
\boldsymbol{B}
B变换,即
B
v
\boldsymbol{Bv}
Bv,此时,向量
v
\boldsymbol{v}
v三维向量变成二维向量,注意,在变换之前,所有可能的向量
v
\boldsymbol{v}
v构成的空间应该是三维立体空间
,而在变换之后,所有可能的向量
B
v
\boldsymbol{Bv}
Bv构成的空间变成了二维平面空间
,此过程中向量
v
\boldsymbol{v}
v出现信息损失;然后再进行
A
\boldsymbol{A}
A变换,即
A
B
v
\boldsymbol{ABv}
ABv,向量
B
v
\boldsymbol{Bv}
Bv从二维向量变成三维向量,此时所有可能的向量
A
B
v
\boldsymbol{ABv}
ABv构成的空间变成了在三维空间
中的一个二维平面
。
在整个变换过程中,所有可能的向量
v
\boldsymbol{v}
v构成的空间从三维立体变成了二维平面,因此向量
v
\boldsymbol{v}
v必然有信息损失。即无法通过变换,从
A
B
v
\boldsymbol{ABv}
ABv中完整恢复
v
\boldsymbol{v}
v的信息。
综上来看,矩阵 B A \boldsymbol{BA} BA的列空间是二维平面(或者 B A \boldsymbol{BA} BA变换未改变维度),因此 B A \boldsymbol{BA} BA是可逆的,满秩;而矩阵 A B \boldsymbol{AB} AB的列空间是三维空间中的一个二维平面(改变了空间维度),因此 A B \boldsymbol{AB} AB不可逆,不满秩。
4.5 非方阵系数矩阵的线性方程组
前面讲过,求解方程组 A x = v \boldsymbol{Ax}=\boldsymbol{v} Ax=v和 A x = 0 \boldsymbol{Ax}=0 Ax=0的实质就是寻找一个向量 x \boldsymbol{x} x使它经过 A \boldsymbol{A} A变换后,与向量 v \boldsymbol{v} v重合或成为零向量,也就是在矩阵 A \boldsymbol{A} A的列空间中寻找 v \boldsymbol{v} v向量或零向量。
当矩阵
A
\boldsymbol{A}
A的行数大于列数时(例如
3
×
2
3\times 2
3×2的满秩矩阵
A
\boldsymbol{A}
A),矩阵
A
\boldsymbol{A}
A的列空间是三维空间中的一个二维平面,因此,只有当向量
v
\boldsymbol{v}
v位于这个二维平面上时,方程
A
x
=
v
\boldsymbol{Ax}=\boldsymbol{v}
Ax=v有解,且解唯一
,因为不存在多个向量
x
\boldsymbol{x}
x经过变换后与向量
v
\boldsymbol{v}
v重合。经过
A
\boldsymbol{A}
A变换后没有不为零的向量
x
\boldsymbol{x}
x落在零向量上,因此方程
A
x
=
0
\boldsymbol{Ax}=0
Ax=0只有零解
。
当矩阵
A
\boldsymbol{A}
A的行数小于列数时(例如
2
×
3
2\times 3
2×3的满秩矩阵
A
\boldsymbol{A}
A),矩阵
A
\boldsymbol{A}
A的列空间是二维平面空间。向量
v
\boldsymbol{v}
v一定位于这个二维平面上,因此方程
A
x
=
v
\boldsymbol{Ax}=\boldsymbol{v}
Ax=v有解。由于
A
\boldsymbol{A}
A变换将空间压缩,必然存在多个向量
x
\boldsymbol{x}
x经变换后与向量
v
\boldsymbol{v}
v重合,因此
A
x
=
v
\boldsymbol{Ax}=\boldsymbol{v}
Ax=v有无穷多解
。且有非零向量经变换后落在零向量上,因此
A
x
=
0
\boldsymbol{Ax}=0
Ax=0有非零解。