概念
SVM(Support Vector Machine)是最大间隔分类器。简单来说,就是从众多的超平面中找到一个最好的超平面,能够分割两类。
svm要最大化这个margin
svm有三宝:间隔、对偶、核技巧
类别:
-
hard margin svm:
不允许有点落在间隔内,也就是说没有容错性 -
soft margin svm
允许有少数点出现在间隔之内,也就是有容错性。但是这个错误点有限制的范围。
4. kernel svm
间隔
满足分割两类的超平面
wxi+b>0 ,yi=1
wxi+b<0,yi=-1
=>yi(wx+b)>0
最大间隔
margin=min(distance(w, b, xi))=min(1/||w||*|wxi+b|y)
xi点到直线wx+b的公式distance=1/||w|||wxi+b|y
=>max min(1/||w||yi|wxi+b|)=max 1/||w|| min yi(|wxi+b|)
根据以上推导
max 1/||w||
min yi*(|wxi+b|)=1 <=> yi(wx+b)>=1
简化后得到
min 1/2ww.
yi(wx+b)>=1
将最大化的间隔转化成下面:有约束条件
对偶
在有约束条件下进行最优化求解w和b,凸优化
- 用朗格朗日求解将约束条件转换成自变量
- 再通过满足KKT条件,得到强对偶
支持向量机(SVM)——原理篇
核技巧
有些特征在低纬度不是线性可分的,通过引入核技巧,将低维的特征转换成高维可分的数据。