1.支持向量机(线性模型)的数学描述
2020-05-31 本文已影响0人
柳橙汁柳子
1.没有免费午餐定理
如果我们不对特征空间有先验假设,则所有算法的平均表现是一样的;
我们认为:特征差距小的样本,更有可能是同一类;
(总结:没有最好的算法,只有最适合某种情况的算法)
2.支持向量机(线性模型)问题
样本数少的情况下能得到比较好的结果
a.线性模型
线性可分训练集
线性可分
非线性可分训练集
如何找到这条线?
使d最大:
d不是最大的情况 d最大的情况
d:间隔(margin)
支持向量机是一个最大化d的方法
将平行线叉到的向量称为支持向量(support vector)
定义
1.训练数据及标签:(x1,y1)... (xn, yn) 其中x是向量,y是标签(只能取+1/-1);
2.线性模型(w,b) :
超平面的表达方式
其中 Ω也是一个向量,维度由x决定,b是一个常数
3.一个训练集线性可分是指:对(xi,yi),存在一个(w,b) 使得对任意的i有:
若yi=-1,则 yi=-1
即: 公式1
支持向量机优化问题(凸优化问题,二次规划问题):
事实1:wx+b=0 与 awx+ab=0 是同一平面,其中a是一个正实数。
若(w,b)满足公式1 ,则(aw,ab)也满足公式1。
事实2:点到平面距离公式
image.png
所以,要得到最大的d,则需要最小的||w||: 最小化||w|| 而且可以得到如下限制条件: 限制条件
即非支持向量与超平面的距离应该大于支持向量。
二次规划问题:
1.目标函数是二次项
2.限制条件是一次项
则要么无解,要么只有一个极值