线性代数 抽丝剥茧系列之矩阵的秩与方程解的情况
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了线性代数 抽丝剥茧系列之矩阵的秩与方程解的情况相关的知识,希望对你有一定的参考价值。
正文
1. 秩简介
对于方程Ax = b
:
$$\\begincasesx_1 + x_2 +x_3= 12 \\x_1 - 3x_2 +x_3=8\\x_1 -x_2 +x_3= 10\\endcases$$
其对应的增广矩阵为:
$$\\overlineA = \\beginbmatrix1&1&1&|&12\\1&-3&1&|&8\\1&-1&1&|&10\\endbmatrix$$
通过初等行变换
可以转化为:
$$\\beginbmatrix1&1&1&|&12\\1&-3&1&|&8\\0&0&0&|&0\\endbmatrix$$
可以看到其中第三行$r_3$可以由第一行$r_1$和第二行$r_2$线性表示,即$\\frac12r_1 + \\frac12r_2 = r_3$,所以真正决定Ax = b
解的方程数量只有2个,即该方程对应的矩阵A
的秩r(A) = 2
。
2. 矩阵的秩与方程解的关系
矩阵的秩体现了方程解的情况,也可以反映出对应系数矩阵的信息
- 当
r = m = n
:
只有当矩阵A是方阵
的时候才会满足,这意味着:
-
无论行或列都不存在线性相关,所有信息在完整的矩阵中才可以全部体现;
-
将
矩阵A
转化为矩阵U(行阶梯矩阵)
或者矩阵R(行最简阶梯矩阵)
的时候不会出现全部为0
的行; -
矩阵对应的行列式
|A|
是可逆的; -
对于方程
Ax = b
来说有唯一解
。
- 当
r = n < m
:
此时列满秩,说明矩阵中某些行向量可以由其他行向量线性表示,意味着:
n < m
表示有效方程数量大于未知量个数,即未知量少而方程多
,行信息冗余;- 对于
未知量x
的限制条件较多,方程Ax = b
可能无解,也可能存在唯一解(当增广矩阵
$\\overlineA$ 的秩与矩阵A
的秩 相同)。
- 当
r = m < n
:
此时仅行满秩,说明矩阵中某些列向量可以由其他列向量线性表示,意味着:
m < n
表示列向量的个数代表未知量
的个数,即方程少而未知量多
,列信息冗余;- 由于一个方程最多求解(限制)一个未知量,所以自由未知量的个数永远不为0,即对于
任意b
,方程Ax = b
都有无穷多解。
- 当
r < m, r < n
:
- 此时行列均不满秩,根据上面的思路可以得到方程解的情况有:无解和无穷多解集。
附录 python求矩阵的秩
import numpy as np
A = np.array([[1, 1, 1], [2, -3, -1], [1, 1, 1]]).T
b = np.array([12, 8, 10])
# A的秩
print(f"矩阵A的秩为np.linalg.matrix_rank(A)")
以上是关于线性代数 抽丝剥茧系列之矩阵的秩与方程解的情况的主要内容,如果未能解决你的问题,请参考以下文章
机器学习|数学基础Mathematics for Machine Learning系列之线性代数:矩阵的秩线性方程组的解