矩阵乘法的5种求解
忘了上大学时老师是否讲过对于矩阵乘法的求解。我现在能记得的也只有一种,就是下边我们要说的第一种。今天看到对矩阵乘法的五种求解,觉得挺有意思。
对于
其中
首先我们知道对于矩阵相乘,左边矩阵的列数需要和右边矩阵的行数相等,否则不能进行乘法。生成结果矩阵的行数等于左边矩阵的行数,列数为右边矩阵的列数。比如A为两行三列,而B为三行两列。C为两行两列。
1. 行列相乘
A的列数=B的行数=3
对于C的某一位置上的元素,比如第一行,第二列的元素,就是A的第一行,和B的第二列对应元素依次相乘再求和得到的。
这个相乘是我记的最熟的,但是我现在觉得下边几种理解更能体现线性代数的本质。
2.行向量变化
我们把B看成三个行向量(1,1)(0,1)(1,2)
先看A的第一行 1,2,0 它和B相乘就是对向量(1,1)乘以1 , 向量(0,1)乘以2 ,向量(1,2)乘以0,然后首尾相连,得到向量(1,3),也就是C的第一行。
对于A的第二行也是同理。它是对B的三个行向量另一种线性组合。
3.列向量变化
我们把A看成3个列向量(1,1)(2,1)(0,2) B的第一列1,0,1看成对于A的三个列向量的线性组合。得到C的第一列(1,3)
同理对于B的第二列。
4.分解乘积后求和
这个的意思是
其实仔细想想,它的意思和方法一是类似的。
5.局部分解
就是说把一个矩阵A和B分成很多小块,A和B的相乘就变成他们分解成的小块之间的运算。这个可能对于分布式计算有用。
总结
我觉得对于矩阵运算最正宗的运算,包括理解还是2和3。都是对于向量的线性组合。