浅谈SVM


2016-11-10 15:51 173人阅读 评论(0)收藏举报
浅谈SVM分类:

一、了解SVM

SVM是一机器学习中的一种分类方法,是一种二分类方法。它的目的便是在求得一组权值w1,w2,.....wn,b,使得两个分类的间隔达到最大,也就是能很好地将两个类别分开。

1、从逻辑回归引入SVM

此处使用Logistic Regression做为一个因子,来引入SVM

逻辑回归也是一个分类模型,它采用的映射函数为Sigmod函数,也就是把属于负无穷到正无穷的自变量映射到(0,1)之间。

浅谈SVM

函数图像如图所示。sigmod函数为浅谈SVM,函数的输出是概率估计,输出代表1的概率。输出值>0.5为类别1,<0.5为类别0,。因此可以用概率模型来表示输出属于各个类别的值:浅谈SVM, 浅谈SVM

逻辑回归的目的是要求得到一组浅谈SVM,使得属于类别y=1的特征满足浅谈SVM>>0,即浅谈SVM,使得属于类别y=-1的特征满足浅谈SVM<<0,即浅谈SVM

2、逻辑回归变形为SVM

浅谈SVM -->

浅谈SVM。同时y也由原来的类别1,0变为了1,-1.浅谈SVM   针对输入x我们会得到浅谈SVM,以下图为例

浅谈SVM

中间实线为我们要找的超平面,上面虚线代表浅谈SVM,也就是类别为-1,下面代表类别为1.

注:类别为1 ,-1的由来:

1、二分类的标签是任意取的,只要能区分两个不同的类别即可。;

2、SVM为二分类模型,超平面分开的两个类的函数值相应于超平面是相反的;

3、既然是两个数,而且是相反数,那就去1和-1便于计算。

我们的目的是求得一组w和b,使得两个分类的间隔最大。也就是上图中虚线上的点到浅谈SVM浅谈SVM=0的距离最小,实际距离表示为浅谈SVM,实际上式为浅谈SVM,因为对于虚线的点满足浅谈SVM,因为虚线上的点事支持向量的,所以两边虚线之间的间隔也就是浅谈SVM。求得max浅谈SVM,即可找到一组最优的w,下面对这个式子做一下变换,max浅谈SVM等价于min浅谈SVM   s.t   浅谈SVM

注:浅谈SVM能够表示x到超平面的距离远近,通过观察浅谈SVM浅谈SVMi的符合是否一致就可以判断分类是否正确。

二、参数求解

在求解w的过程中,一直有一个约束条件即浅谈SVM,可以引入拉格朗日函数约束。

浅谈SVM

求函数的极值,对三个未知数分别求偏导可得出:浅谈SVM    浅谈SVM

这样就找到了浅谈SVM三者之间的关系,求出浅谈SVM就相当于求出了w,b。

浅谈SVM。只有一个参数浅谈SVM,采用SMO方法,即每次只求两个浅谈SVM,固定除了这两个浅谈SVM以外所有的浅谈SVM(视为常数),不断的任意抽取浅谈SVM,然后求解上面关于浅谈SVM的函数值直到收敛。

求出浅谈SVM以后,w,b也就迎刃而解了,则超平面也就确定了。



1、SVM中涉及的核函数是处理非线性情况,直接映射到高维空间维度太高时计算量太大,所以核函数是在低维空间计算。(此处摘抄自某资料,在下现在还不明白?)

2、松弛变量是为了满足少量不严格满足浅谈SVM的因子而设计的(即对不好分类的点的一种约束)。


经验风险,结构风险:

1、经验风险就是真实存在的风险,即真实值与预测值差的平均浅谈SVM

SVM采用的是合页损失,max(1,1-z),浅谈SVM

2、结构风险(加入正则化之后的风险值),浅谈SVM

是对参数w的一种约束,分为L1正则化和L2正则化

L1正则化就是趋向于产生更少的特征,其它的特征的wi均为0;

L2正则化趋向于选择更多的特征,使得特征wi都接近于0;L2可以防止过拟合,提升泛化能力。SVM默认采用L2正则化。


以上对SVM的理解还是比较浅显的,以后有了更深的理解会继续更新。希望批评指正。


另外推荐一个可以网页版编辑公式的的东西:http://www.codecogs.com/latex/eqneditor.PHP