矩陣的乘積有什麼代數或具體應用意義?
或者說,為什麼要這麼定義?
線性運算元的複合。
矩陣可以對應到線性運算元這件事情不知道題主清楚不清楚。。寫一寫吧記φ是n維向量空間U到m維向量空間V的線性運算元,取定U的一組基{e_i},V的一組基{f_j},那麼φ就有對應的n行m列矩陣A,也就是,
任取x=∑x_i e_i∈U,那麼
φ(x)=∑a_ij x_i f_j
類似的,考慮V到l維向量空間W的線性運算元ψ,取定W的一組基{g_k},那麼ψ也有對應的m行l列矩陣B,也就是
任取y=∑y_j f_j∈V,那麼
ψ(y)=∑b_jk y_k g_k
現在考慮U到W的線性運算元ψφ,題主不妨自己算一下矩陣表示~
.
代數含義:
以下提到的皆為 的矩陣, 為列向量.
- 最基本的代數含義就是矩陣乘法的定義;
- 考慮 , 可以把 看作 的列向量的線性組合, 因為根據矩陣乘法定義展開的話, 你會發現計算左邊的結果的時候, 的第 n 列前面的係數就是 的第 n 行. 如果考慮, 那麼可以把 看作 的行向量的線性組合. 引申一下, 把擴充成矩陣, 則對於 , 則可以把中的每一列看成中列向量的線性組合, 係數為 中的每一列. 當然了, 也可以把 中的行向量看作是中行向量的線性組合,係數為 中的每一行;
- 考慮 , 既然可以把 看作 的列向量的線性組合的話, 那麼如果 的列向量為線性空間 V 的一組基,則 可以看作向量 在那組基上的坐標. 當然了, 注意到, 所以所謂的向量 其實指的是向量 在單位陣作為基時候的坐標, 也就是說其實不存在一種絕對的, 獨立於基的向量的表示方式, 只是一般默認為單位陣為基而已;
- 繼續考慮, 也可以把 算作線性變換運算元, 將向量 的各個維度上的坐標進行縮放和組合,將向量映射為向量 . 稱 為 在變換 下的像, 為 的原像。這樣看來 相當於對 中的一堆列向量進行變換 得到 中的一堆列向量. 當然了, 正如上一條中提到的, 其實向量並不是向量, 只是一個坐標表示, 深入思考的話, 會發現所有用脫離了基的坐標來討論線性變換的方式都是耍流氓, 因為省略了單位陣, 所以你就永遠不知道如果不是單位陣的話情況會怎麼樣. 但是要仔細討論的話, 打公式太累了, 此處省略四行公式, 哦看了下好像前面的 @王箏 提到了;
- 既然矩陣可以看作是一個線性變換運算元, 那麼意味著一個線性變換能夠看作是先做線性變換, 再做一個線性變換, 這個實際上是很有意思的. 比如說, 根據 xx 定理, 在複數域下任何正規矩陣都可以酉對角化, , 那麼就可以把任何正規矩陣看作是一個旋轉變換之後做一個拉伸變換, 再旋轉回來, 這樣一來直覺上好像就覺得舒暢很多了呢.
實際應用的意義:
待補完……
同意@王汐的說法。
矩陣在數學裡面有兩層含義。
一是線性變換。什麼是線性變換呢?假設線性變換為T,要滿足的條件就兩個:T(x+y) = T(x) + T(y)、T(kx) = kT(x)。x是你工作的對象。
這麼說簡直不是人話。但是落實到具體的應用領域就有趣了。
最平凡的,x是(a, b, c)這樣的數字向量,所謂線性方程組就是對於這個向量做變換。所以矩陣乘法可以用來解普通線性方程。
如果把x看成函數,你知道微分運算是線性變換嗎?所以矩陣乘法經常用來解微分方程。
如果把x看成是空間中的點,你知道你在玩3d遊戲中前進後退旋轉,屏幕上的圖像都是在做線性變換嗎?所以很多同學都會舉圖形學的例子。
如果一個電路有很多個輸入端,所有輸入端的電流和電壓放在一塊可以看成x。如果這個電路只包含電線和電阻,那麼這個電路就是一個線性變換哦。電路的輸出是x的線性變換。所以線性變換的乘法可以看成是一個又一個電路的組合。
其實稍微擴展一下,如果把輸入的一個波形分解成三角函數的組合,那麼很多模擬電路元件如電阻電感什麼的也是在做線性變換。所以學信號處理的同學天天就在玩矩陣。他們面臨的問題基本上就是,我怎麼才能組合幾個基本的線性變換(矩陣乘法)來把輸入信號(雜訊巨多的聲音)變成清亮、優美、極有情懷的中國好聲音呢?
概率書上經常會用矩陣運算來表達天氣預測。每一天的天氣狀況在你觀測到之後當然是一個具體值,但是在觀測到之前,你可以把它想像成一個概率的向量。然後呢,假設每一天的天氣和前一天的天氣構成馬爾科夫鏈,也就是說明天的天氣是今天天氣的線性變換(不可思議吧?這是因為貝葉斯定理。我也覺得很神奇,貝葉斯定理這麼基礎的定理裡面竟然只有乘法和加法。正因為如此,玩概率和統計的兄弟可以每天happy的和矩陣打交道了。不過要不是這樣,恐怕我們今天用概率能做的事情會少很多很多,因為人類的數學能力太渣了。)。所以矩陣的乘法可以幫助你預測n天后的天氣。
另外一個含義是把矩陣想成狀態自身。這方面我知識有限,所以沒怎麼看到有趣的應用,就不獻醜了。
說了這麼多應用,大家可能會好奇,為什麼好像什麼東西都是線性變換啊?
這有三個原因。
一個原因是這個世界夠簡單。比如牛頓定理F=ma。胡克定理F=kl。
第二個原因是:我們的數學能力不足。所以在不知道研究對象服從什麼定理的時候,我們通常都假設這個現象服從線性關係。因為任何複雜的函數在局部都可以看成線性的。
第三個原因還是我們的數學能力不足。所以如果一個現象真的不服從線性關係,大家往往根本就發現不了什麼優美的理論,所以往往不做。也就是,我們能認識的東西都是線性的,我們不能認識的東西我們也不知道他們是不是線性的。
要說物理應用的話:量子力學的矩陣形式。
矩陣可以代表一個狀態,也可以代表一個變換。
矩陣乘法就是對一個狀態執行一個變換。
推薦閱讀文章 」理解矩陣」系列。CSDN網址:孟岩
這裡簡短截幾句結論,具體說明參見其文章。
- 首先有空間,空間可以容納對象運動的。一種空間對應一類對象。
- 有一種空間叫線性空間,線性空間是容納向量對象運動的。
- 運動是瞬時的,因此也被稱為變換。
- 矩陣是線性空間中運動(變換)的描述。
- 矩陣與向量相乘,就是實施運動(變換)的過程。
- 同一個變換,在不同的坐標系下表現為不同的矩陣,但是它們的本質是一樣的,所以本徵值相同。
- 矩陣描述了一個坐標系。
- 運動等價於坐標系變換。
- 對象的變換等價於坐標系的變換。
- 固定坐標系下一個對象的變換等價於固定對象所處的坐標系變換。
- 對坐標系施加變換的方法,就是讓表示那個坐標系的矩陣與表示那個變化的矩陣相乘。
用處很多,我就挑我熟悉的講,量子力學裡面的矩陣。
經典力學裡面的物理量對應著量子力學裡面的算符。與經典力學裡的物理量是」數「不同,量子力學裡面的算符用的是」矩陣「,因為量子力學裡面的量」不對易「(量子力學基本原理之一,能量不連續等等都是由這個導出的),即不滿足乘法交換律AB=BA,不可能用滿足交換律的數表示。
你可以試一下,矩陣也是不滿足AB=BA的。
其實數學上有證明,只要是滿足結合律,不滿足交換律,滿足乘法線性....以及其他一些條件的量,都可以用矩陣表示,而滿足這樣條件的東西現實生活中是非常多的。(這一塊內容對應著數學上」同構「的概念.)
線性代數課本里的幾乎每一個內容都有在量子力學裡面有應用。比如坐標變換對應著量子力學裡的表象變換。比如特徵值,特徵向量這些東西,就對應著物理量的本徵值,本徵態矢。
兩個矩陣的乘積自然就對應兩個算符的乘積。
來擼計算機圖形學吧,這裡面可以用到矩陣運算的幾何意義。
矩陣對應一個(線性的)空間變換規則。一個點從空間A到空間B,在B中每個軸上的坐標,都是從A中的三個軸的坐標的值,線性組合出來的。比如:
Xb = 1 * Xa + 2 * Ya + 3 * Za;
Yb = ......
Zb = ......
這就可以把這些參數寫成一個3x3矩陣。當這個矩陣滿足特定的條件時,就可以有特定的幾何意義。比如,如果變換前後,點到原點的距離不變,就是一個純的旋轉矩陣。
不難注意到,這裡沒有純的平移,因為b中的坐標都是依賴a中的坐標算出來的,而平移是一個純粹的額外量。數學上,就需要把矩陣擴展到4x4;同時把點坐標擴展到4維,最後一個維度取固定的1或者0,是1的時候這個點就能受平移影響,是0的時候就會把平移分量在乘的時候抹殺掉。
想像一個牛逼的魔術師,說他牛逼是因為他真的可以無中生有而不是提前藏在衣袖裡表演的時候再使個障眼法,而他牛逼的原因是因為他有一個神奇的魔法箱。而矩陣正是這個魔法箱,它的作用是把放進魔法箱的向量給變了(其實只有兩種最基本的變法:拉伸和旋轉,但這足夠千變萬化了),矩陣乘積就好像有多了幾個魔法箱,一個套一個,第一個先把撲克向量變成圍巾,第二個把圍巾向量變成小兔,第三個把小兔向量變成鴿子,最終看到的是撲克變成鴿子,但還是一步一步變的,變化的信息就藏在魔法箱,也就是矩陣中
其實矩陣的乘法,只是用了乘法這個名字,具體的是複合,矩陣是線性變換的一種表示,就像一個人有很多個名字一樣。矩陣是線性變換的數學名字。矩陣的乘法實際上是線性變換的複合,對應到函數就是函數的複合。逆矩陣對應的就是反函數
《線性代數應該這麼學》這本書里把這些問題講的清清楚楚,書裡邊欄的注釋裡面還嘲諷那些只講怎麼做,不講為什麼的書。
這本書里寫得一清二楚呢。線性代數及其應用 (豆瓣)
matrix algebra是pair groupoid上面的category algebra。
這個觀點挺好玩的,具體來說
理解矩陣 孟岩
去搜下這篇文章看看
請去瞅瞅結構力學1最後那章,膩就知道什麼叫實際運用了。
就是映射的複合啊。。。
一個m*n矩陣實際上可以代表一個R^m-&>R^n的映射,而兩個矩陣的乘積就是映射的複合
以下定義域為多元且值域為多元的函數是非常有用的
比如其中一個映射可以是。它也許在某個模型里表示一個性別是男(第一個自變數取1,女取0),非城鎮居民(是城鎮居民第二自變數取1,否則取0),未拖欠學費(若拖欠第三個自變數取1,否則取0),則它在兩個學科的評分為2或3.這個可以在統計學裡再複合隨機因素產生一個描述現實的模型,也可以作為某種經濟模型或遊戲模型。
這些函數里最簡單的一種也許就是各個自變數對每個因變數產生線性的影響,即具有形式
因為事實上這種式子經常出現,我們寧可採用一種比較精簡的形式,我們發現按照矩陣乘法那種方法定義可以產生比較精簡的形式。
(當然,總歸要有某種定義方法和元素的排列方式,既然它們的專斷程度看起來差不多,也只能選擇其中一個,就像三維坐標系一樣要那樣規定一樣)
一種理解矩陣的方法是結合數理統計中的隨機向量 對協方差陣的理解可以看成空間的分解 這是以數據點構建高維空間的直接體現
類似兩個函數的複合。
我只說矩陣乘積在計算機圖形幾何裡面的應用。
用於完成位移,旋轉,縮放,空間變換。
手機不方便前後補一些基本的運算公式
至於意義我不知道。下面是我博客裡面摘的一段。
1、平移操作
要對某一個點u進行平移,那麼值需要一個位移向量b與改點相加即可(前面提到向量只與長度和方向有關,那麼平移操作,也就是這個點朝著某方向移動x距離)。在3d世界中,我們要平移某一個物體(異或模型),其實也就是將模型的每一個點都進行平移。但是如何通過矩陣來實現? 給出平移矩陣如下:至於推導過程,google百度吧。
1 0 0 0
T = 0 1 0 0
0 0 1 0
bx by bz 1
之前提到,點的存放形式為(x, y, z, 1)。那麼將該點乘以平移矩陣T,得到的最終結果就為(x +bx, y + by, z + bz, 1)。(結果請參照矩陣乘法公式,也就是前一篇博客中提到的)。那麼對向量進行平移呢?向量的存放形式為(x, y, z, 0),平移結果沒變,這也就是為何點和向量的存放方式有一點小區別的原因了。
2、縮放
縮放是指改變一個物體的大小。大家其實可以再Matrix3D中發現關於縮放操作的api。縮放矩陣如下(推導過程同樣不再討論了):
sx 0 0 0
S = 0 sy 0 0
0 0 sz 0
0 0 0 1
假設一個最小點(0, 0, 0)和一個最大點(4, 4, 4)定義一個正方體(注意:以後在討論的時候,將不再寫第四個點)。假設我們希望沿著x軸縮放0.5倍,沿著y軸縮放2倍,沿著z軸不變。那麼我們的縮放矩陣則為(將縮放至填入上方矩陣即可):
0.5 0 0 0
S = 0 2 0 0
0 0 1 0
0 0 0 1
我們將最小點以及最大點分別乘以縮放矩陣,結果則分別為(0, 0, 0)和(2, 8, 4),大家可以通過肉眼就可以觀察出來,正方體安裝我們希望的進行了縮放。
3、旋轉
我們希望物體圍繞一個穿過坐標系原點的軸進行旋轉。給出如下矩陣,即可實現繞n = (x, y, z)軸進行?弧度的旋轉。其中c = cos?、s = sin?
c+(1-c)x^2 (1-c)xy+sz (1-c)xz-sy 0
R = (1-c)xy-sz c+(1-c)y^2 (1-c)yz+sx 0
(1-c)xz+sy (1-c)yz-sx c+(1-c)z^2 0
0 0 0 1
穿襪子,穿鞋,反過來脫鞋,再脫襪子。矩陣乘法的逆也是這個道理。
推薦閱讀: