高等代数 · 课程学习笔记

第 P55 集 · 三十七:矩阵的运算(一)——矩阵乘法

Matrix Multiplication: Definition and Geometric Meaning
北大丘维声教授 · 清华大学 2011 级 进度 P55 / 151 集 核心概念:矩阵乘法定义 · 非交换性 · 变换复合 · 行×列法则
提示:数学公式渲染组件(KaTeX)加载失败,公式以源码形式显示,不影响阅读内容。联网后刷新即可正常渲染。

☰本集目录

◎学习目标

  1. ✅ 理解 \(M_{s \times n}(K)\)(数域 \(K\) 上所有 \(s \times n\) 矩阵的集合)构成一个线性空间;
  2. ✅ 从平面旋转变换的复合出发,自然引出矩阵乘法的定义;
  3. ✅ 掌握矩阵乘法的定义:左矩阵的行与右矩阵的列对应元素相乘再求和;
  4. ✅ 理解矩阵乘法不满足交换律,并通过具体反例验证;
  5. ✅ 掌握行向量 × 列向量 = 数量、列向量 × 行向量 = 矩阵两种特殊乘法;
  6. ✅ 记住矩阵乘法的三个要点:可乘条件、计算公式、结果矩阵的维度。

1矩阵集合的线性空间结构 ⏱ 00:09

在开始讨论矩阵乘法之前,先回顾矩阵集合已经具备的线性空间结构。

矩阵集合记号 数域 \(K\) 上所有 \(s \times n\) 矩阵组成的集合记为 \(M_{s \times n}(K)\)。当 \(s = n\) 时简记为 \(M_n(K)\),称为 \(n\) 阶矩阵(或 \(n\) 级矩阵)。⏱ 01:06
定理 · 矩阵集合是线性空间 对任意 \(A, B \in M_{s \times n}(K)\) 和 \(k \in K\),定义
\[ A + B = (a_{ij} + b_{ij})_{s \times n}, \qquad kA = (ka_{ij})_{s \times n}. \]
则 \(M_{s \times n}(K)\) 对上述加法和数量乘法构成数域 \(K\) 上的线性空间。⏱ 06:24
证明:八条运算律的验证

因为矩阵加法就是对应元素相加,数量乘法就是每个元素乘以标量,所以八条运算律(加法交换律、结合律、零元、负元、数量乘法结合律、分配律等)均可从数的相应运算律直接推出。例如:

  • 加法交换律:\(A + B = B + A\),因为 \(a_{ij} + b_{ij} = b_{ij} + a_{ij}\)。
  • 零元:全零矩阵 \(\mathbf{0}\) 满足 \(A + \mathbf{0} = A\)。
  • 负元:\(-A = (-a_{ij})\) 满足 \(A + (-A) = \mathbf{0}\)。
  • 分配律:\(k(A+B) = kA + kB\),由数的分配律得证。

详细验证见教材。⏱ 06:30–09:12

丘老师提示 "这又是一个线性空间了……我们前面第三章讨论的关于线性空间的结构的所有结论,都可以用到这个线性空间上。"这意味着子空间、基、维数等概念同样适用于矩阵空间。⏱ 10:06

2从旋转变换引出矩阵乘法 ⏱ 10:25

矩阵乘法不是凭空定义的,它来自线性变换的复合。丘老师用一个具体的旋转例子来说明。

问题设定 考虑平面(二维线性空间)上一个绕原点逆时针旋转 \(\theta\) 角的变换 \(\sigma\),以及旋转 \(\phi\) 角的变换 \(\tau\)。现在研究连续做这两个变换 \(\tau \circ \sigma\)(先转 \(\theta\) 角,再转 \(\phi\) 角)的效果。⏱ 11:10

设点 \(P\) 的极坐标为 \((r, \alpha)\),即 \(OP\) 长度为 \(r\),与 \(x\) 轴夹角为 \(\alpha\)。经 \(\sigma\) 旋转后到达 \(P'\),坐标 \((x', y')\) 满足:

\[ x' = r\cos(\alpha + \theta) = x\cos\theta - y\sin\theta, \] \[ y' = r\sin(\alpha + \theta) = x\sin\theta + y\cos\theta. \]

即 \(\sigma\) 对应的矩阵为:

\[ B = \begin{pmatrix} \cos\theta & -\sin\theta \\ \sin\theta & \cos\theta \end{pmatrix}. \]

类似地,\(\tau\) 对应的矩阵为:

\[ A = \begin{pmatrix} \cos\phi & -\sin\phi \\ \sin\phi & \cos\phi \end{pmatrix}. \]

变换 \(\tau \circ \sigma\) 相当于先做 \(\sigma\) 再做 \(\tau\),总旋转角为 \(\theta + \phi\),对应矩阵应为:

\[ \begin{pmatrix} \cos(\theta+\phi) & -\sin(\theta+\phi) \\ \sin(\theta+\phi) & \cos(\theta+\phi) \end{pmatrix}. \]
验证:矩阵乘积恰好等于旋转 \(\theta+\phi\) 的矩阵

计算 \(AB\):

\[ AB = \begin{pmatrix} \cos\phi & -\sin\phi \\ \sin\phi & \cos\phi \end{pmatrix}\begin{pmatrix} \cos\theta & -\sin\theta \\ \sin\theta & \cos\theta \end{pmatrix} = \begin{pmatrix} \cos\phi\cos\theta - \sin\phi\sin\theta & -\cos\phi\sin\theta - \sin\phi\cos\theta \\ \sin\phi\cos\theta + \cos\phi\sin\theta & -\sin\phi\sin\theta + \cos\phi\cos\theta \end{pmatrix}. \]

利用两角和公式:\(\cos(\theta+\phi) = \cos\theta\cos\phi - \sin\theta\sin\phi\),\(\sin(\theta+\phi) = \sin\theta\cos\phi + \cos\theta\sin\phi\),得

\[ AB = \begin{pmatrix} \cos(\theta+\phi) & -\sin(\theta+\phi) \\ \sin(\theta+\phi) & \cos(\theta+\phi) \end{pmatrix}. \]

这正是旋转 \(\theta + \phi\) 的矩阵!说明矩阵乘法的定义与变换复合完全一致。⏱ 14:30–17:00

关键观察 注意矩阵乘法的顺序:⏱ 19:50
\[ \text{先做 }\sigma\text{(对应矩阵 }B\text{),再做 }\tau\text{(对应矩阵 }A\text{)} \quad\Longrightarrow\quad \text{复合变换对应矩阵为 } AB. \]

右乘是先做的变换,左乘是后做的变换。这与函数的复合顺序记法一致(\((f \circ g)(x) = f(g(x))\))。

3矩阵乘法的定义 ⏱ 17:30

从旋转例子中归纳出一般规律,给出矩阵乘法的正式定义。

定义 · 矩阵乘法 设 \(A = (a_{ik})_{s \times n}\),\(B = (b_{kj})_{n \times m}\),即 \(A\) 是 \(s \times n\) 矩阵,\(B\) 是 \(n \times m\) 矩阵。定义 \(A\) 与 \(B\) 的乘积 \(AB\) 为 \(s \times m\) 矩阵 \(C = (c_{ij})\),其中
\[ c_{ij} = \sum_{k=1}^{n} a_{ik} b_{kj} = a_{i1}b_{1j} + a_{i2}b_{2j} + \cdots + a_{in}b_{nj}. \]
即:左矩阵的第 \(i\) 行与右矩阵的第 \(j\) 列对应元素相乘后求和,作为乘积矩阵的第 \((i,j)\) 元。⏱ 17:30–22:00
矩阵乘法的三个要点
  1. 可乘条件(DN):左矩阵的列数必须等于右矩阵的行数。即 \(A_{s \times n} \cdot B_{n \times m}\) 才能相乘,结果仍是 \(s \times m\) 矩阵。
  2. 计算公式:\((AB)_{ij} = \sum_{k=1}^{n} a_{ik}b_{kj}\),即"左行 × 右列"。
  3. 维度关系:乘积矩阵的行数等于左矩阵的行数,列数等于右矩阵的列数。
记忆口诀:行乘列

矩阵乘法的核心口诀是⏱ 20:15:

\[ \boxed{\text{左矩阵的第 } i \text{ 行} \;\times\; \text{右矩阵的第 } j \text{ 列} = \text{结果的第 }(i,j) \text{ 元}} \]

操作过程:取左矩阵第 \(i\) 行的 \(n\) 个元素与右矩阵第 \(j\) 列的 \(n\) 个元素逐项相乘再求和。形象地说,就像把两排数字"交叉相乘相加"。

计算示例 设 \(A = \begin{pmatrix} 1 & 2 \\ 0 & 1 \end{pmatrix}\),\(B = \begin{pmatrix} 3 & 4 \\ 5 & 6 \end{pmatrix}\),计算 \(AB\):
\[ AB = \begin{pmatrix} 1\cdot 3 + 2\cdot 5 & 1\cdot 4 + 2\cdot 6 \\ 0\cdot 3 + 1\cdot 5 & 0\cdot 4 + 1\cdot 6 \end{pmatrix} = \begin{pmatrix} 13 & 16 \\ 5 & 6 \end{pmatrix}. \]

4矩阵乘法的非交换性 ⏱ 25:00

与数的乘法不同,矩阵乘法一般不满足交换律,即 \(AB \neq BA\)。这是矩阵乘法最重要的特性之一。

反例:交换不成立 取 \(A = \begin{pmatrix} 1 & 2 \\ 0 & 0 \end{pmatrix}\),\(B = \begin{pmatrix} 0 & 0 \\ 1 & 1 \end{pmatrix}\),则
\[ AB = \begin{pmatrix} 1\cdot 0 + 2\cdot 1 & 1\cdot 0 + 2\cdot 1 \\ 0 & 0 \end{pmatrix} = \begin{pmatrix} 2 & 2 \\ 0 & 0 \end{pmatrix}, \] \[ BA = \begin{pmatrix} 0 & 0 \\ 1\cdot 1 + 1\cdot 0 & 1\cdot 2 + 1\cdot 0 \end{pmatrix} = \begin{pmatrix} 0 & 0 \\ 1 & 2 \end{pmatrix}. \]
显然 \(AB \neq BA\)。而且注意:这里 \(A \neq 0\),\(B \neq 0\),但 \(AB\) 和 \(BA\) 都不为零矩阵——这比数的情况复杂得多。⏱ 25:00–27:00
特殊情况说明 虽然 \(AB \neq BA\) 一般成立,但也有特殊情况使交换律成立:
  • \(A\) 或 \(B\) 是零矩阵;
  • \(A\) 或 \(B\) 是单位矩阵;
  • \(A\) 和 \(B\) 是同阶对角矩阵;
  • \(A\) 和 \(B\) 互为逆矩阵(此时 \(AB = BA = I\))。
但不可假设一般情形下 \(AB = BA\)。
更极端的反例:非零矩阵乘积为零矩阵

丘老师在课堂上展示了另一个令人惊讶的例子:⏱ 28:40

\[ A = \begin{pmatrix} 1 & 2 \\ 0 & 0 \end{pmatrix}, \quad B = \begin{pmatrix} 2 & 0 \\ -1 & 0 \end{pmatrix} \implies AB = \begin{pmatrix} 0 & 0 \\ 0 & 0 \end{pmatrix}. \]

两个非零矩阵相乘可以得到零矩阵!这说明矩阵环有零因子,与域(数域)的性质完全不同。

5行向量与列向量的乘法 ⏱ 30:00

把向量看作特殊的矩阵,可以自然地讨论行向量与列向量之间的乘法。

行向量 × 列向量 → 数量 设 \(\alpha = (a_1, a_2, \dots, a_n)\) 是 \(1 \times n\) 矩阵(行向量),\(\beta = (b_1, b_2, \dots, b_n)^T\) 是 \(n \times 1\) 矩阵(列向量)。则
\[ \alpha\beta = (a_1b_1 + a_2b_2 + \cdots + a_nb_n) \in K \quad (\text{1×1 矩阵,等同为数}). \]
这就是通常所说的内积(在未定义内积前,仅视为数量乘法)。⏱ 31:10
列向量 × 行向量 → 矩阵 反过来,设 \(\beta\) 是 \(n \times 1\) 列向量,\(\alpha\) 是 \(1 \times n\) 行向量,则
\[ \beta\alpha = \begin{pmatrix} b_1\alpha \\ b_2\alpha \\ \vdots \\ b_n\alpha \end{pmatrix} = \begin{pmatrix} b_1a_1 & b_1a_2 & \cdots & b_1a_n \\ b_2a_1 & b_2a_2 & \cdots & b_2a_n \\ \vdots & \vdots & & \vdots \\ b_na_1 & b_na_2 & \cdots & b_na_n \end{pmatrix}_{n \times n}. \]
结果是 \(n \times n\) 矩阵,称为外积(或张量积)。⏱ 33:00
具体例子:全1向量的乘法

取 \(n\) 维全1行向量 \(\alpha = (1,1,\dots,1)\) 和全1列向量 \(\beta = (1,1,\dots,1)^T\):

\[ \alpha\beta = \underbrace{1\cdot 1 + 1\cdot 1 + \cdots + 1\cdot 1}_{n \text{ 个}} = n \quad (\text{数量}), \] \[ \beta\alpha = \begin{pmatrix} 1 & 1 & \cdots & 1 \\ 1 & 1 & \cdots & 1 \\ \vdots & \vdots & & \vdots \\ 1 & 1 & \cdots & 1 \end{pmatrix}_{n \times n} \quad (\text{n阶全1矩阵}). \]

注意:\(\alpha\beta = n\)(数量),而 \(\beta\alpha\) 是一个 \(n \times n\) 矩阵,两者根本不同!⏱ 34:00–35:00

记号约定 丘老师提到:"这个以后大家以后会说,这个就是全1矩阵……以后我们常常用的时候再说一下。"⏱ 35:30

全1矩阵是一个重要工具,在组合数学和线性代数中经常出现。

★重点回顾

1
矩阵集合 \(M_{s \times n}(K)\) 是线性空间:加法和数量乘法按对应元素运算,满足八条运算律。
2
矩阵乘法的定义:左矩阵第 \(i\) 行与右矩阵第 \(j\) 列对应元素相乘求和,得 \((AB)_{ij} = \sum_{k=1}^{n} a_{ik}b_{kj}\)。
3
可乘条件:左矩阵列数 = 右矩阵行数,否则乘法无定义。
4
非交换性:矩阵乘法一般不满足交换律,\(AB \neq BA\)。这是与数的乘法最显著的区别。
5
变换复合与矩阵乘法的一致性:先做变换 \(\sigma\)(矩阵 \(B\))再做变换 \(\tau\)(矩阵 \(A\)),复合变换对应矩阵 \(AB\)。
6
行向量 × 列向量 = 数量,列向量 × 行向量 = 矩阵。这是矩阵乘法的两种特殊情形。

⚠易错点提醒

常见错误
  1. 误认为矩阵乘法可交换:除非特殊情形(如对角矩阵、单位矩阵等),切勿认为 \(AB = BA\)。
  2. 可乘条件判断错误:\(A_{s \times n}\) 与 \(B_{p \times m}\) 能相乘当且仅当 \(n = p\)。混淆行数和列数是常见错误。
  3. "行乘列"理解偏差:计算 \((AB)_{ij}\) 时,用左矩阵第 \(i\) 行与右矩阵第 \(j\) 列对应相乘,不是第 \(i\) 列乘第 \(j\) 行。
  4. 忽视零因子的存在:非零矩阵的乘积可以是零矩阵(\(A \neq 0, B \neq 0\) 但 \(AB = 0\))。
  5. 行×列与列×行的混淆:行向量×列向量是数量,列向量×行向量是矩阵,两者完全不同。
  6. 变换复合顺序与矩阵乘法顺序混淆:先做 \(\sigma\) 后做 \(\tau\) 对应 \(AB\)(\(\sigma\) 的矩阵写在右边)。

✎自测与作业

  1. 基础计算:设 \(A = \begin{pmatrix} 1 & 0 \\ 2 & 1 \end{pmatrix}\),\(B = \begin{pmatrix} 3 & -1 \\ 0 & 2 \end{pmatrix}\),分别计算 \(AB\) 和 \(BA\),验证它们不相等。
  2. 验证定义:用矩阵乘法定义验证旋转矩阵的乘积公式:\(R_\theta \cdot R_\phi = R_{\theta+\phi}\)。
  3. 构造零因子:找两个非零 \(2 \times 2\) 矩阵 \(A, B\) 使 \(AB = 0\),并说明为什么这在数的乘法中不可能发生。
  4. 行×列 vs 列×行:设 \(\alpha = (1, 2, 3)\),\(\beta = (4, 5, 6)^T\),分别计算 \(\alpha\beta\) 和 \(\beta\alpha\),观察结果差异。
  5. 变换复合:设 \(\sigma\) 是绕原点顺时针旋转 \(90°\) 的变换,\(\tau\) 是关于 \(x\) 轴的反射变换,分别写出它们的矩阵,计算 \(\tau \circ \sigma\) 和 \(\sigma \circ \tau\) 对应的矩阵,说明两者是否相等。
  6. 思考题:证明:若 \(A\) 是 \(s \times n\) 矩阵,\(B\) 是 \(n \times m\) 矩阵,则 \((AB)^T = B^T A^T\)(转置的反序性质)。
下一集预告 第 P56 集 · 三十八:矩阵运算律、单位矩阵。讨论矩阵乘法的结合律、分配律,以及单位矩阵的定义和性质。