【Machine Learning】12 支持向量机(Support Vector Machines)

与 逻辑回归和神经网络相比,SVM在学习复杂的非线性方程时提供了一种更为清晰,更加强大的方式。

12.1 Optimization objective

如同之前介绍算法的步骤我们先讲优化目标,从逻辑回归讲起。

   

左图:

如果y=1,这时我们需要设置h_{\theta}(x)\approx 1,即\theta ^{T}x\gg 0;(之前是设置一个阈值如h_{\theta}(x)>0.5时即\theta ^{T}x>0就可以)

如果y=0,这时我们需要设置h_{\theta}(x)\approx 0,即\theta^{T}x\ll 0.

右图:

我们画出线段来近似原本逻辑回归的cost function,分为y=1/0两种情况。

SVM的构造,将之前最小化目标函数中的cost替代成新的,这里由于习惯我们将1/m去掉,并且将λ提前。

12.2 Large Margin Intuition

逻辑回归中我们的\theta ^{T}x>0就可以进行分类,但SVM的要求更高,\theta ^{T}x \geq 1才行。这相当于有一个分离的间距,适用于距离较大的分类。

 在C特别大的情况下,我们要尽力使得第一项为0,即要满足以下条件,这时原问题转化为蓝色字体的优化问题。

正如图所示,SVM在分离样本时尽量与样本保持最大间距,这也使得SVM有较好的鲁棒性,而不是像红线和绿线一样离样本很近。SVM也被称作大间距分类器。这其实就是求解上一个优化问题的结果,下一节将解释求解优化问题是如何得到这个图的。

严格地说 只有C非常大时才能得到SVM,但在上图把黑线变成红线分类显然不太明智,只是取C不是非常大最终得到这条黑线是比较好的。这就是正则化参数设置的问题,同λ一样。

12.3 Mathematics Behind Large Margin Classification

   

原优化问题转换成新的投影优化问题,我们计算min \frac{1}{2}\left \| \theta \right \|^{2},右图左边分类下明显θ值要很大,而右边θ值可以小,这就是为什么SVM得到右边分类的原因。

12.4 Kernels I 

高斯核函数

我们要完成上面的非线性分类,我们的模型可能是h_{\theta}(x)=\theta _{0}+\theta_{1}x_{1}+\theta_{2}x_{2}+\theta_{3}x_{1}x_{2}+\theta_{4}x_{1}^{2}+\theta_{5}x_{2}^{2}+\cdots的形式。

我们引入一个新的记号,f来表示新的特征得到h_{\theta}(x)=\theta _{0}+\theta_{1}f_{1}+\theta_{2}f_{2}+\theta_{3}f_{3}+\theta_{4}f_{4}+\theta_{5}f_{5}+\cdots

其中,f表示x与给定标记l的近似程度。(给定标记?如何给定?下节

对于给定蓝点,离l1较进离l2 l3较远,所以f1=1,f2=f3=0,依此我们可以画出红色边界,界内预测y=1,界外预测y=0.

12.5 Kernels II 

  

一般取原样本为标记,含核函数的SVM的代价函数可以写成右图。训练时可以发现最后一项改为\theta ^{T}M\theta效果比较好。
SVM参数的影响:


12.6 Using An SVM

SVM有成熟的软件库可以使用,当我们使用SVM时需要确定参数C和核函数,参数C产生的影响上节已进行讨论。不使用核函数时我们称其为线性SVM。在非线性分类时有各种对应的核函数。如下:

Logistic regression和SVM的选择:

当特征数目相对于样本数很大时,我们使用逻辑回归或者线性SVM;

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值