对于任意一个矩阵A m×n,那么这个矩阵存在四个子空间:
- Column space, 记作 C(A). 矩阵A的列空间就是A的任意列向量的线性组合。可以看出矩阵列空间是属于Rm, 用数学的表达方式就是 C(A) = { v | v = Ax, where x is any vector of Rn }
- Null space of A,记作Ν(A),任意和矩阵相乘为0的向量(那些右乘A为0的向量就组成矩阵A的零空间向量,Ax=0的x),可以看出矩阵的零空间是属于Rn , 用数学的表达方式就是 N(A) = { x | Ax = 0 }
- Column space of AT(Row space)记作C(AT),矩阵A的行空间就是A的任意行向量的线性组合。矩阵行空间是属于Rn,C(AT) = { v | v = ATx, where x is any vector of Rm }
- Null space of AT,记作N(AT),任意和矩阵相乘为0的向量(那些右乘AT为0的向量组成矩阵A的零空间向量,ATx=0的x)。这里的x是属于Rm,N(AT) = { x | ATx = 0 }
有了这四个子空间的定义,然后再来看一看四个子空间的关系
- C(A)和N(AT)是正交的(othogonal),用正交的定义去证明:任意v 是C(A)中的向量,那么v就可以表示为 v = Ax,任意u是N(AT)中的向量,那么vTu = (Ax)Tu = xTATu = xT(ATu) = 0, 所以 u和v正交,由于两个空间的任意向量都相互正交,因此这两个空间正交。
- 同样可以证明,Ν(A)和C(AT)这两个空间正交。
- 每一个空间的基的个数应该是多少呢,假设rank(A) = r,rank(A) = r,表示列向量或者行向量有r个不线性相关的向量,因此列空间和行空间都是有r个基。方程组Ax = 0的解可以知道,如果rank(A) = r, 那么x有n-r个线性不相关的解,因此N(A)有n-r个基,同理N(AT)有m-r个不相关的基。因此可以看出C(A)和N(AT)构成了整个Rm的空间,Ν(A)和C(AT)构成了整个Rn的空间。
时间: 2024-10-08 00:55:31