SVM浅显理解

本文介绍了支持向量机(SVM)的基本概念,包括线性可分、线性和非线性支持向量机。线性可分SVM通过硬间隔最大化实现,线性SVM引入软间隔处理不可分样本,非线性SVM利用核技巧处理非线性问题。博客详细讲解了各个类型的SVM的优化目标和模型构建,并给出了简单的代码示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

0. 前言

  最近在学习一些机器学习的知识,看的书主要是李航的《统计学习方法》。看到了支持向量机这一章,花了不少时间,把一些基础知识掌握了。写一篇博客记录一下我的理解。
  首先支持向量机有三种分类,分别是线性可分支持向量机、线性支持向量机以及非线性支持向量机。后面的类型比前面的复杂,用到的技术也是逐渐增加。线性可分SVM用到了硬间隔最大化,线性SVM则用到条件松一些的软间隔最大化,非线性SVM则用到核技巧以及软间隔最大化。

1. 线性可分支持向量机

  我们先看最简单的线性可分SVM。首先我们需要知道了解两个定义:函数间隔以及几何间隔。
  函数间隔的定义:
在这里插入图片描述
其中y代表分类是否正确,wx+b代表分类预测的置信度。函数间隔越小,说明样本跟超平面越接近。
  几何间隔的定义:
在这里插入图片描述
  几何间隔就是我们平时理解的点到直线的距离(二维情况下)。
  需要注意的两个点(后面都会用到)是:

  1. 函数间隔可以随着w跟b的倍数增加而增加,取了两倍、三倍的w跟b,超平面是不变的,但是函数间隔会变成原来的两倍、三倍。
  2. 函数间隔跟几何间隔的关系是差了一个1∥w∥\frac{1}{\left \| w \right \|}w1

  接下来进行建模,优化问题写成如下的样子:
在这里插入图片描述
  这个公式的意思可以这样理解:所有样本点中,会有一个离超平面最近的点,这个最近的距离就是γ\gammaγ,其他所有距离都会大于这个数,这就是约束条件。同时我们想要把这个最近的距离尽可能地放大(这就是间隔最大化)。
  然后我们用函数间隔跟几何间隔的关系(上面第二点),把γ\gammaγ换成γ^\widehat{\gamma }γ
在这里插入图片描述
  然后我们取γ^\widehat{\gamma }γ 为1,方便后面计算。为什么可以这样做呢,就是上面的第一点,函数间隔是可以变化的,你可以通过调整w,b的倍数把函数间隔调整到某一个数,因此γ^\widehat{\gamma }γ 可以是任意一个数。
  其次把问题转化一下,最大化1∥w∥\frac{1}{\left \| w \right \|}w1转化成最小化12∥w∥2\frac{1}{2}\left \| w \right \|^{2}21w2,这个证明我没去看过,但是也很容易理解,我们可以把两个函数画出来,就可以看出两个问题是一样的。于是优化问题变成这个样子。
  这是一个凸二次优化问题,化成这个样子可以方便优化,前人已经总结了专门一套方法来对付这个问题,只要你能化成这个样子,总是可以求出一个最好的解。不过这里面涉及到最优化的知识,我对这方面了解也不是很深入,所以书里提到通过对偶算法去优化这部分我就不写了。

2. 线性不可分支持向量机

  接下来就看一下线性SVM,用到的知识是软间隔最大化。
  刚才的线性可分SVM并不能处理特异点。特意点就是下图这种,你无法找出一条线把所有样本点准确分出来,就算找到一个

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值