1. 简述
SVM涉及的东西很多,如果要理解全面的话,要理解经验风险与置信风险,VC维理论,推导出最优化公式,最优化求解的拉格朗日解法,核函数,等等方面的内容,当前对SVM理解太少,平时主要使用其工具包,这里记录一下推导出SVM最优化公式的部分,主要参考是维基百科,感觉维基百科在这部分的说明比较清楚简单。
2. 推导
· 已知信息
样本数据:xi是特征向量,yi是标注,p是特征向量的维数,n是样本数量。
目标:是寻找最大间隔超平面,一方面保证将所有的样本分开,另一方面超平面两侧的没有样本的间隔最大。
· 推导
假设超平面为w·x + b = 0 (一般使用w的转置,这里输入不方便使用w代替)
超平面一般使用超平面族表示即w·x+b=1与w·x+b=-1。
如果样本数据线性可分,就可以找到这样的两个超平面使得,这两个平面之间没有样本点,并且这两个超平面之间的距离是最大的。对于两个平面之间没有样本点,相当于yi (w·xi+b) > 1, i=1,2,...,n. 两个超平面之间的距离=2/|w|,最大化这个间隔相当于最小化|w|。
因此寻找能够分开所有样本的间隔最大的两个超平面可以描述为:
min |w|,
s.t. yi (w·xi+b)>1, 其中i=1,2,...,n
· 为了求解方便,可以进一步化为
min 1/2 |w*w|
s.t. yi (w·xi+b)>1, 其中i=1,2,...,n
3. 参考
维基百科_支持向量机
http://en.wikipedia.org/wiki/Support_vector_machine
http://zh.wikipedia.org/wiki/%E6%94%AF%E6%8C%81%E5%90%91%E9%87%8F%E6%9C%BA