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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

优雅的读懂支持向量机 SVM 算法

發(fā)布時(shí)間:2023/12/4 编程问答 37 豆豆
生活随笔 收集整理的這篇文章主要介紹了 优雅的读懂支持向量机 SVM 算法 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.


轉(zhuǎn)自:JerryLead

http://www.cnblogs.com/jerrylead/archive/2011/03/13/1982639.html


簡(jiǎn)介


支持向量機(jī)基本上是最好的有監(jiān)督學(xué)習(xí)算法了。最開始接觸SVM是去年暑假的時(shí)候,老師要求交《統(tǒng)計(jì)學(xué)習(xí)理論》的報(bào)告,那時(shí)去網(wǎng)上下了一份入門教程,里面講的很通俗,當(dāng)時(shí)只是大致了解了一些相關(guān)概念。


這次斯坦福提供的學(xué)習(xí)材料,讓我重新學(xué)習(xí)了一些SVM知識(shí)。我看很多正統(tǒng)的講法都是從VC 維理論和結(jié)構(gòu)風(fēng)險(xiǎn)最小原理出發(fā),然后引出SVM什么的,還有些資料上來(lái)就講分類超平面什么的。


這份材料從前幾節(jié)講的logistic回歸出發(fā),引出了SVM,既揭示了模型間的聯(lián)系,也讓人覺得過渡更自然


重新審視logistic回歸


Logistic回歸目的是從特征學(xué)習(xí)出一個(gè)0/1分類模型,而這個(gè)模型是將特性的線性組合作為自變量,由于自變量的取值范圍是負(fù)無(wú)窮到正無(wú)窮。


因此,使用logistic函數(shù)(或稱作sigmoid函數(shù))將自變量映射到(0,1)上,映射后的值被認(rèn)為是屬于y=1的概率。

形式化表示就是


假設(shè)函數(shù)



其中x是n維特征向量,函數(shù)g就是logistic函數(shù)。

的圖像是



可以看到,將無(wú)窮映射到了(0,1)。


而假設(shè)函數(shù)就是特征屬于y=1的概率。



當(dāng)我們要判別一個(gè)新來(lái)的特征屬于哪個(gè)類時(shí),只需求,若大于0.5就是y=1的類,反之屬于y=0類。


再審視一下,發(fā)現(xiàn)只和有關(guān),>0,那么,g(z)只不過是用來(lái)映射,真實(shí)的類別決定權(quán)還在。還有當(dāng)時(shí),=1,反之=0。

如果我們只從出發(fā),希望模型達(dá)到的目標(biāo)無(wú)非就是讓訓(xùn)練數(shù)據(jù)中y=1的特征,而是y=0的特征

Logistic回歸就是要學(xué)習(xí)得到,使得正例的特征遠(yuǎn)大于0,負(fù)例的特征遠(yuǎn)小于0,強(qiáng)調(diào)在全部訓(xùn)練實(shí)例上達(dá)到這個(gè)目標(biāo)。


圖形化表示如下:



中間那條線是,logistic回顧強(qiáng)調(diào)所有點(diǎn)盡可能地遠(yuǎn)離中間那條線。學(xué)習(xí)出的結(jié)果也就中間那條線。


考慮上面3個(gè)點(diǎn)A、B和C。從圖中我們可以確定A是×類別的,然而C我們是不太確定的,B還算能夠確定。這樣我們可以得出結(jié)論,我們更應(yīng)該關(guān)心靠近中間分割線的點(diǎn),讓他們盡可能地遠(yuǎn)離中間線,而不是在所有點(diǎn)上達(dá)到最優(yōu)。


因?yàn)槟菢拥脑?#xff0c;要使得一部分點(diǎn)靠近中間線來(lái)?yè)Q取另外一部分點(diǎn)更加遠(yuǎn)離中間線。我想這就是支持向量機(jī)的思路和logistic回歸的不同點(diǎn),一個(gè)考慮局部(不關(guān)心已經(jīng)確定遠(yuǎn)離的點(diǎn)),一個(gè)考慮全局(已經(jīng)遠(yuǎn)離的點(diǎn)可能通過調(diào)整中間線使其能夠更加遠(yuǎn)離)。這是我的個(gè)人直觀理解。


形式化表示


我們這次使用的結(jié)果標(biāo)簽是y=-1,y=1,替換在logistic回歸中使用的y=0和y=1。同時(shí)將替換成w和b。


以前的,其中認(rèn)為。現(xiàn)在我們替換為b,后面替換為(即)。這樣,我們讓,進(jìn)一步。


也就是說(shuō)除了y由y=0變?yōu)閥=-1,只是標(biāo)記不同外,與logistic回歸的形式化表示沒區(qū)別。再明確下假設(shè)函數(shù)



上一節(jié)提到過我們只需考慮的正負(fù)問題,而不用關(guān)心g(z),因此我們這里將g(z)做一個(gè)簡(jiǎn)化,將其簡(jiǎn)單映射到y(tǒng)=-1和y=1上。映射關(guān)系如下:



函數(shù)間隔(functional margin)和幾何間隔(geometric margin)


給定一個(gè)訓(xùn)練樣本,x是特征,y是結(jié)果標(biāo)簽。i表示第i個(gè)樣本。我們定義函數(shù)間隔如下:



可想而知,當(dāng)時(shí),在我們的g(z)定義中,的值實(shí)際上就是。反之亦然。


為了使函數(shù)間隔最大(更大的信心確定該例是正例還是反例),當(dāng)時(shí),應(yīng)該是個(gè)大正數(shù),反之是個(gè)大負(fù)數(shù)。因此函數(shù)間隔代表了我們認(rèn)為特征是正例還是反例的確信度。


繼續(xù)考慮w和b,如果同時(shí)加大w和b,比如在前面乘個(gè)系數(shù)比如2,那么所有點(diǎn)的函數(shù)間隔都會(huì)增大二倍,這個(gè)對(duì)求解問題來(lái)說(shuō)不應(yīng)該有影響,因?yàn)槲覀円蠼獾氖?/span>,同時(shí)擴(kuò)大w和b對(duì)結(jié)果是無(wú)影響的。


這樣,我們?yōu)榱讼拗苭和b,可能需要加入歸一化條件,畢竟求解的目標(biāo)是確定唯一一個(gè)w和b,而不是多組線性相關(guān)的向量。這個(gè)歸一化一會(huì)再考慮。


剛剛我們定義的函數(shù)間隔是針對(duì)某一個(gè)樣本的,現(xiàn)在我們定義全局樣本上的函數(shù)間隔



說(shuō)白了就是在訓(xùn)練樣本上分類正例和負(fù)例確信度最小那個(gè)函數(shù)間隔。

接下來(lái)定義幾何間隔,先看圖



假設(shè)我們有了B點(diǎn)所在的分割面。任何其他一點(diǎn),比如A到該面的距離以表示,假設(shè)B就是A在分割面上的投影。


我們知道向量BA的方向是(分割面的梯度),單位向量是。A點(diǎn)是,所以B點(diǎn)是x=(利用初中的幾何知識(shí)),帶入得,



進(jìn)一步得到



實(shí)際上就是點(diǎn)到平面距離。

再換種更加優(yōu)雅的寫法:



當(dāng)時(shí),不就是函數(shù)間隔嗎?是的,前面提到的函數(shù)間隔歸一化結(jié)果就是幾何間隔。


他們?yōu)槭裁磿?huì)一樣呢?因?yàn)楹瘮?shù)間隔是我們定義的,在定義的時(shí)候就有幾何間隔的色彩。同樣,同時(shí)擴(kuò)大w和b,w擴(kuò)大幾倍,就擴(kuò)大幾倍,結(jié)果無(wú)影響。同樣定義全局的幾何間隔


最優(yōu)間隔分類器(optimal margin classifier)


回想前面我們提到我們的目標(biāo)是尋找一個(gè)超平面,使得離超平面比較近的點(diǎn)能有更大的間距。也就是我們不考慮所有的點(diǎn)都必須遠(yuǎn)離超平面,我們關(guān)心求得的超平面能夠讓所有點(diǎn)中離它最近的點(diǎn)具有最大間距。


形象的說(shuō),我們將上面的圖看作是一張紙,我們要找一條折線,按照這條折線折疊后,離折線最近的點(diǎn)的間距比其他折線都要大。形式化表示為:



這里用=1規(guī)約w,使得是幾何間隔。


到此,我們已經(jīng)將模型定義出來(lái)了。如果求得了w和b,那么來(lái)一個(gè)特征x,我們就能夠分類了,稱為最優(yōu)間隔分類器。接下的問題就是如何求解w和b的問題了。


由于不是凸函數(shù),我們想先處理轉(zhuǎn)化一下,考慮幾何間隔和函數(shù)間隔的關(guān)系,,我們改寫一下上面的式子:



這時(shí)候其實(shí)我們求的最大值仍然是幾何間隔,只不過此時(shí)的w不受的約束了。然而這個(gè)時(shí)候目標(biāo)函數(shù)仍然不是凸函數(shù),沒法直接代入優(yōu)化軟件里計(jì)算。我們還要改寫。


前面說(shuō)到同時(shí)擴(kuò)大w和b對(duì)結(jié)果沒有影響,但我們最后要求的仍然是w和b的確定值,不是他們的一組倍數(shù)值,因此,我們需要對(duì)做一些限制,以保證我們解是唯一的。


這里為了簡(jiǎn)便我們?nèi)?/span>。這樣的意義是將全局的函數(shù)間隔定義為1,也即是將離超平面最近的點(diǎn)的距離定義為。由于求的最大值相當(dāng)于求的最小值,因此改寫后結(jié)果為:



這下好了,只有線性約束了,而且是個(gè)典型的二次規(guī)劃問題(目標(biāo)函數(shù)是自變量的二次函數(shù))。代入優(yōu)化軟件可解。


到這里發(fā)現(xiàn),這個(gè)講義雖然沒有像其他講義一樣先畫好圖,畫好分類超平面,在圖上標(biāo)示出間隔那么直觀,但每一步推導(dǎo)有理有據(jù),依靠思路的流暢性來(lái)推導(dǎo)出目標(biāo)函數(shù)和約束。



總結(jié)

以上是生活随笔為你收集整理的优雅的读懂支持向量机 SVM 算法的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

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