大家好,又见面了,我是你们的朋友全栈君。
矩阵乘积的秩
矩阵乘积 A B AB AB 的秩和矩阵 A , B A,B A,B 的秩有什么关系呢?
首先直观上说明。线性映射 A x = y A\mathbf{x}=\mathbf{y} Ax=y ,当矩阵 A A A 是列满秩矩阵时,即无关组时,映射是单射,所以定义域内一个向量 x \mathbf{x} x 对应值域内一个向量 y \mathbf{y} y ,值域内一个向量 y \mathbf{y} y 也对应定义域内一个向量 x \mathbf{x} x ,或者说,在值域和定义域内,该映射是一一映射,所以值域内所有向量张成空间的维度等于定义域内所有向量张成空间的维度。 A B AB AB 的定义域是矩阵 B B B 的向量组,值域是矩阵 A B AB AB 的向量组,所以它们张成的空间维度相等,即 r a n k A B = r a n k B rank AB = rank B rankAB=rankB ,是秩恒等映射。当矩阵 A A A 不是列满秩矩阵时,即相关组时,定义域内存在很多向量 x \mathbf{x} x 对应值域内零向量 0 \mathbf{0} 0 ,或者说,在值域和定义域内,该映射是多映射,不是一一映射。零向量 0 \mathbf{0} 0 不能张开空间,故变换后的空间维度会缩小,秩减小,即 r a n k A B ≤ r a n k B rank AB \leq rank B rankAB≤rankB。当矩阵 B B B 存在列向量满足 A b i = 0 A\mathbf{b_i}=\mathbf{0} Abi=0 时,变换后秩会减小;当不存在列向量满足 A b i = 0 A\mathbf{b_i}=\mathbf{0} Abi=0 时,即使矩阵 A A A 不是列满秩矩阵,变换后的秩也不会减小。 r a n k A B = r a n k B − k rank AB = rank B – k rankAB=rankB−k ,其中 k k k 是矩阵 B B B 列向量组的极大无关组中满足 A b i = 0 A\mathbf{b_i}=\mathbf{0} Abi=0 列向量的数量。同理可得, r a n k A B = r a n k A − k rank AB = rank A – k rankAB=rankA−k ,其中 k k k 是矩阵 A A A 行向量组的极大无关组中满足 a r i T B = 0 \mathbf{a^T_{ri}}B=\mathbf{0} ariTB=0 行向量的数量。
其次进行理论证明。矩阵乘积 A B = [ A b 1 , A b 2 , ⋯ , A b p ] AB=[ A\mathbf{b_1},A\mathbf{b_2},\cdots,A\mathbf{b_p} ] AB=[Ab1,Ab2,⋯,Abp] 中每个向量都是矩阵 A A A 列向量组的线性组合,所以矩阵 A B AB AB 列向量都位于矩阵 A A A 列空间内,其张成列空间自然是矩阵 A A A 列空间的子空间,故矩阵乘积 A B AB AB 的秩小于等于矩阵 A A A 的秩,即
r a n k A B ≤ r a n k A rank AB \leq rank A rankAB≤rankA
矩阵乘积 A B = [ a r 1 T B a r 2 T B ⋮ a r m T B ] AB = \left[ \begin{matrix} \mathbf{a^T_{r1}}B \\ \mathbf{a^T_{r2}}B \\ \vdots \\ \mathbf{a^T_{rm}}B \end{matrix} \right] AB=⎣⎢⎢⎢⎡ar1TBar2TB⋮armTB⎦⎥⎥⎥⎤ 中每个向量都是矩阵 B B B 行向量组的线性组合,所以矩阵 A B AB AB 行向量都位于矩阵 B B B 行空间内,其张成行空间自然是矩阵 B B B 行空间的子空间,故矩阵乘积 A B AB AB 的秩小于等于矩阵 B B B 的秩,即
r a n k A B ≤ r a n k B rank AB \leq rank B rankAB≤rankB
上面两不等式什么情况下取等号呢?矩阵 A B AB AB 列向量组虽然位于矩阵 A A A 列空间内,但当其为矩阵 A A A 列空间的基时, r a n k A B = r a n k A rank AB = rank A rankAB=rankA ,显然对矩阵 B B B 提出要求。矩阵 A B AB AB 行向量组虽然位于矩阵 B B B 行空间内,但当其为矩阵 B B B 行空间的基时, r a n k A B = r a n k B rank AB = rank B rankAB=rankB ,显然对矩阵 A A A 提出要求。
重要性质 矩阵 A A A 是列满秩矩阵时,对任意矩阵 B B B ,有 r a n k A B = r a n k B rank AB = rank B rankAB=rankB 。
证:首先证明当矩阵 B B B 是无关组时,矩阵 A B AB AB 也是无关组。只需证 $AB\mathbf{x} = \mathbf{0} $ 时, x = 0 \mathbf{x}=\mathbf{0} x=0 。 $AB\mathbf{x} = A(B\mathbf{x}) = \mathbf{0} $ ,因为矩阵 A A A 是列满秩矩阵,是无关组,所以 B x = 0 B\mathbf{x}=\mathbf{0} Bx=0 ,又因为矩阵 B B B 是无关组,所以 x = 0 \mathbf{x}=\mathbf{0} x=0 ,得证。矩阵 A B AB AB 和矩阵 B B B 都是无关组,所以它们列空间维度等于列数,又 A B AB AB 列数等于矩阵 B B B 列数,所以矩阵 A B AB AB 和矩阵 B B B 的列空间维度相等,即 r a n k A B = r a n k B rank AB = rank B rankAB=rankB 。
其次当矩阵 B B B 是相关组时,取其极大无关组 B ′ B’ B′ ,根据上面结论,得 r a n k A B ′ = r a n k B ′ rank AB’ = rank B’ rankAB′=rankB′ ,因为 r a n k A B = r a n k A B ′ = r a n k B ′ = r a n k B rank AB = rank AB’ = rank B’ = rank B rankAB=rankAB′=rankB′=rankB 。
矩阵 A A A 是列满秩矩阵,是 r a n k A B = r a n k B rank AB = rank B rankAB=rankB 的充分条件,不是必要条件。
重要性质 矩阵 B B B 是行满秩矩阵时,对任意矩阵 A A A ,有 r a n k A B = r a n k A rank AB = rank A rankAB=rankA 。
证法同理,把矩阵 A A A 看成行向量组即可。
还有一种证法,根据 r a n k A = r a n k A T rank A = rank A^T rankA=rankAT ,矩阵 B B B 是行满秩矩阵时,即矩阵 B T B^T BT 是列满秩矩阵 ,则 r a n k A B = r a n k ( A B ) T = r a n k B T A T = r a n k A T = r a n k A rank AB = rank (AB)^T = rank B^TA^T = rank A^T = rank A rankAB=rank(AB)T=rankBTAT=rankAT=rankA 。
矩阵 B B B 是行满秩矩阵,是 r a n k A B = r a n k A rank AB = rank A rankAB=rankA 的充分条件,不是必要条件。
重要性质 矩阵相乘,秩不增加,即 r a n k A B ≤ m i n ( r a n k B , r a n k A ) rank AB \leq min(rank B, rank A) rankAB≤min(rankB,rankA) 。矩阵 A A A 列满秩时,对任意矩阵 B B B 取等号;矩阵 B B B 行满秩时,对任意矩阵 A A A 取等号。
重要性质 可逆矩阵 P , Q P,Q P,Q,则 r a n k P A = r a n k A Q = r a n k P A Q = r a n k A rank PA = rank AQ = rank PAQ = rank A rankPA=rankAQ=rankPAQ=rankA ,即可逆矩阵变换保持秩不变。
因为可逆矩阵是行满秩矩阵和列满秩矩阵。该性质对证明矩阵秩关系十分重要。
这就能回答开头提到的两个问题。若矩阵 A A A 、 B B B 满足 A B = O A B = \mathbf{O} AB=O ,当矩阵 A A A 是列满秩矩阵时, r a n k B = r a n k O = 0 rank B = rank \mathbf{O} = 0 rankB=rankO=0 ,所以 B = O B= \mathbf{O} B=O ;当矩阵 B B B 是行满秩矩阵时, r a n k A = r a n k O = 0 rank A = rank \mathbf{O} = 0 rankA=rankO=0 ,所以 A = O A= \mathbf{O} A=O 。这一结论通常称为矩阵乘法的消除律。
线性变换把线性空间变换为线性空间,这两个空间的关系是,变换后的空间维度不会增加,只可能减小。矩阵的秩越大,认为矩阵包含的信息量越多,例如 0 0 0 秩矩阵是零矩阵,无任何信息。满秩矩阵,列向量组是基,包含信息最多,因为基可以表示空间任意向量。 行满秩矩阵,列向量组的极大无关组是基,包含信息也最多,但其包含冗余信息,因为除了基向量外,还有其它向量,这些向量就是冗余向量。从信息量角度看,线性变换可能会损失矩阵的信息,因为秩变小了,所以是有损变换。只有变换矩阵的列向量组是无关组时,才是无损变换。再从一个角度看,矩阵 A A A 是列满秩时,是无损变换,此时矩阵 A A A 的行数 m m m 大于等于列数 n n n ,矩阵 B B B 列向量维度是 n n n ,变换后矩阵 C = A B C=AB C=AB 列向量维度是 m m m ,维度提高了。所以线性变换只有升维变换才有可能保持秩不变,信息量不减小,降维变换可能会损失信息。
因为可逆矩阵是行满秩矩阵和列满秩矩阵。该性质对证明矩阵秩关系十分重要。
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/139257.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...