支持向量机可以分为三类:

  • 线性可分的情况 ==> 硬间隔最大化 ==> 硬间隔SVM
  • 近似线性可分的情况 ==> 软间隔最大化 ==> 线性支持向量机
  • 线性不可分的情况 ==> 核技巧/软间隔最大化 ==> 非线性SVM

硬间隔向量机(hard margin svm)

任务:寻找一条与所有支持向量距离最远的决策边界,这条决策边界就是支持向量机五折交叉验证 支持向量机公式_机器学习,即:
支持向量机五折交叉验证 支持向量机公式_支持向量机_02
所以问题可以描述为:
支持向量机五折交叉验证 支持向量机公式_支持向量机五折交叉验证_03
带换一下也就是
支持向量机五折交叉验证 支持向量机公式_支持向量机五折交叉验证_04
用r来表示就是:
支持向量机五折交叉验证 支持向量机公式_支持向量机五折交叉验证_05

这里我的理解是:因为支持向量机五折交叉验证 支持向量机公式_SVM_06 ==> 支持向量机五折交叉验证 支持向量机公式_支持向量机_07,所以不管r取什么值,支持向量机五折交叉验证 支持向量机公式_核函数_08支持向量机五折交叉验证 支持向量机公式_SVM_09, 所以r的取值所带来的影响会被最后的w和b所融合进去,所以r=1也没关系。最终的问题可以描述为(这里是N个不等式):
支持向量机五折交叉验证 支持向量机公式_核函数_10
构造拉格朗日函数,引入N个参数支持向量机五折交叉验证 支持向量机公式_支持向量机_11,转换成对偶函数如下(大括号表示不出来我也很绝望):
支持向量机五折交叉验证 支持向量机公式_SVM_12

使用KKT条件,得到的解:
支持向量机五折交叉验证 支持向量机公式_机器学习_13

支持向量机五折交叉验证 支持向量机公式_支持向量机五折交叉验证_14

最终的解是:
支持向量机五折交叉验证 支持向量机公式_SVM_15


软间隔向量机(soft margin svm)

软间隔向量机采用合页损失函数,真实数据中,严格线性可分的数据很少。合页损失函数允许分类时的一点点误差。损失函数如下:
支持向量机五折交叉验证 支持向量机公式_核函数_16
也就是,正确分类并且函数间隔大于1时没有误差,错误分类时,距离决策边界越远的点,受到的惩罚越大。使用合页函数的做优化问题可以表示为:
支持向量机五折交叉验证 支持向量机公式_核函数_17

支持向量机五折交叉验证 支持向量机公式_核函数_18,则,分两种情况:
1、支持向量机五折交叉验证 支持向量机公式_支持向量机五折交叉验证_19 ==> 支持向量机五折交叉验证 支持向量机公式_支持向量机_20 ==> 支持向量机五折交叉验证 支持向量机公式_支持向量机五折交叉验证_21
2、支持向量机五折交叉验证 支持向量机公式_机器学习_22 ==> 支持向量机五折交叉验证 支持向量机公式_支持向量机五折交叉验证_23 ==> 支持向量机五折交叉验证 支持向量机公式_核函数_24 (支持向量机五折交叉验证 支持向量机公式_支持向量机五折交叉验证_25)

综合上面两种情况,可以直接写为:支持向量机五折交叉验证 支持向量机公式_核函数_24,这样的话,最优化函数就变成了下面的样子:
支持向量机五折交叉验证 支持向量机公式_核函数_27
这两个式子是等价的。再《统计学习方法》中,先给出了后面的式子,再介绍了合页损失函数

这两个式子转换成等价的对偶函数如下:
支持向量机五折交叉验证 支持向量机公式_SVM_28

对偶函数的解是:
支持向量机五折交叉验证 支持向量机公式_机器学习_29

支持向量机五折交叉验证 支持向量机公式_核函数_30

决策函数是:

支持向量机五折交叉验证 支持向量机公式_SVM_31

KKT条件

支持向量机五折交叉验证 支持向量机公式_支持向量机_32

支持向量机五折交叉验证 支持向量机公式_支持向量机_33

支持向量机五折交叉验证 支持向量机公式_机器学习_34

支持向量机五折交叉验证 支持向量机公式_机器学习_35

对于支持向量机五折交叉验证 支持向量机公式_支持向量机五折交叉验证_36 只要 支持向量机五折交叉验证 支持向量机公式_支持向量机五折交叉验证_37 ,就有 支持向量机五折交叉验证 支持向量机公式_支持向量机五折交叉验证_38,也就是说支持向量机五折交叉验证 支持向量机公式_核函数_39再决策边界上,支持向量机五折交叉验证 支持向量机公式_核函数_39是支持向量

  • 原问题与对偶问题育有强对偶关系 <===> 满足KKT条件

非线性支持向量机(核函数)

核函数可以对特征进行升维(当然,不一定非要是升维,也可能是转换到另一个空间),高维空间的运算量巨大,所以直接使用低维的计算结果,作为两个高维向量的内积:
支持向量机五折交叉验证 支持向量机公式_机器学习_41
核函数等价于两个映射哈函数的内积,不过,这个映射函数不需要手动指出。因为当两个映射函数相乘时,内积的结果可以用核函数表示。而映射函数在最优化问题中都是成对出现的。即出现映射函数的地方都可以用核函数替代。

如果用映射函数将x映射到高维空间,那么应该用高维向量替换x所在的位置:
支持向量机五折交叉验证 支持向量机公式_SVM_42

支持向量机五折交叉验证 支持向量机公式_支持向量机五折交叉验证_43

支持向量机五折交叉验证 支持向量机公式_机器学习_44

那么最终拟合的结果也应该是由高维向量表示的:


高斯核函数(RBF)

正太分布:
支持向量机五折交叉验证 支持向量机公式_机器学习_45

高斯核函数:
支持向量机五折交叉验证 支持向量机公式_核函数_46

对于正态分布来说:支持向量机五折交叉验证 支持向量机公式_核函数_47是标准差,支持向量机五折交叉验证 支持向量机公式_核函数_47越小,曲线越窄。支持向量机五折交叉验证 支持向量机公式_核函数_47越大,曲线越宽
对于高斯核函数来说:支持向量机五折交叉验证 支持向量机公式_SVM_50的值越大,曲线越窄;支持向量机五折交叉验证 支持向量机公式_SVM_50的值越小,曲线越宽;