您的位置:首页 > 其它

机器学习:SVM公式推导

2015-04-28 16:37 225 查看
 
 

引言

 
 

对于SVM的大致原理之前已经讲过了,但是对于公式的推导,很多书都并未做要求,而且在实际应用过程中并未涉及过深,但鉴于台大机器学习课程中讲到了,自己为了巩固自己的学习,也梳理一遍SVM中公式的推导

 
 

此处考虑了C,也就是惩罚因子,不再是之前的hard-margin

 
 

推导过程

 
 

如果是soft-margin,那就说明我们能容忍一些错误,那么目标问题转化为

 
 



 
 

其中C比较大的时候,对离群点重视,越不要犯错越好,C比较小的时候,不是很看重离群点,重点在于找出margin越大越好

 
 

对于上面的问题我们无法求解,那么我们不妨转变一下思维,不去看犯了多少错误,而去看一共犯的错误有多大,用ξ记录违规了多少

 
 



 
 

此时的问题已经转换为二次规划问题了,对于二次规划问题又可以用之前的方法转换为对偶的二次规划问题了

 
 

同样是利用拉格朗日算法,由于有两组条件,所以需要两个参数α和β来作为拉格朗日乘子

 
 



 
 

为了求L的极值,我们得对这些变量求偏微分,首先我们对ξ做偏微分

 
 



 
 

得到β和C和α的关系,这样我们可以把β换掉,这样只考虑α

 
 

将β带进去得到:

 
 



 
 

这个式子如果不看条件的话跟hard margin的一样,这样的话我们可以对b,w做偏微分

 
 



 
 

这样我们得到α和yn的关系,以及w和α和yn以及zn的关系,带入式子中

 
 

问题就转换为跟原来差不多,只是α的条件多了一个C

 
 



 
 

然后把二次规划问题丢到QP解中可以解得到α,但是b的算法跟原来不一样,KKT条件已经变了

 
 



 
 

主要是b怎么算,hard margin SVM中与soft的对比

 
 



 
 

主要是y和ξ那一项比较麻烦

 
 

可以发现用free SV就可以消掉,于是b的计算方式还是用支持向量来算,也就是free SV

 
 

α的三种情形

 
 

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: