矩阵乘法和逆矩阵
睡不醒的鲤鱼 2021-06-28 数学基础 线性代数
一、矩阵乘法
我们通过四种方法讨论如何使矩阵 A 与 B 相乘得到矩阵 C。
其中 A 为 m×n 矩阵,而 B 为 n×p 矩阵,则 C 为 m×p 矩阵,记 cij为矩阵 C 中第 i 行第 j 列的元素。
1.1 标准方法(行乘以列)
矩阵乘法的标准计算方法是通过矩阵 A 第 i 行的行向量和矩阵 B 第 j 列的列向量点积得到 cij。
cij=k=1∑naikbkj=ai1b1j+ai2b2j+ai3b3j+… 1.2 列操作
列操作是指矩阵 C 的第 j 列是通过矩阵 A 乘以矩阵 B 的第 j 列的列向量得到的。
这表明矩阵 C 的列向量是矩阵 A 的列向量的线性组合。
AB=A[b1b2...bp]=[Ab1Ab2...Abp] 上式中 bi,Abi 均为列向量,其中 Abi 为矩阵 A 中列向量的线性组合。
1.3 行操作
行操作是指矩阵 C 的第 i 行是通过矩阵 A 的第 i 行的行向量乘以矩阵 B 得到的。
这表明矩阵 C 的行向量是矩阵 B 行向量的线性组合。
AB=⎣⎢⎢⎢⎢⎢⎢⎢⎡a1a2⋮⋮am⎦⎥⎥⎥⎥⎥⎥⎥⎤B=⎣⎢⎢⎢⎢⎢⎢⎢⎡a1Ba2B⋮⋮amB⎦⎥⎥⎥⎥⎥⎥⎥⎤ 上式中 ai,aiB 均为行向量,其中 aiB 为矩阵 B 中行向量的线性组合。
1.4 列乘以行
矩阵 A 的第 k 列是一个 m×1 的向量,而矩阵 B 的第 k 行是一个 1×p 的向量,两
向量相乘会得到一个矩阵 Ck,将所有的 n 个矩阵相加即得到 C。
AB=k=1∑n⎣⎢⎢⎡a1k⋮amk⎦⎥⎥⎤[bk1⋯bkp] 可以从矩阵乘法对加法的分配率推导出来。
1.5 分块乘法
如果将矩阵 A 和矩阵 B 划分为严格匹配的区块,则矩阵乘法可以通过分块的乘法加以实现。
[A1A3A2A4][B1B3B2B4]=[C1C3C2C4] 其中 C1=A1B1+A2B3,计算方法与标准算法中矩阵里元素的操作方式相同。
二、逆矩阵
2.1 逆矩阵介绍
如果矩阵 A 是方阵,若存在逆矩阵 A−1,使得 A−1A=I=AA−1,我们称矩阵 A 可逆(invertible)或者矩阵 A 非奇异(nonsingular);反之,如果 A 为奇异(singular),则其没有逆矩阵,且它的行列式为 0。
对于可逆矩阵,求它的逆矩阵是一个重要的问题。
[1237][abcd]=[1001]AA−1I 从 “列操作” 的角度来看,求逆矩阵过程其实和求 Ax=b 相同,只是这里 x 为矩阵 A−1 的第 j 列,而 b 为单位阵 I 的第 j 列,如下所示。
[1237][ab]=[10] [1237][cd]=[01] 解这样两个方程就行了,但是这样做低阶矩阵还好,高阶矩阵计算量未免太大了,所以下面来介绍 高斯-若尔当消元法。
2.2 高斯-若尔当消元法
对于前面的二阶矩阵,求逆相当于两组方程,而高斯-若尔当消元法可以同时处理两个方程:
[12371001]→[10311−201]→[10017−2−31] AIIA−1 在用高斯消元法得到上三角矩阵之后,按照若尔当的做法继续消元,用第一行减去第二行的若干倍,最后原矩阵变为单位阵,这时右侧的矩阵即为逆矩阵,下面来检验一下该方法的正确性。
对 A 进行一系列消元操作,相当于左乘消元矩阵 E,此时消元的结果为 EA=I,因为右侧矩阵也进行了同样消元操作,也等于左乘矩阵 E,则右侧矩阵为 EI=E。由 EA=I 可知这里的 E 就是 A 的逆矩阵,因此右侧矩阵给出的就是逆矩阵 E=A−1。
E[AI]=[EAEI]=[IA−1] 三、参考资料