矩陣乘法是第一個真正把「行」與「列」結合起來的矩陣運算。它也是矩陣之所
以能表達複合、線性方程組與逆矩陣的核心原因。所以這條規則不能只靠死記;
你要明白每一步的大小條件到底在做甚麼。
為甚麼矩陣乘法比加法微妙
矩陣加法與數乘都是逐項進行。矩陣乘法則不同:輸出中的一個元素,是由左邊
矩陣的一整行與右邊矩陣的一整列共同決定。
定義
矩陣乘積何時有定義
若 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 可逆矩陣。