矩阵乘法是第一个真正把“行”与“列”结合起来的矩阵运算。它也是矩阵之所以
能表达复合、线性方程组与逆矩阵的核心原因。所以这条规则不能只靠死记;你
要明白每一步的大小条件到底在做什么。
为什么矩阵乘法比加法微妙
矩阵加法与数乘都是逐项进行。矩阵乘法则不同:输出中的一个元素,是由左边
矩阵的一整行与右边矩阵的一整列共同决定。
定义
矩阵乘积何时有定义
若 A 是 m×n 矩阵,B 是 n×p 矩阵,则乘积 AB
有定义,且结果是 m×p 矩阵。
若 A 的列数不等于 B 的行数,则 AB 未定义。
内侧大小必须配对;外侧大小则给出结果矩阵的大小。
行乘列规则
定义
矩阵乘法
设 A=[aij] 是 m×n 矩阵,B=[bjk] 是 n×p
矩阵。
则 AB 的 (i,k) 元素为
(AB)ik=ai1b1k+ai2b2k+⋯+ainbnk.也就是说,输出中的一个元素,是 A 的第 i 行与 B 的第 k 列按位相
乘后再相加。
这个定义同时说明三件事:
- 矩阵乘法不是逐项相乘;
- 内侧大小必须吻合;
- 一个输出元素会用到整行与整列中所有对应位置。
例题
细算一个矩阵乘积
令
A=[132−1],B=[4501].由于两者都是 2×2,所以 AB 有定义。其元素为
(AB)11=1⋅4+2⋅5=14,(AB)12=1⋅0+2⋅1=2,(AB)21=3⋅4+(−1)⋅5=7,(AB)22=3⋅0+(−1)⋅1=−1.因此
AB=[1472−1].
矩阵乘向量就是方程组语言
若 x 是列向量,那么 Ax 只是矩阵乘法的特例,但它刚好把线性方程组的左
边全部打包起来。
对
A=[132−1−15],x=x1x2x3,
有
Ax=[x1+2x2−x33x1−x2+5x3].
所以 Ax=b 并不是纯粹缩写,而是把整个方程组写成一个矩阵乘积。
单位矩阵是刻意“什么也不改变”的矩阵
定义
单位矩阵
对每个正整数 n,In 表示 n×n 单位矩阵:主对角线上全是 1,
其余位置全是 0。
例如
I2=[1001],I3=100010001.
单位矩阵之所以重要,是因为它对任何大小相容的矩阵都不起改变作用:
AIn=A,ImA=A.
例题
为什么乘上单位矩阵不会改变矩阵
若
A=[24−13],则
AI2=[24−13][1001]=[24−13].因为 I2 的第一列会抽出 A 的第一列,第二列会抽出 A 的第二列。
这正是往后定义逆矩阵的原因:若 A−1 存在,就要求 AA−1=I。
乘法一般不交换
线性代数最早令学生不习惯的地方之一,就是
AB=BA
一般并不成立。
有时两个乘积都定义,但结果不同;有时其中一个有定义,另一个根本未定义。
所以次序同时影响“能不能做”与“做出来是什么”。
下面的图可以帮你直接看到:一个输出元素,是如何由一行与一列构成的。
边读边试
跟着看一格矩阵乘法
互动工具会在你改变 A 与 B 的元素时,即时更新 AB 的每一格。
结果
8 = 1×2 + 2×3
常见错误
常见错误
矩阵乘法不是逐项相乘
(AB)ik 不是 aikbik。它来自 A 的第 i 行与 B 的第 k
列。
常见错误
一个方向可乘,不代表反方向也可乘
若 A 是 2×3、B 是 3×4,则 AB 有定义,但 BA
没有。不要自动把顺序反过来。
快速检查
快速检查
若 A 是 2×3、B 是 3×5,那么 AB 的大小是什么?
快速检查
把一个大小相容的矩阵乘上 In,会发生什么?
练习
快速检查
为什么 Ax=0 不论 A 是什么,都至少有一个解?
相关笔记
本节建立在
2.1 矩阵基础 之上。
下一节可读
3.2 转置与特殊矩阵,
或直接跳到
5.1 可逆矩阵。