全國(guó)咨詢(xún)/投訴熱線(xiàn):400-618-4000

首頁(yè)人工智能技術(shù)資訊正文

什么是SVM算法?硬間隔和軟間隔的分類(lèi)問(wèn)題

更新時(shí)間:2022-09-07 來(lái)源:黑馬程序員 瀏覽量:

SVM全稱(chēng)是supported vector machine(支持向量機(jī)),即尋找到一個(gè)超平面使樣本分成兩類(lèi),并且間隔最大。

SVM能夠執(zhí)行線(xiàn)性或?線(xiàn)性分類(lèi)、回歸,甚至是異常值檢測(cè)任務(wù)。它是機(jī)器學(xué)習(xí)領(lǐng)域最受歡迎的模型之一。SVM特別適用于中小型復(fù)雜數(shù)據(jù)集的分類(lèi)。

1662543937323_6.png

超平面最大間隔


超平面最大間隔

上左圖顯示了三種可能的線(xiàn)性分類(lèi)器的決策邊界:虛線(xiàn)所代表的模型表現(xiàn)非常糟糕,甚至都無(wú)法正確實(shí)現(xiàn)分類(lèi)。其余兩個(gè)模型在這個(gè)訓(xùn)練集上表現(xiàn)堪稱(chēng)完美,但是它們的決策邊界與實(shí)例過(guò)于接近,導(dǎo)致在面對(duì)新實(shí)例時(shí),表現(xiàn)可能不會(huì)太好。

右圖中的實(shí)線(xiàn)代表SVM分類(lèi)器的決策邊界,不僅分離了兩個(gè)類(lèi)別,且盡可能遠(yuǎn)離最近的訓(xùn)練實(shí)例。

硬間隔分類(lèi)

在上面我們使用超平面進(jìn)行分割數(shù)據(jù)的過(guò)程中,如果我們嚴(yán)格地讓所有實(shí)例都不在最大=大間隔之間,并且位于正確的一邊,這就是硬間隔分類(lèi)。

硬間隔分類(lèi)有兩個(gè)問(wèn)題,首先,它只在數(shù)據(jù)是線(xiàn)性可分離的時(shí)候才有效;其次,它對(duì)異常值非常敏感

當(dāng)有一個(gè)額外異常值的鳶尾花數(shù)據(jù):左圖的數(shù)據(jù)根本找不出硬間隔,而右圖最終顯示的決策邊界與我們之前所看到的無(wú)異常值時(shí)的決策邊界也大不相同,可能無(wú)法很好地泛化。

1662544014623_8.png

軟間隔分類(lèi)

要避免這些問(wèn)題,最好使用更靈活的模型。目標(biāo)是盡可能在保持最大間隔寬闊和限制間隔違例(即位于最大間隔之上,甚至在錯(cuò)誤的一邊的實(shí)例)之間找到良好的平衡,這就是軟間隔分類(lèi)。

要避免這些問(wèn)題,最好使用更靈活的模型。目標(biāo)是盡可能在保持間隔寬闊和限制間隔違例之間找到良好的平衡,這就是軟間隔分類(lèi)。

軟間隔分類(lèi)

在Scikit-Learn的SVM類(lèi)中,可以通過(guò)超參數(shù)C來(lái)控制這個(gè)平衡:C值越小,則間隔越寬,但是間隔違例也會(huì)越多。上圖 顯示了在一個(gè)非線(xiàn)性可分離數(shù)據(jù)集上,兩個(gè)軟間隔SVM分類(lèi)器各自的決策邊界和間隔。

左邊使用了高C值,分類(lèi)器的錯(cuò)誤樣本(間隔違例)較少,但是間隔也較小。

右邊使用了低C值,間隔大了很多,但是位于間隔上的實(shí)例也更多??雌饋?lái)第二個(gè)分類(lèi)器的泛化效果更好,因?yàn)榇蠖鄶?shù)間隔違例實(shí)際上都位于決策邊界正確的一邊,所以即便是在該訓(xùn)練集上,它做出的錯(cuò)誤預(yù)測(cè)也會(huì)更少。


分享到:
在線(xiàn)咨詢(xún) 我要報(bào)名
和我們?cè)诰€(xiàn)交談!