乘法和逆矩阵 matrix multiplication and inverses
首先说一下矩阵乘法。在之前的篇章里已经说明过一些矩阵的乘法的理解,在这一篇对整个矩阵乘法做一个概括,并提出新的理解。
我们考虑矩阵乘法:
这里为行列的矩阵,为行列的矩阵,则为行列的矩阵。
倘若要求解的第行第列的数值(记为),那么应该让的第行的各个元素分别乘以的第列的各个对应元素。即:
中每个元素都可以这么计算。这就是矩阵乘法的第一种方法。
再考虑矩阵乘以一列,比如乘以的第列,这样就可以得到的第一列。这既可以用上面的第一种方法延展而来,也可以理解为之前所说的矩阵乘以一个列向量(可以考虑为个单独的列向量),那么这就是各列的线性组合。由此可以得到矩阵乘法的第二种方法:即为各列的线性组合,而中数字告诉是怎样的线性组合。
同理,可以得到矩阵乘法的第三种方法:即为各行的线性组合,而中数字告诉是怎样的线性组合。
接下来再考虑这么一件事:由上述得到矩阵乘法的第二和三种方法,的一列()乘以的一行()呢?举例:
可以发现,结果的列是原列的倍数,行是原行的倍数。
先给出矩阵乘法的第四种方法:各列与各行的乘积之和。
再考虑一个例子,对上述等式做个扩展:
事实上,可以看作一个行空间,即行所有可能的线性组合。该行空间是一个直线,是行向量上的直线,所有行都在此直线上;同理,可以看作为一个列空间,是列向量上的直线,所有列都在此直线上。
最后再说一下分块乘法(block multiplication):对于运算,可以将和分别分成多块,这些块的大小可不相等如:
推荐参考【2.5】矩阵分块相乘 - 知乎这篇文章进一步学习。
接下来讨论矩阵的逆。
若对于方阵,存在满足下面的等式:
其中左边为左逆,右边为右逆(),则称矩阵可逆(invertible)或非奇异(non-singular)。
先考虑奇异矩阵,即没有逆的情况。
举例:。假设乘以某矩阵得到。那么我们考虑列,结果中的列都应该是中相应列的倍数(在之前矩阵乘法中得到的结论),而单位矩阵的第一列为,不可能是各列线性组合而来的,因为中两列共线,其所有线性组合都在这条直线上,而(1,0)不在。那么我们可以得出一个结论:
如果存在向量,且,使得,则称这样的矩阵没有逆。
例如刚才例子的,如果取,则有
简单用反证法证明一下:如果可逆,那么即,即,与矛盾,因此原假设成立。这也不难理解,因为若存在向量,且,使得,则就可以表明各列经线性组合可以得到零向量,即各列共线(为行向量,而且这样应该放在的左边)或各行经线性组合可以得到零向量,即各行共线(为列向量)(这两个实质上是一样的)。
现在考虑可逆的情况,那么我们如何求解逆矩阵呢?假设如下情况:
乘以的第列等于单位矩阵第列。
下面讨论高斯-若尔当消元法(Gauss-Jordan Elimination),它可以用来同时处理两个方程组,也可以用来求解矩阵的逆。
处理一个方程组:,。倘若我们想同时计算这两个方程组,那么我们可以写出增广矩阵:
化成左边为单位矩阵,右边为另一个矩阵的形式,实际上,右边的矩阵就是的逆矩阵。我们对上式的一系列操作可以归结为左乘了一个消元矩阵,使得,那么可以推出,显然我们就实现了
这样就可以简单地计算出逆矩阵了。
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 清华大学推出第四讲使用 DeepSeek + DeepResearch 让科研像聊天一样简单!
· 推荐几款开源且免费的 .NET MAUI 组件库
· 实操Deepseek接入个人知识库
· 易语言 —— 开山篇
· Trae初体验