SVM模型
函数间隔和集合间隔
假设分类超平面方程为:
wTxi+b=0 w T x i + b = 0
|wTxi+b| | w T x i + b | 可以表示分类的准确度, wTxi+b w T x i + b 的符号和 yi y i 可以表示分类的是否准确。所以
yi(wTxi+b) y i ( w T x i + b )
可以完全描述分类的正确性和准确度。上式即定义为函数间隔,几何间隔就是指平面样本点到分类平面的距离,即
几何间隔:
|wTxi+b|||w|| | w T x i + b | | | w | |
SVM算法旨在寻找一个泛化性能最好的超平面将线性可分样例集分类。当然SVM可用于线性不可分数据集和回归问题中,这两种情况之后我们再细说。先说说 如何建立优化目标?
训练数据集为 { xi,yi}mi=1 { x i , y i } i = 1 m ,其中分类标记 yi∈{ −1,1} y i ∈ { − 1 , 1 } ,假设分类超平面为: wTx+b=0 w T x + b = 0 ,其中参数 w w 和 b b 是超平面对应的法向量和截距,是待优化的参数。那么有
yi=−1,wTxi+b≤0 y i = − 1 , w T x i + b ≤ 0
如果参数 (w,b) ( w , b ) 能够正确分类数据 { xi,yi}mi=1 { x i , y i } i = 1 m ,那么参数 (aw,ab) ( a w , a b ) 也能正确分类数据,此时对应的分类超平面不发生改变。所以,当数据集分类正确时,我们总是会有
(wTxi+b) yi≥1 ( w T x i + b ) y i ≥ 1
数据点 (xi,yi) ( x i , y i ) 到分类超平面的距离为
d=|wTxi+b|||w||=|(wTxi+b) yi|||w||≥1||w|| d = | w T x i + b | | | w | | = | ( w T x i + b ) y i | | | w | | ≥ 1 | | w | |
所以,两类数据的最小间隔为
γ=2||w|| γ = 2 | | w | |
为了得到泛化性能最好的分类器,我们需要在分类正确的情况下分类间隔最大化,所以我们有优化问题
maxw,b 2||w