1. 程式人生 > >SVM 支援向量機(1) 硬間隔最大化

SVM 支援向量機(1) 硬間隔最大化

SVM (Support Vector Machine)- 支援向量機

主要從<<統計學習方法>>中整理

線性可分的情況下,假設存在一個超平面, w⃗ 是其法向量,對於正樣本有 wx+bγ^, 對於負樣本有wx+bγ^, 如果γ=0, 說明樣本剛好落在超平面上. 這裡能一眼看出來width=2γ^, 對於二分類, yi={1,1}, 於是上面兩個不等式乘以相應的yi就都成了

yi(wx⃗ i+b)γ^
所有樣本帶進去都滿足, 至少有一個樣本取等號,γ^就是最小函式間隔, 若定義γ^i=yi(wx⃗ i+b)
由於wb的等比例縮放, widt
h
也會跟著縮放, 沒法求最優, 所以得把w變成單位法向量, 這樣產生了一種幾何意義: 樣本x⃗ i在法向量方向上的投影的點離超平面有多遠, 於是有了幾何間隔γi=yi(wx⃗ i+b)||wi||最小几何間隔
γ=mini=1,2,...,nγi=γ^i||wi||
於是有了最大化最小集合間隔的問題: maxw,bγ^||w||
滿足對於所有樣本有 yi(wx⃗ i+b)γ^

假設將wb縮放到λwλb, 則函式間隔變成了 λγ^, 這對不等式約束沒有影響, 對最大化γ也沒有影響(相除消掉了), 所以令λ=1/γ^, 則有等價的優化問題

maxw,b1||w||
yi(w
x⃗ i+b)1
這裡我認為相當於是縮放了座標系, 即縮放xb使得γ^=1

這條縫邊上的點是支援向量的候選集, 即讓不等式條件取等號的樣本點:

yi(w⃗ x⃗ i+b)=1
這裡寫圖片描述
從圖中可以看出, 縫的寬度width=(x⃗ +x⃗ )w