[关闭]
@fsfzp888 2018-04-01T18:31:12.000000Z 字数 1564 阅读 1518

(三)矩阵的行列秩

线性代数 机器学习基础


行秩=列秩

在线性代数中,有一个基本的事实,那就对于任意的矩阵来说,有

即行秩等列秩,一个矩阵的秩是说这个矩阵有多少个线性无关的成分,对于行秩来说,就是矩阵具有多少个线性无关的行向量,对于列秩来说,就是有多少个线性无关的列向量。但是我们一般不会去问,为什么当一个矩阵具有个线性无关的列向量的时候,它也必然有个线性无关的行向量呢?这个问题我觉得是一个本源性的问题,一般一开始都不会去讲,搞得有时候细想好像要把它当作公理去理解一样,但是实际上,这一块还是值得去探讨的。

为什么矩阵的行秩等于列秩,这个问题其实可以通过矩阵的分解来解答。矩阵的分解分成很多种方式了,比如说,LU分解(本质是高斯消元法),特征值分解,奇异值分解等。回想到初中学习代数的时候,总是会对复杂的代数式进行因式分解,这样我们就可以得到这个等式更加多的特性,我想矩阵分解的原因大体上也是源于想要通过分解来了解这个矩阵特有的属性。

令矩阵是一个的矩阵,它有个线性无关的的列向量,且,那么我们可以把这些线性无关的列向量依次摆放成一个的矩阵,那么此时必然存在一个的矩阵,使得

成立。

为什么这样说呢?因为本质上,矩阵的列空间等同于的列空间,的列空间是由的列向量进行线性组合后的结果,而矩阵就是对这些列向量进行线性组合的变换矩阵。但是从另外一个角度上来说,矩阵何尝又不是对于矩阵的行向量进行线性组合,从而得到矩阵呢?所以矩阵的行空间等于的行空间,但是的行向量个数等于,所以的行秩必然小于等于,所以,我们可以得到,同样上边的方法,应用到矩阵中,可以得到,所以只能够是了!

来源

上边的理解,是通过线性空间层面上的逻辑推导,但是我想,最早得到这一个结论的人应该并非源于此思路,而是来源于求解线性方程组,毕竟,最早线性代数,应该也是用来表达线性方程组的。假如我们把方程组左边的部分系数摆放成矩阵,那么实际上,求解方程组的过程也就是希望找到这样的的初等行变换矩阵的初等列变换矩阵使得


这些本质上其实就是高斯消元法(),首先通过矩阵对矩阵进行初等列变换,把矩阵变成了行阶梯形,即

这个时候,矩阵的左上角部分都变成了单位矩阵的形式,然后方程组就可以解出来了。当然这里边没有把结果列放进去,但是就单从上边的表达式来说,显然,我们也可以找到一个初等列变换矩阵完全消除那一块,从而得到等式3所示的结果。基于初等变换只是进行了如下的操作的事实:

  • 交换两个向量
  • 一个向量乘以一个常数k
  • 向量乘以一个k并加到另外一行

所以向量空间不会被改变,从而也可以得到行秩等与列秩这个结论。
高斯消元法可以使用LU分解来进行表达,但这并不是本篇的内容。所以不会在本篇中总结详述,而且从直觉上,任何初等变换矩阵()理论上来说,都是可逆的。因为这些线性变换是可逆的。

作者 @fsfzp888
2018 年 04月 01日

添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注