本节是网易公开课上的麻省理工大学线性代数课程第三节: 矩阵乘法和逆矩阵 的学习笔记。
矩阵乘法
矩阵相乘,并不一定要求是方阵。
如果矩阵 A 是一个 mxn 的矩阵(m行,n列),则矩阵 B 必须是一个 nxp(n行,p列)的矩阵,这样两者才能相乘,相乘的结果矩阵 C 是一个 mxp(m行,p列)的矩阵。
一般法则
假设 AB=C 。那 C34=?
答案:
其中: A3,:⋅B:,4 表示矩阵 A 的第三行元素(一个向量)和矩阵 B 的第四列元素(一个向量)的点积。
列方法
继续上面的 AB=C 。
矩阵 A(mxn) 乘以矩阵 B(nxp) 可以理解为矩阵 A 分别乘以矩阵 B 的每一列的向量(总共p个),得到的结果分别对应矩阵 C 中对应的某列元素。而矩阵 A 乘以向量可以理解为矩阵 A 中各列的线性组合(可参看 第一节 中的知识)。
这样,矩阵 C 中的每一列其实就是矩阵 A 中的每一列的线性组合,而矩阵 B 中的数字相当于告诉怎么进行线性组合。
行方法
矩阵 A(mxn) 乘以矩阵 B(nxp) 可以理解为矩阵 A 中的每一行的向量乘以矩阵 B,得到的结果分别对应矩阵 C 中对应的某行元素。而向量乘以矩阵 B 可以理解为矩阵 B 中各行的线性组合。
这样,矩阵 C 中的每一行其实就是矩阵 B 中的每一行的线性组合,而矩阵 A 中的数字相当于告诉怎么进行线性组合。
列乘以行
如果使用一个行向量(1xn)乘以一个列向量(nx1)结果是一个数,那使用列向量(mx1)乘以行向量(1xp)呢?
结果会是一个mxn矩阵,这个矩阵非常特殊。它的每一列元素分别是列向量的线性组合,它的每一行元素都分别是行向量的线性组合。
也就是说,结果矩阵的每一行都依赖于向量 [1,6]
,如果画出这个矩阵的所有行向量,它们都是同一个方向。同理,如果画出这个矩阵的所有列向量,它们也都是同一个方向的。
换一种说法,该矩阵的行空间是一条直线,其所有的行向量都在过(1,6)
这两点的直线上。
基于这种思路,我们来使用列乘以行来解决矩阵相乘的问题。AB 等于矩阵 A 各列与矩阵 B 各行乘积之和。
分块乘法
可以将矩阵 A 分成几部分,简单起见,分成4部分,即四块。简单起见,假设矩阵 A 是方阵(mxm),矩阵 B 也是方阵(mxm)。一张图说明问题:
逆矩阵
可逆(非奇异)
假设一个矩阵 A ,如果存在左逆,则: A−1