日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

线性判别分析(Linear Discriminant Analysis)(一)

發(fā)布時(shí)間:2025/3/21 编程问答 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 线性判别分析(Linear Discriminant Analysis)(一) 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
 線性判別分析(Linear Discriminant Analysis)(一)
1. 問(wèn)題

???? 之前我們討論的PCA、ICA也好,對(duì)樣本數(shù)據(jù)來(lái)言,可以是沒(méi)有類別標(biāo)簽y的。回想我們做回歸時(shí),如果特征太多,那么會(huì)產(chǎn)生不相關(guān)特征引入、過(guò)度擬合等問(wèn)題。我們可以使用PCA來(lái)降維,但PCA沒(méi)有將類別標(biāo)簽考慮進(jìn)去,屬于無(wú)監(jiān)督的。

???? 比如回到上次提出的文檔中含有“l(fā)earn”和“study”的問(wèn)題,使用PCA后,也許可以將這兩個(gè)特征合并為一個(gè),降了維度。但假設(shè)我們的類別標(biāo)簽y是判斷這篇文章的topic是不是有關(guān)學(xué)習(xí)方面的。那么這兩個(gè)特征對(duì)y幾乎沒(méi)什么影響,完全可以去除。

???? 再舉一個(gè)例子,假設(shè)我們對(duì)一張100*100像素的圖片做人臉識(shí)別,每個(gè)像素是一個(gè)特征,那么會(huì)有10000個(gè)特征,而對(duì)應(yīng)的類別標(biāo)簽y僅僅是0/1值,1代表是人臉。這么多特征不僅訓(xùn)練復(fù)雜,而且不必要特征對(duì)結(jié)果會(huì)帶來(lái)不可預(yù)知的影響,但我們想得到降維后的一些最佳特征(與y關(guān)系最密切的),怎么辦呢?

2. 線性判別分析(二類情況)

???? 回顧我們之前的logistic回歸方法,給定m個(gè)n維特征的訓(xùn)練樣例(i從1到m),每個(gè)對(duì)應(yīng)一個(gè)類標(biāo)簽。我們就是要學(xué)習(xí)出參數(shù),使得(g是sigmoid函數(shù))。

???? 現(xiàn)在只考慮二值分類情況,也就是y=1或者y=0。

???? 為了方便表示,我們先換符號(hào)重新定義問(wèn)題,給定特征為d維的N個(gè)樣例,,其中有個(gè)樣例屬于類別,另外個(gè)樣例屬于類別。

???? 現(xiàn)在我們覺(jué)得原始特征數(shù)太多,想將d維特征降到只有一維,而又要保證類別能夠“清晰”地反映在低維數(shù)據(jù)上,也就是這一維就能決定每個(gè)樣例的類別。

???? 我們將這個(gè)最佳的向量稱為w(d維),那么樣例x(d維)到w上的投影可以用下式來(lái)計(jì)算

????

???? 這里得到的y值不是0/1值,而是x投影到直線上的點(diǎn)到原點(diǎn)的距離。

???? 當(dāng)x是二維的,我們就是要找一條直線(方向?yàn)閣)來(lái)做投影,然后尋找最能使樣本點(diǎn)分離的直線。如下圖:

????

???? 從直觀上來(lái)看,右圖比較好,可以很好地將不同類別的樣本點(diǎn)分離。

???? 接下來(lái)我們從定量的角度來(lái)找到這個(gè)最佳的w。

???? 首先我們尋找每類樣例的均值(中心點(diǎn)),這里i只有兩個(gè)

????

???? 由于x到w投影后的樣本點(diǎn)均值為

????

???? 由此可知,投影后的的均值也就是樣本中心點(diǎn)的投影。

???? 什么是最佳的直線(w)呢?我們首先發(fā)現(xiàn),能夠使投影后的兩類樣本中心點(diǎn)盡量分離的直線是好的直線,定量表示就是:

????

???? J(w)越大越好。

???? 但是只考慮J(w)行不行呢?不行,看下圖

????

???? 樣本點(diǎn)均勻分布在橢圓里,投影到橫軸x1上時(shí)能夠獲得更大的中心點(diǎn)間距J(w),但是由于有重疊,x1不能分離樣本點(diǎn)。投影到縱軸x2上,雖然J(w)較小,但是能夠分離樣本點(diǎn)。因此我們還需要考慮樣本點(diǎn)之間的方差,方差越大,樣本點(diǎn)越難以分離。

???? 我們使用另外一個(gè)度量值,稱作散列值(scatter),對(duì)投影后的類求散列值,如下

????

???? 從公式中可以看出,只是少除以樣本數(shù)量的方差值,散列值的幾何意義是樣本點(diǎn)的密集程度,值越大,越分散,反之,越集中。

???? 而我們想要的投影后的樣本點(diǎn)的樣子是:不同類別的樣本點(diǎn)越分開(kāi)越好,同類的越聚集越好,也就是均值差越大越好,散列值越小越好。正好,我們可以使用J(w)和S來(lái)度量,最終的度量公式是

????

???? 接下來(lái)的事就比較明顯了,我們只需尋找使J(w)最大的w即可。

???? 先把散列值公式展開(kāi)

????

???? 我們定義上式中中間那部分

????

???? 這個(gè)公式的樣子不就是少除以樣例數(shù)的協(xié)方差矩陣么,稱為散列矩陣(scatter matrices)

???? 我們繼續(xù)定義

????

???? 稱為Within-class scatter matrix。

???? 那么回到上面的公式,使用替換中間部分,得

????

????

???? 然后,我們展開(kāi)分子

????

???? 稱為Between-class scatter,是兩個(gè)向量的外積,雖然是個(gè)矩陣,但秩為1。

???? 那么J(w)最終可以表示為

????

???? 在我們求導(dǎo)之前,需要對(duì)分母進(jìn)行歸一化,因?yàn)椴蛔鰵w一的話,w擴(kuò)大任何倍,都成立,我們就無(wú)法確定w。因此我們打算令,那么加入拉格朗日乘子后,求導(dǎo)

????

???? 其中用到了矩陣微積分,求導(dǎo)時(shí)可以簡(jiǎn)單地把當(dāng)做看待。

???? 如果可逆,那么將求導(dǎo)后的結(jié)果兩邊都乘以,得

????

???? 這個(gè)可喜的結(jié)果就是w就是矩陣的特征向量了。

???? 這個(gè)公式稱為Fisher linear discrimination。

???? 等等,讓我們?cè)儆^察一下,發(fā)現(xiàn)前面的公式

????

???? 那么

????

???? 代入最后的特征值公式得

????

???? 由于對(duì)w擴(kuò)大縮小任何倍不影響結(jié)果,因此可以約去兩邊的未知常數(shù)和,得到

????

???? 至此,我們只需要求出原始樣本的均值和方差就可以求出最佳的方向w,這就是Fisher于1936年提出的線性判別分析。

???? 看上面二維樣本的投影結(jié)果圖:

????

3. 線性判別分析(多類情況)

???? 前面是針對(duì)只有兩個(gè)類的情況,假設(shè)類別變成多個(gè)了,那么要怎么改變,才能保證投影后類別能夠分離呢?

我們之前討論的是如何將d維降到一維,現(xiàn)在類別多了,一維可能已經(jīng)不能滿足要求。假設(shè)我們有C個(gè)類別,需要K維向量(或者叫做基向量)來(lái)做投影。

???? 將這K維向量表示為。

???? 我們將樣本點(diǎn)在這K維向量投影后結(jié)果表示為,有以下公式成立

????

????

???? 為了像上節(jié)一樣度量J(w),我們打算仍然從類間散列度和類內(nèi)散列度來(lái)考慮。

???? 當(dāng)樣本是二維時(shí),我們從幾何意義上考慮:

????

???? 其中和與上節(jié)的意義一樣,是類別1里的樣本點(diǎn)相對(duì)于該類中心點(diǎn)的散列程度。變成類別1中心點(diǎn)相對(duì)于樣本中心點(diǎn)的協(xié)方差矩陣,即類1相對(duì)于的散列程度。

???? 為

????

???? 的計(jì)算公式不變,仍然類似于類內(nèi)部樣本點(diǎn)的協(xié)方差矩陣

????

???? 需要變,原來(lái)度量的是兩個(gè)均值點(diǎn)的散列情況,現(xiàn)在度量的是每類均值點(diǎn)相對(duì)于樣本中心的散列情況。類似于將看作樣本點(diǎn),是均值的協(xié)方差矩陣,如果某類里面的樣本點(diǎn)較多,那么其權(quán)重稍大,權(quán)重用Ni/N表示,但由于J(w)對(duì)倍數(shù)不敏感,因此使用Ni。

????

???? 其中

????

???? 是所有樣本的均值。

???? 上面討論的都是在投影前的公式變化,但真正的J(w)的分子分母都是在投影后計(jì)算的。下面我們看樣本點(diǎn)投影后的公式改變:

???? 這兩個(gè)是第i類樣本點(diǎn)在某基向量上投影后的均值計(jì)算公式。

????

????

???? 下面兩個(gè)是在某基向量上投影后的和

????

????

???? 其實(shí)就是將換成了。

???? 綜合各個(gè)投影向量(w)上的和,更新這兩個(gè)參數(shù),得到

????

????

???? W是基向量矩陣,是投影后的各個(gè)類內(nèi)部的散列矩陣之和,是投影后各個(gè)類中心相對(duì)于全樣本中心投影的散列矩陣之和。

???? 回想我們上節(jié)的公式J(w),分子是兩類中心距,分母是每個(gè)類自己的散列度。現(xiàn)在投影方向是多維了(好幾條直線),分子需要做一些改變,我們不是求兩兩樣本中心距之和(這個(gè)對(duì)描述類別間的分散程度沒(méi)有用),而是求每類中心相對(duì)于全樣本中心的散列度之和。

???? 然而,最后的J(w)的形式是

????

???? 由于我們得到的分子分母都是散列矩陣,要將矩陣變成實(shí)數(shù),需要取行列式。又因?yàn)樾辛惺降闹祵?shí)際上是矩陣特征值的積,一個(gè)特征值可以表示在該特征向量上的發(fā)散程度。因此我們使用行列式來(lái)計(jì)算(此處我感覺(jué)有點(diǎn)牽強(qiáng),道理不是那么有說(shuō)服力)。

???? 整個(gè)問(wèn)題又回歸為求J(w)的最大值了,我們固定分母為1,然后求導(dǎo),得出最后結(jié)果(我翻查了很多講義和文章,沒(méi)有找到求導(dǎo)的過(guò)程)

????

???? 與上節(jié)得出的結(jié)論一樣

????

???? 最后還歸結(jié)到了求矩陣的特征值上來(lái)了。首先求出的特征值,然后取前K個(gè)特征向量組成W矩陣即可。

???? 注意:由于中的 秩為1,因此的秩至多為C(矩陣的秩小于等于各個(gè)相加矩陣的秩的和)。由于知道了前C-1個(gè)后,最后一個(gè)可以有前面的來(lái)線性表示,因此的秩至多為C-1。那么K最大為C-1,即特征向量最多有C-1個(gè)。特征值大的對(duì)應(yīng)的特征向量分割性能最好。

???? 由于不一定是對(duì)稱陣,因此得到的K個(gè)特征向量不一定正交,這也是與PCA不同的地方。

總結(jié)

以上是生活随笔為你收集整理的线性判别分析(Linear Discriminant Analysis)(一)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。