SVM 是一块很大的内容,网上有写得非常精彩的博客。这篇博客目的不是详细阐述每一个理论和细节,而在于在不丢失重要推导步骤的条件下从宏观上把握 SVM 的思路。

1. 问题由来

SVM (支持向量机) 的主要思想是找到几何间隔最大的超平面对数据进行正确划分,与一般的线性分类器相比,这样的超平面理论上对未知的新实例具有更好的分类能力。公式表示如下:

 : 所有点中最小的几何间隔, 实际上就是支持向量上的点的几何间隔

 : 训练样本及对应标签, , 作用是将第 i 个样本点的几何间隔转化为正数

公式的意思是假设每个训练样本点的几何间隔至少是 , 求  的最大值。

由于几何间隔(没帽子)和函数间隔(有帽子)的关系是:

最大化  可以固定  ,求 ||w|| 的最小值或者固定 ||w||, 求  的最大值,一般选择前者: 固定函数间隔为 1, 将 \gamma = 1/||w|| 带入上式,同时为了计算方便, 目标函数等价于最小化 ||w||^2 ,约束优化问题转化为:

这是一个 QP 优化问题。

2. 对偶问题

利用拉格朗日乘子法将约束条件融入到目标函数:

SVM 的原始问题实际上是一个极小极大问题:

这个表达式有几个变量,先从哪一个着手?答案是  , 至于为什么,实际上是根据下面这个优化函数将原始问题的约束条件——函数间隔必须不小于 1 转化到拉格朗日乘子  向量上去的,先看函数的后面一部分:

很容易可以看出,如果样本点 xi 满足约束条件,即有 , 上式求最大,必定有 ,  alpha 与后面括号里面的式子必有一个为 0 (VI) 所有的样本点都满足约束条件,极小极大问题就转化为  , 如果有一个样本点不满足约束条件,alpha 值取无穷大,上式将取无穷大,显然是没有意义的。实际上,这段论述就说明了原始问题具有 KKT 强对偶条件,对于原始问题来说需要满足的 KKT 条件有哪些呢?

倒数两个条件是原始问题的条件,肯定成立。第一个条件是上面讨论过的条件:

  • 当样本不在支持向量上,alpha 一定等于 0, w 在不等式2的内部,这是一个松的约束,L 函数就等于 1/2||w||^2 , 取它的偏导为0就可以了。
  • 当样本点在支持向量上时, w 在不等式2的边界上,这是一个等式约束,这就和普通的拉格朗日等式约束相同,在最优点目标函数和约束条件函数的导数平行。用 wiki 的一张图来表示:

原始问题满足 KKT 条件,可以转化成一个最优解等价的对偶极大极小问题,先对极小部分求偏导:

得到对偶最优化问题:

对于一个新来的样本,将上面 w 的值带入 f(x) = w^T·x + b, 可以知道要判断新来的点,我们只需要计算它与训练点的内积即可,这是 kernel trick 的关键:

3. 软间隔

软间隔问题是应对 outliers 的一种方法。软间隔问题可以建立目标函数:

与硬间隔的优化方法相似,得到的解是:

4. Kernel Method

核方法是一种很巧妙的方法,既可以将特征映射到较高的维度,又可以地利用了 SVM 的内积运算避免了维度计算量的爆炸。最后的最优化问题与硬间隔优化问题相似,只要将两个样本的内积改为两个样本的核函数即可 (kernel substitution) :

当然,你也可以将两个样本的内积看做最简单的核函数。Kernel method 不仅可以用在 SVM 上,还可以用在 PCA、线性分类器上等,以后再专门写一篇 kernel method 的博客。

参考资料:

[1] pluskid 的博客

[2] 统计学习方法, 李航 著

转自 http://www.cnblogs.com/daniel-D/p/3237468.html

SVM 简要推导过程的更多相关文章

  1. 支持向量机SVM 简要推导过程

    SVM 是一块很大的内容,网上有写得非常精彩的博客.这篇博客目的不是详细阐述每一个理论和细节,而在于在不丢失重要推导步骤的条件下从宏观上把握 SVM 的思路. 1. 问题由来 SVM (支持向量机) ...

  2. [ML从入门到入门] 支持向量机:从SVM的推导过程到SMO的收敛性讨论

    前言 支持向量机(Support Vector Machine,SVM)在70年代由苏联人 Vladimir Vapnik 提出,主要用于处理二分类问题,也就是研究如何区分两类事物. 本文主要介绍支持 ...

  3. 线性可分SVM完全推导过程

  4. 五、SVM推导过程

    SVM 时间复杂度一般为O(N³) 最重要的是推导过程 NIPS(机器学习顶级会议) 如果给定一个训练集,我们的目标是给定一个边界(一条线),离他最近的训练集样本路越宽越好 下面的几张图反映了SVM的 ...

  5. 机器学习笔记4:SVM支持向量积的推导过程

    内容来自:https://github.com/GreedyAIAcademy/Machine-Learning 最初 支持向量机的目的:找到一条好的分割线 什么杨的分割线最好? 有最大间隔的分割线最 ...

  6. 线性SVM的推导

    线性SVM算法的一般过程 线性SVM的推导 超平面方程 SVM是用来分类的.给定一系列输入数据(n维向量),需要找到一个切分界线(n-1维的超平面),这里假定数据是线性可分的.比如,二维数据的超平面是 ...

  7. XGBoost 完整推导过程

    参考: 陈天奇-"XGBoost: A Scalable Tree Boosting System" Paper地址: <https://arxiv.org/abs/1603 ...

  8. SVM的推导和理解

    主要记录了SVM思想的理解,关键环节的推导过程,主要是作为准备面试的需要. 1.准备知识-点到直线距离 点\(x_0\)到超平面(直线)\(w^Tx+b=0\)的距离,可通过如下公式计算: \[ d ...

  9. BP神经网络推导过程详解

    BP算法是一种最有效的多层神经网络学习方法,其主要特点是信号前向传递,而误差后向传播,通过不断调节网络权重值,使得网络的最终输出与期望输出尽可能接近,以达到训练的目的. 一.多层神经网络结构及其描述 ...

随机推荐

  1. Oracle 增加修改删除字段与添加注释

    添加字段的语法:alter table tablename add (column datatype [default value][null/not null],….); 修改字段的语法:alter ...

  2. Spark Streaming源码解读之Receiver生成全生命周期彻底研究和思考

    本期内容 : Receiver启动的方式设想 Receiver启动源码彻底分析 多个输入源输入启动,Receiver启动失败,只要我们的集群存在就希望Receiver启动成功,运行过程中基于每个Tea ...

  3. JavaScript 对象 之继承对象 学习笔记

    假设,我们有个这样的需求: 两个种族,每个种族都有 名字.血量(默认200).行为(行为有 跳跃.移动速度 这些属性)等共有属性. 人族能量值比兽人多10%,兽人血量比人族多10%. 职业有战士和法师 ...

  4. 阿里巴巴分布式服务框架Dubbo介绍(1)主要特色

    引言 互联网服务和BS架构的传统企业软件相比,系统规模上产生了量级的差距.例如 传统BS企业内部门户只需要考虑数百人以及几千人的访问压力,而大型互联网服务有时需要考虑的是千万甚至上亿的用户: 传统企业 ...

  5. 借助取色工具ColorPix对Pycharm编辑器设定自己喜欢的代码颜色_20161202

    1.Pycharm编辑器怎么设定自己喜欢的颜色,前几天看爬虫博客,看博主贴出的代码颜色很是喜欢,如下图,设置了好多次找不到他设定的颜色. 2.下班回家想起来之前做表的时候用到过一个取色工具ColorP ...

  6. 为什么匿名内部类和局部内部类只能访问final变量

    因为虽然匿名内部类在方法的内部,但实际编译的时候,内部类编译成Outer.Inner,这说明内部类所处的位置和外部类中的方法处在同一个等级上,外部类中的方法中的变量或参数只是方法的局部变量,这些变量或 ...

  7. spark hive 结合处理 把多行变成多列

    原数据格式 : gid       id      score a1        1       90 a1        2      80 a1       3      79 a1       ...

  8. jquery实现页面动态切换的方法--toggleClass(className)

    $(function() { $(".A").click(function() { $(this).toggleClass("B"); }); }); 当点击带 ...

  9. nginx的特点

    1.热部署        我个人觉得这个很不错.在master管理进程与worker工作进程的分离设计,使的Nginx具有热部署的功能,那么在7×24小时不间断服务的前提下,升级Nginx的可执行文件 ...

  10. npoi实现 从固定的行读取数据作为表头并返回datable

    using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.D ...