子空间与正交投影
发表于2013 年 4 月 17 日由了凡春秋USTC 最近需要用子空间、正交投影的概念,找了些资料,理解了相关概念,整理如下。
子空间和子空间的基
定义所有 n 维复向量的集合为 n 维复向量空间,即 C n 。如果令 m 若 S={u 1 ,u 2 ,⋯,u m } 是向量空间 C n 的向量子集合,则 u 1 ,u 2 ,⋯,u m 的所有线性组合的集合 W 称为由 u 1 ,u 2 ,⋯,u m 张成的子空间,定义为
W=Span{u 1 ,u 2 ,⋯,u m }={u:u=a 1 u 1 +a 2 u 2 +⋯+a m u m }
张成子空间 W 的每个向量称为 W 的生成元,而所有生成元组成的集合 {u 1 ,u 2 ,⋯,u m } 称为子空间的张成集。从向量集合 S={u 1 ,u 2 ,⋯,u m } 中删去与其他向量线性相关的所有多余向量,余下的 P 个线性无关的向量 {u 1 ,u 2 ,⋯,u p } 仍然可以张成子空间 W 。
如果向量子空间 W 由向量 u 1 ,u 2 ,⋯,u p 张成,即 W=Span{u 1 ,u 2 ,⋯,u p } ,且向
量集合 B=Span{u 1 ,u 2 ,⋯,u p } 是线性无关的集合,则向量集合 {u 1 ,u 2 ,⋯,u p } 可称为 W 的一组基。
张成子空间 W 的基向量的个数称为子空间 W 的维数,子空间 W 的基不唯一,虽然子空间 W 的基可以由多种不同的向量合成,但子空间 W 的维数是固定的。
对于子空间,可以这样理解:二维空间中的线是其子空间,三维空间中的面、线是三维空间的子空间。
子空间的直和
两个子空间的代数关系由两个子空间的向量之间的关系刻画。子空间 S 1 ,S 2 ,⋯,S n 共同拥有的向量组成的集合 S 1 ∩S 2 ∩⋯∩S n 称为子空间 S 1 ,S 2 ,⋯,S n 的交集。若这些子空间共同的唯一向量为零向量, S 1 ∩S 2 ∩⋯∩S n ={0} ,则称子空间无交连。无交连的子空间的并 S 1 ∪S 2 ∪⋯∪S n 称为子空间的直和,即
S=S 1 ⊕S 2 ⊕⋯⊕S n
矩阵的列空间
对于矩阵 A∈C n×m ,其 m 个列向量记为
a 1 =⎡ ⎣ ⎢ ⎢ ⎢ ⎢ a 11 a 21 ⋮a n1 ⎤ ⎦ ⎥ ⎥ ⎥ ⎥ ,a 2 =⎡ ⎣ ⎢ ⎢ ⎢ ⎢ a 12 a 22 ⋮a n2 ⎤ ⎦ ⎥ ⎥ ⎥ ⎥ ,⋯,a m =⎡ ⎣ ⎢ ⎢ ⎢ ⎢ a 1m a 2m ⋮a nm ⎤ ⎦ ⎥ ⎥ ⎥ ⎥
如果 A=[a 1 ,a 2 ,⋯,a m ]∈C n×m 是复矩阵。可以定义矩阵 A 的列空间为其列向量的所有线性组合的集合,用符号 Col(A) 表示,如下
Col(A)=Span{a 1 ,a 2 ,⋯,a m }={y∈C n :y=∑ j=1 m α j a j ,α j ∈C}
列空间是针对矩阵 A 本身定义的向量子空间,矩阵 A 的列空间就是矩阵 A 的值域。矩阵 A 的值域(Range)定义为
Range(A)={y∈C n :y=∑ j=1 m α j a j ,α j ∈C}=Span{a 1 ,a 2 ,⋯,a m }
因此
Range(A)=Col(A)=Span{a 1 ,a 2 ,⋯,a m }
所以看到一个矩阵,就可以想象它背后代表着一个子空间,这个子空间由其列向量张成。
投影算子
定义向量空间 C n 内的直和分解 C n =S⊕H ,其中任意向量 x∈C n 。若 x=x 1 +x 2 满足 x 1 ∈S 和 x 2 ∈H ,并且 x 1 和 x 2 是唯一确定的,则称映射 Px=x 1 是向量 x 沿着子空间 H 的方向,到子空间 S 的投影,并称 P 是沿着子空间 H 的方向,到子空间 S 的投影算子,常简记为 P SH 。
由定义易知,投影算子 P 是线性齐次算子,并且在 Px=x 1 的情况下,满足 x=x 1 +x 2 的 x 2 由 x 2 =x−Px=(I−P)x 唯一的确定。因此,利用投影算子,向量空间 C n 中任意向量 x 都可以唯一分解为:
x=Px+(I−P)x
这表明,若 P 是沿着子空间 H 到子空间 S 的投影算子,则 (I−P) 就是沿着子空间 S 到子空间 H 的投影算子。
线性齐次算子 P 是投影算子,当且仅当 P 是幂等矩阵,即
P 2 =P
注意上面的定义,并没有保证 x 1 和 x 2 相互正交。
正交投影算子
在许多实际的应用中,常要求向量空间 C n 的任何向量 x 在两个子空间的投影正交,这就要求子空间 H 是子空间 S 的正交补。沿着正交补 S ⊥ 的方向,到子空间 S 的投影算子 P S/S ⊥ 称为正交投影算子。
线性齐次算子 P 是正交投影算子,当且仅当满足以下两个条件:线性算子是幂等算子,即 P 2 =P ,且具有复共轭对称性,即 P H =P 。
令 A 是 n×m 维矩阵,其中 A 是列满秩, rank(A)=m 。针对由矩阵 A 的列向量为基张成的空间 A 的正交投影定义为
P=A(A H A) −1 A H
其中, () H 为矩阵的共轭转置。
若 A 非列满秩,则上面的逆用伪逆代替。
从方程的角度来看,正交投影矩阵可以如下理解:方程 Ax=b 的最小二乘解 x ^ 满足
Ax ^ =Pb ⃗ =p ⃗
b ⃗ =p ⃗ +e ⃗
解释如下:
A n×m 代表一个行数 n 大于列数 m (所以才涉及最小二乘解)的矩阵,正如上面所说,这个矩阵其实就是 C n 空间的一个子空间,犹如二维空间平面里的一条直线;而 b 则代表 C n 空间的任意一点; x 表示怎样对 A 的列向量进行组合来实现逼近 b , x 就是逼近系数或组合系数。
由于 b 不一定恰好在 A 的子空间里,即直线上,所以理论上 x 可能没有精确解,故退而求其次,我们寻求在 A 的子空间里找离 b 最近的点,直线上离线外一点最近的点就是点垂直投影的位置,即正交投影点 p ,而此投影点的求取方法就是
p ⃗ =Pb ⃗
P=A(A H A) −1 A H
而此投影点所对应的矩阵 A 的列向量组合系数就是 x ^ ,即 x 的估计值:
Pb ⃗ =p ⃗ =Ax ^
即
x ^ =(A H A) −1 A H b ⃗
相应的误差向量为
e ⃗ =b ⃗ −p ⃗
它代表了拟合的误差。可认为是这个正交于 A 子空间的子空间是误差空间或噪声空间,正是由于噪声的存在,使测量点不能完美落在 A 的子空间上。
这就是从矩阵投影角度来解释最小二乘法,贴一张MIT线性代数公开课讲投影的截图吧(推荐看看,讲的很清楚)。讲师说明白了子空间的概念就等于掌握了线性代数一半的理论,确实,有了子空间的概念,线性方程、最小二乘瞬间成为很自然的东西。