1. 程式人生 > >影象處理之特徵值和特徵向量的意義

影象處理之特徵值和特徵向量的意義

注:以下為個人學習筆記、知識整理

1.特徵值

從線性變換入手,把一個矩陣當作一個線性變換在某一組基下的矩陣,而最簡單的線性變換就是數乘變換。

特徵值的意義就是:目的就是看看一個線性變換對一些非零向量的作用是否能夠相當於一個數乘變換,特徵值就是這個數乘變換的變換比。

特徵值得簡單理解就是:輸入x到系統A中,輸出得到的是輸出x的landa倍。

2.特徵向量

公式當中的x就是特徵向量。

我們更關心的是把原先的線性空間(如A)分解成一些和特徵向量相關的子空間的直和。

這樣我們的研究就可以分別限定在這些子空間上來進行,這和物理中在研究運動的時候將運動分解成水平方向和垂直方向的做法是一個道理!

 特徵值是針對方陣而言的。

3.特徵值和特徵向量在影象處理的含義

我們知道,一個變換可由一個矩陣乘法表示,那麼一個空間座標系也可視作一個矩陣,而這個座標系就可由這個矩陣的所有特徵向量表示,用圖來表示的話,可以想象就是一個空間張開的各個座標角度,這一組向量可以完全表示一個矩陣表示的空間的“特徵”,而他們的特徵值就表示了各個角度上的能量(可以想象成從各個角度上伸出的長短,越長的軸就越可以代表這個空間,它的“特徵”就越強,或者說顯性,而短軸自然就成了隱性特徵),因此,通過特徵向量/值可以完全描述某一幾何空間這一特點,使得特徵向量與特徵值在幾何(特別是空間幾何)及其應用中得以發揮。

4.矩陣論之影象處理

矩陣論在影象中的應用比如有PCA( Principal Component Analysis

)主成分析方法,選取特徵值最高的k個特徵向量來表示一個矩陣,從而達到降維分析+特徵顯示的方法。一般而言,這一方法的目的是尋找任意統計分佈的資料集合之主要分量的子集。相應的基向量組滿足正交性且由它定義的子空間最優地考慮了資料的相關性。將原始資料集合變換到主分量空間使單一資料樣本的互相關性降低到最低點。

5.PCA例子說明

      對於一個k維的feature來說,相當於它的每一維feature與其他維都是正交的(相當於在多維座標系中,座標軸都是垂直的),那麼我們可以變化這些維的座標系,從而使這個feature在某些維上方差大,而在某些維上方差很小。例如,一個45度傾斜的橢圓,在第一座標系,如果按照x,y座標來投影,這些點的x和y的屬性很難用於區分他們,因為他們在x,y軸上座標變化的方差都差不多,我們無法根據這個點的某個x屬性來判斷這個點是哪個,而如果將座標軸旋轉,以橢圓長軸為x軸,則橢圓在長軸上的分佈比較長,方差大,而在短軸上的分佈短,方差小,所以可以考慮只保留這些點的長軸屬性,來區分橢圓上的點,這樣,區分性比x,y軸的方法要好!


所以我們的做法就是求得一個k維特徵的投影矩陣,這個投影矩陣可以將feature從高維降到低維。投影矩陣也可以叫做變換矩陣。新的低維特徵必須每個維都正交,特徵向量都是正交的。通過求樣本矩陣的協方差矩陣,然後求出協方差矩陣的特徵向量,這些特徵向量就可以構成這個投影矩陣了。特徵向量的選擇取決於協方差矩陣的特徵值的大小。

舉一個例子:

對於一個訓練集,100個sample,特徵是10維,那麼它可以建立一個100*10的矩陣,作為樣本。求這個樣本的協方差矩陣,得到一個10*10的協方差矩陣(解釋在第6),然後求出這個協方差矩陣的特徵值和特徵向量,應該有10個特徵值和特徵向量,我們根據特徵值的大小,取前四個特徵值所對應的特徵向量,構成一個10*4的矩陣,這個矩陣就是我們要求的特徵矩陣,100*10的樣本矩陣乘以這個10*4的特徵矩陣,就得到了一個100*4的新的降維之後的樣本矩陣,每個sample的維數下降了。

當給定一個測試的特徵集之後,比如1*10維的特徵,乘以上面得到的10*4的特徵矩陣,便可以得到一個1*4的特徵,用這個特徵去分類。

所以做PCA實際上是求得這個投影矩陣,用高維的特徵乘以這個投影矩陣,便可以將高維特徵的維數下降到指定的維數。

6.協方差矩陣

定義是變數向量減去均值向量,然後乘以變數向量減去均值向量的轉置再求均值。例如x是變數,μ是均值,協方差矩陣等於E[(x-μ)(x-μ)^t],物理意義是這樣的,例如x=(x1,x2,...,xi)那麼協方差矩陣的第m行n列的數為xm與xn的協方差,若m=n,則是xn的方差。如果x的元素之間是獨立的,那麼協方差矩陣只有對角線是有值,因為x獨立的話對於m≠n的情況xm與xn的協方差為0。另外協方差矩陣是對稱的。
一般多變數分佈的時候(例如多元高斯分佈)會用到協方差矩陣,工程上協方差矩陣也用來分析非確定性平穩訊號的性質以及定義非確定性向量的距離(馬哈拉諾比斯範數)。