矩阵:从数字表格到 3D 图形

矩阵只是一个由数字组成的矩形表格,却是数学中最有用的思想之一。它可以表示方程组、网络、图像或空间中的旋转。本页介绍主要运算、背后的历史,以及你每天在哪里遇到矩阵。

两个数字矩阵相乘,第一个矩阵的一行和第二个矩阵的一列被高亮
两个数字矩阵相乘,第一个矩阵的一行和第二个矩阵的一列被高亮

什么是矩阵?

矩阵是由 m 行 n 列数字组成的网格,称为 m x n 矩阵。单独一行或一列称为向量。大小相同的矩阵逐项相加,乘以一个数(标量)就是把每一项都乘以它。当你把矩阵看作把一个向量变成另一个向量的机器时,它真正的威力才显现出来。

矩阵乘法如何运作

要求 A x B 第 i 行第 j 列的项,就沿着 A 的第 i 行和 B 的第 j 列,把对应的数两两相乘再相加。所以 A 的列数必须等于 B 的行数。这个规则初看奇怪,但它意味着 A x B 的效果正好等于先做 B 再做 A。顺序很重要:先旋转再拉伸与先拉伸再旋转并不相同。

行列式与逆矩阵

方阵的行列式是一个数,表示该矩阵在二维中把面积、在三维中把体积放大多少倍。行列式为 2 会使每块面积加倍,负值还会把图形镜像翻转,而 0 表示空间被压扁。被压扁的图形无法再展开,所以恰好是行列式为 0 的矩阵没有逆矩阵。对其他矩阵,逆矩阵能撤销原矩阵的作用:A x A^-1 得到单位矩阵,对角线上是 1,其余为 0。

凯莱、西尔维斯特与矩阵的历史

早在有名字之前,数字表格就被用来解方程:约两千年前的中国《九章算术》已经在系数表中消元。17 世纪末,关孝和与莱布尼茨研究了行列式。1850 年,詹姆斯·约瑟夫·西尔维斯特引入了 matrix 一词(拉丁语意为子宫),因为他把它看作行列式诞生的源头。他的朋友阿瑟·凯莱于 1858 年发表《矩阵理论研究报告》,把矩阵当作具有加法、乘法和逆的独立对象,并提出了今天所称的凯莱-哈密顿定理。

计算机图形中的矩阵

每当游戏或 3D 查看器绘制一帧画面时,就有数以百万计的点与矩阵相乘。一个 4x4 矩阵可以一步完成点的旋转、缩放和平移,把多个矩阵相乘就能把一整串运动合并成一个矩阵。摄像机和透视投影也是矩阵。显卡正是为并行完成这些乘法而设计的,这也是它们后来特别适合训练神经网络的原因。

常见问题

能用一个矩阵除以另一个矩阵吗?

不能直接相除。取而代之的是乘以逆矩阵:A x B^-1 或 B^-1 x A,两者通常结果不同。只有当 B 是方阵且行列式不为 0 时才可行。

矩阵的秩说明了什么?

秩是真正相互独立的行数,也就是不能由其他行组合得到的行的数量。秩为 3 的 3x3 矩阵是可逆的。秩为 2 表示一切被压到一个平面上,秩为 1 则压到一条直线上。

什么是单位矩阵?

它是对角线上为 1、其余全为 0 的方阵,记作 I。它的作用相当于数字 1:A x I = I x A = A。任何矩阵的 0 次幂都定义为 I。

准备好尝试了吗?

在浏览器中打开 PictorX — 无需安装,无需信用卡即可启动。

打开矩阵计算器