線性代數的本質課程筆記-特徵向量/特徵值

  • 2019 年 10 月 6 日
  • 筆記

影片地址:https://www.bilibili.com/video/av6540378/?spm_id_from=333.788.videocard.0

本篇來講一下線性代數中非常重要的一個概念:特徵向量/特徵值。

前面介紹過,一個矩陣代表的是一種線性變換,考慮二維空間中的某個線性變換,它將i即[1,0]變換到[3,0]的位置,將j即[0,1]變換到[1,2]的位置,那麼對應的矩陣就是[3,1;0,2](先說一下寫法,這裡的[3,1;0,2],其中3,1是第一行,0,2是第二行):

在這個變換過程中,很多向量都離開了其原本所張成的空間,即所在的直線,但也有一些向量在變換後,仍恰好落在原來的直線上:

如上面的例子中,基向量i就落在了原來的直線即x軸上,只不過是被拉長了三倍,同樣的,x軸上的任何其他向量在經過變換後都只是被拉伸為原來的三倍,且方向不變:

除了x軸上的向量外,向量[-1,1] 所在的直線上的向量在變換後仍在原來的直線上,只是長度被拉長了兩倍:

總結一下,在剛才的線性變換中,有兩條直線上的向量,在變換後仍在其所在的直線上,只不過長度和方向發生了改變,但其他的向量,都離開了它所張成的直線:

想必大家都知道結果了,經過上面矩陣所代表的線性變換,兩條位置不變的直線上的向量都可以稱之為特徵向量,而對應伸縮的大小,就稱之為特徵值。值得一提的是,如果線性變換後是反向伸縮,那麼特徵值是負的:

接下來簡單介紹一下特徵值和特徵向量的計算方法,首先根據剛才的介紹,一個矩陣A的特徵向量,在經過這個矩陣所代表的線性變換之後,沒有偏離其所張成的直線,而只是發生了伸縮或方向改變,所以首先可以寫出下面的式子:

接下來要求解特徵向量和特徵值,首先需要做下變換,因為等式的左邊代表的是矩陣和向量相乘,右邊代表的是一個數和向量相乘,所以先把右邊變為矩陣和向量相乘的形式,即讓λ與單位矩陣相乘:

然後就可以都移到等號左邊,提出公因子來:

接下來的目標就是求解向量v,使得v與(A-λI)相乘的結果為零向量。如果v本身是零向量的話,那等式恆成立。但我們真正想找的是非零的特徵向量。

回顧本系列影片第五講的內容,當一個二維矩陣的行列式為0時,它能代表的線性變換能將空間壓縮為一條直線或者是零點。因此,想讓v經過(A-λI)變換後的結果為零向量,(A-λI)的行列式值必須為0,所以整個過程如下:

以最開頭提到的矩陣作為例子,很容易求解出特徵值是2或者3:

求解出特徵值了,如何求解對應的特徵向量呢?以特徵值2為例子,求解如下的方程組即可,你可以發現,一條直線上的所有向量都可以作為特徵向量:

一般情況下,一個二維矩陣有兩個特徵值,而對應的特徵向量在兩條直線上,但也存在一些特殊情況。如有時候只有一個特徵值,以及特徵向量分布在一條直線上,如下面的矩陣,只有1個特徵值,為1:

有一些矩陣並沒有對應的特徵值,比如將空間旋轉90度的線性變換所對應的矩陣,空間中所有的向量在經過其變換後都偏離了原來的直線,旋轉了90度,因此其沒有特徵向量。

更特別的,有時候一個矩陣只有一個特徵值,但是其對應的特徵向量分布在不同的直線上,如下面的矩陣將空間中所有的向量都拉伸了兩倍,它只有一個特徵值2,但是所有的向量都是其特徵向量:

最後,講一下特徵基的概念。講到基,又得搬出坐標系的概念了。假設我們坐標系的基是[1,0]和[0,1],如果基向量都是特徵向量,那麼會發生什麼呢?沒錯,如果基向量都是一個矩陣的特徵向量,那麼這個矩陣就是一個對角矩陣,而對角線上的值,就是對應的特徵值:

這句話反過來說對不對呢?即如果一個矩陣是對角矩陣,那麼對應的特徵向量都是基向量?好像有點問題,比如剛才的[2,0;0,2],它是一個對角矩陣,但其特徵向量包括了所有的向量,而並非只有基向量。

但很多情況下,特徵向量並非是基向量,但至少能夠找到一組能夠張成整個空間的向量集合,還是本文開頭所講的例子:

如果能找到這樣一組向量,那我們就能變換坐標系,使這些向量成為新的坐標系下的基向量。這裡先簡單回顧一下上一個影片中所講到的基變換的概念。假設我們的坐標系基向量分別是[1,0]和[0,1],那麼矩陣[2,-1;1,1]的意思可以理解為,將我們空間中的[1,0]、[0,1],轉換到另一個空間中的[1,0]、[0,1],而另一個空間中的[1,0]、[0,1],在我們空間看的話,坐標分別是[2,1]和[-1,1](這裡可能比較繞,需要轉一下彎)。

因此,矩陣[2,-1;1,1]所代表的線性變換,可以理解為將另一組坐標系下某一個向量的坐標,轉換到我們這組坐標系下的坐標,同樣的,矩陣[2,-1;1,1]的逆代表將一個向量在我們坐標系下的坐標,轉換成另一個坐標系下的坐標。

因此如果想要將我們坐標系下的一個線性變換M,作用到另一個坐標系中,需要怎麼做呢?首先要將一個向量在另一個坐標系中的坐標轉換到我們的空間中坐標,然後在進行線性變換M,最後在變回到另一個空間中的坐標:

最後還是最開始的例子,假設想讓在我們的坐標系下得到的特徵向量(因為直線上所有的向量都可以作為特徵向量,因此這裡取了一個特例[-1,1],[1,0])作為新的坐標系下的基向量,新的坐標系下[1,0]和[0,1]對應的向量,在我們的坐標系下分別是[1,0]和[-1,1],那麼就可以得到一個基變換矩陣[1,-1;0,1](基變換矩陣可以將另一個坐標系下的坐標轉換為我們這個坐標系下的坐標)。

思考下面三個矩陣相乘的結果的結果:

假設中間的矩陣為M,那麼上面三個矩陣相乘的意思其實是對另一個坐標系下定義的向量坐標應用在我們坐標系下的線性變換M。三個矩陣相乘的結果是一個對角矩陣,且對角線元素為對應的特徵值:

從直觀上理解,由於選擇了矩陣M的特徵向量作為新坐標系下的基向量,基向量在變換中只是進行了縮放。從數學上理解,如果把上面式子中左右兩邊同左乘矩陣[1,-1;0,1],其實就是特徵向量的定義。把一個矩陣的特徵向量作為基向量,這組基向量也稱為特徵基:

根據上面的式子,使用矩陣M的特徵向量所組成的矩陣,成功將M進行了對角化。但並不是所有的矩陣都可以對角化,只有矩陣的特徵向量夠多,能夠張成全空間時,才能進行對角化。

好了,本節的內容就這麼多,深入淺出,小夥伴們一定記得去看影片哇!