【几何系列】矩阵(一):矩阵乘法和逆矩阵

上一篇《【几何系列】向量:向量乘法(标量积、向量积)和向量插值》讲了向量,向量特殊的矩阵行向量是 $n imes 1$ 矩阵,列向量是 $1 imes n$ 矩阵。

一般的 $m imes n$ 矩阵是由 $mn$ 个元素排列成 $m$ 行 $n$ 列的表。 

矩阵乘法

矩阵加法和标量乘法都是直观的,不做过多赘述。

矩阵乘法是最重要的运算,但是它的定义却并非直观:

对于矩阵 $A_{l imes m}=a_{ij})$ 和矩阵 $B_{m imes n}=b_{ij})$ 相乘,得到矩阵 $P_{l imes n}=p_{ij})$,即 $P=AB$,有:

$$p_{ij}=sum _
u a_{i
u}b_{
u j}$$

例如:

$$egin{bmatrix}
2 & 1 & 0\
1 & 2 & 5
end{bmatrix}egin{bmatrix}
1\
-1\
4
end{bmatrix}=egin{bmatrix}
2 imes 1+1 imes -1)+0 imes 4\
1 imes 1+2 imes -1)+5 imes 4
end{bmatrix}=egin{bmatrix}
1\
18
end{bmatrix}$$

直观理解矩阵乘法

A Programmer’s Intuition for Matrix Multiplication》给出了 3 种直观理解矩阵乘法的思路,我认为值得借鉴。

思路 1:矩阵乘法是对几何平面的缩放/旋转/倾斜等

如果把矩阵 B 看作是平面或超平面上的数据的话,那么左乘矩阵 A 的确可以看作是几何变换。事实上,几何变换就是本系列非常关注的背景。

思路 2:把矩阵乘法理解为线性映射

这是一个技术上非常准确的说法,即线性变换的角度。

据维基百科上的解释,矩阵最开始的引入(1812 年的法国数学家 Jacques Philippe Marie Binet)也是为了表示线性映射函数组合(function composition)。它的要点是:

已知 $n$ 维列向量:

以及作用于该列向量的线性映射 $A$,它将 $n$ 维列向量映射为 $m$ 维列向量:

注意到这里我们发现已经用到矩阵表示了。

左乘 $n$ 维向量,这个矩阵左乘的动作,实际表示映射,表示函数。它把 $n$ 维向量,映射/变换为 $m$ 维向量。

接下来,如果已知另一个线性映射 $B$,它可以将 $m$ 维向量空间映射到 $p$ 维向量空间。通过计算,会发现矩阵 B 和矩阵 A 的乘法 $BA$,可以表示组合映射(composite map)$Bcirc A$,而组合映射的含义可以简单用下式表示:

 

矩阵 $B$ 左乘矩阵 $A$ 的动作,是把原始映射/函数 $A$ 进行了重新组合,成为了一个新的映射/函数:$BA$。

总而言之,从这个思路来看,可以把矩阵乘法看作是:对右侧的矩阵实施一个线性变换的函数

思路 3:把矩阵乘法看做是信息流,依次对数据进行编码转换。

从这个角度,把某些矩阵看作数据,某些矩阵看作是操作数据的函数。矩阵乘法就是一个对数据执行操作的工作流。 

希望这几个思路能够对矩阵乘法产生足够多的直观感受。矩阵乘法是如此重要,可以说怎么多说都不为过。

矩阵乘法的性质

矩阵乘法满足分布律和结合律

$$AB+B’)=AB+AB’, A+A’)B=AB+A’B$$

$$AB)C=ABC)$$

但是矩阵乘法不满足交换律

$$AB
eq BA, usually$$

如果理解了前面的思路 2(线性映射)的话,会发现这是显然的。

情况 1:把 $x$ 先执行映射 $A$ 得到一个中间结果 $x’$,再对它执行映射 $B$ 得到最后结果;

情况 2:把 $x$ 先执行映射 $B$ 得到一个中间结果 $x”$,再对它执行映射 $A$ 得到最后结果。

两种情况显然不是同一回事,事实上甚至不能同时满足映射 $A$ 和 $B$ 对输入维度的要求。

不过如果凑巧 $AB=BA$,则称 $A$ 和 $B$ 是可交换的

单位矩阵

单位矩阵对应实数中 1 的概念。

首先,$a_{ii}$ 称为矩阵中的对角元素

如果矩阵中的非零值都是对角元素,则称为对角矩阵

单位矩阵定义为:对角元素都为 1 的 $n imes n$ 对角矩阵,记为 $I_n$ 或者 $I$。

矩阵 $A$ 乘以单位矩阵就是 $A$ 自身:

$$AI=IA=A$$

从几何变换的角度来说,乘以单位矩阵不会改变原有的几何状态;从线性映射的角度来说,单位矩阵就是输入等于输出的映射。

矩阵的逆

$A$ 是 $n imes n$ 方阵,如果存在矩阵 $B$ 满足 $AB=I$ 且 $BA=I$,则 $B$ 是 $A$ 的逆矩阵,记为 $A^{-1}$,即有 $A^{-1}A=I=AA^{-1}$。

存在逆的矩阵称为可逆矩阵

首先,逆矩阵具有唯一性:如果 $A$ 存在逆矩阵,那么只能有一个逆矩阵。

此外,如果 $A$ 和 $B$ 都是 $n imes n$ 的可逆矩阵,那么必然有:

$AB$、$A^{-1}$、$B^{-1}$ 都是可逆的;
$AB)^{-1}=B^{-1}A^{-1}$、$A^{-1})^{-1}=A$;
$A_1,cdots ,A_m)^{-1}=A_m^{-1},cdots ,A_1^{-1})$

OK,以上是定义和性质。那么,逆矩阵究竟意味着什么?

线性映射中的逆的意义

对于一个向量 $x$,假设它经过左乘一个映射 $A$,变成了向量 $Ax$;那么我们再假设,这个映射 $A$ 存在一个逆 $A^{-1}$,我们让向量 $Ax$ 左乘这个逆,得到什么?$A^{-1}Ax=Ix=x$,得到原来的向量 $x$!

这个逆 $A^{-1}$ 抵消了 $A$ 对于向量 $x$ 的影响。也就是说,矩阵和它的逆就像函数与反函数作用力与反作用力的关系一样。

几何变换中的逆的意义

考虑矩阵 $A$:

$$A=frac{1}{sqrt{2}}egin{bmatrix}
1 & -1\
1 & 1
end{bmatrix}$$

它的作用是绕原点逆时针旋转 45°:

它的逆矩阵为:

$$A^{-1}=frac{1}{sqrt{2}}egin{bmatrix}
1 & 1\
-1 & 1
end{bmatrix}$$

它的作用刚好相反,绕原点顺时针旋转 45°:

所以说类似地,如果说矩阵 $A$ 代表某种几何变换的话,$A^{-1}$ 就是正好与之相反的几何变换

可逆与不可逆 

那么,不可逆又意味着什么? 也许从几何变换的角度更容易理解。

不可逆意味着这个几何变换是无法“抵消”的,由于几何实体的维度和表征能力降低,无法再将变换后的几何形状变换回去。例如:将正方形变换成了一条线或者一个点。

经过不可逆的矩阵

$$A=egin{bmatrix}
0 & 0\
0 & 1
end{bmatrix}$$

变为:

或者经过不可逆的矩阵

$$B=egin{bmatrix}
0 & 0\
0 & 0
end{bmatrix}$$

变为:

此时没有任何对应的矩阵乘法可以将其变换回去了。

下一篇:【几何系列】矩阵(二):行列式和特征向量、特征值

参考

A Programmer’s Intuition for Matrix Multiplication
An Intuitive Guide to Linear Algebra
Wiki: Matrix multiplication
《Algebra》by Michael Artin
《Rotation Transforms for Computer Graphics》by John Vince

Published by

风君子

独自遨游何稽首 揭天掀地慰生平

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注