首页 > 其他分享 >详解支持向量机-硬间隔SVM-模型定义【白板推导系列笔记】

详解支持向量机-硬间隔SVM-模型定义【白板推导系列笔记】

时间:2022-10-16 10:03:20浏览次数:74  
标签:SVM limits text 白板 cdots 详解 mathop aligned omega

支撑向量机(SVM)算法在分类问题中有着重要地位,其主要思想是最大化两类之间的间隔。按照数据集的特点:

1.  线性可分问题,如之前的感知机算法处理的问题

2.  线性可分,只有一点点错误点,如感知机算法发展出来的 Pocket 算法处理的问题

3.  非线性问题,完全不可分,如在感知机问题发展出来的多层感知机和深度学习

作者:tsyw的个人空间_哔哩哔哩_bilibili

链接:支撑向量机 · 语雀 (yuque.com)

 

![[附件/Pasted image 20221001105442.png|400]]

假如数据是完全的线性可分的,那么学习到的模型可以称为硬间隔支持向量机。换个说法,硬间隔指的就是完全分类准确,不能存在分类错误的情况。软间隔,就是允许一定量的样本分类错误。

作者:[燕双嘤]

链接:机器学习:支持向量机(SVM)燕双嘤的博客-CSDN博客 支持向量机

 

这三种情况对于 SVM 分别有下面三种处理手段:

1.  hard-margin SVM

2.  soft-margin SVM

3.  kernel Method

作者:tsyw的个人空间_哔哩哔哩_bilibili

链接:支撑向量机 · 语雀 (yuque.com)

 

这里我们先谈硬间隔。在感知机算法中,如果两类线性可分,一般情况下,会存在无穷多条线。在SVM中,一个超平面,不仅能将数据正确分类,而且这个超平面到不同类之间距离最大

数据集为

$$

\left{(x_{i},y_{i})\right}{i=0}^{N},x{i}\in \mathbb{R}^{p},y_{i}\in \left{-1,1\right}

$$

该超平面可以被写作

$$

\omega^{T}x+b=0

$$

正确分类数据可表示为

$$

y_{i}(\omega^{T}x_{i}+b)>0,i=1,2,\cdots ,N

$$

因此,最大化数据到超平面的间隔就可以被表达为

$$

\left{\begin{aligned}&\max \text{margin}(\omega,b)\

&s.t.y_{i}(\omega^{T}x_{i}+b)>0.i=1,2,\cdots ,N\

&\begin{aligned} \text{margin}(\omega,b)&=\mathop{\text{min }}\limits_{\substack{\omega,b\x_{i},i=1,2,\cdots ,N}}\text{distance}(\omega,b,x_{i})\

&=\mathop{\text{min }}\limits_{\substack{\omega,b\x_{i},i=1,2,\cdots ,N}} \frac{1}{||\omega||}(\omega^{T}x_{i}+b)\end{aligned}

\end{aligned}\right.

$$

这里的margin是指数据集中离超平面最近的点到超平面的距离,因此,上式等价于

$$

\left{\begin{aligned}&\mathop{\text{max }}\limits_{\omega,b}\mathop{\text{min }}\limits_{x_{i}=1,2,\cdots,N} \frac{1}{||\omega||}y_{i}(\omega^{T}x_{i}+b)=\mathop{\text{max }}\limits_{\omega,b} \frac{1}{||\omega||}\mathop{\text{min }}\limits_{x_{i}=1,2,\cdots,N}y_{i}(\omega^{T}x_{i}+b)\

&s.t.y_{i}(\omega^{T}x_{i}+b)>0,i=1,2,\cdots ,N\end{aligned}\right.

$$

这里我们研究$\mathop{\text{min }}\limits_{x_{i}=1,2,\cdots,N}y_{i}(\omega^{T}+b)$。

由于$\omega^{T}x+b=0$和$a\omega^{T}x+ab=0,a \in \mathbb{R},a \ne 0$这两个超平面表示的是同一个超平面,因此我们假设

$$

\mathop{\text{min }}\limits_{x_{i}=1,2,\cdots,N}y_{i}(\omega^{T}x_{i}+b)=a,a \in \mathbb{R}

$$

令$\begin{aligned} \omega^{T}=\frac{\hat{\omega}^{T}}{a},b= \frac{\hat{b}}{a}\end{aligned}$,因此有

$$

\mathop{\text{min }}\limits_{x_{i}=1,2,\cdots,N}y_{i}(\hat{\omega}^{T}x_{i}+\hat{b})=1

$$

因此我们就可以在数据集线性可分的任何情况下,令$\mathop{\text{min }}\limits_{x_{i}=1,2,\cdots,N}y_{i}(\hat{\omega}^{T}x_{i}+\hat{b})=1$,因此最大化数据到超平面的间隔就可以被表达为

$$

\begin{aligned}

&\left{\begin{aligned}&\mathop{\text{max }}\limits_{\omega,b} \frac{1}{||\omega||}\&s.t.\min y_{i}(\omega^{T}x_{i}+b)=1,i=1,2,\cdots,N\&s.t.y_{i}(\omega^{T}x_{i}+b) >0,i=1,2,\cdots,N\end{aligned}\right.\

\Rightarrow &\left{\begin{aligned}&\mathop{\text{min }}\limits_{\omega,b} \frac{1}{2}\omega^{T}\omega\&s.t.y_{i}(\omega^{T}x_{i}+b)\geq 1,\underbrace{i=1,2,\cdots,N}_{N个约束}\end{aligned}\right.

\end{aligned}

$$

标签:SVM,limits,text,白板,cdots,详解,mathop,aligned,omega
From: https://blog.51cto.com/u_15767241/5760146

相关文章

  • RAID5 IO处理之重构代码详解
    1作用当阵列降级时,可以添加一块新盘进行重构,以恢复阵列的冗余。2发起重构可以通过以下命令md并发起重构:mdadm-C/dev/md0--force--run-l5-n3-c128K/dev/sd......
  • RAID5 IO处理之replace代码详解
    1作用从字面意思理解,replacement即是替换。我们知道硬盘都有一定的使用寿命,可以在硬盘失效之前通过该功能将就盘的数据迁移至新盘。因为replacement的流程是从旧盘中读出......
  • RAID5 IO处理之写请求代码详解
    我们知道RAID5一个条带上的数据是由N个数据块和1个校验块组成,其校验块由N个数据块通过异或运算得出,这样才能在任意一个成员磁盘失效时通过其他N个成员磁盘恢复出用户写入的......
  • RAID5 IO处理之条带读代码详解
    除了对齐读流程中读失败通过条带重试的场景会进入到条带读,当IO覆盖范围超过一个chunk时也会进入条带读(如向chunk为4K的RAID下发起始位置为1K大小为4K的IO),接下来我们就这部......
  • static 详解
    主要参考:C/C++中static的用法全局变量与局部变量其他参考:C语言中static的作用静态变量静态变量的作用:限定此变量的使用范围,并在限定访问内共享此变量,具体如下:函......
  • 153-《大数据架构师》Flink Task 部署、初始化和启动详解_ev
                                                     ......
  • 【算法】KNN、SVM算法详解!
    什么是KNN算法寻找未知分类数据的离它最近的n个已知数据,通过已知数据的分类来推断这个未知数据的分类KNN的原理步骤计算距离(常用欧几里得距离或马氏距离)升序排列(最近......
  • Python库-pandas详解
    1.pandas介绍 pandas是用于数据挖掘的Python库 便捷的数据处理能力独特的数据结构读取文件方便封装了matplotlib的画图和numpy的计算pandas的数据结构Ser......
  • 【数据库】oracle初学知识点详解!
    一、关系数据库基础(20)1.关系型数据库基本知识:关系模型以及模型的层次结构:数据库系统、数据库管理系统的基本概念及其基本组成;E-R图;关系数据库设计数据库系统的概念:数据库......
  • Linux文件系统与日志分析详解
    一、inode(索引节点/i节点)与block(块)1.inode与block的概念1.1什么是block?文件储存在硬盘上的,硬盘最小的存储单位叫“扇区”,每个扇区存储512个字节一般连续8个扇区会组......