机器学习基础(七)—支持向量机

支持向量机

1 优化目标

在SVM当中,cost代替了log项,图像和log项的图像非常相似。
在这里插入图片描述

在SVM中,我们优化不再使用λ,而是使用C,C这一项是被放到了前面的一项当中,并且1/m被去除。
在这里插入图片描述
在这里插入图片描述

在支持向量机当中,为了使我们的代价函数最小:

  • 当y=1时,那么我们希望z(θ转置*x)能够尽可能的大于等于1,因为当z大于等于1时我们的cost_1函数就会是0,这就可以使代价函数最小

  • 当y=0时,我们则希望z小于等于-1,从而使得我们的代价函数最小。

在这里插入图片描述

  • SVM会选择黑色的线作为决策边界, 然后会以最大的间距将正样本与负样本分开。所以有时候SVM也被叫做大间距分离器。
    在这里插入图片描述

  • 在支持向量机当中,如果C被设定的过大,那么我们的向量机就会对异常点非常的敏感。从而会得到红色的那条玫红色的那条线。

  • 若C比较小,那么我们的SVM还是会继续使用黑色的那条线。
    在这里插入图片描述

2 大间隔器原理

2.1 向量内积机制

下图中的上面的坐标轴:

  • 向量u的长度就等于根号u_12+u_22(勾股定理)。而向量v的长度也可以同理得到。通过箭头v做垂直于u的直线,p就是v在u上的映射。那么u.T * v=p*u。
  • 当p<90°时呢,我们的p是为正数的。
  • 当p>90°时呢,我们的p此时就是负数。
    在这里插入图片描述
2.2 支持向量机选择决策边界的原理
  • 假设左图的绿色线为决策边界(支持向量机不会选择这条线)。利用向量内积的原理,我们可以绘制出两个样本在θ上的映射,可以看到此时p(1)是一个很小的数,p(2)为负数。那么如果要满足p(i)* ||θ||>=1或p(i)*||θ||,那么我们就要尽可能的使||θ||大。那么如果||θ||大了,那就和优化项的1/2 * ||θ2||要尽量小就冲突了。所以支持向量机不会选择这头条决策边界。
    在这里插入图片描述

  • 若选择这条绿色决策边界,我们的P就会变大,从而使得我们的θ变小,而为了使θ尽量的小,我们的SVM会找到一个间距,这个间距会使得P尽可能的大,最终目的还是为了使得θ可以尽可能的小。
    在这里插入图片描述

2.3 核函数

当我们需要对高阶项进行计算时,会耗费相当大的计算量,因此这里我们使用核函数来近似。
x与的相似核函数表示如下:

  • 当x和l非常近似的时候,那么f就会很接近与1
  • 当x和l离的比较远的时候,那么这个时候f就会很接近与0

在这里插入图片描述

  • 假设我们现在有三个变量,f1,f2,f3对应的相似值landmarks分别为l(1),l(2),l(3)。参数θ1,θ2,θ3已知,当我们的真实样本为玫红色时,可见真实样本与l(1)离的非常近,与l(2),l(3)离的非常的远。因此,这是f1会非常的接近于1,而f2、f3会非常的接近于0,所以此时我们带入可求得我们的值是0.5>=0.5,所以预测值会为1。

  • 同样的道理,当我们的实际值离这三个点都非常远的时候,我们的预测值就变成了θ0。

  • 又因为我们的θ3是0,所以仅当实际值在红色线区域内我们的预测值才会为1(这样就可以得出我们的决策边界)
    在这里插入图片描述
    如何选择landmark:
    看下图中位于下半部分的两幅图。左边的一幅图是我们的给出的样本所在的位置,我们在每个样本点对应的位置放上一个landmark,然后组成一个向量。
    在这里插入图片描述

  • 比如所我们取x(i),那么我们就会得到f(i)_1、f(i)_2、…、f(i)_m。每一个f(i)_j,都表示不同样本点与x(i)的距离。所以当到f(i)_i的时候也就是在计算x(i)与自身的相似值,也就1。
    在这里插入图片描述

  • 然后将这些f(i)进行组合,我就创建了一个新的向量来描述我们的特征向量x(i)

在这里插入图片描述

  • 然后利用核函数计算SVM
    在这里插入图片描述
  • 当C大时,那么此时就很有可能会出现高方差(过拟合)
  • 当C小时,此时很有可能会出现高偏差(欠拟合)
  • 当sigmoid大时,那么会出现高偏差
  • 当sigmoid小时,那么会出现高方差
    在这里插入图片描述
2.4 应用SVM
  • 在拟合最优θ时可以调用别人的库
  • 选择C
  • 选择核函数(线性核函数就是没有使用核函数)
  • 如果使用高斯核函数就要选择sigmoid值

在这里插入图片描述

  • n相对于m来说很大的时候,使用Logistic回归或者线性SVM
  • n小,m适中时使用带有高斯核函数的SVM
  • n小,m很大的时候加入或创造更多特征,然后用Logistic回归或者线性SVM
  • 神经网络在这些条件下都很好,但是训练的比较慢。
    在这里插入图片描述
  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值