subspace & basis
subspace不严格的讲法可以当做是一个向量空间的子集。严格一点,我们的定义是这样的。一个向量子空间是一组向量,满足三个特征:
- 零向量属于这个向量组
- 该向量组内的两个向量u和v的线性组合也属于改向量组。
- 该向量组内的向量u乘以一个常数c,cu也属于该向量组。
举个例子,比如我们现在有一个向量组W属于R3,且满足6w1−5w2+4w3=0。那么W是不是R3的一个向量子空间呢?我们按照三个特征一一过一下。
首先,零向量是不是属于这个向量组?很明显是的,让w1=w2=w3=0等式成立。
然后我们看,如果现在有u,v属于W,那么u+v=[u1+v1u2+v2u3+v3]⊤。那么实际上6(u1+v1)−5(u2+v2)+4(u3+v3)=0,因此第二条也满足。
最后一条,其实也非常显而易见,把c提出来就可以了。
那subspace里面有一个比较特殊的类型,叫做null space。null space其实就是矩阵A关于Ax=0的解。对于一个m×n的矩阵A,一般我们会记做:NullA={v∈Rn:Av=0}。那null space一定会是Rn的向量子空间。
而basis,也就是基也是特殊的一种subspace。基有三个特性:
- 基是最小的生成集
- 基是最大的线性无关向量集合
- 向量空间中的向量都按唯一的表达为基的线性组合。也就是说,通过基的线性组合,可以表达向量空间中所有的向量,且都是唯一的表达。
第一个特性是很直觉的一件事情,假设我们现在有一个向量子空间V,而S={u1,u2,⋯,uk}是V的一个generation set。现在假设A=[u1,u2,⋯,uk],而Col A=Span{u1,u2,⋯,uk},因为A的pivot column会是Col A的basis,而且很显然会是V的basis,也会是S的subset。
第二个特性也是一个很直觉的事情,假设有个subspace V,现在给定一个线性无关的集合S,那么就存在两种情况,第一种,Span S就是V,那么S就是V的basis。第二种,存在一个向量v1不在Span S里面,那么S∪{v1}就是一个新的线性无关集合,然后又回到前面的两种情况。如此不断循环下去,最后就会发现,basis刚好就是最大的线性无关集合。
第三个特性就更加直觉了,basis我们可以认为是dimension,那就非常直觉了,再一个坐标系内,每一个向量都可以用坐标来唯一表示。
回顾一下,向量空间(vector space),列空间(column space),零空间(null space),行空间(row space),子空间(subspace)等等这些概念之间是什么关系?
首先是向量空间,顾名思义,就是向量所在的空间。向量的线性组合,数乘都在这个空间内。
而向量子空间还要包含零向量,其余和向量空间一样。也就是说,向量子空间是属于向量空间的。
然后是列空间,矩阵中所有列组成的向量空间就叫做列空间。相应的,行空间就是所有行组成的空间。
零空间是Ax=0的所有解的集合。也叫作核。
现在我们看这些概念之间的关系。其实都是一些非常直觉的关系。
- 矩阵A的列空间Col A的维度就是A的pivot column,也就是rank A。
- Dim(Null A)=n−rank A
- Dim(Row A)=rank A,也就是A的RREF下,非零的行
那上面的这些特性,又会让我们知道rank A=rank A⊤。