在SVM中,增加安全的间距因子

那么增加了这个间距因子后,会出现什么样的结果呢,我们将C设置为很大(C=100000)

SVM决策边界

当我们将C设置得很大进,要想SVM的cost function最小,则要使蓝色框里面的term=0,即当y(i)=1时,θTx(i)>=1;当y(i)=0时,θTx(i)<=-1。这时我们的cost function就会变成上图右边所示(S.T.表示限制条件),在求解这个cost function的最小值的时候,我们会得到一个决策边界,这时我们的决策边界会是什么样子呢?

SVM决策边界: 线性可分的例子(直观上理解什么叫做大间距分类器)

上图中的正负例子,我们可以线性可分,如上图所示,绿色的线,粉红色的线,黑色的线都可以将其分开,但是黑色的线分开的表现是最好的,绿色、粉红都有一些不好。黑色的线与两个正负样本之间有大的间距(margin)。故SVM具有robustness(鲁棒性): 健壮和强壮的意思。即它努力用最大间距来分离样本

所以SVM也称为Large margin classifier(大间距分类器)

在求解上幅图中的cost function的最小值的时候,我们会得到类似于上面的这个决策边界,即努力用最大间距来分离样本,为什么会得到这个分类器将以后介绍。现在我们只是对SVM的large margin classifier有一个直观上的了解。

SVM是如何处理异常点的

我们可以从直观上看到SVM做为一个大间距分类器(当C非常大时),将画出黑色的决策边界线。当C非常大时,这时如果有一个异常正值点(上图左下角),这时SVM就会画出粉色的决策边界线,但是为了一个异常值将决策线从黑色改为粉色并不好,这里如果我们将C设置不那么大(not too large)时,SVM的决策边界线还是黑色的那条,不会受异常点而变动。

当C不是很大时,SVM在有异常值的情况下(如上图中的4个异常值)仍然可以将样本分离出来。

C=1/λ,当C很大时,即λ很少,即正则化参数很小,则趋向于画出过拟合的线;当C不是很大时,即λ有值,加入了正则化,泛化能力增强,不会为了一两个异常值而改变。

总结

  1. 当C很大时,我们从直观上理解SVM做为大间距分类器
  2. 当C不是很大时,SVM有较好的泛华能力,能适应异常值

SVM: 直观上理解大间距分类器的更多相关文章

  1. 吴恩达机器学习103:SVM之大间隔分类器的数学原理

    1.向量内积: (1)假设有u和v这两个二维向量:,接下来看一下u的转置乘以v的结果,u的转置乘以v也叫做向量u和向量v的内积,u是一个二维向量,可以将其在图上画出来,如下图所示向量u: 在横轴上它的 ...

  2. 对SVM的个人理解---浅显易懂

    原文:http://blog.csdn.net/arthur503/article/details/19966891 之前以为SVM很强大很神秘,自己了解了之后发现原理并不难,不过,“大师的功力在于将 ...

  3. SVM问题再理解与分析——我的角度

    SVM问题再理解与分析--我的角度 欢迎关注我的博客:http://www.cnblogs.com/xujianqing/ 支持向量机问题 问题先按照几何间隔最大化的原则引出他的问题为 上面的约束条件 ...

  4. 对SVM的个人理解

    对SVM的个人理解 之前以为SVM很强大很神秘,自己了解了之后发现原理并不难,不过,“大师的功力在于将idea使用数学定义它,使用物理描述它”,这一点在看SVM的数学部分的时候已经深刻的体会到了,最小 ...

  5. [吴恩达机器学习笔记]12支持向量机3SVM大间距分类的数学解释

    12.支持向量机 觉得有用的话,欢迎一起讨论相互学习~Follow Me 参考资料 斯坦福大学 2014 机器学习教程中文笔记 by 黄海广 12.3 大间距分类背后的数学原理- Mathematic ...

  6. 跟上节奏 大数据时代十大必备IT技能

    跟上节奏 大数据时代十大必备IT技能 新的想法诞生新的技术,从而造出许多新词,云计算.大数据.BYOD.社交媒体……在互联网时代,各种新词层出不穷,让人应接不暇.这些新的技术,这些新兴应用和对应的IT ...

  7. tp5+layui 实现上传大文件

    前言: 之前所写的文件上传类通常进行考虑的是文件的类型.大小是否符合要求条件.当上传大文件时就要考虑到php的配置和服务器的配置问题.之前简单的觉得只要将php.ini中的表单上传的 大小,单脚本执行 ...

  8. Java内存映射,上G大文件轻松处理

    内存映射文件(Memory-mapped File),指的是将一段虚拟内存逐字节映射于一个文件,使得应用程序处理文件如同访问主内存(但在真正使用到这些数据前却不会消耗物理内存,也不会有读写磁盘的操作) ...

  9. Web上传大文件的解决方案

    需求:项目要支持大文件上传功能,经过讨论,初步将文件上传大小控制在500M内,因此自己需要在项目中进行文件上传部分的调整和配置,自己将大小都以501M来进行限制. 第一步: 前端修改 由于项目使用的是 ...

随机推荐

  1. mac远程连接linux 服务器桌面by VNC

    为了远程使用Linux服务器,折腾了一个下午.最终看来还是用vnc最简单了. 实验室有两台强劲的Linux服务器用来做研究.之前我一直都是用ssh登到服务器上去码代码,反应速度很快,感觉很不错.但是因 ...

  2. unexpected end of file while looking for precompiled headerdirective Add directive to 'stdafx.h' or rebuild precompiled header错误

    解决方式: 项目工程右键->propertity(属性),选择不用于预编译头 原因: C++的编译过程如下: 当头文件很多时,预编译过程需要耗费大量时间,为了减少重复编译的次数,C和C++提供了 ...

  3. TZOJ5255: C++实验:三角形面积

    #include<iostream> #include<iomanip> #include<math.h> #include<cmath> using ...

  4. xorm -Exist方法实例

    判断某个记录是否存在可以使用Exist, 相比Get,Exist性能更好. package main import ( "fmt" _ "github.com/go-sq ...

  5. 函数内部声明变量的时候,一定要使用var命令。如果不用的话,你实际上声明了一个全局变量!闭包访问局部变量

    函数内部声明变量的时候,一定要使用var命令.如果不用的话,你实际上声明了一个全局变量! function f1(){ n=999; } f1(); alert(n); 子函数可以一层一层读取到父元素 ...

  6. tkinter python(图形开发界面) 转自:渔单渠

    Tkinter模块("Tk 接口")是Python的标准Tk GUI工具包的接口.Tk和Tkinter可以在大多数的Unix平台下使用,同样可以应用在Windows和Macinto ...

  7. golang--获取进程ID(windows)

    package main import ( "fmt" "strconv" "syscall" "unsafe" ) t ...

  8. 5.href和src区别? title和alt【CSS】

    1.href (Hypertext Reference)指定网络资源的位置(超文本引用),从而在当前元素或者当前文档和由当前属性定义的需要的锚点或资源之间定义一个链接或者关系,在 link和a 等元素 ...

  9. 解决点击空<a>标签返回页面顶部的问题

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  10. 深入理解React 组件状态(State)

    React 的核心思想是组件化的思想,应用由组件搭建而成,而组件中最重要的概念是State(状态),State是一个组件的UI数据模型,是组件渲染时的数据依据. 一. 如何定义State 定义一个合适 ...