線性代數是數學中的一個非常重要科目, 需要研究線性空間, 線性變換和線性方程組. 至于應用就太廣泛了, 圖像處理, 壓縮, 信号處理, 統計分析, 機器學習, 網頁排序......
剛開始學習線性代數感覺抽象也很正常, 國内很多教材看着都頭大. 這裡 [遇見數學] 強烈推薦與B站視頻《線性代數的本質》和書籍《程序員的數學: 線性代數》來學習. 此外[遇見數學]也編寫了一系列動畫和短文, 希望借助動畫的方式, 加快學習線性代數的朋友能夠更加深刻的理解某些較為抽象的概念. 先聲明一下, 這個系列并不會讨論相關的計算(事實上複雜計算應該交給計算機), 不過适當練習還請下面一定動手來鞏固知識點.
01 向量的概念現實中工作中, 我們會把幾個數值放在一起, 當做一個整體來分析, 這就有了向量(Vector) : 一種有序的數值列表.
為了把向量和點區分開, 慣用的方法是把這對數豎着寫, 然後用括号括起來, 比如下面的示例為 2 維向量, 3 維向量和 4 維向量:
注: 或者用方括号來表示向量
決定一個向量是它的長度和方向, 我們可以通過坐标系來更好的理解它. 在二維坐标系下用箭頭繪制出來, 且箭頭的起點位于原點, 終點就是數值分量對應的點. 這樣每一個向量就對應唯一對數, 而坐标系中的一對數也唯一對應一個向量.
隻要向量的大小和方向相同, 即視為相等的向量, 如下圖所示在二維平面(Two-dimensional)下, 随便移動一個向量, 所留下軌迹上都是相同的向量:
對于三維空間而言, 向量就會有x, y, z三個分量, 我們用 x,y,z 軸來表示出來, 這樣每個向量也會與一個有序三元數組(x,y,z)對應:
▌向量的加法
向量加法就是把對應項相加:
從圖形來看我們可以平移第二個向量, 使它的起點與第一個向量的重點重合, 然後畫一個向量, 它從第一個向量的起點出發, 指向第二個向量的終點. 這個向量就是它們的和; 或者觀察動畫按照每個向量的分量進行運動最終效果是一樣的:
▌向量的數乘
另一個基礎的向量運算就是一個數值(标量Scalar)乘以向量的每個分量, 就是将向量中的每個分量與标量相乘. 如選擇數值 2, 把它與一個給定向量相乘, 意味着你把這個向量拉長為原向量的 2 倍:
觀察下圖如果标量為負, 則結果向量反向. 也就是數乘向量其實是對向量的拉伸, 壓縮或反向的操作:
向量的加法和數乘非常重要, 将會貫穿線性代數, 我們第一次的内容就到此為止, 不過下面再補充幾張動圖來加深加法的理解:
▌向量加法三角形法則
其實與上面加法示例相同, 不過這裡的向量起點并非原點:
▌平行四邊形法則
▌向量的減法
向量的減法其實就是加法的一種特殊情況:
02「基底 / 線性組合 / 線性無關(相關)」
▌基底
在二維線性空間中, 隻要用兩個特殊的向量就可以來用定位(表示)出任意向量:
空間中的任何向量都是可以通過縮放這兩個向量再相加表示出來. 現在想象, 譬如向量 (3,2) 就是沿着 i 的方向拉伸 3 倍, 再沿着 j 方向 拉伸 2 倍的向量相加結果.
這樣特殊的向量稱之為基(Basis, 或基底), 任何二維向量都可以由這兩個向量的線性組合表示出來, 其中 a, b 為标量.
觀察下面動圖顯示, 當 a, b 兩個标量自由變化, 通過向量加法與向量數乘這兩種基礎運算, 就能獲得所有二維中可能的向量:
基底的選取有各種各樣的方式, 但不同的選取 可能會有 3 種情況, 觀察下面動圖中選取 i 和 j 作為基底出現:
也可以線性表示出空間中任意的二維向量;
如果兩個向量恰好共線時候, 所産生的向量的終點被限制在一條過原點的直線上;
兩個向量都是零向量, 其組合向量是零向量.
所有由向量 i 和 j 線性組合而獲得所有可能的向量集合, 稱之為兩個向量張成的空間(Span).
用上面的圖形來說明: 對大部分二維向量來說, 兩個向量所張成的空間是所有二維向量的集合, 可以稱之為基底; 但當共線時, 張成的空間就是一條直線, 不能構成二維線性空間的基底.
▌三維空間的基底
再來看看三維空間中的兩個方向不同的向量(藍色和橘黃色)所張成的空間就是兩者所有的線性組合, 其實就張成了一個過原點的平面 .
如果在加上第三個向量, 那麼線性組合為下面的形式:
對三個基底向量分别進行縮放, 然後把結果相加, 而這三個向量所有可能的線性組合構成了他們張成的空間:
▌線性相關
考慮 三維中第三個向量已經落在前兩個向量所張成的平面之中, 那麼就可以被這兩個向量線性表示; 或者二維中兩個向量共線, 那麼可以由另一個線性表示出來. 現在觀察二維兩個向量共線的情況:
這種情況稱之為線性相關(Linearly Dependent), 也就是說存在有向量對張成空間而言上多餘的, 即便删除掉也不會對張成的空間有任何影響.
反之稱為線性無關, 也就是沒有任何向量可以由其他向量經過線性組合表示出來, 每個向量對所張成的空間都做出了"貢獻".
03 「線性變換/矩陣及乘法」線性變換是線性空間中的運動, 而矩陣就是用來描述這種變換的工具. 這樣說還是沒有直觀印象, 所以還是直接看圖解的動畫吧.
矩陣不僅僅隻是數值的表:
其實表示了在該矩陣的作用下, 線性空間是怎樣的變化, 觀察下圖二維平面中水平和垂直方向的伸縮過程:
從上面動畫中可以觀察到:
垂直方向并沒有發生任何變換(A 的第二列沒有變化);
水平方向伸展了 2 倍;
淺紅色方格在變換後面積變成了原來的 2 倍,這裡其實就是行列式的意義 - 面積的擴張倍率 Det(A)=2
再看到更多矩陣變換之前, 先停下來看看下面靜态圖片的進一步解釋:
變換前矩陣的基底向量 i (1,0) 移動到了 (2,0) 的位置, 而 j 基底向量 (0,1) 還是 (0,1) 沒發生任何變換(移動) - 也就是基底的變化:
一旦明白了基底的變化, 那麼整個線性變換也就清楚了 - 因為所有向量的變化都可以由改變後的基向量線性表出. 觀察下面紅色向量(1, 1.5) 和 綠色向量(-1, -3) 變換後落腳的位置:
向量 (1, 1.5) 在變換後的位置, 其實就是變換後基向量的線性表示, 也可以看到矩陣的乘法是如何計算的:
類似對于(-1, -3) 變換後的位置 , 也是一樣的計算方法:
可以再次觀察上面動畫來體會, 驗證算出的結果.
下面再看其他的變換矩陣
這裡矩陣 A 的對角線中(0,2)含有一個 0 的情況, 觀察下面動畫 :
可以看到:
水平方向變為 0 倍;
垂直方向被拉伸為 2 倍;
面積的變化率為 0 倍, 也就是 Det(A) = 0;
基底的變化如下:
再看看下面這個矩陣 A 的變換:
可以看到:
整個空間向左傾斜轉動;
面積放大為原來的 Det(A) = 3.5 倍;
上面在 3 個不同的矩陣作用下(相乘), 整個空間發生不同的變換, 但是原點沒有改變, 且直線依然還是直線, 平行的依然保持平行, 這就是線性變換的本質.
類似, 在三維線性空間内, 矩陣也用于這樣的線性變換, 需要注意的是這裡行列式可以看成經過變換後體積變化的倍率. 觀察下圖, 經過下面矩陣 A 的變換中, 空間會經過鏡像翻轉變換(扁平化為線), 所以行列式的值會是負數.
04 「行列式」
這次我們主要做一個回顧, 再進一步将行列式的幾何意義用動畫展示說明. 我們說矩陣 A 可以視為一種線性變換, 所以
上面的式子意味着一個向量 x 在線性變換 A 後的位置将會和向量 v 重合. 現在看個例子, 整個空間在矩陣 A 的作用下是怎樣的變化過程:
觀看看到:
原來向量(1, 0.5)在經過變換後是(2, 1.5);
水平方向變成了原來的 2 倍;
縱向變成了原來的 3 倍;
原來的直線變換後依然還是直線, 平行的依然保持平行;
原點沒有改變(如果沒有原點, 則為仿射空間)
并且注意紅色的方塊面積擴大了 6 倍, 這樣的面積(或體積)增大倍率就是行列式(Determinant)的幾何意義, 記作: det(A) 或者 |A|
再看另一個作用矩陣線性變換的動畫:
觀察看到:
空間發生了傾斜, 但沒有扭曲;
直線在變換後依然還是直線, 平行的依然保持平行;
A 的第一列(1.5, -1)的落腳點為(1, 0) - 像, 第二列(-0.5, 2)的落腳點為(0, 1);
單位紅色小方塊擴大為 2.5 倍, 也就是 det(A) = 2.5
再來看這個線性變換的例子, 注意矩陣 A 中兩個列向量是成比例的 - 線性相關:
觀察得到:
空間被壓縮成一條線;
向量(1, 0.5) 在整個變換過程中完全沒有發生改變(這跟特征值與特征向量有關, 我們後文書再說);
面積增大倍率為 0, 也就是 det(A)=0;
這跟上一節中矩陣對角線含有 0 元素情況類似, 在這種情況下意味着不存在逆矩陣, 不過也是以後要介紹的内容了.
行列式的幾何意義表示面積(體積)的增大倍率, 如在經過鏡像翻轉後就為負值, 上一節我們看到三維矩陣的情況, 現在看一看二維中經過鏡像翻轉後行列式的變化, 請注意最下變換過程中 det(A) 值從正數到負數的變化過程:
05 「矩陣的乘積/複合變換」
矩陣向量的乘積可以理解為将一個特定的線性變換作用在向量上, 本次我們先看幾個特殊的矩陣下的變換以及矩陣矩陣的乘積.
▌ 零矩陣
即所有元素都是 0 的矩陣, 記為 O . 可以用下标來表示矩陣的大小:
零矩陣表示的變換是将空間壓縮到原點, 可以觀察在 2 階零矩陣的作用下, 空間被壓縮到原點的變化過程, 注意行列式的值最後為 0:
▌單位矩陣
是對角元素為 1, 其餘都是 0 , 記為 I.
單位矩陣對空間什麼都不改變, 保持基向量不變, 也被稱為"恒等變換", 可以看下面對應的空間變化過程(盡管沒有改變):
▌對角矩陣
除了對角元之外所有元素均為 0 的矩陣稱之為對角矩陣.
對角矩陣表示的沿着坐标軸伸縮變換, 其中對角元素就是各軸伸縮的倍率, 并且下例矩陣 A 的對角元素中含有 2 個負數, 可以看做經過了 2 次鏡像翻轉, x,y 兩個方向先是壓縮, 然後再被拉伸, 面積擴大為原來的 6 倍, 這樣行列式的值為 6.
上面都是進行一次變換的操作, 如果想要再進行一次(甚至更多)變換, 就要矩陣和矩陣相乘了. 譬如下面矩陣 A 相當于将空間旋轉, 矩陣 B 是橫向拉伸.
如果是 BA 兩個矩陣相乘的運算, 就相當于先旋轉再拉伸, 這樣的複合變換運算順序是從右往左進行, 可以觀察下面的動畫:
如果是 AB 兩個矩陣相乘的運算, 就相當于先拉伸後旋轉, 運算順序是從右往左, 可以觀察下面的動畫:
從上面兩個變換動畫, 可以得出結論矩陣的乘積不滿足交換律(可以想象滿足結合律):
可以計算出 BA 和 AB 的值:
如何計算矩陣的乘積, 除了課本上給出的方法, 還可以按照列的線性表出來進行, 以 BA 為例:
另外, 如果兩個矩陣都不是零矩陣, 但是矩陣的乘積可能會是零矩陣, 比如在下面兩個矩陣:
空間中, A 做橫向壓縮, B 做垂直壓縮, 經過 A 然後 B 的變換後, 也會映射到原點.
「矩陣的逆/逆變換」這次我們來看如何把矩陣 A 經過變換後的向量再還原回去. 觀察下面如何從變換後的向量(-1.5, 2) 還原為向量 (1, 0.5) 的過程:
注意觀察要點:
變換後線性空間還是完整的二維空間;
變換後的行列式為不等于 0;
還原後僅有一個向量與之對應;
整個還原的變換實際上對應了另一個線性變換, 稱為矩陣的逆(Inverse), 記為 A^(-1).
矩陣與它的逆矩陣相乘, 那就是先做了一次變換, 然後在還原回來, 這兩個連續的變換作用就是矩陣的乘法, 相當于什麼都沒有改變, 這個沒有進行任何改變的變換, 就是上次說提到的單位矩陣.
利用這個性質, 我們可以通過在 Ax=V 兩邊同乘 A 的逆矩陣來求出變換前的向量 x:
矩陣的逆是否一定存在?
那麼問題在于逆矩陣是否一定能找得到呢? 想象當 det(A) = 0 時候, 也就是代表矩陣的變換将空間壓縮到更低的維度上, 此時沒有逆矩陣. 在二維平面中變換後空間被壓縮到原點以及被壓縮為一條直線都是不存在相應的逆矩陣. 或者說沒有辦法找到對應的映射可以将一個點或一條線還原為平面.
類似地, 對于三維空間中, 如果一個變換将空間壓縮為一個平面, 一條直線或原點, 也就是都對應 det(A) = 0 (體積為0)時, 那麼也沒有逆變換. 請看下面矩陣将三維空間壓縮為平面的情況:
▌對角矩陣的情況
對角矩陣對應的變換就是沿着坐标軸伸縮變換, 那麼還原就非常簡單了, 隻需要将各坐标軸伸縮為倒數倍就好了.
但注意即使不存在逆變換, 但對應的 x 仍然可能存在. 當一個變換将空間壓縮到一條直線, 但是向量 v 剛剛好就在這條直線上. 如下面矩陣 A 将空間壓縮成一條直線, (紅色)向量 v (1, 0.5) 因為恰好落在該條線上, 所以相應的 x 為 (0.25,-0.25) .
07【方程組的解/零空間/核】
線性代數在許多領域都被廣泛應用的主要原因是能夠求解給定的線性方程組(Linear System of Equations). 這一次來看如何用矩陣的語言來構建簡單的數學模型來:
有若幹隻雞和兔在同個籠子裡,從上面數,有三十五個頭;從下面數,有九十四隻腳。求籠中各有幾隻雞和兔?
題目非常簡單, 由兩個方程和兩個未知數構成的方程組便可以求解出:
或以把方程寫成矩陣向量相乘的形式 - 常系數矩陣 A , 未知量作為列向量 x, 兩者的乘積得到常數列向量 v.
常系數矩陣可以理解為自變量 x 與 因變量中間存在的某種關聯, 指定了這個矩陣就能确定了從向量到另外一個向量的映射. 這樣用線性變換來理解的話, 求解 Ax = v 意味着我們要找到一個向量 x , 使得它在變換後與 v 完全重合:
這個方程組有解就是矩陣 A 所代表的變換沒有将空間進行扁平化的壓縮, 即 det(A)≠0. 否則方程組無解.
或者還可以從矩陣的行視圖來理解這個線性方程組, 所要求的解就是求兩條直線的交點:
對于兩個方程組未知數兩個的時候, 線性方程組的解有三種情況:
不存在;
唯一(兩條直線相交);
有無窮多個;
現在從列視圖和行視圖兩個角度來理解後面兩種情況, 比如下面線性方程組無解:
從列視圖可以看做向量 (2,1) 沒有落在矩陣列所張成的空間内, 從下面動畫中看到經過矩陣變換後, 空間最終被壓縮為一條灰色直線, 而 v 在直線外, 所以不能被變換後的基向量線性表出:
或者可以從行視圖來理解就是空間中兩條直線為平行關系:
再來以下面線性方程組為例看無窮解的情況:
如果從行視圖來看就是兩條直線重合在一起:
觀察下面的動圖來從列視圖的角度理解無窮解的情況:
觀察要點:這個矩陣的變換将線性空間壓縮到一條灰色直線上;
圖形中黑色直線上的所有向量在變換後都被壓縮到原點, 成為零向量;
在經過線性變換後那些壓縮到原點的向量集合, 稱為零空間(Null space)或稱為核(Kernel). 上面方程組的通解就是由特解和所有零空間解的線性組合, 下面動圖盡管改變中 a 的值, 所有可能 a (-1, 1) 是零空間的解, 所以經過變換都會被壓縮到原點; 而 (2, 0) 是特解, 經過變換後會落腳在 (2, 4) 處.
類似, 如果有三個方程式, 三個未知數, 那麼每一個方程就代表了三維空間中的一個平面, 而方程組的解集就可能是空間中的一部分: 無解, 一個交點, 一條直線或一個平面;
在很多問題中都能将數學模型歸結為 y = Ax . 比如信号處理, 統計分析, 機器學習等, 在工科中會經常用到. 在未來的圖解系列中我們會遇到更多這些問題的示例.
08【方程組的解 II】這次我們來看看三個方程式, 三個未知數的方程組解(即平面方程組)的情況. 其中每一個方程可以看做代表了三維空間中的一個平面, 而方程組的解集就可能是空間中的一部分: 無解, 一個交點, 一條直線或一個平面;
▌方程組唯一解的情況
從行視圖來理解就是三個平面相交于一點:
如果從矩陣變換的角度來理解的話, 請觀察下圖:
觀察要點:
經過矩陣變換後, 仍是三維空間;
解向量 x 在變換後, 與向量 v 重合;
向量 v 可以被矩陣 A 的列向量線性表出, 也就是落在列空間内;
▌方程組無解
其中三個平面交線相互平行, 不會有任何共同的交點, 所以無解:
如果從矩陣變換的角度來理解的話, 請觀察下圖:
觀察要點:
經過矩陣變換後, 空間被壓縮為平面;
由于向量 v 在平面之外, 所以無法被矩陣的列向量線性表出, 落在列空間之外;
▌方程組有無窮解 - 解集為一條直線
三個平面相交于一條直線:
如果從矩陣變換的角度來理解的話, 請觀察下圖:
觀察要點:空間經過變換被壓縮為平面;
行列式為 0, 即逆矩陣不存在, 但解仍然存在, 因為 v 就在該平面上, 即在列空間内 ;
圖形中紅色細線上的所有向量在變換後都被壓縮到原點, 成為零向量;
方程的通解為特解 零空間上解所有的線性組合:
▌方程組無窮解 - 解集為一個平面
三個平面實際就是為一個平面:
如果從矩陣變換的角度來理解的話, 請觀察下圖:
觀察要點:
矩陣變換将空間壓縮為一條直線;
行列式為 0 , 即逆矩陣不存在, 但解仍然存在, 因為 v 剛好就在這條直線上, 還在列空間内;
圖形中淺藍色平面上的所有向量在變換後都被壓縮到原點, 成為零向量;
方程的通解為特解 零空間上解所有的線性組合:
這一次我們從行視圖和列視圖的幾何角度理解線性方程組: 每個方程組都有一個線性變換與之聯系; 當逆變換存在時, 就能用逆變換來求解方程組的解;逆變換不存在時, 行列式為 0, 就需要考察向量 v 是否落在列空間内了.
09「秩 / 列空間 / 零空間」首先讓我們來做一個簡短的回顧:
矩陣乘法可以理解為一個特定的線性變換, 矩陣的列向量相當基向量 i: (1,0) 和 j: (0,1) 經過變換過後的到達向量.
(原諒我用鼠标進行的标注吧)
空間變換後的任何向量都可以由矩陣 A 的列向量線性表出, 而這些所有可能的結果, 也就是矩陣的列所張成的列空間(Column Space).
原先的空間經過這樣2x2 矩陣 A 線性變換後的空間可能會三種情況:
還是平面 -仍是二維空間;
被壓縮為一條線 - 變成了一維;
被壓縮到原點 - 零維;
在數學專業的詞彙來表示線性變換後空間的維數, 稱之為矩陣的秩( Rank ) . 換句話說, 列空間就是矩陣的列所張成的空間. 所以矩陣秩的另一種定義可以說是列空間的維數. 經過變換後被壓縮到原點的向量集合, 稱為矩陣 A 的"零空間"(Null Space)或"核"(Kernel), 記為 Null(A) 或 Ker(A).
對照上面的三種情況, 來分别來觀察.
▌第 1 種情況: 變換後仍是平面
觀察要點:
如果經過矩陣 A 變換後的結果是一個平面, 則 rank( ) = 2, 空間沒有被壓縮扁平化, 因此可逆, 稱之為非奇異矩陣;
這樣秩與列數相等, 稱之為滿秩(Full Rank)矩陣.
對于滿秩矩陣來說, 變換後唯一落在原點的就是零向量本身, 也就是 dim Ker( ) = 0;
▌第 2 中情況: 變換後被壓縮為一條直線
當變換的結果是一條直線, 該矩陣是一維的, 稱rank(A) = 1, 此時矩陣不可逆, 稱為奇異矩陣;
這樣非滿秩矩陣, 會将空間壓縮到更低的一維直線上, 也就是由嫩綠色直線上一系列的向量在變換後成為零向量;
零空間的維度為 1, dim Ker(A) = 1;
▌第 3 種情況: 變換壓縮到原點
當變換的結果是壓縮到原點, 則該矩陣是零維的, 稱 rank(A) = 0;
而零空間維度為 2, dim Ker(A) = 2;
▌維數定理
假設 A 是 mxn 矩陣(非方陣的情況, 下次會介紹), 維數定理就是:
dim Ker(A) rank(A) = n
相信如果理解透徹 2x2 矩陣的情況, 那更高維的矩陣也就清楚了.
10「矮矩陣 / 長矩陣」矩陣乘法可以理解為一個特定的線性變換, 比如在 2x2 的可逆矩陣表示就是二維空間的(可逆)變換; 3x3 的可逆矩陣表示三維空間的變換.
這些都是 nxn 型的矩陣, 本節來看看更一般 mxn 矩陣, 也就是非方陣的情況 -- 分兩大類:行數小于列數的"矮矩陣"和行數大于列數的"長矩陣".
▌矮矩陣
所謂"矮矩陣"就是 mxn 矩陣 A 的維數 m < n 的情況:
從方程組來說, 就是未知量為 n , 而方程個數 m .
以上面 2x3 矩陣而言, 就是未知量 x 從三維空間被壓縮到二維平面的線性變換, 也就是說存在了壓縮扁平化的操作, 觀察下圖:
觀察要點:
三維空間被壓縮為平面;
屬于零空間的向量集合被壓縮到零向量, 可以認為在變換過程中丢失了一部分信息;
三維空間的基底在變換後落在平面上, 并且坐标分别為(3,1),(1,5),(4,9);
這樣矩陣壓縮的行為, 當然可以從二維平面到一維直線, 如看下圖的變換矩陣(1,2) 的作用下, 線性空間是怎樣的變化過程:
觀察要點:
屬于零空間的向量集合被壓縮到零向量;
二維空間的基底在變換後落在數軸上(直線)上, 并且變換後坐标分别為 1 和 2;
類似這樣對空間壓縮的操作經常被用于對數據的壓縮, 比如原始數據維數太大, 就需要找到某種變換将原始高維屬性空間降為更低維的空間, 未來再主成分分析 PCA 時候, 我們再來更詳細的圖形展示.
▌長矩陣
反過來考慮當矩陣 A 維數 m > n 的長矩陣:
這樣未知數要比方程數少的情況, 對應的是變換會從低維到高維空間進行的. 比如下面矩陣就是從二維變換到三維空間的映射:
類似, 如果從一維到三維空間的變換矩陣也一定屬于長矩陣形狀的.
無論是矮矩陣, 還是長矩陣, 這樣的非方陣和方陣的一個明顯不同是, 對于方陣我們可以計算它的行列式, 如果不是方陣的話,就不行列式這個概念了.
11「特征值 / 特征向量」“特征”一詞譯自德語的eigen, 意味着“自身的”,“有特征的” — 這強調了特征值對于定義特定的線性變換上是很重要的.
▌特征值 / 特征向量
我們來觀察在矩陣 A 的作用下空間發生的線性變換, 注意下圖中紅色向量和綠色向量的變化:
觀察要點:
空間發生了傾斜, 但(黑色虛線)直線還是直線, 依然保持平行(線性性質);
變換過程中發生了鏡像翻轉, 所以行列式為負值 -2;
基向量 i 變換到 (-2,-2) 處, 基向量 j 變換到 (2,3) 處;
紅綠兩個向量都随之發生了旋轉;
是不是空間中所有的向量都會進行旋轉呢? 還是這個矩陣變換為例, 再來觀察下面這 3 個向量.
觀察要點:
紅綠 3 個向量的長度發生了伸縮變換, 但仍在原來的直線方向上, 并未發生旋轉;
兩條直線上的任何其他向量都隻是被拉伸為原來的 2 倍和 -1 倍, 如紅色兩個向量都伸長為 2 倍;
除了這兩條直線外, 空間中的其他向量在變換過程中都有旋轉(見上圖);
這裡隻有長度伸縮起了變化, 而方向仍在原直線上的向量就是矩陣 A 的特征向量(Eigenvectors. 伸縮的倍數, 就是特征值(Eigenvalues), 紅色向量 (1,2) 伸長了 2 倍, 特征值為 2; 綠色向量 (2,1) 伸縮倍率為 -1, 相應特征值為 -1.
一般而言, 對于 nxn 方陣 A , 當存在向量 v 不是零向量, 且滿足
等号左邊是矩陣向量的乘積, 而右邊是數乘向量.
▌特征值的計算
如何求解出特征值呢, 考慮将上面等式右邊項移項:
我們知道隻有當 (A-λ I) 這個矩陣所代表的變換是壓縮扁平化操作的時候才會将向量 v 壓縮至原點處, 而壓縮扁平化的矩陣的行列式應該等于 0 , 這樣隻需要求解出相應的特征方程即可得到 λ 的結果.
一旦求出了矩陣的特征值, 之後要做的就是帶入定義式子, 求出滿足定義的特征向量了.
❥ 部分截圖出自 3Blue1Brown 的《線性代數 的本質》視頻
暫時更新到這裡吧, 歡迎關注 [遇見數學] , 未來還會繼續分享更新!
,
更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!