一、四个子空间的正交性
如果两个向量的点积为零,则两个向量正交: v ⋅ w = v T w = 0 \boldsymbol v\cdot\boldsymbol w=\boldsymbol v^T\boldsymbol w=0 v⋅w=vTw=0。本章着眼于正交子空间、正交基和正交矩阵。两个子空间的中的向量,一组基中的向量和 Q Q Q 中的列向量,它们所有的配对向量都是正交的。对于直角三角形有 a 2 + b 2 = c 2 a^2+b^2=c^2 a2+b2=c2,两条直角边分别是 v \boldsymbol v v 和 w \boldsymbol w w。
正交向量 v T w = 0 且 ∣ ∣ v ∣ ∣ 2 + ∣ ∣ w ∣ ∣ 2 = ∣ ∣ v − w ∣ ∣ 2 \pmb{正交向量}\kern 35pt\boldsymbol v^T\boldsymbol w=0\,且\,||\boldsymbol v||^2+||\boldsymbol w||^2=||\boldsymbol v-\boldsymbol w||^2 正交向量vTw=0且∣∣v∣∣2+∣∣w∣∣2=∣∣v−w∣∣2
当 v T w = w T v = 0 \boldsymbol v^T\boldsymbol w=\boldsymbol w^T\boldsymbol v=0 vTw=wTv=0 时,右边 ( v + w ) T ( v − w ) = v T v + w T w (\boldsymbol v+\boldsymbol w)^T(\boldsymbol v-\boldsymbol w)=\boldsymbol v^T\boldsymbol v+\boldsymbol w^T\boldsymbol w (v+w)T(v−w)=vTv+wTw。
第三章我们主要是讨论 A x = b A\boldsymbol x=\boldsymbol b Ax=b,我们需要列空间和零空间,然后视线转到 A T A^T AT,会需要另外两个子空间。这四个基本子空间揭示了矩阵实际上在做什么。
矩阵乘向量: A A A 乘 x \boldsymbol x x:第一层只有数字;第二层 A x A\boldsymbol x Ax 表示的是列向量的组合;第三层展示了子空间。在学习 Figure4.2 的大图之后,我们将看到它的全貌。
将子空间放在一起可以显示出 A A A 乘 x \boldsymbol x x 隐藏的一些事实,两个子空间之间的 90 ° 90° 90° 角就是我们将要讨论的新的主题。
行空间垂直于零空间。 A A A 的每一行垂直于 A x = 0 A\boldsymbol x=\boldsymbol 0 Ax=0 的每一个解。得到 Figure 4.2 左侧的 90 ° 90° 90° 角。子空间的垂直性是线性代数基本定理的第二部分。
列空间垂直于 A T A^T AT 的零空间。当 b \boldsymbol b b 不在列空间中,此时将无法求解 A x = b A\boldsymbol x=\boldsymbol b Ax=b,那么 A T A^T AT 的零空间将展现出它的优势。它包含有 “最小二乘” 解法的误差 e = b − A x \boldsymbol e=\boldsymbol b-A\boldsymbol x e=b−Ax。最小二乘法是线性代数在本章的关键应用。
线性代数基本定理的第一部分给出了子空间的维度。行空间与列空间有相同的维度 r r r,剩下两个零空间的维度分别是 n − r n-r n−r 和 m − r m-r m−r。现在我们将证明行空间与零空间是 R n R^n Rn 中的正交子空间。
定义 \kern 10pt 如果向量空间中的两个子空间 V \boldsymbol V V 和 W \boldsymbol W W 有:任意 V \boldsymbol V V 中的向量 v \boldsymbol v v 和任意 W \boldsymbol W W 中的向量 w \boldsymbol w w 都垂直,则 V \boldsymbol V V 和 W \boldsymbol W W 正交:
正交子空间 对于所有 V 中的向量 v 和所有 W 中的向量 w 都有 v T w = 0 \pmb{正交子空间}\kern 30pt对于所有\,\boldsymbol V\,中的向量 \,\boldsymbol v\,和所有\,\boldsymbol W\,中的向量\,\boldsymbol w\,都有\,\boldsymbol v^T\boldsymbol w=0 正交子空间对于所有V中的向量v和所有W中的向量w都有vTw=0
【例1】房间中的地板(延伸到无限远)是一个子空间 V \boldsymbol V V,两面墙的交线是一个子空间 W \boldsymbol W W(一维)。这两个子空间是正交的。两面墙交线上的每个向量与地板上的每个向量都垂直。
【例2】两面墙看起来垂直,但是这两个子空间不是正交的!它们的交线同时位于 V \boldsymbol V V 和 W \boldsymbol W W,这条交线与它自身并不垂直。两个平面( R 3 \pmb{\textrm R}^3 R3 中的两个 2 2 2 维平面)不可能是正交的子空间。
当一个向量同时存在于两个正交的子空间中,那么它一定是零向量,它垂直于它本身,即是 v \boldsymbol v v 也是 w \boldsymbol w w,所以有 v T v = 0 \boldsymbol v^T\boldsymbol v=0 vTv=0,它只能是零向量。
线性代数的重要例子来源于四个基本子空间。零是零空间与行空间的唯一交点,此外, A A A 的零空间与行空间是 90 ° 90° 90° 相交。我们可以直接从 A x = 0 A\boldsymbol x=\boldsymbol 0 Ax=0 得到这个关键事实:
因为 A x = 0 A\boldsymbol x=\boldsymbol 0 Ax=0,所以有 A A A 零空间中的每个向量 x \boldsymbol x x 垂直于 A A A 的每一行。零空间 N ( A ) \pmb N(A) N(A) 和行空间 C ( A T ) \pmb C(A^T) C(AT) 是 R n \pmb {\textrm R}^n Rn 中的正交子空间。
为什么 x \boldsymbol x x 与这些行垂直呢,看 A x = 0 A\boldsymbol x=\boldsymbol 0 Ax=0,每行乘 x \boldsymbol x x:
A x = [ row 1 ⋮ row m ] [ x ] = [ 0 ⋮ 0 ] ← ( row 1 ) ⋅ x 是零 ← ( row m ) ⋅ x 是零 ( 4.1.1 ) A\boldsymbol x=\begin{bmatrix}\pmb{\textrm{row\,\,1}}\\\vdots\\{\pmb{\textrm{row}\,\,m}}\end{bmatrix}\begin{bmatrix}\,\\\boldsymbol x\\\,\end{bmatrix}=\begin{bmatrix}0\\\vdots\\0\end{bmatrix}\kern 10pt\begin{matrix}\leftarrow&(\pmb{\textrm{row\,\,1}})\cdot\boldsymbol x\,是零\\\,\\\leftarrow&(\pmb{\textrm{row}\,\,m})\cdot\boldsymbol x\,是零\end{matrix}\kern 25pt(4.1.1) Ax= row1⋮rowm x = 0⋮0 ←←(row1)⋅x是零(rowm)⋅x是零(4.1.1)
第一个方程表明行 1 1 1 垂直于 x \boldsymbol x x,最后一个方程表明行 m m m 垂直于 x \boldsymbol x x。每一行与 x \boldsymbol x x 的点积都是零,则 x \boldsymbol x x 也垂直于行的每种组合。整个行空间 C ( A T ) \pmb C(A^T) C(AT) 与零空间 N ( A ) \pmb N(A) N(A) 正交。
第二种证明正交的方式使用矩阵的缩写:行空间的向量就是行的线性组合 A T y A^T\boldsymbol y ATy,做 A T y A^T\boldsymbol y ATy 与零空间任意向量 x \boldsymbol x x 的点积,可以得到这些向量是垂直的: 零空间与行空间正交 x T ( A T y ) = ( A x ) T y = 0 T y = 0 ( 4.1.2 ) \pmb{零空间与行空间正交}\kern 15pt\boldsymbol x^T(A^T\boldsymbol y)=(A\boldsymbol x)^T\boldsymbol y=\boldsymbol 0^T\boldsymbol y=0\kern 20pt(4.1.2) 零空间与行空间正交xT(ATy)=(Ax)Ty=0Ty=0(4.1.2)第一个证明很直观,从方程(4.1.1)中可以直接看到 A A A 的这些行乘 x \boldsymbol x x 得到零。第二个证明表示了为什么 A A A 和 A T A^T AT 都在基础定理中。
【例3】 A A A 的行垂直于零空间中的向量 x = ( 1 , 1 , − 1 ) \boldsymbol x=(1,1,-1) x=(1,1,−1): A x = [ 1 3 4 5 2 7 ] [ 1 1 − 1 ] = [ 0 0 ] 得点积 1 + 3 − 4 = 0 5 + 2 − 7 = 0 A\boldsymbol x=\begin{bmatrix}1&3&4\\5&2&7\end{bmatrix}\begin{bmatrix}\kern 7pt1\\\kern 7pt1\\-1\end{bmatrix}=\begin{bmatrix}0\\0\end{bmatrix}\kern 10pt得点积\kern 5pt\begin{matrix}1+3-4=0\\5+2-7=0\end{matrix} Ax=[153247] 11−1 =[00]得点积1+3−4=05+2−7=0现在我们将实现转向另外两个子空间。此例中,列空间是整个 R 2 \boldsymbol {\textrm R}^2 R2, A T A^T AT 的零空间只有零向量(与任意向量正交)。 A A A 的列空间和 A T A^T AT 的零空间总是正交的子空间。
A T A^T AT 零空间中的每个向量 y \boldsymbol y y 垂直于 A A A 的每一列。左零空间 N ( A T ) \pmb N(A^T) N(AT) 和列空间 C ( A ) \pmb C(A) C(A) 是 R m \textrm{\textrm R}^m Rm 中的正交子空间。
因为 A T A^T AT 的零空间与 A T A^T AT 的行空间正交,而 A T A^T AT 的零空间就是 A A A 的左零空间, A T A^T AT 的行空间就是 A A A 的列空间。证毕!
看 A T y = 0 A^T\boldsymbol y=\boldsymbol 0 ATy=0 可以得到一个可视化的证明。 A A A 的每一列乘 y \boldsymbol y y 都得到 0 0 0: C ( A ) ⊥ N ( A T ) A T y = [ ( column 1 ) T ⋯ ( column n ) T ] [ y ] = [ 0 ˙ 0 ] ( 4.2.3 ) \pmb C(A)\perp \pmb N(A^T)\kern 15ptA^T\boldsymbol y=\begin{bmatrix}(\pmb{\textrm{column}\,\,1})^T\\\cdots\\(\pmb{\textrm{column}\,\,n})^T\end{bmatrix}\begin{bmatrix}\\\boldsymbol y\\\,\end{bmatrix}=\begin{bmatrix}0\\\dot\ \\0\end{bmatrix}\kern 25pt(4.2.3) C(A)⊥N(AT)ATy= (column1)T⋯(columnn)T y = 0 ˙0 (4.2.3) y \boldsymbol y y 和 A A A 的每一列点积都是零,则有 A A A 左零空间中的向量 y \boldsymbol y y 垂直于 A A A 的每一列,即垂直于列空间。
二、正交补
重要: 基本子空间不仅仅是正交(成对)而已,它们也要有合适的维度。两条直线可能在 R 3 \textrm{\pmb R}^3 R3 空间中垂直,但是这些直线不可能是 3 × 3 3\times3 3×3 矩阵的行空间和零空间。这两天直线的维度都是 1 1 1,相加起来是 2 2 2,但是正确的维度 r r r 与 n − r n-r n−r 加起来一定是 n = 3 n=3 n=3。
3 × 3 3\times3 3×3 矩阵的基本子空间的维度可能是 2 2 2 和 1 1 1,或 3 3 3 和 0 0 0,这些成对的子空间不仅仅是正交,它们是正交补。
定义: 子空间 V \pmb V V 的正交补包含所有与 V \pmb V V 垂直的向量。这个子空间的正交补写成 V ⊥ \pmb V^{\perp} V⊥(读作 “ V \pmb V V perp”)。
根据这个定义,零空间是行空间的正交补,每个垂直于所有行的向量 x \boldsymbol x x 都满足 A x = 0 A\boldsymbol x=\boldsymbol 0 Ax=0,它也在零空间中。
反过来也是正确的,如果 v \boldsymbol v v 与零空间正交,它一定在行空间中。否则我们可以将 v \boldsymbol v v 加入矩阵当做额外的一行,这样没有改变它的零空间,但是行空间会变大,将违反 r + ( n − r ) = n r+(n-r)=n r+(n−r)=n 的法则。结论是零空间的正交补 N ( A ) ⊥ \pmb N(A)^{\perp} N(A)⊥ 就是行空间 C ( A T ) \pmb C(A^T) C(AT)。
同样的方法,左零空间和列空间是 R m \pmb{\textrm R}^m Rm 的正交补。它们的维度 r r r 和 m − r m-r m−r 加起来得到全维度 m m m。
线性代数基本定理,第二部分 N ( A ) 是行空间 C ( A T ) 的正交补 ( 在 R n 中 ) N ( A T ) 是列空间 C ( A ) 的正交补 ( 在 R m 中 ) \pmb{线性代数基本定理,第二部分}\\{\pmb N(A)\,\pmb{是行空间}\,\pmb C(A^T)\,\pmb{的正交补(在}\,\textrm{\pmb{R}}^n\,\pmb{中)}}\\\pmb N(A^T)\,\pmb{是列空间}\,\pmb C(A)\,\pmb{的正交补(在}\,\textrm{\pmb R}^m\,\pmb{中)} 线性代数基本定理,第二部分N(A)是行空间C(AT)的正交补(在Rn中)N(AT)是列空间C(A)的正交补(在Rm中)
第一部分给出了子空间的维度,第二部分给出了它们之间的 90 ° 90° 90° 角。补充的重点是每一个 x \boldsymbol x x 都可以分成一个行空间分量 x r \boldsymbol x_r xr 和一个零空间分量 x n \boldsymbol x_n xn。Figure 4.3 显示了当 A A A 乘 x = x r + x n \boldsymbol x=\boldsymbol x_r+\boldsymbol x_n x=xr+xn 时发生了什么 A x = A x r + A x n A\boldsymbol x=A\boldsymbol x_r+A\boldsymbol x_n Ax=Axr+Axn: 零空间的分量得到零: A x n = 0 行空间的分量到列空间: A x r = A x 零空间的分量得到零:A\boldsymbol x_n=\boldsymbol 0\\行空间的分量到列空间:A\boldsymbol x_r=A\boldsymbol x 零空间的分量得到零:Axn=0行空间的分量到列空间:Axr=Ax每个向量都到列空间!左乘 A A A 不会做其它的事情,除此之外,列空间的每个向量 b \boldsymbol b b 仅来自一个行空间的唯一向量 x r \boldsymbol x_r xr。证明:如果 A x r = A x r ′ A\boldsymbol x_r=A\boldsymbol x_r' Axr=Axr′,它们的差 x r − x r ′ \boldsymbol x_r-\boldsymbol x_r' xr−xr′ 在零空间中,也会在行空间中,因为 x r \boldsymbol x_r xr 和 x r ′ \boldsymbol x_r' xr′ 都来自与行空间。它们的差必定为零,因为零空间与行空间是垂直的,因此 x r = x r ′ \boldsymbol x_r=\boldsymbol x_r' xr=xr′。
如果我们抛开两个零空间,则 A A A 中会隐藏有一个 r × r r\times r r×r 的可逆矩阵,从行空间到列空间, A A A 是可逆的。
【例4】每个秩 r r r 的矩阵都有一个 r × r r\times r r×r 的可逆子矩阵: A = [ 3 0 0 0 0 0 5 0 0 0 0 0 0 0 0 ] 包含子矩阵 [ 3 0 0 5 ] A=\begin{bmatrix}3&0&0&0&0\\0&5&0&0&0\\0&0&0&0&0\end{bmatrix}\kern 5pt包含子矩阵\kern 5pt\begin{bmatrix}3&0\\0&5\end{bmatrix} A= 300050000000000 包含子矩阵[3005]另外 11 11 11 个 0 0 0 是负责零空间的。 B B B 的秩也为 r = 2 r=2 r=2。 B = [ 1 2 3 4 5 1 2 4 5 6 1 2 4 5 6 ] 包含子矩阵 [ 1 3 1 4 ] 在主元行和主元列 B=\begin{bmatrix}1&2&3&4&5\\1&2&4&5&6\\1&2&4&5&6\end{bmatrix}\kern 5pt包含子矩阵\kern 5pt\begin{bmatrix}1&3\\1&4\end{bmatrix}在主元行和主元列 B= 111222344455566 包含子矩阵[1134]在主元行和主元列当我们选择了正确的 R n \pmb {\textrm R}^n Rn 和 R m \textrm {\pmb R}^m Rm 的基,每个矩阵都可以对角化。这个奇异值分解(Singular Value Decomposition)在应用中已经非常重要。
我们重复下一个事实, A A A 的行不可能在 A A A 的零空间中(除了零向量)。唯一都存在于两个正交子空间的向量是零向量。 如果向量 v 正交于它本身,则 v 是零向量。 \pmb{如果向量\,\boldsymbol v\,正交于它本身,则\,\boldsymbol v\,是零向量。} 如果向量v正交于它本身,则v是零向量。
三、画出大图
大图要显示出这些子空间的正交性。Figure4.4是一条直线与一个平面的正交图,它们是在三维空间中。
四、从子空间中组合基
基是线性无关的向量,它们可以张成向量空间。正常情况下对于基来说我们要检验以下两个性质,当其中一个成立时是可以退出另外一个的:
R n \pmb{\textrm R}^n Rn 中任意 n n n 个无关向量一定可以张成空间 R n \textrm{\pmb R}^n Rn,因此它们是一组基。
任何可以张成空间 R n \textrm{\pmb R}^n Rn 的 n n n 个向量一定是无关的,所以它们是一组基。
如果向量的数量是正确的,那么基的一个性质可以推出另外一个性质,这对于任何向量空间都是成立的,我们更多关注的是 R n \pmb {\textrm R}^n Rn。当这些向量是 n × n n\times n n×n 方阵 A A A 的列时,我们可得到下面两个事实:
如果 A A A 的 n n n 列是无关的,它们张成 R n \pmb{\textrm R}^n Rn,所以 A x = b A\boldsymbol x=\boldsymbol b Ax=b 有解。
如果这 n n n 个列张成 R n \pmb{\textrm R}^n Rn,则它们是无关的, A x = b A\boldsymbol x=\boldsymbol b Ax=b 有唯一解。
唯一性推论到存在性且存在性推论到唯一性, A A A 是可逆的。如果没有自由变量,则解 x \boldsymbol x x 是唯一的,那么一定有 n n n 个主元列,通过回代可以求解 A x = b A\boldsymbol x=\boldsymbol b Ax=b(解存在)。
从反方向开始,假设 A x = b A\boldsymbol x=\boldsymbol b Ax=b 对于任意的 b \boldsymbol b b 都有解(存在解),那么消元后没有零行,有 n n n 个主元没有自由变量。零空间仅包含 x = 0 \boldsymbol x=\boldsymbol 0 x=0(唯一性)。
对于行空间和零空间的基来说,有 r + ( n − r ) = n r+(n-r)=n r+(n−r)=n 个向量,这 n n n 个向量是无关的,它们张成 R n \pmb{\textrm R}^n Rn。
每个 x 都是行空间 x r 和零空间 x n 的和 x r + x n 。 每个\,\boldsymbol x\,都是行空间\,\boldsymbol x_r和零空间\,\boldsymbol x_n的和\,\boldsymbol x_r+\boldsymbol x_n。 每个x都是行空间xr和零空间xn的和xr+xn。
Figure 4.3 画出了正交补的关键点 —— 它们的维度相加是 n n n,所有的向量都可以通过正交补来解释。
【例5】 A = [ 1 2 3 6 ] A=\begin{bmatrix}1&2\\3&6\end{bmatrix} A=[1326] 将 x = [ 4 3 ] \boldsymbol x=\begin{bmatrix}4\\3\end{bmatrix} x=[43] 分成 x r + x n = [ 2 4 ] + [ 2 − 1 ] \boldsymbol x_r+\boldsymbol x_n=\begin{bmatrix}2\\4\end{bmatrix}+\begin{bmatrix}\kern 7pt2\\-1\end{bmatrix} xr+xn=[24]+[2−1]。
向量 [ 2 4 ] \begin{bmatrix}2\\4\end{bmatrix} [24] 在行空间,它的正交向量 [ 2 − 1 ] \begin{bmatrix}\kern 7pt2\\-1\end{bmatrix} [2−1] 在零空间中。
五、主要内容总结
- 如果 V \boldsymbol V V 中的每个向量 v \boldsymbol v v 和 W \boldsymbol W W 中的每个向量 w \boldsymbol w w 都正交,则子空间 V \boldsymbol V V 和 W \boldsymbol W W 正交。
- 如果 W \boldsymbol W W 中包含全部垂直于 V \boldsymbol V V 的向量(反之亦然),则 V \boldsymbol V V 和 W \boldsymbol W W 是正交补。在 R n \textrm {\pmb R}^n Rn 中, V \boldsymbol V V 和 W \boldsymbol W W 的维度相加是 n n n 。
- 零空间 N ( A ) \pmb N(A) N(A) 和行空间 C ( A T ) \pmb C(A^T) C(AT) 是正交补,维度是 ( n − r ) + r = n (n-r)+r=n (n−r)+r=n,相似的,左零空间 N ( A T ) \pmb N(A^T) N(AT) 和列空间 C ( A ) \pmb C(A) C(A) 是正交补,它们的维度是 ( m − r ) + r = m (m-r)+r=m (m−r)+r=m 。
- R n \textrm{\pmb R}^n Rn 中任意 n n n 个无关的向量可以张成 R n \pmb{\textrm R}^n Rn;任意可以张成 R n \pmb{\textrm R}^n Rn 的 n n n 个向量是无关的。
六、例题
【例6】假设 S \pmb S S 是 9 维空间 R 9 \textrm{\pmb R}^9 R9 中的 6 6 6 维子空间:
(a)与 S \pmb S S 正交的子空间的维度可能是多少?
(b) S \pmb S S 的正交补 S ⊥ \pmb S^{\perp} S⊥ 的维度可能是多少?
(c)行空间是 S \pmb S S 的矩阵 A A A 可能的最小形状大小是多少?
(d)零空间是 S ⊥ \pmb S^{\perp} S⊥ 的矩阵 B B B,它的形状可能的最小大小是多少?
解: (a)如果 S \pmb S S 是 R 9 \textrm{\pmb R}^9 R9 中的 6 6 6 维子空间,那么与 S \pmb S S 正交的子空间的维度可能是 0 , 1 , 2 , 3 0,1,2,3 0,1,2,3。
(b)正交补 S ⊥ \pmb S^{\perp} S⊥ 是最大的正交子空间,它的维度是 3 3 3。
(c)最小的矩阵 A A A 形状是 6 × 9 6\times 9 6×9。(它的 6 6 6 行是 S \pmb S S 的一组基)。
(d)最小的矩阵 B B B 形状是 6 × 9 6\times9 6×9。(与(c)答案一样)
如果 B B B 的新行第 7 7 7 行是 A A A 的 6 6 6 行的组合,那么 B B B 与 A A A 有相同的行空间,也有相同的零空间。 A x = 0 A\boldsymbol x=\boldsymbol 0 Ax=0 的特殊解 s 1 , s 2 , s 3 \boldsymbol s_1,\boldsymbol s_2,\boldsymbol s_3 s1,s2,s3 同样也是 B x = 0 B\boldsymbol x=\boldsymbol 0 Bx=0 的特殊解。消元后 B B B 的第 7 7 7 行将会变成零行。
【例7】方程 x − 3 y − 4 z = 0 x-3y-4z=0 x−3y−4z=0 描述了 R 3 \textrm {\pmb R}^3 R3 中的一个平面 P \pmb P P(实际上是一个子空间)。
(a)平面 P \pmb P P 是哪个 1 × 3 1\times3 1×3 的矩阵 A A A 的零空间?
(b)找到 x − 3 y − 4 z = 0 x-3y-4z=0 x−3y−4z=0 特殊解构成的一组基 s 1 , s 2 \boldsymbol s_1,\boldsymbol s_2 s1,s2(它们会是零空间矩阵 N N N 的列)。
(c)找到垂直于 P \pmb P P 的直线 P ⊥ \pmb P^{\perp} P⊥ 的一组基。
解:(a) A = [ 1 − 3 − 4 ] A=\begin{bmatrix}1&-3&-4\end{bmatrix} A=[1−3−4]
(b) s 1 = [ 3 1 0 ] , s 2 = [ 4 0 1 ] \boldsymbol s_1=\begin{bmatrix}3\\1\\0\end{bmatrix},\kern 5pt\boldsymbol s_2=\begin{bmatrix}4\\0\\1\end{bmatrix} s1= 310 ,s2= 401
(c) [ 1 − 3 − 4 ] \begin{bmatrix}\kern 7pt1\\-3\\-4\end{bmatrix} 1−3−4