原文:https://mp.weixin.qq.com/s/qCmstZdzCy1WCfBAkEZEoA微信
線性變換這個詞在線性代數中常常被說起,每一個線性變換的背後都有一個矩陣。矩陣的概念比較直觀,相比之下,線性變換就顯得抽象了。函數
拋開矩陣,咱們從變換的角度討論投影。經過T變換,使平面內的一個向量投影到一條直線上:學習
T就像一個函數:給定一個輸入向量,通過T的變換,輸出成直線上的投影,過去咱們一直用更專業的「映射」稱呼這種變換關係。下圖中v和w是R2空間內的向量,經過T變換變成了直線上的投影,即T(v)和T(w):spa
變換的關係有不少,而線性代數只討論線性變換。若是T表示一個線性變換關係,對於任意向量v和w以及標量c,線性變換應該保證下面兩個運算的不變性,加法不變性和數乘不變性,這一點和線性組合相似:3d
把兩者結合:blog
順便說一下,投影變換是一種線性變換。get
判斷一個變換是不是線性變換其實並不困難,只要判斷這個變換是否知足加法不變性和數乘不變性便可。基礎
假設某個變換關係T是平面沿着某個方向平移v0,也就是說對於平面內的任意向量v,都有T(v) = v + v0,T變換是不是線性變換?二維碼
這個看起來很簡單的變換並非線性變換,它違背了線性變換的兩個不變性,以數乘不變性爲例:方法
線性變換的不變性要求對輸入空間內的任意向量都成立,固然也包括零向量,所以一個更簡單的判斷方法就是使用零向量。數乘不變性對於零向量來講將有T(0) = 0,但本例中T(0) = v0,因此說「平移」變換不是線性變換。
變換關係T(v) = ||v||是不是線性變換?
T變換將產生維度的變化。假設v是一個三維向量,通過T的變換將變成一個大於等於0的實數,也就是一維向量:
雖然本例知足T(0) = 0,可是對於數乘不變性來講,若是c是負數,那麼T(cv) ≠ cT(v),所以本例不是線性變換。
變換關係T:R2→R2是將一個二維空間的向量旋轉45°,這個變換是不是線性變換?
答案是確定的,它符合線性變換的兩個不變性。
即便去掉座標軸,依然可以清晰地描述這個變換,下圖是對二維平面內的圖形進行旋轉:
到目前爲止,線性變換尚未和矩陣產生任何關係。如今有一個變換關係是矩陣乘以一個向量,T(v) = Av,其中A是一個矩陣。根據矩陣乘法的性質:
這符合線性變換的兩個判據,所以矩陣乘以向量是一個線性變換。這意味着選中一個矩陣,用它乘以平面上的全部向量,將獲得一系列線性變換後的結果,即整個平面經過矩陣乘法發生了變換,這也是一個值得研究的結果。
如今有一個矩陣:
若是用A乘以一個R2空間的向量v——固然,A是2×2矩陣,它也只能乘以一個R2空間的向量——將把v線性變換成另外一個向量,變換後的向量的x份量不變,y份量與v的y份量相反:
咱們的目的是理解線性變換,而理解線性變換的本質是肯定線性變換背後的矩陣,雖然能夠在脫離座標和具體數值的狀況下討論線性變換,可是爲了更好地描述,咱們仍然有必要引入座標系。
假設有一個三維向量,可以經過某種線性變換變成二維向量,這將是一個怎樣的變換?
用矩陣描述這個關係,T(v) = Av,v是三維向量,經過Av變成了二維向量,那麼A必定是一個2×3矩陣。任何一個2×3的矩陣均可以將一個三維向量線性變換成二維向量,每個變換都對應一個具體的矩陣。
對於平面內特定的向量v1,只要看看T(v1)就能夠了解線性變換對它產生的做用。咱們對空間內其它向量的線性變換一樣感興趣,換句話說,咱們想知道線性變換對於整個輸入空間的影響。既然向量空間是由線性無關的向量張成的,那麼只要知道平面內兩個線性無關的向量,就能夠了解平面內全部向量線性變換的結果。也就是說,只要知道輸入空間的基,就能掌握線性變換對整個輸入空間的影響。
v1,v2……vn是輸入空間的一組基向量,把它稱之爲輸入基。只要知道全部輸入基的線性變換,就能夠知道輸入空間內任意向量的線性變換:
先來看看什麼是座標。
Rn空間的座標是一組數字,這些數字表示Rn空間的給定向量v由多少個基向量組成(基向量線性組合的係數),可是基向量不止一組,若是基向量改變了,座標也隨之改變,所以通常來講,座標系創建在標準基的基礎之上。例如一個三維空間的向量的座標是(2,3,4):
上式能夠清晰地看到v是三個標準基向量的線性組合,儘管大多數時候咱們都意識不到這種組合。
對於線性組合來講,一旦選定了一組基,座標也隨之肯定。好比對於輸入空間的任意一個向量v來講,均可以用基向量的惟一線性組合表示:
一旦向量肯定,其線性組合也隨之肯定,此時c1, c2 ,…,cn就是該向量的一組肯定的座標值。
咱們的目的是肯定線性變換背後的矩陣,矩陣是與座標有關的(矩陣中的元素是肯定的值),而線性變換與座標無關。如今的問題是,如何把一個與座標無關的線性變換變成一個與座標有關的矩陣?
假設有T可以完成一個向量從n維空間到m維空間的線性變換:
如今咱們打算構造一個矩陣A來描述這個線性變換。在描述時須要兩組基:輸入空間的一組基來描述輸入向量,以及輸出空間的一組基來肯定輸出向量的座標。這兩組基一旦肯定,對應的矩陣也就肯定了。
v1,v2……vn是輸入空間的一組基向量,來自Rn空間;w1,w2……wm是輸出空間的一組基向量,來自Rm空間。對於每一個輸入向量來講,都有具體的座標值,該座標由基向量的線性組合肯定,而後把這些座標值乘以某個矩陣A,將獲得相應的輸出向量,輸出向量的座標一樣能夠由輸出空間的基肯定。用矩陣A來表示線性變換,就是將矩陣乘以輸入向量的座標,獲得它在輸出空間的座標。
值得注意的是,線性變換背後的矩陣A乘以的是輸入向量的座標,不是輸入向量自己,獲得的也是輸出向量的座標,不是輸出向量自己。定義一個線性變換T(v),對v = c1v1 + c2v2 + …… + cnvn進行變換,若是用A描述這個變換,則A須要知足:
以後用輸出向量的座標對輸出空間的基向量進行線性組合,獲得最終的輸出向量w:
因爲咱們以前一直使用的是標準基,所以感受不到座標的存在。
咱們以前說過,投影屬於線性變換,這裏正好用投影的例子對上面的描述加以說明。爲了簡單起見,將這個投影定義在二維空間,n = m = 2。參與變換的向量都在平面上,讓平面上的全部向量都投影在一條直線上。選擇輸入空間的兩個基向量v1和v2代替R2空間的標準基向量,其中v1沿着投影方向趴在直線上,v2垂直於投影方向:
上圖特地去掉了座標系,以強調線性變換與座標無關。同時,因爲輸出空間也是R2空間,咱們也一樣用v1和v2做爲輸出空間的基,即w1 = v1, w2 = v2。
以前說過,輸入空間和輸出空間的基一旦肯定,對應的矩陣也就肯定了。如今的問題是,根據v1、v2和w1、w2如何描述這個用於線性變換的變換規則?也就是說,做用於線性變換的矩陣是什麼?
對於出入空間的任意向量v,均可以表示成兩個基向量的線性組合:
咱們事先已經知道投影變換是一種線性變換,它線性變換的兩個不變性:
T表示投影變換,T(v1)是v1的投影,沿着直線方向的向量的投影就是這個向量自己,因此T(v1) = v1。v2垂直於直線,它的投影是零向量,因此T(v2) = 0。由此獲得了投影變換和這組基向量的關係:
A用一組特殊的輸入基和輸出基(垂直於直線和沿着直線方向的一組基)描述了線性變換,將矩陣A乘以輸入向量的座標,獲得它在輸出空間的座標:
若是改用標準座標基,即:
投影的直線也須要給出具體的位置,假設T(v)變換是將向量投影到45°的直線上:
如今嘗試找出這個符合要求的矩陣,也就是投影矩陣。根據投影矩陣的公式,能夠用向量a = (t, t)表示直線,從而求得投影矩陣:
在使用標準座標基的時候,座標值等於向量自己:
能夠看到,若是選擇的基向量不一樣,即便對於一樣的線性變換,背後的矩陣也不一樣。在使用標準座標基的時候,感受不到座標的存在,此時矩陣乘以輸入向量等於輸出向量。實際上第一次是以投影矩陣的特徵向量爲基,獲得的矩陣A是投影矩陣P的特徵值矩陣。
肯定矩陣A的前提是須要知道輸入空間和輸出空間的基,咱們依然用v1,v2……vn和w1,w2……wm表示這兩組基。T(v1)表示對輸入空間的第一個基向量v1作線性變換,此時矩陣A乘以的座標是(1,0,…,0),獲得的輸出座標是:
當知道線性變換的結果時,就能夠經過它的座標肯定A的第一列。上式實際上描述了這樣線性變換:
這裏有一個特殊的線性變換——求導,T = d/dx。咱們之因此可以對函數求導,正是由於求導自己是一種線性變換,所以只須要掌握少許的求導法則,就能求出函數線性組合的導數。
假設輸入空間的基是1, x, x2,線性組合是c1 + c2x + c3x2;輸出是導數:
輸出空間的基是1, x。這是一個從三維空間到二維空間的線性變換:
描述這個線性變換的矩陣A知足:
出處:微信公衆號 "我是8位的"
本文以學習、研究和分享爲主,如需轉載,請聯繫本人,標明做者和出處,非商業用途!
掃描二維碼關注做者公衆號「我是8位的」