乡下人产国偷v产偷v自拍,国产午夜片在线观看,婷婷成人亚洲综合国产麻豆,久久综合给合久久狠狠狠9

  • <output id="e9wm2"></output>
    <s id="e9wm2"><nobr id="e9wm2"><ins id="e9wm2"></ins></nobr></s>

    • 分享

      機(jī)器學(xué)習(xí)中的數(shù)學(xué)(4)-線(xiàn)性判別分析(LDA), 主成分分析(PCA)

       dadaadao 2011-12-30

      版權(quán)聲明:

          本文由LeftNotEasy發(fā)布于http://leftnoteasy.cnblogs.com, 本文可以被全部的轉(zhuǎn)載或者部分使用,但請(qǐng)注明出處,如果有問(wèn)題,請(qǐng)聯(lián)系wheeleast@gmail.com

      前言:

          第二篇的文章中談到,和部門(mén)老大一寧出去outing的時(shí)候,他給了我相當(dāng)多的機(jī)器學(xué)習(xí)的建議,里面涉及到很多的算法的意義、學(xué)習(xí)方法等等。一寧上次給我提到,如果學(xué)習(xí)分類(lèi)算法,最好從線(xiàn)性的入手,線(xiàn)性分類(lèi)器最簡(jiǎn)單的就是LDA,它可以看做是簡(jiǎn)化版的SVM,如果想理解SVM這種分類(lèi)器,那理解LDA就是很有必要的了。

         談到LDA,就不得不談?wù)凱CA,PCA是一個(gè)和LDA非常相關(guān)的算法,從推導(dǎo)、求解、到算法最終的結(jié)果,都有著相當(dāng)?shù)南嗨啤?/P>

         本次的內(nèi)容主要是以推導(dǎo)數(shù)學(xué)公式為主,都是從算法的物理意義出發(fā),然后一步一步最終推導(dǎo)到最終的式子,LDA和PCA最終的表現(xiàn)都是解一個(gè)矩陣特征值的問(wèn)題,但是理解了如何推導(dǎo),才能更深刻的理解其中的含義。本次內(nèi)容要求讀者有一些基本的線(xiàn)性代數(shù)基礎(chǔ),比如說(shuō)特征值、特征向量的概念,空間投影,點(diǎn)乘等的一些基本知識(shí)等。除此之外的其他公式、我都盡量講得更簡(jiǎn)單清楚。

      LDA:

          LDA的全稱(chēng)是Linear Discriminant Analysis(線(xiàn)性判別分析),是一種supervised learning。有些資料上也稱(chēng)為是Fisher’s Linear Discriminant,因?yàn)樗籖onald Fisher發(fā)明自1936年,Discriminant這次詞我個(gè)人的理解是,一個(gè)模型,不需要去通過(guò)概率的方法來(lái)訓(xùn)練、預(yù)測(cè)數(shù)據(jù),比如說(shuō)各種貝葉斯方法,就需要獲取數(shù)據(jù)的先驗(yàn)、后驗(yàn)概率等等。LDA是在目前機(jī)器學(xué)習(xí)、數(shù)據(jù)挖掘領(lǐng)域經(jīng)典且熱門(mén)的一個(gè)算法,據(jù)我所知,百度的商務(wù)搜索部里面就用了不少這方面的算法。

          LDA的原理是,將帶上標(biāo)簽的數(shù)據(jù)(點(diǎn)),通過(guò)投影的方法,投影到維度更低的空間中,使得投影后的點(diǎn),會(huì)形成按類(lèi)別區(qū)分,一簇一簇的情況,相同類(lèi)別的點(diǎn),將會(huì)在投影后的空間中更接近。要說(shuō)明白LDA,首先得弄明白線(xiàn)性分類(lèi)器(Linear Classifier):因?yàn)長(zhǎng)DA是一種線(xiàn)性分類(lèi)器。對(duì)于K-分類(lèi)的一個(gè)分類(lèi)問(wèn)題,會(huì)有K個(gè)線(xiàn)性函數(shù):

      image

           當(dāng)滿(mǎn)足條件:對(duì)于所有的j,都有Yk > Yj,的時(shí)候,我們就說(shuō)x屬于類(lèi)別k。對(duì)于每一個(gè)分類(lèi),都有一個(gè)公式去算一個(gè)分值,在所有的公式得到的分值中,找一個(gè)最大的,就是所屬的分類(lèi)了。

          上式實(shí)際上就是一種投影,是將一個(gè)高維的點(diǎn)投影到一條高維的直線(xiàn)上,LDA最求的目標(biāo)是,給出一個(gè)標(biāo)注了類(lèi)別的數(shù)據(jù)集,投影到了一條直線(xiàn)之后,能夠使得點(diǎn)盡量的按類(lèi)別區(qū)分開(kāi),當(dāng)k=2即二分類(lèi)問(wèn)題的時(shí)候,如下圖所示:

      clip_image002

           紅色的方形的點(diǎn)為0類(lèi)的原始點(diǎn)、藍(lán)色的方形點(diǎn)為1類(lèi)的原始點(diǎn),經(jīng)過(guò)原點(diǎn)的那條線(xiàn)就是投影的直線(xiàn),從圖上可以清楚的看到,紅色的點(diǎn)和藍(lán)色的點(diǎn)被原點(diǎn)明顯的分開(kāi)了,這個(gè)數(shù)據(jù)只是隨便畫(huà)的,如果在高維的情況下,看起來(lái)會(huì)更好一點(diǎn)。下面我來(lái)推導(dǎo)一下二分類(lèi)LDA問(wèn)題的公式:

           假設(shè)用來(lái)區(qū)分二分類(lèi)的直線(xiàn)(投影函數(shù))為:

      image

          LDA分類(lèi)的一個(gè)目標(biāo)是使得不同類(lèi)別之間的距離越遠(yuǎn)越好,同一類(lèi)別之中的距離越近越好,所以我們需要定義幾個(gè)關(guān)鍵的值。

          類(lèi)別i的原始中心點(diǎn)為:(Di表示屬于類(lèi)別i的點(diǎn))image

          類(lèi)別i投影后的中心點(diǎn)為:

      image

          衡量類(lèi)別i投影后,類(lèi)別點(diǎn)之間的分散程度(方差)為:

      image

          最終我們可以得到一個(gè)下面的公式,表示LDA投影到w后的損失函數(shù):

      image

         我們分類(lèi)的目標(biāo)是,使得類(lèi)別內(nèi)的點(diǎn)距離越近越好(集中),類(lèi)別間的點(diǎn)越遠(yuǎn)越好。分母表示每一個(gè)類(lèi)別內(nèi)的方差之和,方差越大表示一個(gè)類(lèi)別內(nèi)的點(diǎn)越分散,分子為兩個(gè)類(lèi)別各自的中心點(diǎn)的距離的平方,我們最大化J(w)就可以求出最優(yōu)的w了。想要求出最優(yōu)的w,可以使用拉格朗日乘子法,但是現(xiàn)在我們得到的J(w)里面,w是不能被單獨(dú)提出來(lái)的,我們就得想辦法將w單獨(dú)提出來(lái)。

         我們定義一個(gè)投影前的各類(lèi)別分散程度的矩陣,這個(gè)矩陣看起來(lái)有一點(diǎn)麻煩,其實(shí)意思是,如果某一個(gè)分類(lèi)的輸入點(diǎn)集Di里面的點(diǎn)距離這個(gè)分類(lèi)的中心店mi越近,則Si里面元素的值就越小,如果分類(lèi)的點(diǎn)都緊緊地圍繞著mi,則Si里面的元素值越更接近0.

      image

         帶入Si,將J(w)分母化為:

      image

      image

         同樣的將J(w)分子化為:

      image

         這樣損失函數(shù)可以化成下面的形式:

       image

         這樣就可以用最喜歡的拉格朗日乘子法了,但是還有一個(gè)問(wèn)題,如果分子、分母是都可以取任意值的,那就會(huì)使得有無(wú)窮解,我們將分母限制為長(zhǎng)度為1(這是用拉格朗日乘子法一個(gè)很重要的技巧,在下面將說(shuō)的PCA里面也會(huì)用到,如果忘記了,請(qǐng)復(fù)習(xí)一下高數(shù)),并作為拉格朗日乘子法的限制條件,帶入得到:

      image

         這樣的式子就是一個(gè)求特征值的問(wèn)題了。

         對(duì)于N(N>2)分類(lèi)的問(wèn)題,我就直接寫(xiě)出下面的結(jié)論了:

      image

         這同樣是一個(gè)求特征值的問(wèn)題,我們求出的第i大的特征向量,就是對(duì)應(yīng)的Wi了。

         這里想多談?wù)勌卣髦担卣髦翟诩償?shù)學(xué)、量子力學(xué)、固體力學(xué)、計(jì)算機(jī)等等領(lǐng)域都有廣泛的應(yīng)用,特征值表示的是矩陣的性質(zhì),當(dāng)我們?nèi)〉骄仃嚨那癗個(gè)最大的特征值的時(shí)候,我們可以說(shuō)提取到的矩陣主要的成分(這個(gè)和之后的PCA相關(guān),但是不是完全一樣的概念)。在機(jī)器學(xué)習(xí)領(lǐng)域,不少的地方都要用到特征值的計(jì)算,比如說(shuō)圖像識(shí)別、pagerank、LDA、還有之后將會(huì)提到的PCA等等。

         下圖是圖像識(shí)別中廣泛用到的特征臉(eigen face),提取出特征臉有兩個(gè)目的,首先是為了壓縮數(shù)據(jù),對(duì)于一張圖片,只需要保存其最重要的部分就是了,然后是為了使得程序更容易處理,在提取主要特征的時(shí)候,很多的噪聲都被過(guò)濾掉了。跟下面將談到的PCA的作用非常相關(guān)。

      image

          特征值的求法有很多,求一個(gè)D * D的矩陣的時(shí)間復(fù)雜度是O(D^3), 也有一些求Top M的方法,比如說(shuō)power method,它的時(shí)間復(fù)雜度是O(D^2 * M), 總體來(lái)說(shuō),求特征值是一個(gè)很費(fèi)時(shí)間的操作,如果是單機(jī)環(huán)境下,是很局限的。

      PCA:

          主成分分析(PCA)與LDA有著非常近似的意思,LDA的輸入數(shù)據(jù)是帶標(biāo)簽的,而PCA的輸入數(shù)據(jù)是不帶標(biāo)簽的,所以PCA是一種unsupervised learning。LDA通常來(lái)說(shuō)是作為一個(gè)獨(dú)立的算法存在,給定了訓(xùn)練數(shù)據(jù)后,將會(huì)得到一系列的判別函數(shù)(discriminate function),之后對(duì)于新的輸入,就可以進(jìn)行預(yù)測(cè)了。而PCA更像是一個(gè)預(yù)處理的方法,它可以將原本的數(shù)據(jù)降低維度,而使得降低了維度的數(shù)據(jù)之間的方差最大(也可以說(shuō)投影誤差最小,具體在之后的推導(dǎo)里面會(huì)談到)。

          方差這個(gè)東西是個(gè)很有趣的,有些時(shí)候我們會(huì)考慮減少方差(比如說(shuō)訓(xùn)練模型的時(shí)候,我們會(huì)考慮到方差-偏差的均衡),有的時(shí)候我們會(huì)盡量的增大方差。方差就像是一種信仰(強(qiáng)哥的話(huà)),不一定會(huì)有很?chē)?yán)密的證明,從實(shí)踐來(lái)說(shuō),通過(guò)盡量增大投影方差的PCA算法,確實(shí)可以提高我們的算法質(zhì)量。

          說(shuō)了這么多,推推公式可以幫助我們理解。我下面將用兩種思路來(lái)推導(dǎo)出一個(gè)同樣的表達(dá)式。首先是最大化投影后的方差,其次是最小化投影后的損失(投影產(chǎn)生的損失最?。?。

          最大化方差法:

          假設(shè)我們還是將一個(gè)空間中的點(diǎn)投影到一個(gè)向量中去。首先,給出原空間的中心點(diǎn):

      image    假設(shè)u1為投影向量,投影之后的方差為:

      image    上面這個(gè)式子如果看懂了之前推導(dǎo)LDA的過(guò)程,應(yīng)該比較容易理解,如果線(xiàn)性代數(shù)里面的內(nèi)容忘記了,可以再溫習(xí)一下,優(yōu)化上式等號(hào)右邊的內(nèi)容,還是用拉格朗日乘子法:

      image    將上式求導(dǎo),使之為0,得到:

      image    這是一個(gè)標(biāo)準(zhǔn)的特征值表達(dá)式了,λ對(duì)應(yīng)的特征值,u對(duì)應(yīng)的特征向量。上式的左邊取得最大值的條件就是λ1最大,也就是取得最大的特征值的時(shí)候。假設(shè)我們是要將一個(gè)D維的數(shù)據(jù)空間投影到M維的數(shù)據(jù)空間中(M < D), 那我們?nèi)∏癕個(gè)特征向量構(gòu)成的投影矩陣就是能夠使得方差最大的矩陣了。

          最小化損失法:

          假設(shè)輸入數(shù)據(jù)x是在D維空間中的點(diǎn),那么,我們可以用D個(gè)正交的D維向量去完全的表示這個(gè)空間(這個(gè)空間中所有的向量都可以用這D個(gè)向量的線(xiàn)性組合得到)。在D維空間中,有無(wú)窮多種可能找這D個(gè)正交的D維向量,哪個(gè)組合是最合適的呢?

          假設(shè)我們已經(jīng)找到了這D個(gè)向量,可以得到:

      image    我們可以用近似法來(lái)表示投影后的點(diǎn):

      image    上式表示,得到的新的x是由前M 個(gè)基的線(xiàn)性組合加上后D - M個(gè)基的線(xiàn)性組合,注意這里的z是對(duì)于每個(gè)x都不同的,而b對(duì)于每個(gè)x是相同的,這樣我們就可以用M個(gè)數(shù)來(lái)表示空間中的一個(gè)點(diǎn),也就是使得數(shù)據(jù)降維了。但是這樣降維后的數(shù)據(jù),必然會(huì)產(chǎn)生一些扭曲,我們用J描述這種扭曲,我們的目標(biāo)是,使得J最?。?/P>

      image    上式的意思很直觀,就是對(duì)于每一個(gè)點(diǎn),將降維后的點(diǎn)與原始的點(diǎn)之間的距離的平方和加起來(lái),求平均值,我們就要使得這個(gè)平均值最小。我們令:

      image    將上面得到的z與b帶入降維的表達(dá)式:

      image    將上式帶入J的表達(dá)式得到:

        image    再用上拉普拉斯乘子法(此處略),可以得到,取得我們想要的投影基的表達(dá)式為:

      image    這里又是一個(gè)特征值的表達(dá)式,我們想要的前M個(gè)向量其實(shí)就是這里最大的M個(gè)特征值所對(duì)應(yīng)的特征向量。證明這個(gè)還可以看看,我們J可以化為:

      image    也就是當(dāng)誤差J是由最小的D - M個(gè)特征值組成的時(shí)候,J取得最小值。跟上面的意思相同。

          下圖是PCA的投影的一個(gè)表示,黑色的點(diǎn)是原始的點(diǎn),帶箭頭的虛線(xiàn)是投影的向量,Pc1表示特征值最大的特征向量,pc2表示特征值次大的特征向量,兩者是彼此正交的,因?yàn)檫@原本是一個(gè)2維的空間,所以最多有兩個(gè)投影的向量,如果空間維度更高,則投影的向量會(huì)更多。

       

      總結(jié):

          本次主要講了兩種方法,PCA與LDA,兩者的思想和計(jì)算方法非常類(lèi)似,但是一個(gè)是作為獨(dú)立的算法存在,另一個(gè)更多的用于數(shù)據(jù)的預(yù)處理的工作。另外對(duì)于PCA和LDA還有核方法,本次的篇幅比較大了,先不說(shuō)了,以后有時(shí)間再談:

       

      參考資料:

          prml bishop,introduce to LDA(對(duì)不起,這個(gè)真沒(méi)有查到出處)

        本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶(hù)發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買(mǎi)等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
        轉(zhuǎn)藏 分享 獻(xiàn)花(0

        0條評(píng)論

        發(fā)表

        請(qǐng)遵守用戶(hù) 評(píng)論公約

        類(lèi)似文章 更多