假設 a為乙個 矩陣,而 x 為乙個有n列的欄向量, 為一純量。考慮以下的數學式
如果x由不為零的元素所組成,其中要滿足上式稱為矩陣a的特徵值(eigenvalue),而x稱為矩陣a的特徵向量 (eigenvector)。特徵向量代表乙個正規正交(orthonormal) 的向量組,所謂的正規正交向量,是指這向量與自身做 內積的值為一單位向量;在幾何關係上是指二量相互垂直且此其內積值再做正規化(normalization)。
上式也可改寫為
其中 i 為單位矩陣。
則eigenvalue可以用特徵方程序計算
上述的二次方程式可求解二個根分別為 ,這二個值即為a的特徵值。而a的特徵向量求法如下 ,分別將任一特徵值代入 。例如
另乙個特徵值 代入,可以得到另乙個特徵向量為 。我們可找到無限多個向量,滿足上述的 特徵向量,例如
因此要得到唯一的特徵向量,即是正交(orthonormal)特徵向量組q,利用其特性
求解上式可得 。所以對應的正交特徵向量組q為
在上述例子中,矩陣a很簡單大小為2x2,可以用手做演算。一但矩陣大小增加,以matlab內建函式做運 算,就很輕鬆。相關函式的語法為eig(a),得到一欄向量代表a的特徵值;而[q,d]=eig(a),其中q代表a的特徵 向量,d為一對角矩陣其元素代表a的特徵值。
在此示範上述例子
>> a = [0.5 0.25; 0.25 0.5];
>> [q,d] = eig(a)
q =
0.7071 0.7071
-0.7071 0.7071
d = % 注意在對角線上的值才是特徵值
0.2500 0
0 0.7500
>> q*q' % q*q'=i
ans=
1 0
0 1
>> a*q(:,1); 0.25* q(:,1) % 驗證 ,注意x=q(:,1) 為第乙個特徵向量
ans = % 為a*x的結果
0.1768
-0.1768
ans = % 為 的結果
0.1768
-0.1768
特徵向量與特徵值
在看線性代數這一部分的時候,真是一頭霧水。雖然明白了特徵值和特徵向量的求法,但總覺得沒有用。在 理解矩陣 一文中,雖然提到了這與矩陣的本質有關,但並未詳細提及,但我知道了一定具有一定的幾何意義。後來,檢視了 特徵向量的幾何意義 一文,才明白了。特別是wikipedia中關於 特徵向量 的文章,終於對...
特徵值與特徵向量
我們知道,矩陣乘法對應了乙個變換,是把任意乙個向量變成另乙個方向或長度都大多不同的新向量。在這個變換的過程中,原向量主要發生旋轉 伸縮的變化。如果矩陣對某乙個向量或某些向量只發生伸縮變換,不對這些向量產生旋轉的效果,那麼這些向量就稱為這個矩陣的特徵向量,伸縮的比例就是特徵值。實際上,上述的一段話既講...
特徵值與特徵向量
矩陣與向量的乘法可以理解為變換 投影,變換分為旋轉變換與伸縮變換,投影可以是低維向高維的投影,也可以是高維向低維的投影。因此,方陣與向量的乘法只有變換操作,乙個行數大於列數的矩陣與向量的乘法包含了變換以及維度的提高,乙個行數小於列數的矩陣與向量的乘法則是維數的降低。方陣的矩陣乘法對應了一種變換,將乙...