K L變換和 主成分分析PCA

2022-03-18 14:24:06 字數 2656 閱讀 8318

說pca的話,必須先介紹一下k-l變換了。

k-l變換是karhunen-loeve變換的簡稱,是一種特殊的正交變換。它是建立在統計特性基礎上的一種變換,有的文獻也稱其為霍特林(hotelling)變換,因為他在2023年最先給出將離散訊號變換成一串不相關係數的方法。

k-l變換的突出優點是它能去相關性,而且是均方誤差(mean square error,mse)意義下的最佳變換。

下面就簡單的介紹一下k-l變換了。

設,隨機向量x ∈rn(n階列向量),它的均值向量為mx,則其協方差矩陣可以表示為

cx= e                           (2.1)

cx是乙個n*n階的實對稱陣。

k-l變換定義了一正交變換a ∈rn*n,將x ∈rn的向量對映到用y ∈rn代表的向量,並且使y向量中各分量間不相關:

y = a*(x-mx)(2.2)

因為y的各分量間不相關,則其協方差矩陣cy為對角陣,即

cy = diag(λ1,λ2,...,λn)

而矩陣a總是可以找到的,因為對於實對稱陣,總能找到乙個正交陣a,使得acxat的運算結果為對稱陣。k-l變換中,將a的每一行取為cx的特徵向量,並且將這些特徵向量按對應的特徵值大小進行降序排序,使最大特徵值對應的特徵向量在a的第一行,而最小特徵值對應的特徵向量在a的最後一行。而cy是cx對角化後的結果,所以兩個矩陣的特徵值是一致的(λ1,λ2,...,λn)。

這樣就可以通過矩陣a實現由隨機向量x到隨機向量y的k-l變換了,而由

x = aty +mx                                          (2.3)

就可以實現y反變換到x。

若選擇的最大k個特徵值對應的k個特徵向量,組成k×n的轉換矩陣a,則變換後y降為k維的,則由y對x的恢復公式如下:

x『 = aky +mx                                          (2.4)

這時候cy = diag(λ1,λ2,...,λk),x與x』之間的均方誤差可以由下式表達:

λk+1+.λk+2...+λn                                       (2.5)                            (沒有公式編輯器啊)

上面我們提到了對於特徵值λ是從大到小排序的,那麼這時候通過式子2.5可以表明通過選擇k個具有最大特徵值的特徵向量來降低誤差。因此,從可以將向量x和它的近似x『之間的均方誤差降至最小這方面來說,k-l變換是最佳變換。

在二十世紀九十年代初,kirby和sirovich開始討論利用pca技術進行人臉影象的最優表示問題。並且由m.turk和a.pentland將此技術用於人臉識別中,並稱為特徵臉方法。m.turk和a.pentland將m×n的人臉影象,重新排列為m *n維的列向量。則所有的訓練影象經此變換後得到一組列向量:,xi∈rm*n,其中n代表訓練樣本集中影象的個數。將影象看成一隨機列向量,並通過訓練樣本對其均值向量和協方差矩陣進行估計。

均值向量μ通過下式估計:

μ = (1/n)*((x1+x2+...+xn)                        (3.1)

協方差矩陣

st  = e  = x'x't               (3.2)

其中x』 = [x1-μ, x2-μ,...., xn-μ]

y = ak*(x-mx)(3.3)

因為st =x'x't,而x『為(m*n)*n矩陣,但是因為x』為n階矩陣,所以st的秩最大為n-1,這樣只要計算出st的特徵向量就可以計算出k-l變換矩陣了。

但是因為st是(m*n)*(m*n)階的矩陣,所以計算它的特徵向量比較複雜,這裡使用了乙個技巧:

xtxvi=δivi                                                (3.4)

(xxt)(xvi)=δi(xvi)                                    (3.5)

根據式子3.4與3.5可以看出,只要計算出xtx的特徵值和特徵向量δi與vi,然後就可以計算出xxt的 特徵值和特徵向量δi與xvi,而xtx為n*n階的矩陣,計算起來比較容易,除此以外,也可以使用svd,這裡就不提了。

1.將mxn的訓練影象重新排列為m *n維的列向量。計算均值向量,並利用均值向量將所有樣本中心化。

2.利用中心化後的樣本向量,根據式(3.2)計算其協方差矩陣;對其特徵值分解,並將特徵向量按其對應的特徵值大小進行降序排列。

3.選取第2步所得的k ≤n-1個最大特徵值對應的特徵向量組成投影矩陣a,將每幅已中心化的訓練影象(x1-μ, x2-μ,...., xn-μ),向矩陣a投影,得到每幅訓練影象的降維表示為(y1-μ, y2-μ,...., yn)

4.對測試影象中心化,並投影到矩陣a,得到測試影象的降維表示。

5.選擇合適的分類器,對測試影象進行分類。

reference:主成分分析pca(principal component analysis)介紹

pca本質和svd

pca主成分分析 PCA主成分分析(中)

矩陣 matrix,很容易讓人們想到那部著名的科幻電影 駭客帝國 事實上,我們又何嘗不是真的生活在matrix中。機器學習處理的大多數資料,都是以 矩陣 形式儲存的。矩陣是向量的組合,而乙個向量代表一組資料,資料又是多維度的。比如每個人的都具有身高 體重 長相 性情等多個維度的資訊資料,而這些多維度...

主成分分析PCA

主要參考這篇文章 個人總結 pca是一種對取樣資料提取主要成分,從而達到降維的目的。相比於上篇文章介紹到的svd降維不同,svd降維是指減少資料的儲存空間,資料的實際資訊沒有缺少。個人感覺pca更類似與svd的去噪的過程。pca求解過程中,涉及到了svd的使用。針對資料集d 假設di 的維度為 w ...

PCA 主成分分析

在進行影象的特徵提取的過程中,提取的特徵維數太多經常會導致特徵匹配時過於複雜,消耗系統資源,不得不採用特徵降維的方法。所謂特徵降維,即採用乙個低緯度的特徵來表示高緯度。將高緯度的特徵經過某個函式對映至低緯度作為新的特徵。pca和lda區別 pca是從特徵的角度協方差角度 求出協方差矩陣的特徵值和特徵...