降维处理:PCA和LDA
1,主成分分析
主成分分析(Principal Component Analysis,PCA)是一種無監(jiān)督問題,是降維中最常用的一種手段,基于方差(方差最大的方向)提取最有價(jià)值的信息再進(jìn)一步分類。降維后數(shù)據(jù)特征的意義發(fā)生變化。
2,向量的表示及基變換
2.1 內(nèi)積:
設(shè)向量B的模為1,則A與B的內(nèi)積值等于A向B所在直線投影的矢量長度:
2.2 向量的線性組合
向量可以表示為(3,2)實(shí)際上表示線性組合:
其中(1,0)和(0,1)叫做二維空間中的一組基
2.3 基變換
基是正交的(即內(nèi)積為0,或直觀說相互垂直,線性無關(guān)),更好的表達(dá)坐標(biāo)軸上的數(shù)據(jù)。
變換:數(shù)據(jù)與一個基做內(nèi)積運(yùn)算,結(jié)果作為第一個新的坐標(biāo)分量,然后與第二個基做內(nèi)積運(yùn)算,結(jié)果作為第二個新坐標(biāo)的分量,比如:
推廣到多維:
兩個矩陣相乘的意義是將右邊矩陣a中的每一列列向量ai變換到左邊矩陣p中每一行行向量pi為基所表示的空間中去(盡可能去除線性相關(guān)性)。
2.4 協(xié)方差矩陣
方向:選擇的這個方向(或者說基)應(yīng)該盡量保留最多的原始信息,即一種直觀的看法是:希望投影后的投影值盡可能分散。
方差(單個特征發(fā)散的程度):
尋找一個一維基,使得所有數(shù)據(jù)變換為這個基上的坐標(biāo)表示后,方差值最大(盡可能分散)
協(xié)方差(假設(shè)均值為0時(以0為中心化),兩個特征之間的關(guān)系):
如果單純只選擇方差最大的方向,后續(xù)方向應(yīng)該會和方差最大的方向接近重合。而為了讓兩個字段盡可能表示更多的原始信息,我們是不希望它們之間存在(線性)相關(guān)性的,可以用兩個字段的協(xié)方差表示其相關(guān)性,當(dāng)協(xié)方差為0時,表示兩個字段完全獨(dú)立。為了讓協(xié)方差為0,選擇第二個基時只能在與第一個基正交的方向上選擇,然后在保證第二個基在該方向上的方差盡可能大。因此最終選擇的兩個方向一定是正交的。
3,優(yōu)化目標(biāo)
將一組N維向量降為K維(K大于0,小于N),目標(biāo)是選擇K個單位正交基,使原始數(shù)據(jù)變換到這組基上后,各字段兩兩間協(xié)方差為0,字段的方差則盡可能大。
協(xié)方差矩陣:
m代表數(shù)據(jù)的個數(shù),x為數(shù)據(jù)本身,矩陣對角線上的兩個元素分別是兩個字段各自的方差,而其它元素是a和b的協(xié)方差
協(xié)方差矩陣對角化:即除對角線外的其它元素化為0(協(xié)方差為0),并且在對角線上將元素按大小從上到下排列(方差盡可能大)
一個n行n列的實(shí)對稱矩陣一定可以找到n個單位正交特征向量:
實(shí)對稱陣可進(jìn)行對角化:
根據(jù)特征值的從大到小,將特征向量從上到下排列,則用前K行組成的矩陣乘以原始數(shù)據(jù)矩陣X,就得到了我們需要的降維后的數(shù)據(jù)矩陣Y
4,PCA實(shí)例
(1)原始數(shù)據(jù)共5個數(shù)據(jù),每個數(shù)據(jù)有2個特征,并進(jìn)行0中心化
(2)計(jì)算協(xié)方差矩陣,對角線為特征的方差,非對角線為特征的協(xié)方差(特征間的關(guān)系):
(3)進(jìn)行矩陣分解求特征值和特征向量,找出對應(yīng)特征值最大的特征向量,并對該向量進(jìn)行歸一化處理(基)
(4)將基向量與原始數(shù)據(jù)作內(nèi)積得到降維后的結(jié)果
5,線性判別分析
線性判別分析(Linear Discriminant Analysis,LDA)是由Ronald A. Fisher在1936年提出了線性判別方法,用于數(shù)據(jù)預(yù)處理中的降維,完成分類任務(wù),LDA關(guān)心的是能夠最大化類間區(qū)分度的坐標(biāo)軸成分,即將特征空間(數(shù)據(jù)集中的多維樣本)投影(找到更合適分類的空間k)到一個維度更小的 k 維子空間中,同時保持區(qū)分類別的信息。所以與PCA不同,LDA更關(guān)心分類而不是方差。
5.1 原理
LDA是“有監(jiān)督”的,它計(jì)算的是另一類特定的方向,投影到維度更低的空間中,使得投影后的點(diǎn),會形成按類別區(qū)分,一簇一簇的情況,相同類別的點(diǎn),將會在投影后的空間中更接近方法
原始數(shù)據(jù):
找到合適的空間進(jìn)行投影:
變換數(shù)據(jù)(投影后的數(shù)據(jù)):
從上述來看,LDA分類的一個目標(biāo)是使得不同類別之間的距離越遠(yuǎn)越好,同一類別之中的距離越近越好。
每類樣例的均值:
投影后的均值:
投影后的兩類樣本中心點(diǎn)盡量分離:
但是只是最大化J(w),并不能滿足要求,如下圖,X1的方向可以最大化J(w),但是卻分的不好
散列值描述了樣本點(diǎn)的密集程度,值越大,越分散,反之,越集中。同類之間應(yīng)該越密集些:
故目標(biāo)函數(shù)為:
散列值公式展開:
散列矩陣:
類內(nèi)散布矩陣Sw = S1+S2:
目標(biāo)函數(shù)的分子展開:
??稱作類間散布矩陣,故最終目標(biāo)函數(shù):
分母進(jìn)行歸一化,如果分子、分母是都可以取任意值的,那就會使得有無窮解,故將分母限制為長度為1
拉格朗日乘子法:
兩邊都乘以Sw的逆:
總結(jié)
以上是生活随笔為你收集整理的降维处理:PCA和LDA的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。