这是一个很有意思的问题,明白了这个问题就可以从直觉上理解SVM为什么会产生大间隔。普通的感知器不能产生大间隔(margin),而SVM可以,所以这两个肯定不是一个东西。

带margin的感知器可以通过两种手段产生大间隔:一种是早停,另一种是加正则化项。

加入了L2正则化项的带 margin的感知器就是SVM。

大家都知道,感知器是不能产生大间隔的,因为它只以分对为目的,不关心分界面离数据点有多远,从它的目标函数很容易看出来(这里直接搬了 @猪猪专业户 的公式),它公平对待每一个数据:

(1)

带margin的感知器是这样的,只改动了一个地方:

(2)

有没有发现,损失函数就是hinge loss,这个改进使得感知器具备了产生大间隔的潜质,因为hinge loss有一段平坦区,允许平坦区内的点被分错,这样就可以撑起来一个管道(类似于SVM)。

虽然带margin的感知器有了hinge loss,但是它依然不能产生大间隔,看下面这个目标函数:

(3)

目标函数(2)和(3)是等价的,因为把(2)的一个解

放大

倍就得到了(3)的一个解

。如果令

,我们就得到了任意大的函数间隔;如果令

,(3)就变成(1)了,函数间隔消失了。然而函数间隔不是我们想要的,几何间隔才是(几何间隔 = 函数间隔 / 模长)。

带margin的感知器可以通过增大权向量的模长而增大函数间隔,但是几何间隔却是不变的,这显然不是我们想要的。如果我们能限制模长的增长,就有可能获得大的几何间隔。而限制模长的方法有两个:早停和正则化。

先来看早停是如何产生大间隔的,如下图(来自[1]):

(a)是普通感知器得到的分界面,过拟合且没有产生大间隔;(b)(c)(d)分别是带margin的感知器迭代1, 10, 100个epoch之后得到的分类面,可以看出随着迭代次数的增多,间隔渐渐消失,具体的讲解可以看参考文献[1]。一种直觉而不太严谨的理解是:趁着权向量还没有来得及快速增大就停止学习。

除了早停,还有一种方法可以产生大间隔,那就是加入对权向量的L2正则化,限制模长的增长:

(4)

与(2)相比,(4)加入了对权向量模长的惩罚项,从而避免了产生像(2)一样的无意义的大函数间隔。

而(4)就是SVM。

所以,SVM可以视为对感知器的二阶改进:第一阶改进是加入了

获得hinge loss,从而具备了产生大间隔的潜质;第二阶改进是加入了权向量的L2正则化项,从而避免产生无意义的大函数间隔,而是产生大的几何间隔。

参考文献:

[1] Collobert R, Bengio S. Links between perceptrons, MLPs and SVMs[C]//Proceedings of the twenty-first international conference on Machine learning. ACM, 2004: 23.

向量机和感知机的相同和不同点_感知机(perceptron)和支持向量机(svm)是一种东西吗? 如果不是那他们的区别和关系是什么?...相关推荐

  1. matlab向量机保存模型,【2017年整理】基于Matlab的支持向量机工具箱.pdf

    [2017年整理]基于Matlab的支持向量机工具箱 第24卷第12期 计算机应用与软件 V01.24No.12 2007牟12月 and5dtware Dec.2007 ComputerApplic ...

  2. 【RVM预测】基于相关向量机RVM实现数据预测附matlab代码

    1 简介 目前常用的一些基本的故障诊断,故障预测方法都将大样本数据作为基础,但在实际问题中常常能得到的故障数据都属于小样本类型.传统的故障诊断,故障预测方法已不适于用来解决小样本类型的故障问题.相关向 ...

  3. 【视频】支持向量机SVM、支持向量回归SVR和R语言网格搜索超参数优化实例

    最近我们被客户要求撰写关于SVM的研究报告,包括一些图形和统计输出. 什么是支持向量机 (SVM)? 我们将从简单的理解 SVM 开始. [视频]支持向量机SVM.支持向量回归SVR和R语言网格搜索超 ...

  4. SVM-支持向量机原理详解与实践之一

    SVM-支持向量机原理详解与实践 前言 去年由于工作项目的需要实际运用到了SVM和ANN算法,也就是支持向量机和人工神经网络算法,主要是实现项目中的实时采集图片(工业高速摄像头采集)的图像识别的这一部 ...

  5. SVM-支持向量机原理详解与实践之四

    SVM-支持向量机原理详解与实践之三 SVM原理分析 核函数与核技巧 什么是核 什么是核,核其实就是一种特殊的函数,更确切的说是核技巧(Kernel trick),清楚的明白这一点很重要. 为什么说是 ...

  6. SVM-支持向量机原理详解与实践之三

    SVM-支持向量机原理详解与实践之二 SVM原理分析 以下内容接上篇. 拉格朗日对偶性(Largrange duality)深入分析 前面提到了支持向量机的凸优化问题中拉格朗日对偶性的重要性. 因为通 ...

  7. 超标量、超级流水线、超长指令字、向量机 SIMD

    1.超标量(Super Scalar)     将一条指令分成若干个周期处理以达到多条指令重叠处理,从而提高cpu部件利用 率的技术叫做标量流水技术.     超级标量是指cpu内一般能有多条流水线, ...

  8. python画反比例函数_反比例光滑支撑向量机

    1. 引言 2001年Lee等人通过对支撑向量机的深入研究引入光滑的概念,使用了sigmoid积分函数p(x,α)对无约束的支撑向量机模型SVM [1] 进行光滑化,得出了分类性能较好的光滑支撑向量机 ...

  9. Matlab:基于Matlab实现人工智能算法应用的简介(SVM支撑向量机GA遗传算法PSO粒子群优化算法)、案例应用之详细攻略

    Matlab:基于Matlab实现人工智能算法应用的简介(SVM支撑向量机&GA遗传算法&PSO粒子群优化算法).案例应用之详细攻略 目录 1.SVM算法使用案例 1.1.Libsvm ...

  10. 向量机SVM原理详解

    转自:http://www.blogjava.net/zhenandaci/category/31868.html (一)SVM的简介 支持向量机(Support Vector Machine)是Co ...

最新文章

  1. android SDK manager 无法获取更新版本列表【转载】
  2. when is extension component's resource bundle loaded
  3. linux资源使用统计指南,指南:工作量分析文档
  4. 系统架构设计师 - 信息安全技术
  5. maven构建java web项目(idea开发)
  6. rabbitmq消息重回队列
  7. 身为开发人员,这些数据库合知识不掌握不合适!
  8. ES5-String-indexOf/lastIndexOf
  9. zabbix--自动注册
  10. Python pip安装 win32com模块
  11. 2022年南京大学软件工程专硕考研初试第二411分上岸经验贴
  12. (转) Csrss进程剖析
  13. VUE源码解析(持续更新)
  14. 2022南理工软件工程专硕考研经验
  15. 安卓手机投屏到台式电脑非常简单,系统工具就成
  16. c盘找不到appdata
  17. 建模实训报告总结_模型实训心得体会
  18. 火车WiFi春天已到来?
  19. 【Office】Project2016 删除资源
  20. 用 SLF4j/ Logback打印日志

热门文章

  1. 好搜独立,三分天下成历史
  2. [转贴]RUP与XP的平衡之道
  3. 腾讯的bugly的更新和热更新
  4. echarts中国地图下钻到区
  5. ajax id sort,带有ajax更新的Jqueryui可排序列表
  6. PHPExcel 表格 行 合并
  7. 计算机科学技术名家讲座许进,论高校计算机科学与技术课程中存在的问题与改革方向.pdf...
  8. jk-fourm.php,JK车头灯与我的新年期望(已更新完毕)
  9. idea导入一个工程后只显示pom文件_P1搭建第一个springboot应用
  10. 多个so合并为一个so的思路