Kernel SVM

软间隔SVM仍存在的问题

  • 线性可分SVM的硬间隔最大化和软间隔最大化的算法,它们对线性可分的数据有很好的处理,但是对完全线性不可分的数据没有办法。
  • 在多项式回归中,通过高维映射,可将多项式回归转化为线性回归。所以二维不是线性的数据,将其映射到了五维以后,就变成了线性的数据。
  • 对于SVM线性不可分的低维特征数据,可以将其映射到高维,就能线性可分,此时就可以运用前两篇的线性可分SVM的算法思想了。

映射存在的问题

  1. 线性可分SVM的优化目标函数:在这里插入图片描述
  2. 通过低维特征空间到高维特征空间的映射𝜙,将所有特征映射到一个更高的维度,让数据线性可分,SVM的优化目标函数变成:在这里插入图片描述
  3. 如果我们将低维(本来就比较高维)映射到更高维来计算特征的内积,这时候映射成的高维计算量是爆炸性增长的,而且如果遇到无穷维的情况,就根本无法计算。所以核函数出场了。

核函数

  • 假设𝜙是一个从低维的输入空间𝜒(欧式空间的子集或者离散集合)到高维的希尔伯特空间的一个映射。那么如果存在函数𝐾(𝑥,𝑧),对于任意𝑥,𝑧∈𝜒,都有:

    K(x, z) = 𝜙(x) * 𝜙(z)

    (低维特征空间计算左,结果映射进高维右)我们称𝐾(𝑥,𝑧)为核函数。

  • 一个函数要想成为核函数,必须满足他里面任何点的集合形成的Gram矩阵是半正定的:对于任意的𝑥𝑖∈𝜒,𝑖=1,2,3…𝑚, 𝐾(𝑥𝑖,𝑥𝑗)对应的Gram矩阵𝐾=[𝐾(𝑥𝑖,𝑥𝑗)] 是半正定矩阵,则𝐾(𝑥,𝑧)是正定核函数。

  • 线性核函数(Linear Kernel)

    𝐾(𝑥,𝑧)=𝑥∙𝑧

    线性可分SVM和线性不可分SVM区别仅仅在于线性可分SVM用的是线性核函数。

  • 多项式核函数(Polynomial Kernel)

    𝐾(𝑥,𝑧)=(𝛾𝑥∙𝑧+𝑟)𝑑

    是线性不可分SVM常用的核函数之一,其中,𝛾,𝑟,𝑑都需要自己调参定义。

  • 高斯核函数(Gaussian Kernel)

    𝐾(𝑥,𝑧)=𝑒𝑥𝑝(−𝛾||𝑥−𝑧||2)

    也称径向基核函数(Radial Basis Function,RBF),非线性分类SVM最主流的核函数。其中,𝛾大于0,需要自己调参定义。

  • Sigmoid核函数(Sigmoid Kernel)

    𝐾(𝑥,𝑧)=𝑡𝑎𝑛ℎ(𝛾𝑥∙𝑧+𝑟)

    线性不可分SVM常用的核函数之一。其中,𝛾,𝑟都需要自己调参定义。

SVM使用小结

输入是m个样本(𝑥1,𝑦1),(𝑥2,𝑦2),…,(𝑥𝑚,𝑦𝑚),其中x为n维特征向量。
y为二元输出,值为1,或者-1
输出是分离超平面的参数𝑤∗和𝑏∗和分类决策函数。

  1. 选择适当的核函数𝐾(𝑥,𝑧)和一个惩罚系数𝐶>0, 构造约束优化问题
    在这里插入图片描述
    𝑠.𝑡.∑𝛼𝑖𝑦𝑖=0;0≤𝛼𝑖≤𝐶
  2. 用SMO算法求出上式最小时对应的𝛼向量的值𝛼∗向量
  3. 计算𝑤∗=∑𝛼𝑖𝑦𝑖𝜙(𝑥𝑖)
  4. 找出所有的S个支持向量,即满足0 < 𝛼 < 𝐶对应的样本(𝑥𝑠,𝑦𝑠)
  5. 计算出每个支持向量(𝑥𝑠,𝑦𝑠)对应的𝑏𝑠,𝑏𝑠=𝑦𝑠−∑𝛼𝑖𝑦𝑖𝐾(𝑥𝑖,𝑥𝑠),𝑏∗ = ∑𝑏𝑠/𝑆
  6. 最终的分类超平面为:𝑤∗∙𝑥+𝑏∗=0,最终的分类决策函数为:𝑓(𝑥)=𝑠𝑖𝑔𝑛(𝑤∗∙𝑥+𝑏∗)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值