如果學過《線性代數》,那么你應該對矩陣乘法計算規則有所了解,但為什么要這樣計算呢?矩陣乘法有什么用呢?下面以理解矩陣乘法為目的來介紹。
1 高斯消元法
首先,矩陣的本質其實就是線性方程組,而解線性方程組的通用方法就是高斯消元法。
1.1 高斯消元法的思路
給出一個簡單的例子,需要求解以下線性方程組:
從幾何上來講,線性方程都是直線,求解方程組就是找到兩個直線的交點:
最終的目標就是把方程組化成這個樣子:
要達到這個目標,高斯消元法的思路是,先用第一行方程式消除后面方程式的某一未知數:
同樣,用第二行把這些消了:
反過來,用第三行把這些給消了:
反過來,用第二行把這些給消了:
最后,達到目標:
接下來讓我們用該思路求解該方程組:
完整的解題過程如下:
至此,解出答案:
1.2 凱萊的高斯消元法
英國數學家阿瑟·凱萊(1821-1895)對於看似簡單的高斯消元法進行了研究,得出了驚人的結果。他當時研究矩陣的動機出於對線性方程組計算的簡化。
對於一個這樣的方程組:
在固定未知數的順序(x 出現在第一個位置,y 出現在第二個位置,常數在等號右邊)后,且保證每個未知數都出現(不出現時,系數為0),方程組就只需要系數來表示了。該方程組可以簡寫為如下數塊:
之前說過,高斯消元法的目標是:
因此我們的目標就是要把數塊變成下面這個樣子:
對應之前的高斯消元法:
得到結果:
正如你看到的,解起來並不復雜,但是要將過程描述清楚卻很繁瑣,這很不數學。能不能更優雅的展現這個過程呢?
1.3 數塊乘法
數學家發明了一種數塊的乘法,簡潔地進行高斯消元法。
1) 單行乘法
對於:
用數塊乘法表示為:
2) 多行乘法
對於:
它表達了兩個過程:
- 第一行不變:r1' = r1
- 第二行改變:r2' = r2 - 3r1
用數塊乘法表示為:
即按照單行乘法的規則,只是第一行運算的結果放在第一行,第二行運算的結果放在第二行:
有了這個運算規則后,整個高斯消元法就可以表示如下:
1.4 矩陣的定義
阿瑟·凱萊在1858年的《矩陣理論紀要》的論文中,給這個數塊以合法的數學地位,取了一個名字:矩陣。
由 m × n 個數 aij ( i = 1,2,...,m ; j = 1,2,...,n ) 排成的 m 行 n 列的數表稱為 m 行 n 列矩陣,簡稱 m × n 矩陣。為表示它是一個整體,總是加一個括弧,並用大寫黑體字母表示它,記做:
這 m × n 個數稱為矩陣 A 的元素。
2 矩陣是一個映射函數
更好的理解方式是把矩陣看做函數,或者說是一種映射。例如:
矩陣 A 將一個 n 維向量 x 映射為 m 維的向量 y。
為了更好的理解這種映射,下面給出具體的例子。研究線性映射,最重要的是搞清楚當前處在哪個基下。我們先來看看:
x、y 的基默認為各自向量空間下的自然基,其自然基為(即 R2 下的自然基):
所以:
若:
其中 c1,c2 為 A 的列向量。
根據矩陣乘法規則有:
則 Ax 相當於在 A 空間中,以 c1,c2 為基,坐標為 ( x1,x2 ) 的向量。
假設:
則有:
空間 V 通過 A 映射到 W。整體來說,就是基改變,導致向量的坐標發生變化。
可以把 A 比喻成穿越時空的傳送門,只是這是一個比較死板的傳送門,它的傳送規則是,根據你進入傳送門的時空坐標,把你送到另外一個時空對應的位置。
我的理解是,x 本來在以矩陣 A 的列向量為基底的空間中,現在 A 是用空間 W 中的自然基底表示的,x 通過左乘 A 轉換到在當前空間 W 所在坐標 y。
下一節:特征值與特征向量
主要參考:從高斯消元法到矩陣乘法、如何理解矩陣乘法?