矩阵的秩,在线性代数中,一个矩阵 A 的列秩是A 的线性无关的纵列的极大数目。类似地,行秩是A 的线性无关的横行的极大数目。矩阵的列秩和行秩总是相等的,因此它们可以简单地称作矩阵 A 的秩。通常表示为 {\displaystyle \mathrm {r} (A)} ,{\displaystyle \mathrm {rank} (A)} 或{\displaystyle \mathrm {rk} (A)}。
矩阵的秩是什么
用行列式定义
设 A 为 m\times n 矩阵。若 A 至少有一个 r 阶非零子式,而其所有 {\displaystyle r+1}阶子式全为零,则称 r 为A 的秩。
用向量组的秩定义
对于 m 维线性空间 V 中的一个向量组 {\displaystyle F={\alpha _{1},\alpha _{2},…,\alpha _{s}}},若 {\displaystyle F\supseteq S={\alpha _{1},\alpha _{2},…,\alpha _{r}}} 中的r 个向量线性无关,且若 r<s,{\displaystyle \forall \alpha _{r+1}\in F-S},{\displaystyle S\cup {\alpha _{r+1}}}中 {\displaystyle r+1} 个向量都线性相关,则称 {\displaystyle {\alpha _{1},\alpha _{2},…,\alpha _{r}}} 为 {\displaystyle {\alpha _{1},\alpha _{2},…,\alpha _{s}}} 的极大线性无关组,r 为 {\displaystyle {\alpha _{1},\alpha _{2},…,\alpha _{s}}} 的秩。可以证明 F 的秩等于向量组 F 生成的子空间的维数。 矩阵 A 的列秩定义为 A 的列向量组的秩,也即矩阵的列空间的维数。类似地,矩阵的行秩定义为 A 的行向量组的秩,即矩阵的行空间的维数。
用线性映射定义
考虑线性映射:
f_A : F^n \to F^m
x \mapsto A \cdot x
对于每个矩阵 A,f_A 都是一个线性映射,同时,对每个F^n \to F^m 的 线性映射 f,都存在矩阵A使得 f=f_A。也就是说,映射
\Phi : \mathcal{M}_n (\mathbb{K}) \to \mathcal{L}(F^n,F^m)
A \mapsto f_A
是一个同构映射。所以一个矩阵 A 的秩还可定义为 f_A 的像的维度(像与核的讨论参见线性映射)。矩阵 A 称为 f_A 的变换矩阵。这个定义的好处是适用于任何线性映射而不需要指定矩阵,因为每个线性映射有且仅有一个矩阵与其对应。秩还可以定义为 {\displaystyle n-f} 的核的维度;秩-零化度定理声称它等于 f 的像的维度。
行秩列秩相等性
矩阵的行秩与列秩相等,是线性代数基本定理的重要组成部分。其基本证明思路是,矩阵可以看作线性映射的变换矩阵,列秩为像空间的维度,行秩为非零原像空间的维度,因此列秩与行秩相等,即像空间的维度与非零原像空间的维度相等(这里的非零原像空间是指约去了零空间后的商空间:原像空间)。这从矩阵的奇异值分解就可以看出来。
给出这一结果的两种证明. 第一个证明是简短的,仅用到向量的线性组合的基本性质. 第二个证明利用了正交性. 第一个证明利用了列空间的基, 第二个证明利用了行向量空间的基. 第一个证明适用于定义在标量域上的矩阵,第二个证明适用于内积空间。二者都适用于实或复的欧氏空间,也都易于修改去证明当A是线性变换的情形.
矩阵的秩的性质
我们假定A是在域F上的m × n矩阵并描述了上述线性映射。
- m × n矩阵的秩不大于m且不大于n的一个非负整数,表示为 rk(A) ≤ min(m, n)。有尽可能大的秩的矩阵被称为有满秩;类似的,否则矩阵是秩不足(或称为“欠秩”)的。
- 只有零矩阵有秩0
- A的秩最大为min(m,n)
- f是单射,当且仅当A有秩n(在这种情况下,我们称A有“列满秩”)。
- f是满射,当且仅当A有秩m(在这种情况下,我们称A有“行满秩”)。
- 在方块矩阵A (就是m = n)的情况下,则A是可逆的,当且仅当A有秩n(也就是A有满秩)。
- 如果B是任何n × k矩阵,则AB的秩最大为A的秩和B的秩的小者。即:
\operatorname{rank}(AB) \leq \min(\operatorname{rank}\ A, \operatorname{rank}\ B).
推广到若干个矩阵的情况,就是:
{\displaystyle \operatorname {rank} (A_{1}A_{2}\cdots A_{n})\leq \min(\operatorname {rank} \ A_{1},\operatorname {rank} \ A_{2},\cdots ,\operatorname {rank} \ A_{n}).} -
A的秩等于r,当且仅当存在一个可逆m × m矩阵X和一个可逆的n × n矩阵Y使得
XAY =
\begin{bmatrix}
I_r&0 \\
0&0
\end{bmatrix}
这里的Ir指示r × r 单位矩阵。
证明可以通过高斯消元法构造性地给出。 - 西尔维斯特不等式: 如果 A 是一个 m × n 的矩阵且 B 是 n × k 的, 则
\operatorname{rank}(A) + \operatorname{rank}(B) – n \leq \operatorname{rank}(A B).
这是下一个不等式的特例. - 这个不等式是由Frobenius提出的: 如果 AB, ABC 和 BC 有定义, 则
\operatorname{rank}(AB) + \operatorname{rank}(BC) \le \operatorname{rank}(B) + \operatorname{rank}(ABC). - 矩阵的秩加上矩阵的零化度等于矩阵的纵列数(这就是秩-零化度定理)。
- 如果 A 是实数上的矩阵,那么 A 的秩和它对应格拉姆矩阵的秩相等。于是,对于实矩阵
\operatorname{rank}(A^T A) = \operatorname{rank}(A A^T) = \operatorname{rank}(A) = \operatorname{rank}(A^T).
该性质可以通过它们的零空间证明. 格拉姆矩阵的零空间由所有满足A^T A x = 0的向量x组成。如果上式成立, 那么下式也成立: 0 = x^T A^T A x = |A x|^2,于是,{\displaystyle Ax=0},即{\displaystyle A^{T}A}与A的零空间相同.
向量组的线性相关性
将m个n维列向量排列成n\times m的矩阵A,这个对应矩阵的秩即为原向量组的秩。
原向量组线性相关的充分必要条件为:
r(A)
如果
r(A) = m
则向量组线性无关。另外,不存在
r(A) > m
特殊的,若向量的个数m大于向量的维数n,则根据:
r(A) \le n
这个向量组必然线性相关。
矩阵的秩怎么求
计算矩阵A的秩的最容易的方式是高斯消元法,即利用矩阵的初等变换生成一个行阶梯形矩阵,由于矩阵的初等变换不改变矩阵的秩,因此A的行梯阵形式有同A一样的秩。经过初等变换的矩阵的非零行的数目就是原矩阵的秩。
例如考虑4 × 4矩阵
A =
\begin{bmatrix}
2&4&1&3 \\
-1&-2&1&0 \\
0&0&2&2 \\
3&6&2&5 \end{bmatrix}
我们看到第2纵列是第1纵列的两倍,而第4纵列等于第1和第3纵列的总和。第1和第3纵列是线性无关的,所以A的秩是2。这可以用高斯算法验证。它生成下列A的行梯阵形式:
A =
\begin{bmatrix}
1&2&0&1 \\
0&0&1&1 \\
0&0&0&0 \\
0&0&0&0
\end{bmatrix}
它有两个非零的横行。
在应用在计算机上的浮点数的时候,基本高斯消去(LU分解)可能是不稳定的,应当使用秩启示(revealing)分解。一个有效的替代者是奇异值分解(SVD),但还有更少代价的选择,比如有支点(pivoting)的QR分解,它也比高斯消去在数值上更强壮。秩的数值判定要求对一个值比如来自SVD的一个奇异值是否为零的依据,实际选择依赖于矩阵和应用二者。
矩阵的秩的应用
计算矩阵的秩的一个有用应用是计算线性方程组解的数目。如果系数矩阵的秩等于增广矩阵的秩,则该方程组有解。在这种情况下,如果它的秩等于方程的数目那么该方程组有唯一的一个精确解。如果增广矩阵的秩大于系数矩阵的秩,则方程组是不一致(Inconsistent)的。