前言
如果你能找到這里,真是我的幸運(yùn)~這里是藍(lán)白絳的學(xué)習(xí)筆記,本集合主要針對(duì)《百面機(jī)器學(xué)習(xí)——算法工程師帶你去面試》這本書(shū)。主要記錄我認(rèn)為重要的知識(shí)點(diǎn),希望對(duì)大家有幫助。
第四章 降維
引導(dǎo)語(yǔ)
常見(jiàn)的降維方法有:主成分分析、線(xiàn)性判別分析、等距映射、局部線(xiàn)性嵌入、拉普拉斯特征映射、局部保留投影燈。本章主要講主成分分析和線(xiàn)性判別分析。
1、PCA最大方差理論
- PCA(Principal Components Analysis,主成分分析)的基本思想:在信號(hào)處理領(lǐng)域,我們認(rèn)為信號(hào)具有較大方差,噪聲具有較小方差,信號(hào)與噪聲之比稱(chēng)為信噪比。信噪比越大意味著數(shù)據(jù)質(zhì)量越好。
4-1 PCA降維目標(biāo)
如上圖黃線(xiàn)所處的軸上(主成分所在的軸,主軸),數(shù)據(jù)分布得更為分散,意味著數(shù)據(jù)在這個(gè)方向上方差更大,是我們想要的軸。PCA的目標(biāo)是最大化投影方差,也就是讓數(shù)據(jù)在主軸上投影的方差最大。(其實(shí)還可以從其他思路分析,如從最小回歸誤差角度得到新的目標(biāo)函數(shù),但最終和最大化投影方差是等價(jià)的。)
- PCA求解方法:(關(guān)鍵步驟是求協(xié)方差矩陣的特征值)
- 對(duì)樣本數(shù)據(jù)進(jìn)行中心化處理(
,
為均值)。
- 求樣本協(xié)方差矩陣。
- 對(duì)協(xié)方差矩陣進(jìn)行特征分解,將特征值從大到小排列。
- 取特征值前
大對(duì)應(yīng)的特征向量
,通過(guò)以下映射將
維樣本映射到
維。(原
被利用
次,新的
的第
維就是
在第
個(gè)主成分
方向上的投影)
定義降維后的信息占比為(特征值平方和之比):
- PCA擴(kuò)展知識(shí):PCA是一種線(xiàn)性降維方法,雖然經(jīng)典但是又一定局限性,通過(guò)核映射對(duì)PCA進(jìn)行擴(kuò)展可以得到核主成分分析(KPCA),也可以通過(guò)流形映射的降維方法,比如等距映射、局部線(xiàn)性嵌入、拉普拉斯特征映射等,對(duì)一些PCA效果不好的復(fù)雜數(shù)據(jù)集進(jìn)行非線(xiàn)性降維操作。
2、PCA最小平方誤差理論
-
從回歸的角度定義PCA的目標(biāo)并求解:上一節(jié)求解得到一條直線(xiàn)使得樣本點(diǎn)投影到該直線(xiàn)上的方差最大,從求解直線(xiàn)的思路出發(fā),可以將問(wèn)題轉(zhuǎn)化為一個(gè)回歸問(wèn)題,最小化所有點(diǎn)到直線(xiàn)的距離平方之和。
4-2 PCA最小化平方誤差思路
經(jīng)過(guò)推導(dǎo)之后,發(fā)現(xiàn)從最小平方誤差的角度與最大方差角度殊途同歸,從不同的目標(biāo)函數(shù)出發(fā),都得到了相同的求解辦法。
3、線(xiàn)性判別分析
-
線(xiàn)性判別分析(Linear Discriminant Analysis,LDA)是一種有監(jiān)督學(xué)習(xí)算法(PCA是無(wú)監(jiān)督的),PCA沒(méi)有考慮數(shù)據(jù)的標(biāo)簽,只是把原數(shù)據(jù)映射到一些方差比較大的方向上而已,如下圖,如果用PCA降維,則會(huì)讓數(shù)據(jù)變的難以區(qū)分。
4-3 PCA降維效果差.jpg -
線(xiàn)性判別分析的中心思想:最大化類(lèi)間距離和最小化類(lèi)內(nèi)距離。如下圖,如果只采用最大化兩類(lèi)投影中心距離的準(zhǔn)則,則會(huì)得到左圖(a)的結(jié)果,這樣兩類(lèi)樣本有一定的重疊,效果不好。所以在此基礎(chǔ)上還要加上最小化類(lèi)內(nèi)距離,如右圖(b)。
4-3 LDA投影最大化目標(biāo).jpg 我們最大化的目標(biāo)函數(shù)定義為類(lèi)間距離和類(lèi)內(nèi)距離的比值。經(jīng)過(guò)公式推導(dǎo),我們得到投影方向是
最大的特征值對(duì)應(yīng)的特征向量。其中
是類(lèi)內(nèi)散度矩陣,
;
為類(lèi)間散度矩陣
。我們假設(shè)標(biāo)簽分兩類(lèi),后面第四節(jié)會(huì)講多標(biāo)簽的情況。所以這里兩類(lèi)的情況我們只需要求樣本的均值和類(lèi)內(nèi)方差就可以馬上得出最佳投影方向
。
LDA相比PCA更善于對(duì)有類(lèi)別信息的數(shù)據(jù)進(jìn)行降維處理,但它對(duì)數(shù)據(jù)的分布做了一些很強(qiáng)的假設(shè),例如:每個(gè)類(lèi)數(shù)據(jù)都是高斯分布、各個(gè)類(lèi)的協(xié)方差相等。盡管這些假設(shè)在實(shí)際中并不一定滿(mǎn)足,但它依然是一種非常有效的降維方法。
LDA是一個(gè)線(xiàn)性模型,它對(duì)噪聲的魯棒性較好,但由于模型簡(jiǎn)單,表達(dá)能力有一定局限性,可以通過(guò)引入核函數(shù)擴(kuò)展LDA方法以處理分布較為復(fù)雜的數(shù)據(jù)。
4、線(xiàn)性判別分析與主成分分析
- LDA如何擴(kuò)展到高維:前面定義的
類(lèi)內(nèi)散度矩陣
在類(lèi)別增加到
時(shí)仍然滿(mǎn)足定義;
為類(lèi)間散度矩陣
只使用類(lèi)別數(shù)為2的情況,假如增加到3類(lèi),我們?nèi)∫粋€(gè)三個(gè)類(lèi)的中心點(diǎn)的平均
,用
表示三個(gè)中心的均值,也是全部樣本的中心。
4-4 LDA多標(biāo)簽情況.jpg
定義一個(gè)新的矩陣來(lái)表示全局整體的散度,稱(chēng)為全局散度矩陣
,則
可以表示為
,即可像標(biāo)簽為兩類(lèi)的情況一樣,通過(guò)求解
矩陣的特征值得到最佳投影方向
。
- 高維LDA求解方法為:
- 計(jì)算數(shù)據(jù)集中每個(gè)樣本的均值向量
,和總體均值向量
。
- 計(jì)算類(lèi)內(nèi)散度矩陣
,全局散度矩陣
,并得到類(lèi)間散度矩陣
。
- 對(duì)矩陣
進(jìn)行特征值分解,將特征值從大到小排列。
- 取特征值前
大的對(duì)應(yīng)特征向量
,與PCA一樣,通過(guò)下列映射將
維樣本映射到
維。
- PCA和LDA在應(yīng)用上的不同的舉例如下:
- 語(yǔ)音識(shí)別領(lǐng)域中,從一段音頻中提取出人的語(yǔ)音信號(hào),可以用PCA降維,過(guò)濾掉一些固定頻率的背景噪聲。但是如果我們的需求是從這段音頻中區(qū)分出聲音屬于哪個(gè)人,則應(yīng)該用LDA降維,使每個(gè)人的語(yǔ)音信號(hào)具有區(qū)分性。
- 人臉識(shí)別領(lǐng)域,基于PCA的人臉識(shí)別方法也成為特征臉(Eigenface),能保留最佳描述特征。如果想要達(dá)到更好的人臉識(shí)別效果,應(yīng)該用LDA方法對(duì)數(shù)據(jù)集進(jìn)行降維,使得不同人臉在投影后的特征具有一定區(qū)分性。
- PCA和LDA都是線(xiàn)性降維方法,對(duì)于非線(xiàn)性數(shù)據(jù),可以通過(guò)核映射方法對(duì)二者進(jìn)行擴(kuò)展得到更好的降維效果。
小節(jié)
這節(jié)相比前幾章來(lái)說(shuō),公式推導(dǎo)較多,但是我沒(méi)有寫(xiě)到這里來(lái),因?yàn)樘珣?。公式推?dǎo)基本是在講為什么我們要找的最佳投影方向是的特征值。這節(jié)學(xué)習(xí)了兩種降維的方法,還是那句話(huà),非常易懂。
結(jié)尾
如果您發(fā)現(xiàn)我的文章有任何錯(cuò)誤,或?qū)ξ业奈恼掠惺裁春玫慕ㄗh,請(qǐng)聯(lián)系我!如果您喜歡我的文章,請(qǐng)點(diǎn)喜歡~*我是藍(lán)白絳,感謝你的閱讀!




