本文的閱讀等級:初級
藍鳥把天空背在它的背上。───美國作家梭羅 (Henry David Thoreau)[1]
高中數學課本將矩陣乘積 的定義建立於每個
元 (entry,element) 的計算式上,進入大學之後,如果仍緊抓住這個定義不放,對於理解線性代數反而是個阻礙。本質上,線性代數所處理的數學物件為向量與矩陣,而非其中的元。從現代的角度來看,矩陣乘法有多個更富含意義的等價運算方式。底下介紹這些矩陣乘法的用意在於打開一個新眼界,好讓我們順利踏入線性代數的世界。
以元作為計算單元定義 AB
這是每個人都熟悉的高中數學定義。令 為
階矩陣,
為
階矩陣。我們定義
的
元
為
的第
列 (row) 與
的第
行 (column) 之點積 (內積,dot product),稱為列行法則,如下:
。
這個公式的主要用途是方便手算,缺點是不自然也不具啟發性,多數人學到這個定義的第一個反應是無所適從,很難理解其中涵義。(你可能會問:為甚麼 不定義為
的第
行與
的第
列的點積?) 列行法則於理論上的應用時機在於
的子空間之間的正交關係,利用此法則可以證明實矩陣
的零空間 (nullspace) 正交於列空間 (row space) (見“線性代數基本定理 (二)”)。
以行作為計算單元定義 Ax
這是最重要的一種觀點。考慮 的行向量表達式
且
。我們定義矩陣向量乘法
為
的行向量
的線性組合,
為組合權重:
。
傳統的寫法習慣將純量擺在向量的左邊,
。
見下例,
。
利用這個定義很容易聯繫線性方程與子空間、線性獨立等概念的關係,例如, 僅有平凡解 (即
),則
有線性獨立的行向量,以及
有解的充要條件為
屬於
的行空間。更重要的是,它可以清楚顯現
為一個線性變換 (見“基本矩陣運算的定義”)。
以行作為計算單元定義 AB
很自然地,我們可以視 為線性變換
和
的複合變換。考慮
與
。根據矩陣向量乘法定義,
。
使用線性變換性質,
向量 可視為連續兩次線性變換的像 (image):
如果我們令 代表上面這兩線性變換的淨效果:
則有
。
表面上看,上式不僅給出矩陣向量乘法的結合律,同時也提供了以行作為計算單元定義矩陣乘積 的方式。因為上式對於任意
都成立,
。
因此, 的第
行是
,它是
的行向量之線性組合,
的對應元為組合權重。舉例來說,
的第一行與第二行分別為
。
以行當作矩陣乘法運算單元不僅具有提示性並可簡化運算推導,例如,欲證明分配律 ,將
以行向量表達,利用線性變換性質,可得
另舉一例,因為 是
的行向量的線性組合,
的行空間必定屬於
的行空間,隨之而來的重要結果是
(見“矩陣乘積的子空間分析”)。
以列作為計算單元定義 AB
這個定義與以行作為計算單元的定義有類比的形式。考慮
,
對上式取轉置,
。
因為 ,
。
將上式的 和
分別以
和
替代,即得到以列作為計算單元的矩陣乘法。我們定義
的第
列等於
的列之線性組合,
的對應元即為組合權重:
,
或著將 完整的寫出
。
舉例來說,
的第一、二、三列分別為
今天多數的線性代數社群所指稱的向量都是行向量,我們特別以記號 表示矩陣的列。這個計算方式的應用較少,主要的一個用途在於解釋基本矩陣 (elementary matrix)
如何對
執行列運算 (見“特殊矩陣 (10):基本矩陣”)。
以行列展開計算 AB
線性代數初學者可能不知道兩個矩陣之積可表示成數個矩陣之和。將 以行向量表示,
以列向量表示,有以下結果:
。
這個算式稱為行列法則,注意這個展開方式與以元為計算單位的列行法則的差異。因為 的
元即為每個展開矩陣
其
元 (即
) 的和,故可證明上式的正確性。見下例,
。
以行列展開計算的重要用途在實對稱矩陣的譜分解 (見“可對角化矩陣的譜分解”)。任何實對稱矩陣 可寫為
,
為對角矩陣,
,所以
總結來說,矩陣乘法共有四種計算方式。初學者需經過不斷嘗試錯誤才能逐漸體會各計算方式的使用時機,要能達到隨手拈來,存乎一心的境界唯有多加練習一途。
以分塊作為計算單元定義 AB
假設 為
階矩陣,
為
階矩陣,則
可以相乘。同樣道理,將
和
以分塊矩陣形式表示,例如,
為
分塊,
為
分塊:
。
我們可以運用分塊矩陣乘法計算矩陣乘積 。分塊矩陣乘法一如傳統以元為計算單元的運算方式,將
的列分塊和
的行分塊以列行法則相乘,
為
分塊,如下:
。
注意這個乘法方式等於也限制了 和
其分塊的尺寸,譬如,
的行數須等於
的列數。
事實上,分塊矩陣乘法也可以用來解釋前述的幾種矩陣乘積運算方式。若矩陣的分塊退化為元,那麼分塊矩陣乘積也就是以元為計算單位的列行法則。若 以其行向量作為分塊,就是視行為計算單位的乘法方式:
。
若 以其列向量作為分塊,此即以列為計算單位的乘法:
。
若 以其行向量作為分塊,
以其列向量作為分塊,
乘積就如同以行列展開的乘法方式:
我們討論的各種矩陣乘法運算都是等價的,適當選擇矩陣的分塊方式便與前述的四種基本乘法運算同義。分塊矩陣乘法較少用於數值計算 (除非問題具有特殊的形式,如許多零元聚集於一處),其主要用途為提供理論發展時所需要的運算處理機制。
註解
[1] 原文是:The bluebird carries the sky on his back.
该文和(二)对大陆学生而言,无异于是甘霖呀!
老師您好,請問您網站的線性代數專欄是有進度的隨時間講解(比如最早的文章最基礎之後慢慢加深)還是一個重點就編寫一篇文章,沒有刻意編排進度?
謝謝
本站貼文隨興之所至,沒有甚麼規律。請參考閱讀導引:
https://ccjou.wordpress.com/%E9%96%B1%E8%AE%80%E5%B0%8E%E5%BC%95/%E7%B7%9A%E6%80%A7%E4%BB%A3%E6%95%B8%E6%95%99%E5%AD%B8%E5%85%89%E7%A2%9F%E5%BB%B6%E4%BC%B8%E9%96%B1%E8%AE%80/
非常感謝老師您的回應。