Pca

ZCA美白和PCA美白有什麼區別?

  • October 1, 2014

我對 ZCA 白化和正常白化(通過將主成分除以 PCA 特徵值的平方根獲得)感到困惑。我所知道的,

在哪裡是 PCA 特徵向量。 ZCA美白有什麼用?普通美白和ZCA美白有什麼區別?

讓您的(居中)數據存儲在矩陣和列中的特徵(變量)和行中的數據點。讓協方差矩陣列中有特徵向量和對角線上的特徵值, 以便.

然後你所說的“正常”PCA白化轉換由下式給出,請參閱我在如何使用主成分分析白化數據中的答案?

然而,這種美白轉變並不是唯一的。事實上,白化數據在任何旋轉後都會保持白化狀態,這意味著任何具有正交矩陣也將進行美白改造。在所謂的 ZCA 美白中,我們採取(將協方差矩陣的特徵向量堆疊在一起)作為這個正交矩陣,即

ZCA 變換(有時也稱為“Mahalanobis 變換”)的一個定義屬性是它產生的白化數據盡可能接近原始數據(在最小二乘意義上)。換句話說,如果你想最小化受制於被美白了,那麼你應該服用. 這是一個 2D 插圖:

PCA和ZCA美白

左子圖顯示數據及其主軸。注意分佈右上角的深色陰影:它標誌著它的方向。行顯示在第二個子圖上:這些是數據投影的向量。美白後(下圖)分佈看起來是圓形的,但請注意它看起來也是旋轉的——暗角現在在東側,而不是在東北側。行顯示在第三個子圖上(注意它們不是正交的!)。美白後(下圖)分佈看起來是圓形的*,*它的方向與最初的方向相同。當然,可以通過旋轉從 PCA 白化數據到 ZCA 白化數據.

術語“ZCA”似乎是在Bell 和 Sejnowski 1996中引入的在獨立分量分析的上下文中,代表“零相位分量分析”。有關詳細信息,請參見那裡。最有可能的是,您在圖像處理的上下文中遇到了這個術語。事實證明,當應用於一堆自然圖像(像素作為特徵,每個圖像作為數據點)時,主軸看起來像頻率增加的傅里葉分量,請參見下面圖 1 的第一列。所以它們非常“全球化”。另一方面,ZCA 變換的行看起來很“局部”,見第二列。這正是因為 ZCA 試圖盡可能少地轉換數據,因此每一行最好接近一個原始基函數(即只有一個活動像素的圖像)。這是可以實現的,

1996 年 Bell 和 Sejnowski 中的 PCA 和 ZCA

更新

Krizhevsky, 2009, Learning Multiple Layers of Features from Tiny Images中給出了 ZCA 過濾器和使用 ZCA 轉換的圖像的更多示例,另請參見 @bayerj 的答案 (+1) 中的示例。

我認為這些示例提供了一個關於 ZCA 美白何時可能比 PCA 更可取的想法。也就是說,ZCA 白化的圖像仍然類似於正常圖像,而 PCA 白化的圖像看起來一點也不像正常圖像。這對於像卷積神經網絡這樣的算法(例如在 Krizhevsky 的論文中使用的)可能很重要,它們將相鄰像素一起處理,因此在很大程度上依賴於自然圖像的局部屬性。對於大多數其他機器學習算法,使用 PCA 或 ZCA 對數據進行白化應該是絕對無關的。

引用自:https://stats.stackexchange.com/questions/117427

comments powered by Disqus