詳解SVM系列(四):線性支援向量機與軟間隔最大化
阿新 • • 發佈:2018-12-30
線性支援向量機
線性可分問題的支援向量機學習方法,對線性不可分訓練資料是不適用的,因為這時上述方法的不等式約束並不能都成立。
舉2個例子:
如果沒有混入異常點,導致不能線性可分,則資料可以按上面的實線來做超平面分離的。
這種情況雖然不是不可分的,但是由於其中的一個藍色點不滿足線性可分支援向量機中的不等式約束,導致模型的泛化效果很差。
正常情況下(沒有那個藍色異常點)分離超平面應該是紅色的那條線,由於異常點的存在,實際得到的分離超平面是黑色的粗虛線。(間隔不同啊,所以泛化效能也不一樣)
軟間隔最大化
怎麼解決呢?
對硬間隔最大化做出一些讓步:放寬SVM的限制,可以允許存在一些誤分類的點。
線性不可分意味著某些樣本點 不能滿足函式間隔大於等於1的約束條件,為了解決這個問題,可以對每個樣本點 引進一個鬆弛變數 ,使得函式間隔加上鬆弛變數大於等於1.這樣約束條件變為
鬆弛變數的引入就是i為了對付那些離群點的,其他點(姑且稱作正常點)的鬆弛變數都是0
同時,對每一個鬆弛變數 ,支付一個代價 。目標函式由原來的 變成
-------------------------(式1)
這裡,C稱為懲罰引數,一般由應用問題決定。
C值大的時候對誤分類的懲罰大,這時候間隔會變小
C值小時對誤分類的懲罰變小,間隔相應的變大。
式1的意義在於使間隔儘量大,同時使誤分類的個數儘量少。
線性不可分的線性支援向量機的學習問題變成下面的凸二次規劃問題:
-----------------------------(式2)
顯然 式2 中 每一個樣本都有一個對應的鬆弛變數,用於表示該樣本不滿足約束
的程度。
通過拉格朗日乘子法可得到下式的拉格朗日函式:
---------------(式3)
其中
令: