【线性代数】【二】2.7 矩阵的秩

文章目录


前言

在前面的内容中,我们已经陆陆续续地给出了秩的概念。本文可以看成是对以往概念与性质的总结,那专门针对秩进行分析。


一、向量组的秩

在笔记2.2中,我们学习了极大线性无关组的概念。现在,我们给出向量组的秩定义:一组向量的秩表示该组向量的极大线性无关组的向量数量。结合向量空间的维数定义,可知由该组向量张成的向量空间的维数等于秩。

当我们往向量组中添加线性无关的向量时,秩也会增加。但是我们可以一直重复这个过程来增加秩吗?换言之,我们总能找到一个向量,与原向量组线性无关吗?

答案当然是否定的。由 n n n维向量组成的一组向量,其秩的上界为 n n n 。因为 n n n维空间中任意n个线性无关的向量构成该空间的一组基。因此当增加到大于 n n n个向量时,新增加的向量一定可以被之前 n n n个向量线性表示。

二、矩阵的秩

矩阵的秩即为矩阵列向量组的秩,也等于矩阵行向量组的秩,也等于其化为行最简矩阵时主元的数量。下面,我们分析几种常见操作对矩阵秩的影响。

1)乘上一个矩阵

r ( A B ) ⩽ r ( A ) r(\bm{AB})\leqslant r(\bm{A}) r(AB)⩽r(A)

这个性质在笔记2.6中已有说明,即 A B \bm{AB} AB的列向量为 A \bm{A} A的列向量的线性组合,而线性组合得到的向量与原向量组是线性相关的,因此无法增加线性无关的列向量数量。当 B \bm{B} B为可逆矩阵时,等号一定成立,证明可见笔记2.6。

2)加上一个矩阵

r ( A + B ) ⩽ r ( A ) + r ( B ) r(\bm{A}+\bm{B})\leqslant r(\bm{A})+r(\bm{B}) r(A+B)⩽r(A)+r(B)

矩阵相加,相当于将两个矩阵的列向量做了一个简单的线性组合,同样的,线性组合无法增加与两原矩阵的列向量线性无关的向量。

3)增广矩阵

r ( A + B ) ⩽ r ( [ A , B ] ) ⩽ r ( A ) + r ( B ) r(\bm{A}+\bm{B})\leqslant r([\bm{A,B}])\leqslant r(\bm{A})+r(\bm{B}) r(A+B)⩽r([A,B])⩽r(A)+r(B)

矩阵相加即对增广矩阵列向量进行线性组合,因此秩小于等于增广矩阵。增广矩阵的增加的线性无关列向量不会超过 r ( B ) r(\bm{B}) r(B)。

max ⁡ { r ( A ) , r ( B ) } ⩽ r ( [ A , B ] ) \max\{r(\bm{A}),r(\bm{B})\}\leqslant r([\bm{A,B}]) max{r(A),r(B)}⩽r([A,B])

增广矩阵不会使得原本线性无关的向量变成线性相关,因此不会减少秩。

三、矩阵的可逆性与秩

因为矩阵的秩等于行最简的主元数,而n阶可逆矩阵的行等价于n阶单位矩阵,即主元素等于n。因此,方阵的秩等于列数时必然可逆。

至此,我们得到了一组等价关系:

n阶方阵可逆    ⟺    \iff ⟺行等价于n阶单位阵    ⟺    \iff ⟺秩等于n    ⟺    \iff ⟺零空间维度为0,齐次方程组只有零解    ⟺    \iff ⟺矩阵的列(行)向量均线性无关


总结

之前虽然已经提到秩的定义并推导了一些性质,但还不够全面。本文可以算是对矩阵的秩的一点简单的查缺补漏吧。

相关推荐
闯闯爱编程1 小时前
数组与特殊压缩矩阵
数据结构·算法·矩阵
databook1 小时前
线性模型与多分类问题:简单高效的力量
python·机器学习·scikit-learn
就决定是你啦!7 小时前
机器学习 第一章 绪论
人工智能·深度学习·机器学习
liruiqiang0510 小时前
循环神经网络 - 简单循环网络
人工智能·rnn·深度学习·神经网络·机器学习
ElseWhereR10 小时前
矩阵对角线元素的和 - 简单
线性代数·矩阵
智能汽车人11 小时前
自动驾驶---学术论文的常客:nuScenes数据集的使用
人工智能·机器学习·自动驾驶
小白的高手之路11 小时前
torch.nn.Conv2d介绍——Pytorch中的二维卷积层
人工智能·pytorch·python·深度学习·神经网络·机器学习·cnn
liruiqiang0512 小时前
循环神经网络 - 通用近似定理 & 图灵完备
人工智能·rnn·深度学习·神经网络·机器学习
Panesle13 小时前
广告推荐算法:COSMO算法与A9算法的对比
人工智能·算法·机器学习·推荐算法·广告推荐
飞川撸码13 小时前
【LeetCode 热题100】240:搜索二维矩阵 II(详细解析)(Go语言版)
leetcode·矩阵·golang