主成分分析法(principal component analysis),簡稱pca,其是一種統計方法,是資料降維,簡化資料集的一種常用的方法
它本身是乙個非監督學習的演算法,作用主要是用於資料的降維,降維的意義是挺重要的,除了顯而易見的通過降維,可以提高演算法的效率之外,通過降維我們還可以更加方便的進行視覺化,以便於我們去更好的理解資料,可以發現更便於人類理解,主成分分析其乙個很重要的作用就是去噪,有的時候,經過去噪以後再進行機器學習,效果會更好
我們可以基於主成分分析法的降維來理解其原理
我們設乙個二維的座標系,橫軸為特徵一,縱軸為特徵二,相應的存在一些樣本,其對應相應的點,既然是二維的,那麼我們就可進行降維
那麼降維到一維的具體操作是什麼呢?
乙個很明顯的方案就是對這兩個特徵選乙個特徵,將另乙個特徵去除掉,如果說我們將特徵二扔掉保留特徵一的話,那麼全部的點就會相應的全部對映到橫軸上,相反,我們選擇特徵二的話,所有的點就會對映到縱軸上
這就是對應的兩種降維的方案,這兩個方案哪乙個是更好的呢,我們將所有的點對映到了橫軸以後,點和點之間距離是相對比較大的的方案就是更好的方案,為什麼呢,點和點之間的距離大,即點和點之間有著更高的可區分度,這樣也更好的保持了原來的點和點之間的距離,雖然也不同,但是也相應的更小的
還有一種更好的方案,我們可以選取一條直線,將所有的點都對映到這根直線上,使用這種方式,所有的點更趨近於原來的分布情況,區分度也比對映到橫縱軸上更加明顯
那麼如何找到這個讓樣本間間距最大的軸?為了找到這個軸,我們先使用方差來定義一下這個樣本間間距
這樣這個問題就變成了,我們需要找到乙個軸(直線),使得樣本空間中的所有點在對映到這個軸以後,方差是最大的
那麼怎麼操作呢?
首先,我們將樣本的均值歸0,即所有的樣本都減去這批樣本的均值,這樣就相當於讓座標軸進行了移動,使得樣本在每個維度上均值都為0,這樣我們就可以將方差的式子變成(xi是已經對映到新的軸上的新的樣本)
然後我們要求這個軸的方向w=(w1,w2)(此處用二維來表示),使得我們所有的樣本,在對映到w以後,有使對映以後的樣本xproject的方差值最大,式子展開如下
需要注意的是:
對於這個x來說,可能有多個維度,因此每乙個x都是乙個有多個元素的向量,因此更準確的式子應該是
其均值等依然是含有多個內容的向量,為什麼呢,因為雖然對映到了這個軸上,但是本身這個軸還是處在這個n維的座標系中,那麼這實際上就是這兩個向量相減之後的模的平方,又因為我們之前對樣本進行了demean處理(均值取0),因此,這個式子化簡以後為,即為對映完的點的模的平方和再除以m最大
那麼這個xprojecti到底是要怎麼表示呢?
我們設這個軸為w,樣本點為xi,其也是乙個向量,那麼現在這個xi要對映到w軸上的話,可以向w軸做乙個垂直的直線,那麼其與w軸的交點就是我們對應的xproject這一點,那麼說白了我們要求的模的平方就是指向交點的這個直線,相當於我們要求將乙個向量對映到另乙個向量上對應的對映的長度是多少
實際上這種對映就是點乘的定義
我們知道現在這個w軸是乙個方向向量,所以其模為1,那麼式子就化簡成
運用數學定理,很明顯可以得出
那麼我們帶入之前的式子就可以得到我們真正要求的式子,即xi與w點乘完以後的平方和再除以m以後的結果最大
這樣我們的主成分分析法就是要求乙個w軸,使得對映上去的點與w點乘完以後的平方和再除以m以後的結果最大,這樣主成分分析法就變成了乙個目標函式的最優化問題,求乙個函式的最大值,我們就可以使用梯度上公升法來解決
線性回歸和這個是不一樣的,最直觀的不同在於線性回歸的樣本是關於這個新的垂直的方向是關於特徵的方向,並不是垂直於這根直線的
我們說可以使用梯度上公升法來解決主成分分析問題,那麼怎麼用梯度上公升法來求解此類問題呢?
那麼我們知道,求乙個函式的最大值,關鍵是我們要求這個函式的梯度,對於上面最終的式子來說,除了w以外就沒有未知數了,那麼對應的梯度就是函式對w求偏導,整理合併以後可以寫成
對這個式子進行向量化的處理,我們觀察這個式子,我們可以發現其中的式子就是點乘的形式,其實際上每一項就是xw這個向量和x中的第n列中的每乙個元素相乘再相加,xw可以寫成這種行向量的形式
而上面的計算過程計算下來就是xw和乙個矩陣相乘,這個矩陣可以寫成(其就是x這個矩陣,有m個樣本,n個特徵)
其最後將梯度的計算的向量化的結果就可以寫成(經過轉置之後符合要求的)
介就是最後的計算公式啦
我們可以在直接使用這個公式來進行計算,最後得到需要的結果
主成分分析法(PCA)
一 數學基礎 1.方差 用來計算每乙個變數 觀察值 與總體均數之間的差異。總體方差計算公式 為總體方差,為變數,為總體均值,為總體例數。2.協方差 在概率論 和統計學中,協方差用於衡量兩個變數的總體誤差。而方差是 協方差的一種特殊情況,即當兩個變數是相同的情況。期望值分別為 e x 與 e y 的兩...
主成分分析法 PCA 答疑
問 為什麼要去均值?1 我認為歸一化的表述並不太準確,按統計的一般說法,叫標準化。資料的標準化過程是減去均值並除以標準差。而歸一化僅包含除以標準差的意思或者類似做法。2 做標準化的原因是 減去均值等同於座標的移動,把原始資料點的重心移到和原點重合,這樣利於很多表達,比如資料的協方差矩陣可以寫成xx ...
主成分分析法(PCA)原理和步驟
主成分分析法 pca 原理和步驟 主成分分析 principal component analysis,pca 是一種多變數統計方法,它是最常用的降維方法之一,通過正交變換將一組可能存在相關性的變數資料,轉換為一組線性不相關的變數,轉換後的變數被稱為主成分。可以使用兩種方法進行 pca,分別是特徵分...