【机器学习】支持向量机(SVM)



章节介绍

统计学领域名声赫赫的SVM核方法是时至今日仍在高频使用的经典算法。

笔记介绍

对本章各节知识点进行汇总,主要分为引入原因,原理思想,和一些思考,对于数学推导内容介绍较少,有需要的可以先阅读西瓜书,再参考南瓜书的数学推导。

数学知识

大部分都是规划类、最优化的问题,最好先进行相关知识的学习。

这里推荐一本书:最优化:建模、算法与理论 (刘浩洋 户将 李勇锋 文再文)

SVM-支持向量机

引入原因:

线性可分的条件下,我们在训练集做分类任务时,最基本的想法就是在样本空间中找到一个超平面进行划分,
但是对于分类任务,我们可以画出很多个超平面,这时候就需要引入损失函数,对超平面进行选择,而使得两个异类支持向量距离最大化,就是我们所说的支持向量机的基本型

在这里插入图片描述

数学公式及其原理:

仍用线性模型来表示一个超平面
w T x + b = 0 w ^ { T } x + b = 0 wTx+b=0
点到超平面的距离表示为:
参考点到直线距离公式即可理解
r = ∣ w T x + b ∣ ∣ ∣ w ∣ ∣ r = \frac { | w ^ { T } x + b | } { | | w | | } r=∣∣w∣∣wTx+b
两个异类支持向量到超平面的距离(称为间隔 margin)表示为:
参考平行直线间的距离公式即可理解
(此处分子为2的原因是假设正负类标记为+1与-1)
γ = 2 ∣ ∣ w ∣ ∣ \gamma = \frac { 2 } { | | w | | } γ=∣∣w∣∣2

在这里插入图片描述

我们的目标是使得间隔最大化,即意味着要取得 ∣ ∣ w ∣ ∣ | | w | | ∣∣w∣∣​最小化,也就是 ∣ ∣ w ∣ ∣ 2 | | w | | ^ { 2 } ∣∣w2​最小化
所以我们最终可以的到SVM基本型:
在这里插入图片描述

求解方法:

涉及到二次规划问题,使用拉格朗日乘子法解决问题,我们会得到基本型的“对偶问题

具体方法不做详解,此处仅做大概阐述:

  1. 在SVM基本型的每条约束上增加一个拉格朗日乘子a,得到新的函数
  2. 新函数对w和b分别求偏导=0,得到w和b关于a的表达式
  3. 将表达式回代入函数,就得到了仅依赖于a的函数,就将约束问题转化成无约束问题
  4. 此时使用梯度下降、牛顿法等无约束优化算法可得出a,回代表达式得出w和b,完成原本函数的求解

核函数

引入原因:

由于前面的讨论都是基于训练集是线性可分的假设
而对于非线性可分的数据集,我们就可以采用核方法将数据集变成线性可分

升维思想:

找到一个函数(即核函数)将非线性可分的数据映射为线性可分的数据

常用核函数:

下面给出常用核函数:

在这里插入图片描述

软间隔和正则化:

引入原因:

前面进行分类任务都是基于训练样本线性可分的假设
而实际应用中,训练集存在噪声 或 难以找到合适的核函数将数据转化为线性可分的数据
如果找到了核函数也很有可能这个线性可分的结果是因为模型过拟合造成的。

所以我们引入了软间隔Soft Magrin这个概念,即允许部分样本划分出错
而相应的,先前我们让所有样本正确分类就叫做硬间隔

正则化思想:

其实软间隔也就是一种正则化,通过对不希望的到的结果进行惩罚,使得优化过程趋向于希望目标。

支持向量回归

引入原因:

我们一开始引入SVM就是为了解决分类问题,而对于回归问题是否也能通过SVM解决呢?🤔

为了解决回归问题,我们引入了支持向量回归,简称SVR(Support Vector Regression)

方法思想:

损失函数方面,与传统的回归模型用预测和标记的差别计算损失不同

SVR容忍预测和标记之间存在偏差e,在偏差2e内都被判定为正确预测

  • 26
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值