SVM 推到期间 遇到的 表背景知识 (间隔最大化)
背景,在看原理的时候,发现很多地方一知半解的,补充如下。






其他补充:
注:以下的默认为2分类
1、SVM原理:
(1)输入空间到特征空间得映射
所谓输入空间即是输入样本集合,有部分情况输入空间与特征空间是相同得,有一部分情况二者是不同的,而模型定义都是定义到特征空间的,特征空间是指所有的输入特征向量,特征向量是利用数值来表示的n维向量,输入空间到特征空间的映射,也就是对所用的特征进行数值量化(本人这么理解),与概率中的随机变量是一样的形式,随机变量是由样本空间到实数集的映射,例如:抛硬币的样本空间是{正面,反面},映射到实数集便为{1,0}
(2)求得间隔最大化最优分离超平面
所谓分离超平面,即是能够将所有的特征向量划分为两类的平面或直线(特征有两个变为直线,多个变为平面,即几维的问题),比如二维的情况下,一条线,能够坐标系中的所有点划分为两类,最优意为可以将所有的点尽量进行正确的划分,间隔最大化意为:在两类区域中各自距离直线最近的点到直线的距离是最大的,因此可以求得唯一的间隔最大化最优分离超平面w*x+b*=0,由于是距离因此是由法向量和截距决定,w*为法向量,b*为截距,此处对这个方程进行解释:法向量是从点到平面的垂直方向,在几何中求平面的方程时,平面方程可以设为一般方程Ax+By+Cz+D=0,这便可以看作为(A,B,C)*(x,y,z)即w*=(A,B,C),特征向量x=(x,y,z),b*=D.同理在求直线直线可设为Ax+By+C=0,因此求超平面时即为求w*,b*.
(3)求分类决策函数
所谓分类决策函数只是一个符号函数f(x)=sign(w*x+b*),sign是一个符号函数,取输入值的符号(正负),在上边取得法向量和截距以后与输入特征向量运算后将结果带入sign()得到分类
2、基础概念
(1)函数间隔
上边已经说了是求到超平面的最近距离的点的距离最大的超平面,因此求距离是很重要的一步,根据点到平面的距离公式分子为|w*x+b|,由于分母是相同的,所以|w*x+b|可以相对的表示出距离的大小。y(向量)在此表示的是每个特征向量的分类,而由上边已经知道,分类决策是求的符号的,因此可以确定w*x+b与y的符号(相对应元素)是相同的,因此可以利用y(w*x+b)来表示分类的正确性和确信度,这就是函数间隔: 
注:超平面关于特征空间的函数间隔是值所有特征向量到超平面的函数间隔中的最小值

(2)几何间隔
利用函数间隔来具体衡量时,会出现一个问题,当法向量和截距同时扩大两倍时,超平面不变,但是函数间隔却便为原来的两倍,因此引入几何间隔的概念,其实简单的来说,几何间隔便是函数间隔除以法向量的模,具体公式如下:
同时由超平面关于特征空间的几何间隔是所有特征向量到超平面的几何间隔中的最小值

(3)支持向量
在线性可分的情况下,特征空间中距离分离超平面的距离最近的特征向量为支持向量
上面一段话来着:https://www.cnblogs.com/fantasy01/p/4633557.html
SVM 推到期间 遇到的 表背景知识 (间隔最大化)的更多相关文章
- {Python之线程} 一 背景知识 二 线程与进程的关系 三 线程的特点 四 线程的实际应用场景 五 内存中的线程 六 用户级线程和内核级线程(了解) 七 python与线程 八 Threading模块 九 锁 十 信号量 十一 事件Event 十二 条件Condition(了解) 十三 定时器
Python之线程 线程 本节目录 一 背景知识 二 线程与进程的关系 三 线程的特点 四 线程的实际应用场景 五 内存中的线程 六 用户级线程和内核级线程(了解) 七 python与线程 八 Thr ...
- SVM中的间隔最大化
参考链接: 1.https://blog.csdn.net/TaiJi1985/article/details/75087742 2.李航<统计学习方法>7.1节 线性可分支持向量机与硬间 ...
- Windows_Program_Via_C_Translate_Win32编程的背景知识/基础知识_包括基本输入输出机制介绍
Some Basic Background Story of The Win32 APIs Win32 API背景故事/背景知识 The Win32 application programming i ...
- Tomcat(一):背景知识和安装tomcat
Tomcat系列文章:http://www.cnblogs.com/f-ck-need-u/p/7576137.html 1. 基础背景知识 1.1 java和jdk概念 无论是何种程序,要能在计算机 ...
- jenkins X实践系列(1) —— 背景知识
本文介绍jenkins X(以下简称jx)相关的背景技术. jenkins X 简介 Jenkins X 是一个高度集成化的CI/CD平台,基于Jenkins和Kubernetes实现,旨在解决微服务 ...
- {Python之进程} 背景知识 什么是进程 进程调度 并发与并行 同步\异步\阻塞\非阻塞 进程的创建与结束 multiprocess模块 进程池和mutiprocess.Poll
Python之进程 进程 本节目录 一 背景知识 二 什么是进程 三 进程调度 四 并发与并行 五 同步\异步\阻塞\非阻塞 六 进程的创建与结束 七 multiprocess模块 八 进程池和mut ...
- [H5表单]一些html5表单知识及EventUtil对象完善
紧接着上面的文章,一开始准备一篇文章搞定,后来看到,要总结的东西还不少,干脆,把上面文章拆成两部分吧,这部分主要讲讲表单知识! 表单知识 1.Html5的autofocus属性. 有个这个属性,我们不 ...
- 『Python基础-1 』 编程语言Python的基础背景知识
#『Python基础-1 』 编程语言Python的基础背景知识 目录: 1.编程语言 1.1 什么是编程语言 1.2 编程语言的种类 1.3 常见的编程语言 1.4 编译型语言和解释型语言的对比 2 ...
- HTML5元素背景知识
目录 HTML5元素背景知识 语义与呈现分离 元素选用原则 少亦可为多 别误用元素 具体为佳,一以贯之 对用户不要想当然 元素说明体例 ol元素 元素速览 文档和元数据元素 文档和元数据元素 文本元素 ...
随机推荐
- 代理服务器polipo;socks5代理转http代理
安装: brew install polipo 使用: To have launchd start polipo now and restart at login: brew services sta ...
- 动态SQL(章节摘要)
1,使用动态SQL能够在依赖对象不存在时创建子程序. 2.动态SQL主要利用EXECUTE IMMEDIATE语句运行DML,DDL,DCL等语句操作. 3,假设使用了绑定变量,则必须在EXECUTE ...
- Oracle简单的备份和恢复-导出和导入(2)
ylbtech-Oracle:Oracle简单的备份和恢复-导出和导入(2) 简单的备份和恢复-导出和导入(2) 1. 用户导入导出文件中的一张表(emp)返回顶部 0.1, 我们在sql plus中 ...
- Emscripten教程之连接C++和JavaScript(三)
本文是Emscripten-WebAssembly专栏系列文章之一,更多文章请查看专栏.也可以去作者的博客阅读文章.欢迎加入Wasm和emscripten技术交流群,群聊号码:939206522. E ...
- JS实现异步编程的4种方法
一.回调函数 这是异步编程最基本的方法. 假定有两个函数f1和f2,后者等待前者的执行结果. f1(); f2(); //如果f1是一个很耗时的任务,可以考虑改写f1,把f2写成f1的回调函数. fu ...
- python3 特殊字符处理 \x06\x05\x07
最近在处理Excel文件中,报错:openpyxl.utils.exceptions.IllegalCharacterError, 原因是某字段出现特殊字符 \x05,\x06,\x07如下图: 在E ...
- Android -- Exif
Exif Exif是一种图像文件格式,它的数据存储于JPEG格式是完全相同的,实际上Exif格式就是JPEG格式头插入了数码照片的信息,包括拍摄的光圈.快门.平衡白.ISO.焦距.日期时间等各种和拍摄 ...
- 【Spark】开发Spark选择Java还是Scala?
Spark-Java-Scala-哪种语言 spark java 支持_百度搜索 (1 封私信)Spark 中用 Scala 和 java 开发有什么区别? - 知乎 (1 封私信)Spark平台下, ...
- Lucene的查询语法,JavaCC及QueryParser(1)
http://www.cnblogs.com/forfuture1978/archive/2010/05/08/1730200.html 一.Lucene的查询语法 Lucene所支持的查询语法可见h ...
- 【mybatis】多次查询缓存的问题
转自:http://cheng-xinwei.iteye.com/blog/2021700?utm_source=tuicool&utm_medium=referral 最近在使用mybati ...