1. 程式人生 > >特徵值和特徵向量的幾何和物理意義

特徵值和特徵向量的幾何和物理意義

我們知道,矩陣乘法對應了一個變換,是把任意一個向量變成另一個方向或長度都大多不同的新向量。在這個變換的過程中,原向量主要發生旋轉、伸縮的變化。如果矩陣對某一個向量或某些向量只發生伸縮變換,不對這些向量產生旋轉的效果,那麼這些向量就稱為這個矩陣的特徵向量,伸縮的比例就是特徵值。

實際上,上述的一段話既講了矩陣變換特徵值及特徵向量的幾何意義(圖形變換)也講了其物理含義。物理的含義就是運動的圖景:特徵向量在一個矩陣的作用下作伸縮運動,伸縮的幅度由特徵值確定。特徵值大於1,所有屬於此特徵值的特徵向量身形暴長;特徵值大於0小於1,特徵向量身形猛縮;特徵值小於0,特徵向量縮過了界,反方向到0點那邊去了。

 注意:常有教科書說特徵向量是在矩陣變換下不改變方向的向量,實際上當特徵值小於零時,矩陣就會把特徵向量完全反方向改變,當然特徵向量還是特徵向量。我贊同特徵向量不改變方向的說法:特徵向量永遠不改變方向,改變的只是特徵值(方向反轉特徵值為負值了)。這有點類似地說冬天深圳的室外“溫度

10℃,哈爾濱室外的“溫度”是-30(稱溫度而不溫);也類似說無人飛機在海拔“高度”100米處飛行而核潛艇在海拔“高度”-50米(稱高度而不高)處遊弋一樣。

關於特徵值和特徵向量,這裡請注意兩個亮點。這兩個亮點一個是線性不變數的含義,二個是振動的譜含義。

特徵向量是線性不變數
所謂特徵向量概念的亮點之一是不變數,這裡叫線性不變數。因為我們常講,線性變換啊線性變換,不就是把一根線(向量)變成另一根線(向量),線的變化的地方大多是方向和長度一塊變。而一種名叫“特徵向量”的向量特殊,在矩陣作用下不變方向只變長度。不變方向的特性就被稱為線性不變數。

如果有讀者堅持認為負方向的特徵向量就是改變了向量的方向的想法的話,你不妨這樣看線性不變數:特徵向量的不變性是他們變成了與其自身共線的向量,他們所在的直線線上性變換下保持不變;特徵向量和他的變換後的向量們在同一根直線上,變換後的向量們或伸長或縮短,或反向伸長或反向縮短,甚至變成零向量(特徵值為零時),如下圖。

  
特徵值是振動的譜

除了線性不變數,另外一個亮點是關於振動方面的。戲說在朝代宋的時候,我國就與發現矩陣特徵值理論的機會擦肩而過。話說沒有出息的秦少游在往池塘裡扔了一顆小石頭後,剛得到一句“投石衝開水底天”的泡妞詩對之後,就猴急猴急地去洞房了,全然沒有想到水波中隱含著矩陣的特徵值及特徵向量的科學大道理。大概地說,水面附近的任一點水珠在原處上下振動(實際上在做近似圓周運動),並沒有隨著波浪向外圈移動,同時這些上下振動的水珠的幅度在漸漸變小,直至趨於平靜。在由某塊有著特定質量和形狀的石頭被以某種角度和速度投入某個面積和深度特定的水池中所決定的某個矩陣中,紋波盪漾中水珠的漸變過程中其特徵值起著決定性的作用,它決定著水珠振動的頻率和幅度減弱的衰退率。

在理解關於振動的特徵值和特徵向量的過程中,需要加入復向量和復矩陣的概念,因為在實際應用中,實向量和實矩陣是幹不了多少事的。機械振動和電振動有頻譜,振動的某個頻率具有某個幅度;那麼矩陣也有矩陣的譜,矩陣的譜就是矩陣特徵值的概念,是矩陣所固有的特性,所有的特徵值形成了矩陣的一個頻譜,每個特徵值是矩陣的一個“諧振頻點”。

美國數學家斯特讓(G..Strang)在其經典教材《線性代數及其應用》中這樣介紹了特徵值作為頻率的物理意義,他說:

大概最簡單的例子(我從不相信其真實性,雖然據說1831年有一橋樑毀於此因)是一對士兵通過橋樑的例子。傳統上,他們要停止齊步前進而要散步通過。這個理由是因為他們可能以等於橋的特徵值之一的頻率齊步行進,從而將發生共振。就像孩子的鞦韆那樣,你一旦注意到一個鞦韆的頻率,和此頻率相配,你就使頻率蕩得更高。一個工程師總是試圖使他的橋樑或他的火箭的自然頻率遠離風的頻率或液體燃料的頻率;而在另一種極端情況,一個證券經紀人則盡畢生精力於努力到達市場的自然頻率線。特徵值是幾乎任何一個動力系統的最重要的特徵。

其實,這個矩陣之所以能形成“頻率的譜”,就是因為矩陣在特徵向量所指的方向上具有對向量產生恆定的變換作用:增強(或減弱)特徵向量的作用。進一步的,如果矩陣持續地疊代作用於向量,那麼特徵向量的就會凸現出來。

比如,一個物理系統,其特性可以被一個矩陣所描述,那麼這個系統的物理特性就可以被這個矩陣的特徵值所決定,各種不同的訊號(向量)進入這個系統中後,系統輸出的訊號(向量)就會發生相位滯後、放大、縮小等各種紛亂的變化。但只有特徵訊號(特徵向量)被穩定的發生放大(或縮小)的變化。如果把系統的輸出埠接入輸入埠,那麼只有特徵訊號(特徵向量)第二次被放大(或縮小)了,其他的訊號如滯後的可能滯後也可能超前同時縮小,放大的可能被繼續放大也可能被縮小同時滯後,縮小的可能被繼續縮小也可能被放大同時滯後等。經過N次的迴圈後,顯然,亂七八糟的大量的向量群眾們終不能成氣候,只有特徵向量們,心往一處想,勁往一處使,要麼成功出人頭地,要麼失敗殺身成仁。因此我們就可以因此在時間域上觀察輸出,就會得到一個或幾個超級明顯的特徵訊號出來(特徵向量)。

弄過電路的哥們早看出了俺的含沙射影:切!繞什麼繞,你說的不就是振盪器的原理嘛,振盪訊號(電壓、電流)構成了特徵向量,特徵值是1,振盪訊號的頻率是…

是是是,就是振盪器的原理。其實振盪器原理是可以用矩陣的冪來解釋的。這個編輯器不好用,矩陣分析和細節這裡就忽略了。

一、矩陣基礎[1]

矩陣是一個表示二維空間的陣列,矩陣可以看做是一個變換。線上性代數中,矩陣可以把一個向量變換到另一個位置,或者說從一個座標系變換到另一個座標系。矩陣的“基”,實際就是變換時所用的座標系。而所謂的相似矩陣(clip_image002),就是同樣的變換,只不過使用了不同的座標系。線性代數中的相似矩陣實際上就是要使這些相似的矩陣有一個好看的外表,而不改變其變換的功用。

矩陣雖然是二維的,但我們通常把矩陣的大小稱為矩陣的維度。例如一個3乘3的矩陣就可以說是一個三維矩陣。

二、直觀性說明[2]

我們先來看點直觀性的內容。矩陣的特徵方程式是:

clip_image004

矩陣實際可以看作一個變換,方程左邊就是把向量x變到另一個位置而已;右邊是把向量x作了一個拉伸,拉伸量是lambda。那麼它的意義就很明顯了,表達了矩陣A的一個特性就是這個矩陣可以把向量x拉長(或縮短)lambda倍,僅此而已。

任意給定一個矩陣A,並不是對所有的向量x它都能拉長(縮短)。凡是能被矩陣A拉長(縮短)的向量就稱為矩陣A的特徵向量(Eigenvector);拉長(縮短)的量就是這個特徵向量對應的特徵值(Eigenvalue)。

值得注意的是,我們說的特徵向量是一類向量,因為任意一個特徵向量隨便乘以一個標量結果肯定也滿足上述方程,當然這兩個向量都可以看成是同一特徵向量,並且它們也對應於同一個特徵值。

如果特徵值是負數,則說明矩陣不但把特徵向量拉長(縮短)了,而且使該向量的方向發生了反轉(指向了相反的方向)。一個矩陣可能可以拉長(縮短)多個向量,因此它就可能有多個特徵值。另外,對於實對稱矩陣來說,不同特徵值對應的特徵向量必定正交

我們也可以說,一個變換矩陣的所有特徵向量組成了這個變換矩陣的一組基。所謂基,可以理解為座標系的軸。我們平常用到的大多是直角座標系,線上性代數中可以把這個座標系扭曲、拉伸、旋轉,稱為基變換。我們可以按需求去設定基,但是基的軸之間必須是線性無關的,也就是保證座標系的不同軸不要指向同一個方向或可以被別的軸組合而成,否則的話原來的空間就“撐”不起來了。在主成分分析(PCA)中,我們通過在拉伸最大的方向設定基,忽略一些小的量,可以極大的壓縮資料而減小失真。

變換矩陣的所有特徵向量作為空間的基之所以重要,是因為在這些方向上變換矩陣可以拉伸向量而不必扭曲和選擇它,使得計算大為簡單。因此特徵值固然重要,但我們的終極目標卻是特徵向量。

三、幾個重要的抽象概念

1、核

所有經過變換矩陣後變成了零向量的向量組成的集合,通常用Ker(A)來表示。

假設你是一個向量,有一個矩陣要來變換你,如果你不幸落入了這個矩陣的核裡面,那麼很遺憾轉換後你就變成了虛無的零。特別指出的是,核實“變換”(Transform)中的概念,矩陣變換中有一個相似的概念叫“零空間”。有的材料在談到變換的時候使用T來表示,聯絡到矩陣時才用A,本文把矩陣直接看作“變換”。核所在的空間定義為V空間,也就是全部向量原來的空間。

2、值域

某個空間中所有向量經過變換矩陣後形成的向量的集合,通常用R(A)來表示。

假設你是一個向量,有一個矩陣要來變換你,這個矩陣的值域表示了你將來所有可能的位置。值域的維度也叫做秩(Rank)。值域所在的空間定義為W空間。

3、空間

向量與建立在其上的加、乘運算構成了空間。向量可以(也只能在)空間中變換。使用座標系(基)在空間中描述向量。

不管是核還是值域,它們都是封閉的。意思是說,如果你和你的朋友困在核裡面,你們不管是相加還是相乘都還會在核裡面,跑不出去,這就構成了一個子空間。值域同理。

數學家證明了,V(核所在的空間定義為V空間)的維度一定等於它的任意一個變換矩陣的核的維度加上值域的維度。

clip_image006

嚴格的證明可以參考相關資料,這裡說一個直觀的證明方法:

V的維度也就是V的基的數目。這些基分為兩部分,一部分在核中,一部分是值域中非零象的原象(肯定可以分,因為核和值域都是獨立的子空間)。如果把V中的任意向量用基的形式寫出來,那麼這個向量必然也是一部分在核中,另一部分在值域中非零象的原象裡。現在對這個向量作變換,核的那部分當然為零了,另一部分的維度剛好等於值域的維度。

四、變換矩陣行空間和零空間的關係

根據矩陣的性質,變換矩陣的行數等於V的維度,變換矩陣的秩等於值域R的維度,所以可以得出:

clip_image008

因為A的秩又是A行空間的維度(注意在非滿矩陣中這個數肯定小於行數),所以上述公式可以變為:

clip_image010

之所以寫成這個形式,是因為我們可以發現A的零空間和A的行空間是正互動補的。正交是因為零空間就是核,按定義乘以A的行向量當然為零。互補是因為它們加起來剛好張成整個V空間。

這個正互動補導致了非常好的性質,因為A的零空間和A的行空間的基組合起來剛好可以湊成V的基。

五、變換矩陣列空間和左零空間的關係

如果把以上方程取轉置,則可以得到:

clip_image012

因為clip_image014的實際意義是把值域和定義域顛倒過來了,所以clip_image014[1]的零空間就是值域以外的區域投向V中零點的所有向量的空間,有人將其稱為“左零空間”(Left Null Space)。這樣就可以得到:

clip_image016

同樣,A的左零空間與A的列空間也正互動補,它們加起來剛好可以張成W空間,它們的基也構成了W的基。

六、變換矩陣行空間和列空間的關係

變換矩陣實際上就是把目標向量從行空間轉換到列空間。

矩陣的行空間、列空間、零空間、左零空間構成了我們線上性代數研究中的所有空間,把它們的關係弄清楚,對於分別的基轉換非常重要。

七、特徵方程的祕密

我們試圖構造一個這樣的變換矩陣A:它把向量變換到一個值域空間,這個值域空間的基是正交的;不僅如此,還要求任對於意一個基v都有 clip_image018 的形式,clip_image020 是原來空間的一個已知基。這樣我們就能把複雜的向量問題轉換到一個異常簡單的空間中去。

如果clip_image020[1] 的數量不等於v,那麼用clip_image022取代A,可以變為一個對稱且半正定矩陣,它的特徵向量正是要求的基v!

再次說明,矩陣不等於變換,把矩陣看成變換隻是提供一個理解變換矩陣的方法。或者,我們可以認為,矩陣只是變換的一種變現形式。