SVM中为何间隔边界的值为正负1
在WB二面中,問到讓講一下SVM算法。
我回答的時候,直接答道線性分隔面將樣本分為正負兩類,取平行于線性分割面的兩個面作為間隔邊界,分別為:wx+b=1和wx+ b = -1。
面試官就問,為什么是正負1?
當時沒有答上來,看來還是對模型不夠理解。
回來查資料和ppt等,解答如下:
線性分割面是f(x) = wx + b,該線性分割面是要把樣本點分為兩類:
對于正樣本,都滿足:wx + b > 0;
對于負樣本,都滿足:wx + b < 0;
從式子中可以觀察到,如果同時放大或縮小w和b,最后的結果是不受影響的,還是同一個線性分割面。因此,我們可以做一個要求:
對于所有正樣本,都滿足:wx + b >= 1;
對于所有負樣本,都滿足:wx + b <= -1;
其中,間隔邊界外的點對應的是">"或"<"號,而間隔邊界上的點,對應的是"="號。
即得到:
對于間隔邊界上的正樣本,都滿足:wx + b = 1;
對于間隔邊界上的負樣本,都滿足:wx + b = -1;
這就是間隔邊界上的值為正負1的由來。
PS1:
硬間隔SVM中,最小化間隔為:
min f(w) = w.T * w / 2
其約束條件為:使所有的樣本點都能正確劃分,即:
s.t. ? y_i(w * x_i + b) >= 1。
注意:不等式是包含等號"="的,是說,所有的點都在間隔邊界之上或之外,不允許出現在間隔邊界與分類超平面之間的!
PS2:
對于軟間隔SVM中的松弛變量的概念。噪聲點并非只能存在于正確間隔邊界外,由于有了松弛變量把它拉回來,因此,噪聲點是可以到兩個間隔邊界之中,或者到錯誤的間隔邊界之外的(當然,如果只是出現在分類超平面和正確的間隔邊界之間,此時該點還是會被正確分類的,但是,此時它還是會為l(w)函數貢獻松弛變量e的。)。此時的限制條件為:
s.t. y_i(w * x_i + b) + e_i >= 1,其中,e_i >= 0。
總結
以上是生活随笔為你收集整理的SVM中为何间隔边界的值为正负1的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 线性回归中的前提假设
- 下一篇: 到底什么是推荐?