2.8 Rn的子空间(第2章矩阵代数)
主要内容本节引入了Rn\mathbb R^nRn中子空间的概念,子空间并不是Rn\mathbb R^nRn的任意一组向量的切割,而是需要满足向量加法和乘法的封闭性(Rn\mathbb R^nRn中通过原点的线、平面),接着引入了两个典型的子空间:矩阵的列空间和矩阵的零空间。最后,引入了基的概念,并以列空间和零空间为例,讲述了如何求解列空间和零空间的基。Rn\mathbb R^nRn子空间的定义..
主要内容
本节引入了 R n \mathbb R^n Rn中子空间的概念,子空间并不是 R n \mathbb R^n Rn的任意一组向量的切割,而是需要满足向量加法和乘法的封闭性( R n \mathbb R^n Rn中通过原点的线、平面),接着引入了两个典型的子空间:矩阵的列空间和矩阵的零空间。最后,引入了基的概念,并以列空间和零空间为例,讲述了如何求解列空间和零空间的基。
R n \mathbb R^n Rn子空间的定义
定义:
R n \mathbb R^n Rn中的一个子空间是 R n \mathbb R^n Rn中的集合 H H H,具有以下三个性质:
a. 零向量属于 H H H
b. 对 H H H中任意的向量 u \boldsymbol u u和 v \boldsymbol v v,向量 u + v \boldsymbol u + \boldsymbol v u+v属于 H H H
c. 对 H H H中任意向量 u \boldsymbol u u和数 c c c,向量 c u c\boldsymbol u cu属于 H H H
思考:子空间首先是 R n \mathbb R^n Rn的一个子集,其次,其中的向量要满足向量加法和标量乘法性质,也就是说,子空间对加法和标量乘法运算是封闭的。这种限制条件其实定义了一个很简化的向量集合(排除掉了类似曲面、不通过原点的平面等等)。
例:
若 v 1 \boldsymbol v_1 v1和 v 2 \boldsymbol v_2 v2是 R n \mathbb R^n Rn中的向量, H = S p a n { v 1 , v 2 } H=Span\{\boldsymbol v_1, \boldsymbol v_2\} H=Span{v1,v2},则 H H H是 R n \mathbb R^n Rn的子空间。
证明:
取 H H H中任意两个向量 u \boldsymbol u u和 v \boldsymbol v v,那么由于 H = S p a n { v 1 , v 2 } H = Span\{\boldsymbol v_1, \boldsymbol v_2\} H=Span{v1,v2},所以有:
u = s 1 v 1 + s 2 v 2 \boldsymbol u = s_1\boldsymbol v_1 + s_2\boldsymbol v_2 u=s1v1+s2v2
v = t 1 v 1 + t 2 v 2 \boldsymbol v = t_1\boldsymbol v_1 + t_2\boldsymbol v_2 v=t1v1+t2v2
因此:
u + v = ( s 1 + t 1 ) v 1 + ( s 2 + t 2 ) v 2 \boldsymbol u + \boldsymbol v = (s_1+t_1)\boldsymbol v_1 + (s_2 + t_2)\boldsymbol v_2 u+v=(s1+t1)v1+(s2+t2)v2
因此, u + v \boldsymbol u + \boldsymbol v u+v是 v 1 \boldsymbol v_1 v1和 v 2 \boldsymbol v_2 v2的线性组合,因此其属于 H H H。同理可证明 c u c\boldsymbol u cu也属于 H H H,从而得证。
其实,当
n
>
3
n>3
n>3时,通过原点的一个平面,通过原点的一条直线,都是
R
n
\mathbb R^n
Rn的子空间。而不通过原点的一条直线不是子空间,因为它不包括原点,而且对向量加法或标量乘法是不封闭的。
注意: R n \mathbb R^n Rn是它本身的子空间(思考: R n \mathbb R^n Rn中充满了所有维度为 n n n的向量,他们之间任意的组合都不会跳出这个空间,因此 R n \mathbb R^n Rn本身必然满足子空间的限制条件,而对于 R n \mathbb R^n Rn中的任意某一个部分,就不一定满足子空间的条件了,这时要对该空间做考察才行)。
矩阵的列空间与零空间
定义:
矩阵 A A A的列空间是 A A A的各列的线性组合的集合,记作 C o l A Col \ A Col A
若
m
×
n
m \times n
m×n矩阵A =
[
a
1
a
2
a
3
]
\begin{bmatrix}\boldsymbol a_1 & \boldsymbol a_2 & \boldsymbol a_3\end{bmatrix}
[a1a2a3],它们各列属于
R
m
\mathbb R^m
Rm,则
C
o
l
A
Col \ A
Col A和
S
p
a
n
{
a
1
,
.
.
.
a
n
}
Span\{\boldsymbol a_1,...\boldsymbol a_n\}
Span{a1,...an}相同。
C
o
l
A
Col \ A
Col A是
R
m
\mathbb R^m
Rm的子空间。注意,仅当
A
A
A的列生成
R
m
\mathbb R^m
Rm时,
C
o
l
A
Col \ A
Col A等于
R
m
\mathbb R^m
Rm,否则,
C
o
l
A
Col \ A
Col A仅是
R
m
\mathbb R^m
Rm的一部分。
例:
设 A = [ 1 − 3 4 − 4 6 − 2 − 3 7 6 ] A=\begin{bmatrix}1 & -3 & 4 \\ -4 & 6 & -2 \\ -3 & 7 & 6\end{bmatrix} A=⎣⎡1−4−3−3674−26⎦⎤, b = [ 3 3 − 4 ] \boldsymbol b = \begin{bmatrix}3 \\3 \\ -4\end{bmatrix} b=⎣⎡33−4⎦⎤,确定 b \boldsymbol b b是否属于 A A A的列空间。
解:
根据定义,当且仅当方程 A x = b A\boldsymbol x=\boldsymbol b Ax=b有解时, b \boldsymbol b b属于 A A A的列空间。
因此,对增广矩阵进行行化简得:
[ 1 − 3 − 4 3 0 − 6 − 18 15 0 0 0 0 ] \begin{bmatrix}1 & -3 & -4 & 3\\0 & -6 & -18 & 15\\ 0 & 0 & 0 & 0\end{bmatrix} ⎣⎡100−3−60−4−1803150⎦⎤
可知 A x = b A\boldsymbol x = \boldsymbol b Ax=b相容,从而 b \boldsymbol b b属于 C o l A Col \ A Col A。
从这个例子,可以总结以下: A A A的列空间是所有使方程组 A x = b A\boldsymbol x=\boldsymbol b Ax=b有解的向量 b \boldsymbol b b的集合。
定义:
矩阵 A A A的零空间是齐次方程 A x = 0 A\boldsymbol x=\boldsymbol 0 Ax=0的所有解的集合,记为 N u l A Nul \ A Nul A
当
A
A
A有
n
n
n列时,
A
x
=
0
A\boldsymbol x=\boldsymbol 0
Ax=0的解属于
R
n
\mathbb R^n
Rn,
A
A
A的零空间是
R
n
\mathbb R^n
Rn的子集。
定理:
m × n m \times n m×n矩阵 A A A的零空间是 R n \mathbb R^n Rn的子空间。等价地, n n n个未知数的 m m m个齐次线性的方程组 A x = 0 A\boldsymbol x = \boldsymbol 0 Ax=0的所有解的集合是 R n \mathbb R^n Rn的子空间。
证:
取 N u l A Nul \ A Nul A中任意两个向量 u \boldsymbol u u和 v \boldsymbol v v,那么有: A u = 0 A\boldsymbol u = \boldsymbol 0 Au=0, A v = 0 A\boldsymbol v = \boldsymbol 0 Av=0。由矩阵乘法的性质:
A ( u + v ) = A u + A = 0 + 0 = 0 A(\boldsymbol u + \boldsymbol v) = A\boldsymbol u + A\boldsymbol = \boldsymbol 0 + \boldsymbol 0 = \boldsymbol 0 A(u+v)=Au+A=0+0=0
因此, u + v \boldsymbol u + \boldsymbol v u+v也属于 N u l A Nul \ A Nul A。
另外,对任意数 c c c,有:
A ( c u ) = c ( A u ) = c ( 0 ) = 0 A(c\boldsymbol u) = c(A\boldsymbol u) = c(\boldsymbol 0) = 0 A(cu)=c(Au)=c(0)=0
因此, c u c\boldsymbol u cu也属于 N u l A Nul \ A Nul A。
由此,得证。
子空间的基
子空间内一般有无数多个向量,故子空间中的问题最好能够通过研究生成这个子空间的一个小的有限集合来解决,这个集合越小越好。最小可能的生成集合必是线性无关的(假设这个集合是线性相关的,那么其中至少有一个向量可以被表示为该集合中其他向量的线性组合,因此这种情况下该向量肯定不是必要的,该集合肯定不是最小集合)。
定义:
R n \mathbb R^n Rn中子空间 H H H的一组基是 H H H中一个线性无关集,它生成 H H H。
例:
可逆 n × n n \times n n×n矩阵的各列构成 R n \mathbb R^n Rn的一组基,因为它们线性无关,而且生成 R n \mathbb R^n Rn,这由逆矩阵定理可知。一个这样的矩阵是 n × n n \times n n×n单位矩阵,它的各列用 e 1 , ⋯ , e n \boldsymbol e_1, \cdots, \boldsymbol e_n e1,⋯,en表示,称为 R n \mathbb R^n Rn的标准基。
e 1 = [ 1 0 . . . 0 ] , e 2 = [ 0 1 . . . 0 ] , e n = [ 0 . . . 0 1 ] \boldsymbol e_1 = \begin{bmatrix}1 \\ 0 \\ ... \\ 0\end{bmatrix},\boldsymbol e_2 = \begin{bmatrix}0 \\ 1 \\ ... \\ 0\end{bmatrix}, \boldsymbol e_n = \begin{bmatrix}0 \\ ... \\0\\1\end{bmatrix} e1=⎣⎢⎢⎡10...0⎦⎥⎥⎤,e2=⎣⎢⎢⎡01...0⎦⎥⎥⎤,en=⎣⎢⎢⎡0...01⎦⎥⎥⎤
零空间的基
例:
求下列矩阵的零空间的基:
A = [ − 3 6 − 1 1 − 7 1 − 2 2 3 − 1 2 − 4 5 8 − 4 ] A=\begin{bmatrix}-3 & 6 & -1 & 1 & -7 \\1 & -2 & 2 &3 & -1 \\ 2 & -4 & 5 & 8 & -4\end{bmatrix} A=⎣⎡−3126−2−4−125138−7−1−4⎦⎤
解:
要求 A A A的零空间的基,首先要求出 A x = 0 A\boldsymbol x=\boldsymbol 0 Ax=0的解集,再从解集中找出一组基。
通过行化简,可知 A x = 0 A\boldsymbol x = \boldsymbol 0 Ax=0的通解为:
x 1 = 2 x 2 + x 4 − 3 x 5 , x 3 = − 2 x 4 + 2 x 5 x_1 = 2x_2 + x_4 -3 x_5, x_3 = -2x_4 +2x_5 x1=2x2+x4−3x5,x3=−2x4+2x5
其中, x 2 x_2 x2, x 4 x_4 x4, x 5 x_5 x5为自由变量。
通过之前的知识,解向量的通解可用下列形式表示:
[ x 1 x 2 x 3 x 4 x 5 ] = [ 2 x 2 + x 4 − 3 x 5 x 2 − 2 x 4 + 2 x 5 x 4 x 5 ] = x 2 [ 2 1 0 0 0 ] + x 4 [ 1 0 − 2 1 0 ] + x 5 [ − 3 0 2 0 1 ] = x 2 u + x 4 v + x 5 w \begin{bmatrix}x_1 \\ x_2\\x_3\\x_4\\x_5\end{bmatrix}=\begin{bmatrix}2x_2+x_4-3x_5\\x_2\\-2x_4+2x_5\\x_4\\x_5\end{bmatrix}=x_2\begin{bmatrix}2\\1\\0\\0\\0\end{bmatrix}+x_4\begin{bmatrix}1\\0\\-2\\1\\0\end{bmatrix}+x_5\begin{bmatrix}-3\\0\\2\\0\\1\end{bmatrix}=x_2\boldsymbol u+x_4\boldsymbol v+x_5\boldsymbol w ⎣⎢⎢⎢⎢⎡x1x2x3x4x5⎦⎥⎥⎥⎥⎤=⎣⎢⎢⎢⎢⎡2x2+x4−3x5x2−2x4+2x5x4x5⎦⎥⎥⎥⎥⎤=x2⎣⎢⎢⎢⎢⎡21000⎦⎥⎥⎥⎥⎤+x4⎣⎢⎢⎢⎢⎡10−210⎦⎥⎥⎥⎥⎤+x5⎣⎢⎢⎢⎢⎡−30201⎦⎥⎥⎥⎥⎤=x2u+x4v+x5w
该方程说明, N u l A Nul \ A Nul A与 u \boldsymbol u u, v \boldsymbol v v, w \boldsymbol w w的所有线性组合的集合是一致的,而 u \boldsymbol u u, v \boldsymbol v v, w \boldsymbol w w又是线性无关的,因此, { u , v , w } \{\boldsymbol u, \boldsymbol v, \boldsymbol w\} {u,v,w}构成了 N u l A Nul \ A Nul A的一组基。
列空间的基
例:
求下列矩阵的列空间的基:
[ 1 0 − 3 5 0 0 1 2 − 1 0 0 0 0 0 1 0 0 0 0 0 ] \begin{bmatrix}1&0&-3&5&0\\0&1&2&-1&0\\0&0&0&0&1\\0&0&0&0&0\end{bmatrix} ⎣⎢⎢⎡10000100−32005−1000010⎦⎥⎥⎤
解:
用 b 1 , ⋯ , b 5 \boldsymbol b_1, \cdots, \boldsymbol b_5 b1,⋯,b5表示 B B B的列,通过观察知道: b 3 = − 3 b 1 + 2 b 2 , b 4 = 5 b 1 − b 2 \boldsymbol b_3=-3\boldsymbol b_1+2\boldsymbol b_2,\boldsymbol b_4=5\boldsymbol b_1-\boldsymbol b_2 b3=−3b1+2b2,b4=5b1−b2。也就是说, b 3 \boldsymbol b_3 b3和 b 4 \boldsymbol b_4 b4是主元列的组合。若 v \boldsymbol v v是 C o l B Col \ B Col B的任意向量,比如:
v = c 1 b 1 + c 2 b 2 + c 3 b 3 + c 4 b 4 + c 5 b 5 \boldsymbol v = c_1\boldsymbol b_1 + c_2\boldsymbol b_2 + c_3\boldsymbol b_3 + c_4\boldsymbol b_4 + c_5\boldsymbol b_5 v=c1b1+c2b2+c3b3+c4b4+c5b5
把 b 3 \boldsymbol b_3 b3和 b 4 \boldsymbol b_4 b4代入,可把 v \boldsymbol v v写成:
v = c 1 b 1 + c 2 b 2 + c 3 ( − 3 b 1 + 2 b 2 ) + c 4 ( 5 b 1 − b 2 ) + c 5 b 5 \boldsymbol v = c_1\boldsymbol b_1 + c_2\boldsymbol b_2 + c_3(-3\boldsymbol b_1 + 2\boldsymbol b_2) + c_4(5\boldsymbol b_1 -\boldsymbol b_2) + c_5\boldsymbol b_5 v=c1b1+c2b2+c3(−3b1+2b2)+c4(5b1−b2)+c5b5
可见, B B B的主元列构成 C o l B Col \ B Col B的基。
上例中的矩阵 B B B已经是一个简化阶梯形了,假设有一个普通矩阵 A A A,其可以行化简为 B B B,那么 C o l A Col \ A Col A的基如何求解呢?可以从这个角度考虑: A A A的各列之间的线性相关关系可表示为形式: A x = 0 A\boldsymbol x=\boldsymbol 0 Ax=0,当 A A A行化简为阶梯形 B B B时,它的列虽然改变,但方程 A x = 0 A\boldsymbol x= \boldsymbol 0 Ax=0和 B x = 0 B\boldsymbol x=\boldsymbol 0 Bx=0有相同的解集,即 A A A的列与 B B B的列有相同的线性相关关系。因此, { a 1 , a 2 , a 5 } \{\boldsymbol a_1, \boldsymbol a_2, \boldsymbol a_5\} {a1,a2,a5}必是线性无关的,其是 C o l A Col \ A Col A的一组基。
定理:
矩阵 A A A的主元列构成 A A A的列空间的基
注意:一定要用 A A A的主元列本身作为 C o l A Col \ A Col A的基,阶梯形 B B B的列通常并不在 A A A的列空间内,例如,在上例中,一个矩阵 A = [ 1 3 3 2 − 9 − 2 − 2 2 − 8 2 2 3 0 7 1 3 4 − 1 11 − 8 ] A=\begin{bmatrix}1&3&3&2&-9\\-2&-2&2&-8&2\\2&3&0&7&1\\3&4&-1&11&-8\end{bmatrix} A=⎣⎢⎢⎡1−2233−234320−12−8711−921−8⎦⎥⎥⎤可以行等价为阶梯形矩阵 B B B,但 B B B的最后一行都是零,明显不可能生成 A A A的列。
开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!
更多推荐
所有评论(0)