← 回部落格 數學

矩陣乘法:為什麼不能一個一個乘

威威 Willy · 2026-10-12

威威學長|高中數學


你第一次看到矩陣乘法的規則,反應大概是「這是誰規定的」。左邊的列去配右邊的行、一項一項乘再加起來、結果放在對應的格子裡。相比之下,矩陣的加法和純量乘法都好相處得多,直接逐項加、逐項乘,一眼就懂。 為什麼單單乘法要這麼麻煩? 因為那條規則不是被規定的。它是一個被逼出來的結果:如果你希望「先做一個變換、再做一個變換」剛好等於「把兩個矩陣乘起來」,那乘法的算法就只能長那樣。換句話說,不是矩陣乘法發明了那條規則,是那條規則被這件事逼出來。

先把矩陣當成一台機器

在推規則之前,先把矩陣的角色換掉。矩陣不是一張填了數字的表格,它是一台吃進向量、吐出新向量的機器: $$A=\begin{bmatrix}a&b\\c&d\end{bmatrix},\qquad A\begin{bmatrix}x\\y\end{bmatrix}=\begin{bmatrix}ax+by\\cx+dy\end{bmatrix}$$ 輸入 $(x,y)$,輸出 $(ax+by,\;cx+dy)$。它做的事只有一件:把輸入的座標重新配一配。像 $A=\begin{bmatrix}1&2\\3&4\end{bmatrix}$ 這台機器,把 $(1,0)$ 送到 $(1,3)$,把 $(0,1)$ 送到 $(2,4)$。 順便記一句省力的話:矩陣的兩行,就是兩個座標軸單位向量被送去的地方。知道這件事,看任何一個矩陣都大概能猜到它在做什麼😎。 而純量乘法為什麼可以逐項乘?因為那台機器做的事是「把輸出整體放大 $k$ 倍」,每一格都放大 $k$ 倍,逐項乘剛好就是這個意思。所以它們好相處是有原因的。

把乘法規則推出來

現在做合成。手上兩台機器,$A$ 先動、$B$ 後動(也就是先送進 $A$,再把 $A$ 的輸出送進 $B$)。問:這一整串如果只用一台機器完成,那台機器的矩陣長什麼樣? 追一個一般的輸入 $(x,y)$ 就好。第一步: $$A\begin{bmatrix}x\\y\end{bmatrix}=\begin{bmatrix}ax+by\\cx+dy\end{bmatrix}$$ 第二步把這個結果送進 $B=\begin{bmatrix}e&f\\g&h\end{bmatrix}$。照上面那條「列乘輸入」的規則: $$B\begin{bmatrix}ax+by\\cx+dy\end{bmatrix}=\begin{bmatrix}e(ax+by)+f(cx+dy)\\g(ax+by)+h(cx+dy)\end{bmatrix}$$ 把 $x$ 與 $y$ 提出來整理: $$=\begin{bmatrix}(ea+fc)\,x+(eb+fd)\,y\\(ga+hc)\,x+(gb+hd)\,y\end{bmatrix}$$ 這正是某台矩陣作用在 $(x,y)$ 上的樣子。那台矩陣是 $$BA=\begin{bmatrix}ea+fc&eb+fd\\ga+hc&gb+hd\end{bmatrix}$$ 盯著這四格看。$BA$ 的第一列第一行是 $ea+fc$,那是「$B$ 的第一列」配「$A$ 的第一行」逐項相乘再相加。第二格 $eb+fd$ 是「$B$ 的第一列」配「$A$ 的第二行」。往下兩格就是 $B$ 的第二列各配 $A$ 的兩行。 所以「列乘行」不是誰憑空訂的,它就是這個展開的結果。你在寫 $BA$ 的時候會以為自己在套公式,其實你是在做上面那三行代數的縮寫。

👑 威威說重點:合成兩台機器的矩陣是 $BA$,而計算它的方式就是「左邊的列配右邊的行」。這條規則是合成的產物,不是前提。

算一次,順便看到 AB 跟 BA 不一樣

拿兩台具體的機器。$A=\begin{bmatrix}1&2\\3&4\end{bmatrix}$,$B=\begin{bmatrix}0&1\\1&0\end{bmatrix}$。 $B$ 是交換 $x$ 與 $y$ 的鏡射。先看看它跟 $A$ 相乘會怎樣: $$BA=\begin{bmatrix}0\cdot1+1\cdot3&0\cdot2+1\cdot4\\1\cdot1+0\cdot3&1\cdot2+0\cdot4\end{bmatrix}=\begin{bmatrix}3&4\\1&2\end{bmatrix}$$ $A$ 的兩列被交換了。換另一邊: $$AB=\begin{bmatrix}1\cdot0+2\cdot1&1\cdot1+2\cdot0\\3\cdot0+4\cdot1&3\cdot1+4\cdot0\end{bmatrix}=\begin{bmatrix}2&1\\4&3\end{bmatrix}$$ $A$ 的兩行被交換了。兩個答案不一樣。 這件事一開始很反直覺,但如果回到「矩陣是順序」的角度就合理了:$BA$ 是「先 $A$ 後 $B$」,$AB$ 是「先 $B$ 後 $A$」。先穿襪子再穿鞋,跟先穿鞋再穿襪子,結果當然不同。矩陣乘法不滿足交換律,跟「先做什麼」綁在一起,不是數學上的小毛病。 (矩陣代數的完整規則要到 1858 年才由凱萊(Arthur Cayley)整理出來。他當時就在處理這種「組合兩次代換」的問題,跟這裡在做的事一樣。)

反矩陣:把機器拆回去

$I=\begin{bmatrix}1&0\\0&1\end{bmatrix}$ 是「什麼都不做」那台機器:$AI=IA=A$。它之於矩陣,就像 $1$ 之於乘法。 反矩陣 $A^{-1}$ 是 $A$ 的拆解版,做完 $A$ 再做完 $A^{-1}$,等於沒做: $$AA^{-1}=A^{-1}A=I$$ 二階的情況有一條可以直接抄的公式。先算一個數 $det\,A=ad-bc$(行列式),然後 $$A^{-1}=\frac{1}{det\,A}\begin{bmatrix}d&-b\\-c&a\end{bmatrix}$$ 注意它做了什麼:主對角線互換、另一條對角線變號,最後除以那個數。不用背證明,直接驗一次就好。取 $A=\begin{bmatrix}4&7\\2&6\end{bmatrix}$,$det\,A=24-14=10$,所以 $$A^{-1}=\frac{1}{10}\begin{bmatrix}6&-7\\-2&4\end{bmatrix}=\begin{bmatrix}0.6&-0.7\\-0.2&0.4\end{bmatrix}$$ 乘回去確認: $$\begin{bmatrix}4&7\\2&6\end{bmatrix}\begin{bmatrix}0.6&-0.7\\-0.2&0.4\end{bmatrix}=\begin{bmatrix}2.4-1.4&-2.8+2.8\\1.2-1.2&-1.4+2.4\end{bmatrix}=\begin{bmatrix}1&0\\0&1\end{bmatrix}$$ 單位矩陣,對上了。所以公式裡的除號不是裝飾。$det\,A$ 是 $0$ 的時候,那個除號就整個崩掉,這就是下一段要講的事。

det = 0 的時候,反矩陣不是「很難求」,是不存在

看 $A=\begin{bmatrix}1&2\\2&4\end{bmatrix}$。$det\,A=1\cdot4-2\cdot2=0$。 把它作用在一般的 $(x,y)$ 上:$A(x,y)=(x+2y,\;2x+4y)$。它的第二個座標永遠是第一個的兩倍。不管輸入是什麼,輸出永遠躺在直線 $y=2x$ 上。整張平面被壓成一條線。 壓扁就會有東西撞在一起。找一個會撞的:$A(2,-1)=(2-2,\;4-4)=(0,0)$。所以 $(2,-1)$ 跟 $(0,0)$ 這兩個不同的輸入,被送到同一個地方。 現在問題來了。如果只有 $(0,0)$ 這台輸出,你怎麼知道原本的輸入是 $(0,0)$ 還是 $(2,-1)$?答案是不知道,那個資訊在壓扁的時候就被丟掉了。⚠️ 學長的警告:反矩陣不存在的理由跟「好不好算」無關,該還原的資訊已經不在那裡了。這也是為什麼 $det\,A$ 這個數會被叫做「面積的伸縮倍率」:$det=0$ 代表面積被壓成零,二維的東西變成了一維。

換你動手

練習 1:$A=\begin{bmatrix}2&1\\1&3\end{bmatrix}$、$B=\begin{bmatrix}1&0\\2&1\end{bmatrix}$,算 $AB$ 與 $BA$。 $$AB=\begin{bmatrix}2\cdot1+1\cdot2&2\cdot0+1\cdot1\\1\cdot1+3\cdot2&1\cdot0+3\cdot1\end{bmatrix}=\begin{bmatrix}4&1\\7&3\end{bmatrix}$$ $$BA=\begin{bmatrix}1\cdot2+0\cdot1&1\cdot1+0\cdot3\\2\cdot2+1\cdot1&2\cdot1+1\cdot3\end{bmatrix}=\begin{bmatrix}2&1\\5&5\end{bmatrix}$$ 兩者不同。這是預期中的結果,不是算錯。 練習 2:求 $A=\begin{bmatrix}3&1\\5&2\end{bmatrix}$ 的反矩陣,並驗算。 $det\,A=6-5=1$,所以 $A^{-1}=\begin{bmatrix}2&-1\\-5&3\end{bmatrix}$。驗算: $$\begin{bmatrix}3&1\\5&2\end{bmatrix}\begin{bmatrix}2&-1\\-5&3\end{bmatrix}=\begin{bmatrix}6-5&-3+3\\10-10&-5+6\end{bmatrix}=\begin{bmatrix}1&0\\0&1\end{bmatrix}$$ 這題的 $det$ 剛好是 $1$,所以不用除,但別因此以為反矩陣永遠這麼乾淨。換一題 $det=3$ 的,你就會看到分數。 練習 3:$\begin{bmatrix}2&6\\1&3\end{bmatrix}$ 有沒有反矩陣? $det=2\cdot3-6\cdot1=0$,沒有。想看到「撞在一起」的話:$A(3,-1)=(6-6,\;3-3)=(0,0)$,所以 $(3,-1)$ 與 $(0,0)$ 被壓到同一點。兩個不同輸入共用一個輸出,還原就無從選擇。


拿兩題你手上正在做的矩陣乘法,這次先不看解答,改做一件事:算出乘積之後,把左邊那個矩陣的兩列、跟右邊那個矩陣的兩行分別圈起來,用鉛筆在旁邊標「這一列配這一行得到這一格」。兩題標完,你會發現自己不是在做乘法,是在排一組配對,那個規則就不再是需要記的東西了。 如果某一格怎麼算都對不上解答,先檢查是不是 $AB$ 跟 $BA$ 抄反了。這件事太常見,通常看一眼題目裡的順序就解決了。

威威
威威 Willy
德國數學碩士、前 Amazon 資料科學家。數學是邏輯的語言,英文是世界的窗口。
← 回部落格