数学 · 线代

矩阵运算(乘法、转置、逆、消元)

Matrix Algebra: Multiplication, Transpose, Inverse

约 20 分钟 · v1

矩阵运算

math/matrix-algebra · MATH2099
0 / 3

1 矩阵就是一张"带括号的表格"

别被名字吓到。矩阵 (matrix) 不过是一张排成长方形的数表——和你天天看的 Excel、课程表、价目表是同一个东西,只是数学家给它两边加了对括号、规定了几条计算规则。

一个 m × n 矩阵 = m 行、n 列摆好的一堆数。A = [aᵢⱼ] 里的 aᵢⱼ 表示"第 i 行、第 j 列"那个数。

先数行(横着的)、再数列(竖着的)——永远是"行 × 列"。一个 2×3 矩阵就是 2 行 3 列、装了 6 个数。一行或一列的矩阵,其实就是我们熟悉的向量。

举个生活例子:两家奶茶店、三种饮品的今日销量,就是一个 2×3 的表 —— 行选店、列选饮品,交叉格子就是销量。矩阵运算,本质上就是"对这种表格做有意义的批量计算"。

2 加法和数乘:逐格操作,最省心

两个同样大小的表相加,就是对应格子各自相加(今天两家店销量 + 昨天两家店销量 = 两天合计)。数乘则是每个格子都乘同一个数(全场打 8 折:整张价目表 × 0.8)。拖滑块,看"数乘"怎么同时缩放每一格。

数乘:k × 矩阵

系数 k = 1.0
每个格子都变成 k × 原值。色块越深 = 绝对值越大;k 为负数时数变号(颜色翻面)。注意:整张表被同一个 k 统一缩放,这正是后面"线性"的雏形。
形状必须一致才能相加:2×3 只能和 2×3 加。形状对不上,加法没定义——就像两张行列数不同的表没法逐格对齐。

3 矩阵乘法:为什么是"行点列"?

矩阵乘法是新手最懵的一步——明明不是逐格相乘。规则是:结果第 i 行第 j 列 = A 的第 i 行 与 B 的第 j 列 做点积(对应相乘再相加)。点"下一步",看每个结果格子是怎么从一行、一列"算"出来的。

A × B 一步步算

A (2×2)
×
B (2×2)
=
C = A×B
点"下一步"开始 →
蓝色 = 取 A 的某一行,橙色 = 取 B 的某一列;两者对应相乘再相加,落进紫色那一格。

为什么这么定义?因为它表示"两步映射的合成"。比如 B 把"套餐"换算成"原料用量",A 把"原料"换算成"成本",那么 A×B 就直接把"套餐"换算成"成本"——一步到位。也正因为是合成,A 的列数必须等于 B 的行数(中间那一环要接得上),而且 A×B 通常 ≠ B×A(先穿袜子再穿鞋 ≠ 先穿鞋再穿袜子)。

4 矩阵 × 向量 = 把整个平面"掰一下"

这是矩阵最迷人的身份:一个 2×2 矩阵就是平面上的一种变换——旋转、放大、切变、翻转。它把每个点 (x, y) 搬到新位置。下面这只小猫(由若干点连成)会跟着矩阵动。拖滑块改 4 个数,或点预设,看平面怎么被"掰弯"。

2×2 变换实验台

1.0
0.0
0.0
1.0
矩阵 = [[1, 0], [0, 1]] 行列式 det = 1.0
两条粗箭头是基向量:红色 = 第 1 列(横轴 (1,0) 被搬到哪),绿色 = 第 2 列(纵轴 (0,1) 被搬到哪)。矩阵的两列,就是"x 轴、y 轴变换后的落点"。

看那个 行列式:它就是变换后"单位面积被放大了几倍"。det = 2 → 面积翻倍;det = 1 → 面积不变(纯旋转);det 变成负数 → 图形被翻面(镜像);det = 0 → 整个平面被压扁成一条线,信息丢失、不可逆。这条线索我们在行列式那一节细讲。

5 三个必须脸熟的"特殊矩阵"

运算里反复出现的几张"标准面孔",先混个眼熟:

单位矩阵 I
对角线全 1、其余全 0。它是乘法里的"1":A·I = I·A = A,谁乘它都不变。几何上 = "什么都不做"的变换。
转置 Aᵀ
把矩阵沿对角线翻一下:行变列、列变行。第 i 行第 j 列 ↔ 第 j 行第 i 列。后面最小二乘、对称矩阵会天天用到。
逆矩阵 A⁻¹
能把变换"撤销"的那个矩阵:A·A⁻¹ = I。只有 det ≠ 0(没把平面压扁)时才存在——压扁了就回不去了。

6 试三道(先想,再点)

三道题,点选项即时判;答题进度显示在右侧目录。

一句话带走:

矩阵 = 带括号的数表(m 行 n 列)。加法 / 数乘逐格进行(加法要同形状)。乘法是"行点列",代表两步映射的合成,所以 A 的列数要等于 B 的行数、且一般 AB≠BA。一个 2×2 矩阵就是平面上的一种变换,它的两列 = 基向量的落点,行列式 = 面积放大倍数(为 0 则压扁不可逆)。