矩阵乘法要义

1. 行乘列不等于列乘行(交换律不成立)

这是一个基本事实. 从最简单情形引入,考虑一行和一列相乘.

$$ \begin{bmatrix} a & b & c \end{bmatrix} \begin{bmatrix} d \\ e \\ f \end{bmatrix} \neq \begin{bmatrix} d \\ e \\ f \end{bmatrix} \begin{bmatrix} a & b & c \end{bmatrix} $$

也就是说,交换律是不成立的. 借用一个不太准确的类比,矩阵的乘法有「手性」,写在左边的和写在右边的,作用完全不同. 接下来分别解释左边和右边两个位置的作用.

为讨论方便,记左侧乘子为$L$,右侧乘子为$R$,最终结果为$M$. 以下分析

$$LR=M$$

2. 左侧:$L$一行组合$R$所有行形成$M$一行

$L$有几行,$M$就有几行. $L$每行中的元素,对$R$各行作线性组合,就得到$M$的一行.

例1 考虑

$$\underset{L}{\begin{bmatrix} a & b & c \\ d & e & f \\ g & h & i \end{bmatrix}} \underset{R}{ \begin{bmatrix} m & n & o \\ p & q & r \\ s & t & u \end{bmatrix}} = \underset{M}{\begin{bmatrix} ? & ? & ? \\ ? & ? & ? \\ ? & ? & ? \end{bmatrix}}$$
  1. $L$有几行,$M$就有几行. 此处$L$有$3$行,故$M$有$3$行.
  2. $L$每行中的元素,对$R$各行作线性组合,就得到$M$的一行. 如$M$的第$1$行,应当由$L$的第$1$行得到. 如何得到?以本行中的元素为因子,分别对$R$各行作线性组合: $$\begin{align*} M_{1:} &= a \begin{bmatrix} m & n & o \end{bmatrix} + b \begin{bmatrix} p & q & r \end{bmatrix} + c \begin{bmatrix} s & t & u \end{bmatrix} \\ &= \begin{bmatrix}am+bp+cs & an+bq+ct & ao+br+cu\end{bmatrix} \end{align*} $$这样就算出一行. 以此类推, $$\begin{align*}M_{2:} &= d \begin{bmatrix} m & n & o \end{bmatrix} + e \begin{bmatrix} p & q & r \end{bmatrix} + f \begin{bmatrix} s & t & u \end{bmatrix} \\ &= \begin{bmatrix}dm+ep+fs & dn+eq+ft & do+er+fu\end{bmatrix} \end{align*}$$更有 $$M_{n:} = L_{n1} R_{1:} + L_{n2} R_{2:} + \dots + L_{nk} R_{k:}$$

例2 考虑极端情况

$$ \underset{L}{ \begin{bmatrix} a & b & c \end{bmatrix}} \underset{R}{ \begin{bmatrix} m & n & o \\ p & q & r \\ s & t & u \end{bmatrix}} = M $$

由于$L$只有$1$行,$M$也就有一行. 根据刚才的算法,有:

$$\begin{align*} M &= a \begin{bmatrix} m & n & o \end{bmatrix} + b \begin{bmatrix} p & q & r \end{bmatrix} + c \begin{bmatrix} s & t & u \end{bmatrix} \\ &= \begin{bmatrix}am+bp+cs & an+bq+ct & ao+br+cu\end{bmatrix} \end{align*}$$

例3 考虑极端情况

$$\underset{L}{ \begin{bmatrix} a \\ b \\ c \end{bmatrix}} \underset{R}{ \begin{bmatrix} m & n & o \\ p & q & r \\ s & t & u \end{bmatrix}} = M$$

不可乘. 因为对于$L$的每一行,只有$1$个元素,无法找到$3$个元素(因子)对$R$的$3$行作线性组合.

3. 右侧:$R$一列组合$L$所有列形成$M$一列

$R$有几列,$M$就有几列. $R$每列中的元素,对$L$各列作线性组合,就得到$M$的一列.

例4 考虑与例1完全相同的式子

$$\underset{L}{ \begin{bmatrix} a & b & c \\ d & e & f \\ g & h & i \end{bmatrix}} \underset{R}{ \begin{bmatrix} m & n & o \\ p & q & r \\ s & t & u \end{bmatrix}} = \underset{M}{ \begin{bmatrix} ? & ? & ? \\ ? & ? & ? \\ ? & ? & ? \end{bmatrix}}$$

例1中所用的观点是关注$L$,而本例中改为关注$R$.

  1. $R$有几列,$M$就有几列. 此处$R$有$3$列,故$M$有$3$列.
  2. $R$每列中的元素,对$L$各列作线性组合,就得到$M$的一列. 如$M$的第$1$列,应当由$R$的第$1$列得到. 如何得到?以本列中的元素为因子,分别对$L$各列作线性组合: $$\begin{align*} M_{:1} &= m \begin{bmatrix} a \\ d \\ g \end{bmatrix} + p \begin{bmatrix} b \\ e \\ h \end{bmatrix} + s \begin{bmatrix} c \\ f \\ i \end{bmatrix} \\ &= \begin{bmatrix} ma+pb+sc \\ md+pe+sf \\ mg+ph+si \end{bmatrix} \end{align*}$$这样就算出一列. 以此类推, $$\begin{align*} M_{:2} &= n \begin{bmatrix} a \\ d \\ g \end{bmatrix} + q \begin{bmatrix} b \\ e \\ h \end{bmatrix} + t \begin{bmatrix} c \\ f \\ i \end{bmatrix} \\ &= \begin{bmatrix} na+qb+tc \\ nd+qe+tf \\ ng+qh+ti \end{bmatrix} \end{align*}$$更有 $$M_{:n} = R_{1n} L_{:1} + R_{2n} L_{:2} + \dots + R_{kn} L_{:k}$$

例5 考虑与例2完全相同的极端情况

$$\underset{L}{ \begin{bmatrix} a & b & c \end{bmatrix}} \underset{R}{ \begin{bmatrix} m & n & o \\ p & q & r \\ s & t & u \end{bmatrix}} = M$$

由于$R$有$3$列,$M$必有$3$列. 根据刚才的算法,有

$$ \begin{align*} M &= \begin{bmatrix} ma+pb+sc & na+qb+tc & oa+rb+uc \end{bmatrix} \end{align*} $$

与我们在例2中得到的结果相同.

例6 考虑与例3完全相同的极端情况

$$\underset{L}{ \begin{bmatrix} a \\ b \\ c \end{bmatrix}} \underset{R}{ \begin{bmatrix} m & n & o \\ p & q & r \\ s & t & u \end{bmatrix}} = M$$

以$R$的视角来看,同样不可乘. 因为$R$的每一列,都有$3$个元素,因此$L$中必须有$3$列,才能作线性组合. 然而$L$只有$1$列.

4. 综合:内积与外积

回到一开始的问题:

$$\begin{bmatrix} a & b & c \end{bmatrix} \begin{bmatrix} d \\ e \\ f \end{bmatrix} \neq \begin{bmatrix} d \\ e \\ f \end{bmatrix} \begin{bmatrix} a & b & c \end{bmatrix}$$

现在我们已经能够通过计算说明. 上式等价于

$$ \begin{bmatrix} ad+be+cf \end{bmatrix} \neq \begin{bmatrix} ad & bd & cd \\ ae & be & ce \\ af & bf & cf \end{bmatrix} $$

事实上,这是两种不同的运算. 等号左边称为内积(或点积),等号右边称为外积.