这个问题困扰了笔者很久,今天终于弄明白了,记录一下,防止遗忘。
背景
SVM是一个二分类模型,目标是找到两个类别的最大间隔超平面。给定一组数据, 其中
公式推导
首先引入两个概念:
函数间隔:所有样本点到超平面wx+b=0的最小距离。由于几何间隔会随着超平面参数的变化而变化,如果w和b同时增大两倍,函数间隔也会增大两倍,这样的话不同超平面的函数间隔无法作比较;
几何间隔:将超平面的参数的模设为1 时的函数间隔,也就是超平面
对应的函数间隔。
为了求最大间隔超平面,目标函数定义为:
由于不同超平面的函数间隔无法直接比较,引入几何间隔:
令,可得:
由于,所以
最终的目标函数为: