矩阵乘法

函数与高等代数

jǔ zhèn chéng fǎ

矩阵乘法通过对行与列取点积来结合两个矩阵,得到的新矩阵代表变换的复合。

Formula

(AB)_{ij} = \sum_k a_{ik} b_{kj}
Visualization

Definition

矩阵乘法把两个矩阵结合起来的方式,是用第一个矩阵的行乘以第二个矩阵的列,再把结果相加,即"行点乘列",比逐个元素相乘要复杂得多。对 $A$($m \times n$)和 $B$($n \times p$),乘积 $AB$ 是 $m \times p$ 矩阵,$(AB)_{ij} = \sum_{k=1}^{n} a_{ik} b_{kj}$;$A$ 的列数必须等于 $B$ 的行数,乘法满足结合律和分配律,但一般不满足交换律,$AB \neq BA$,因为它代表线性变换的复合("先作用 $B$,再作用 $A$")。这使 $M_n(F)$ 成为一个带单位元的结合(对 $n \ge 2$ 是非交换的)$F$-代数;朴素的矩阵乘法需要 $O(n^3)$ 次运算,施特拉森算法可以达到 $O(n^{2.807})$,而最优矩阵乘法指数 $\omega < 2.371$ 仍然是计算数学中一个尚未解决的问题,被猜测趋近于 $2$。

Example

$\begin{bmatrix}1 & 2\\3 & 4\end{bmatrix} \times \begin{bmatrix}5 & 6\\7 & 8\end{bmatrix} = \begin{bmatrix}19 & 22\\43 & 50\end{bmatrix}$,其中左上角的元素是 $(1\times 5)+(2\times 7)=19$。对于 $A = \begin{bmatrix}2 & 0\\1 & 3\end{bmatrix}$ 和 $B = \begin{bmatrix}1 & 4\\2 & 1\end{bmatrix}$:$AB = \begin{bmatrix}2 & 8\\7 & 7\end{bmatrix}$,而 $BA = \begin{bmatrix}6 & 12\\5 & 3\end{bmatrix}$,证实了 $AB \neq BA$。凯莱-哈密顿定理指出每一个方阵都满足自身的特征多项式:对 $A = \begin{bmatrix}1 & 2\\3 & 4\end{bmatrix}$,特征多项式是 $\lambda^2 - 5\lambda - 2$,且 $A^2 - 5A - 2I = 0$。

Key Insight

矩阵乘法代表线性变换的复合,$AB$ 意味着"先作用 $B$,再作用 $A$",这解释了它为什么不满足交换律:先旋转再反射与先反射再旋转是不同的。快速矩阵乘法是计算数学中最重要的未解决问题之一,最优指数 $\omega$ 被猜测为 $2$,意味着近乎线性时间的乘法,但证明这一点仍然是一个悬而未决的问题。