特徵向量/特徵值/協方差矩陣/相關/正交/獨立/主成分分析/PCA/
參考:
http://deeplearning.stanford.edu/wiki/index.php/%E4%B8%BB%E6%88%90%E5%88%86%E5%88%86%E6%9E%90
http://deeplearning.stanford.edu/wiki/index.php/%E7%99%BD%E5%8C%96
對於一個二維資料(在x軸上有一個分佈;在y軸上對應也有一個分佈),要想提取他們的主成分,需要先將資料去除相關性(參考相關性(皮爾遜相關係數)的定義,例如:在x軸上的分佈於在y軸上的分佈一致時,相關係數為1,注意相關性的定義,
下面介紹相關性、獨立、正交三個基本概念:
(1)相關性、獨立、正交
不相關:E[X(t)Y(t)]=E[X(t)]E(Y(t)] ;相關即是:E[X(t)Y(t)] != E[X(t)]E(Y(t)]
獨立: F(x,Y)=F(x)F(Y)
正交:E[X(t)Y(t)]=0
可以看出,E[X(t)Y(t)]=0並不代表是不相關;
獨立一定不相關;
高斯過程中,不相關不一定獨立 ;
對於均值為零的高斯隨機變數,“獨立”和“不相關”等價的;
假設X為一個隨機過程,則在t1和t2時刻的隨機變數的相關定義如下(兩個隨機過程一樣),:
(1)定義Rx(t1,t2)=E{X(t1)X(t2)}為相關函式,若R=0,稱正交(注意,相關函式為0,不是不相關,而是正交)。正交不僅僅描述確定函式之間的關係,也用以描述隨機過程。兩個隨機過程X(t) Y(t)正交,即E[X(t)Y(t)]=0, 若E[X(t)Y(t)]=E[X(t)]E(Y(t)]說明兩者不相關。不相關和相互獨立一般不等價,只有當過程為高斯過程時才成立。
(2)定義Kx(t1,t2)=E{[X(t1)-Mx(t1)][X(t2)-Mx(t2)]}為協方差函式,若K=0,即相關係數為0,則稱之為不相關;不相關只是說二者沒有線形關係,但並不代表沒有任何關係。
(3)獨立性。就用他們的概率分佈函式或密度來表達。聯合分佈等於他們各自分佈的乘積,獨立的定義是 F(x,Y)=F(x)F(Y),就稱獨立。
對於普通分佈,不相關不一定正交,但很可能介於正交與相關為之間,即E[X(t)Y(t)] != E[X(t)]E(Y(t)]滿足,只要兩者有可能存在相關,就表明資料有冗餘,因此需要去除相關性;)
(2)降低資料的相關性
我們知道一個二維資料(在x軸上有一個分佈–對應維度x;在y軸上對應也有一個分佈-對應維度y),分別研究它在這兩個維度上的分佈:比如在維度x上的資料就是一組一維資料,可以研究它的均值和方差;同理,對維度y也是,可以研究它的均值和方差;而要看他們是否有相關性,則需要借鑑皮爾遜相關係數求相關係數公式,可以看出,皮爾遜相關係數分子對應的是維度x和維度y的協方差,因此,要看兩個維度的相關性,並且要減少相關性;
要降低相關性,其本質就是減少冗餘,即降低了資料的維度,即原來資料需要用幾百維來表示,現在只需要幾十位表示;最經典的就是:主成分分析,它降低了資料各維度的相關性,實現降維;降維的思路:
首先,需要引入特徵值和特徵向量的概念。
A為n階矩陣,若數λ和n維非0列向量x滿足Ax=λx,那麼數λ稱為A的特徵值,x稱為A的對應於特徵值λ的特徵向量。式Ax=λx也可寫成( A-λE)x=0,並且|λE-A|叫做A 的特徵多項式。當特徵多項式等於0的時候,稱為A的特徵方程,特徵方程是一個齊次線性方程組,求解特徵值的過程其實就是求解特徵方程的解。
上述n維非0列向量即表示x有n列,n列對應n維(明確x的形式);
因此,我們知道對於一個矩陣A,矩陣A中有n列對應n維資料,我們可以將它轉化為特徵值*特徵向量的形式;其幾何意義就是:特徵向量對應資料在座標軸中的方向,特徵值對應資料在座標軸中的長度;明白了這一點,我們針對一個二維資料(在x軸上有一個分佈–對應維度x;在y軸上對應也有一個分佈-對應維度y),我們只需要計算協方差矩陣(為什麼不是原始二維資料作為矩陣???因為原始資料不能反映出維度x與維度y之間的相關值等情況,需要做運算轉化成協方差矩陣,此處也可以想象一下協方差矩陣的定義,主對角線是自己與自己的內積,除主對角線之外是自己與非自己的內積–即維度之間的相關性),通過對協方差矩陣進行計算特徵值與特徵向量,得到特徵向量為U:
上述特徵向量U是通過資料的協方差矩陣計算得到的,可理解為協方差矩陣是一種反映資料維度與維度之間關係的矩陣,那麼特徵向量即是表明維度與維度之間關係的向量,通過U對原來資料進行變換–即進行投影,則可以實現對原始資料進行去相關處理,可以取變換的前K個最大特徵值對應特徵向量的變換作為對原始資料處理的結果,因為後面幾乎很小,接近於0,因此,可以忽略;;;
當然,由於U是特徵向量,一般來說,U也是正交向量,因此滿足UU^T=U^TU=I;
因此,要還原原始資料也很容易,直接在變換後資料前面再乘以一個U,就可以實現還原;
(3)白化處理
需求:
我們已經瞭解瞭如何使用PCA降低資料維度。在一些演算法中還需要一個與之相關的預處理步驟,這個預處理過程稱為白化(一些文獻中也叫sphering)。舉例來說,假設訓練資料是影像,由於影像中相鄰畫素之間具有很強的相關性,所以用於訓練時輸入是冗餘的。白化的目的就是降低輸入的冗餘性;更正式的說,我們希望通過白化過程使得學習演算法的輸入具有如下性質:(i)特徵之間相關性較低;(ii)所有特徵具有相同的方差。
(i)特徵之間相關性較低;
我們知道,通過前面的降低相關性變換,變換後的x對應求得的協方差矩陣形如:
例如,上式是原始資料變換後求得的協方差矩陣,可以看到副對角線為0,因此,已經滿足特徵之間相關性較低了;下面看主對角線,與下面的要求有關:
(ii)所有特徵具有相同的方差
要使所有特徵具有相同方差,即是保證協方差矩陣中的主對角線的元素為1,又因為主對角線元素大小正式特徵值,因此,可以通過對主對角線元素除以特徵值相關因子使其變為1;從而實現所有特徵值具有相同的方差;
這一過程得到的X稱為主成分白化;
後面還有ZCA 白化;;
錯誤的思路:
要降低相關性:需要從兩個方面著手:
(1)減小維度x與維度y的協方差值(使副對角線為0);最好使的其協方差成為單位矩陣,這是理想情況,我們知道對於單位矩陣的特徵值與特徵向量(特徵值為1,特徵向量為每個維度上的單位正交向量,比如二維單位矩陣的特徵向量為:[1,0]或者[0,1]),現在利用將單位矩陣分解成兩個正交矩陣,利用正交矩陣對資料進行變換,實現我們的目的,使得變換後的矩陣滿足協方差矩陣副對角線為0;
推導過程:
(2)j
相關文章
- 均值、方差、協方差、協方差矩陣、特徵值、特徵向量矩陣特徵
- 矩陣的特徵值和特徵向量矩陣特徵
- 特徵值與特徵向量特徵
- 特徵值和特徵向量特徵
- 特徵值 和 特徵向量,thrive特徵
- 主成分分析(PCA)PCA
- PCA主成分分析(上)PCA
- numpy.linalg包函式用法集錦(求逆矩陣,求矩陣行列式的值,求特徵值和特徵向量,解方程組)函式矩陣特徵
- 關於特徵值和特徵向量的幾何直覺意義特徵
- 從高斯消元法到特徵值特徵向量特徵
- 主成分分析(PCA)簡介PCA
- 什麼是機器學習的特徵工程?【資料集特徵抽取(字典,文字TF-Idf)、特徵預處理(標準化,歸一化)、特徵降維(低方差,相關係數,PCA)】機器學習特徵工程PCA
- 2.12 求下列矩陣的特徵值和特徵向量的數值解和符號解 (-1 1 0 -4 3 0 1 0 2)的3*3矩陣矩陣特徵符號
- 【特徵值 / 特徵向量】- 圖解線性代數 11特徵圖解
- 特徵值與特徵向量的幾何含義(轉)特徵
- 演算法金 | 協方差、方差、標準差、協方差矩陣演算法矩陣
- 主成分分析(PCA)原理詳解PCA
- 主成分分析(PCA)原理總結PCA
- 協方差矩陣推導1矩陣
- 基本概念(二):方差、協方差、相關係數 原點矩和中心矩
- 主成分分析(PCA) C++ 實現PCAC++
- 協方差矩陣概念及計算矩陣
- 機器學習之特徵組合:組合獨熱向量機器學習特徵
- 用scikit-learn學習主成分分析(PCA)PCA
- 基於PCA(主成分分析)的人臉識別PCA
- 主成分分析(PCA)Python程式碼實現PCAPython
- 演算法金 | 再見,PCA 主成分分析!演算法PCA
- 聊聊基於Alink庫的主成分分析(PCA)PCA
- 機器學習_用PCA主成分分析給資料降維機器學習PCA
- 主成分分析(Principal components analysis)-最大方差解釋
- 向量正交
- 特徵向量的物理意義特徵
- 樣本協方差矩陣的定義與計算矩陣
- 運用sklearn進行主成分分析(PCA)程式碼實現PCA
- 【機器學習】--主成分分析PCA降維從初識到應用機器學習PCA
- 獨立模型的相關需求模型
- 3D圖形:矩陣的行列式,矩陣的逆、正交矩陣、齊次矩陣3D矩陣
- 【數學】主成分分析(PCA)的詳細深度推導過程PCA