支持向量积【SVM】
支持向量积根据数据的情况分为三种。如果数据是线性可分的,则用线性可分支持向量积。如果数据是近似线性可分的,则用线性支持向量积。如果数据是不可分的,则用非线性支持向量积。
一、线性可分支持向量积
1.1 线性可分模型的定义
线性可分支持向量积的数据是线性可分,如下图所示,存在一个超平面能将数据完全分开。
而支持向量积训练的目的就是找到一个超平面能将上述的数据分开,但是能将数据分开的超平面有很多条,如下图所示,L1和L2都能将数据分开,但是那一个超平面会更好呢,显然是L1更好。因为对于L2稍微有点数据波动,分类就会出现错误。
那么如何将上述评判超平面好坏的标准写成数学表达式呢?我们首先想到的就是距离公式,如果一个点离直线越远则他的距离值就越大,离直线越近则距离值越小。用距离公式来表示到直线的距离,会损失他在直线上方还是直线下方的信息,所以要去掉绝对值,利用这个公式来表示到直线的距离,如果y>0,并且wx+b的输出结果大于0,这个表示的是点到直线的距离,同时包含了类别信息。
我们有n个数据点,那么就有n个距离,其中有一个最小的距离,确定一个w,b就会产生一个最小距离,我们就是找到那个最小的距离让它最大化(要在分类正确的情况下)定义如下:
上面的式子只是最初的定义,并不好优化,需要对上面的式子进行优化,首先 >0则一定存在一个最小值r,那么下面的式子可以转化为:
上面||w||由于和i无关,所以把它移项到前面,我们可以通过改变W的值,比如同时扩大2倍,同时缩小2倍,这样并不改变等式。改变w的值让r=1,整个式子变为下图左侧式子:
通常优化问题都是最小值问题,所以将其转化为最小化问题,为了求导方便在前面加了系数1/2。如上图右侧所示:
模型定义如下:
1.2 线性可分模型的求解
求解上面的模型可以分为四个步骤:
1>将有约束问题转化为无约束问题
下面是对式子等价的一个理性判断,不想了解的可以跳过这里
2>将原问题转化为对偶问题
下面是对偶问题的一些理解:
是弱对偶条件。
是强对偶条件。
通俗一点理解这个对偶关系就是:
在一堆高个子里找一个最矮的 会比
在一堆矮个子里找最高的 高
3>求解对偶问题
4>根据KKT得到最后的解
上面KKT条件的第二个条件, λ(1-y(wx+b))=0为松弛互补条件,当1-y(wx+b)为0的时候,λ可以为任意值,当它不为零的时候,λ一定为零,λ和1-y(wx+b)其中有一项一定为0,这也就是支持向量积中支持向量的来源。
1.3 线性可分模型算法步骤
二、线性支持向量积
线性支持向量积允许有一点点错误,所以优化的时候要考虑分类错误的情况,线性支持向量积定义如下:
推荐大家阅读这些材料,上面的推导是白板推导的笔记。
1>机器学习-白板推导-支持向量积:https://www.bilibili.com/video/av28186618/?p=3
2>pluskid支持向量积博客:http://blog.pluskid.org/?page_id=683
3>林轩田的机器学习技法:https://www.bilibili.com/video/av36760800/?p=3
4>李航-统计机器学习-第二版
支持向量积【SVM】相关推荐
- 人工智能与大数据——支持向量积SVM
一,支持向量积在分类中的作用 1,定义:找到一个超平面,使其产生一个将数据分类的最大间距 2,什么是支持向量 每一个点为一个向量,支持分界线的点为支持向量. 3,支持向量机与逻辑回归的损失函数 (1) ...
- 一文读懂支持向量积核函数(附公式)
来源:jerrylead 本文长度为1783字,建议阅读4分钟 本文通过多个例子为你介绍支持向量积核函数,助你更好地理解. 核函数(Kernels) 考虑我们最初在"线性回归"中提 ...
- svm分类器训练详细步骤_「五分钟机器学习」向量支持机SVM——学霸中的战斗机...
大家好,我是爱讲故事的某某某. 欢迎来到今天的[五分钟机器学习]专栏内容 --<向量支持机SVM> 今天的内容将详细介绍SVM这个算法的训练过程以及他的主要优缺点,还没有看过的小伙伴欢迎去 ...
- 西瓜书SVM支持向量积--超平面的基础知识
一.法向量恒垂直于超平面 为什么超平面的法向量恒垂直于超平面呢?我们先来看一下超平面方程: w T x + b = 0 w^Tx+b=0 wTx+b=0 这是多维的超平面方程,先来研究个简单的,在二维 ...
- 机器学习实战--5.支持向量积
1支持向量机(Support Vector Machine,SVM) (1)是一种二分类模型,它的目的是寻找一个超平面来对样本进行分割,分割的原则是间隔最大化,最终转化为一个凸二次规划问题来求解.由简 ...
- SVM -支持向量机原理与实践之实践篇
SVM -支持向量机原理与实践之实践篇 前言 最近太忙,这几天还是抽空完成实践篇,毕竟所有理论都是为实践服务的,上一篇花了很大篇幅从小白的角度详细的分析了SVM支持向量积的原理,当然还有很多内容没有涉 ...
- 系统学习机器学习之SVM(三)--Liblinear,LibSVM使用整理,总结
1.Libsvm与Liblinear区别,简单源码剖析. http://blog.csdn.net/zhzhl202/article/details/7438160 http://blog.csdn. ...
- SVM支持向量机、BP神经网络
SVM支持向量机 [[五分钟机器学习]向量支持机SVM--学霸中的战斗机-哔哩哔哩] [机器学习-白板推导系列(六)-支持向量机SVM(Support Vector Machine)-哔哩哔哩] BP ...
- 行人检测HOG+SVM:综述、INRIADATA数据集、线性SVM
目录 1. 行人检测算法研究综述 2. 基于机器学习的方法:人工特征+分类器 2.1 HOG+SVM 2.2 HOG+Adaboost 2.3 ICF+AdaBoost 2.4 DPM+ latent ...
- OpenCL 2.0 规范 – SVM共享虚拟内存
OpenCL2.0规范相对于1.2版本做出了重大改进,使得一个异构系统中各个硬件之间增强了通信与协作能力.在接下来的系列文章中,将着重讲解OpenCL2.0的新特性,探究其重要性以及对开发.性能等方面 ...
最新文章
- 第十六届智能车竞赛室内视觉AI组别靶标使用说明
- 【iOS-cocos2d-X 游戏开发之四】Cocos2dX创建Android NDK新项目并编译导入Eclipse中正常运行!...
- flume1.8 开发指南学习感悟
- 『PPYOLO tiny尝鲜』基于PaddleDetection的人脸疲劳检测
- 【kafka】kafka InstanceAlreadyExists jmx consumer addMBean registerAppInfo AppInfoParser
- GDI+ 中发生一般性错误(在 OutputStream 中保存 PNG 格式图像时遇到的问题)
- pom中导入spingside包
- SQL数据库基础练习题及答案
- CronTrigger 示例 1
- 处理团队人际关系的九大原则
- 闭关的日子 好无聊。偷了半日闲去书店shopping一下
- telnet控制路由器交换机与微信公众平台
- 艾美捷重组蛋白酶K,无动物源/AF化学性质介绍
- 红米note4出厂系统版本_红米Note4官方出厂rom系统刷机包_升级包降级包回退包下载...
- CCTV与西方媒体的区别!句句发人深思...^^
- 第四次网页前端学习笔记(css)
- codeforces B. Calendar 解题报告
- 科技爱好者周刊:第 70 期
- Android学习第三天 创建demo 电话拨号器
- Object isExtensible()方法
热门文章
- windows中office无法使用撤销键
- -XX:SurvivorRatio 命令解释
- 浅层神经网络和深层神经网络介绍
- 专升本高等数学考试知识点汇总(二)
- 线性代数【13】基,基本向量、坐标系的构建和线性生成空间SPAN (向量线性相关)
- PLC基础知识(PLC入门必看)
- mysql连接失败问题
- google hacking 搜索技巧
- 华为全球发布AI-Native数据库;微信公众号功能升级,一次可改20个错字;腾讯天幕:“3+2+N”助力政企云网络安全治理……...
- 行人重识别论文阅读12-Bi-directional Exponential Angular Triplet Loss for RGB-Infrared Person ReID