机器学习--分类算法--SVM算法理论

本文深入探讨了支持向量机(SVM)算法,从算法概述到理论细节。主要内容包括:SVM的核心思想,线性可分与线性不可分情况下的SVM,以及SVM的软间隔模型。重点讲解了支持向量、间隔和超平面的概念,并介绍了SMO算法在求解SVM中的应用。

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

目录

一 算法概述

1 点到超平面的几何距离公式

2 算法核心思想

3 算法中几个重要概念

1)线性可分

2)线性不可分

3)间隔

4)划分超平面

5)支持向量

二 算法理论

1 线性可分SVM

1)硬间隔SVM算法流程

2)软间隔SVM算法流程

2 线性不可分SVM

1)线性不可分SVM的核心思想

2)核函数

3)线性不可分SVM算法流程(SVM软间隔模型)

3 SVR(不推荐使用)

三 SMO算法


一 算法概述

1 点到超平面的几何距离公式

(x_{0},y_{0})\underset{distance}{\rightarrow }y=w^Tx+b\Rightarrow distance=\frac{|w^Tx_{0}+b|}{||w||_{2}}

注意:分母为点到超平面的函数距离

2 算法核心思想

  • 第一点:在数据中找到一个超平面,让尽可能多的数据分布在超平面两侧
  • 第二点:距离超平面比较近的点近可能的远离这个超平面

注意:第一点感知器模型也可以做到,但是第二点才是SVM算法的最核心思想

3 算法中几个重要概念

1)线性可分

可以在数据中找到一个超平面将尽可能多的数据二元分开(目标属性标记+1或者-1)

2)线性不可分

无法在数据中找到一个超平面将尽可能多的数据二元分开

注意:但是可以通过低维映射高维空间,使之成为线性可分

3)间隔

样本距离超平面的距离

4)划分超平面

将数据划分开的超平面

5)支持向量

一般认为是距离超平面最近的样本(默认函数距离为1)

二 算法理论

1 线性可分SVM

1)硬间隔SVM算法流程

注意:硬间隔要求样本到分割超平面的函数距离大于等于1,对于异常数据很敏感

第一步:假定条件(超平面、支持向量、支持向量距离)

  • 第一点:超平面

y=w^{T}x+b

  • 第二点:支持向量

\left \{ x|w^{T}x+b=\pm 1 \right \}

  • 第三点:支持向量的间隔

\frac{|w^{T}x+b|}{||w||_{2}}=\frac{1}{||w||_{2}}

第二步:目标函数

\left\{\begin{matrix} max(\frac{1}{||w||_{2}})\\s.t.y^{(i)}(w^{T}x^{(i)}+b)\geq 1,i=1,2,...,m \end{matrix}\right.\Rightarrow\left\{\begin{matrix} min(\frac{1}{2}||w||\tfrac{2}{2})\\s.t.1-y^{(i)}(w^{T}x^{(i)}+b)\leq 0,i=1,2,...,m \end{matrix}\right.

第三步:对于有条件约束的目标函数采用泛拉格朗日乘子法进行凸优化

  • 第一点:构建泛拉格朗日函数(泛拉格朗日乘子\beta\geq 0),并将原始问题转化为对偶问题

L(w,b,\beta )=\underset{w,b,\beta }{\arg min}\left \{ \frac{1}{2}||w||^{2}_{2}+\sum_{i=1}^{m}\beta_{i}(1-y^{(i)}(w^{T}x^{(i)}+b)) \right \}

\underset{w,b,\beta}{\arg min}(L(w,b,\beta ))\Leftrightarrow \underset{w,b}{min}\left \{ \underset{\beta}{ max}L(w,b,\beta) \right \}\Leftrightarrow \underset{\beta}{max}\left \{\underset{w,b}{ min}L(w,b,\beta) \right \}

  • 第二点:L(\beta )

L(\beta )=\underset{w,b}{min}\left \{ L(w,b,\beta) \right \}

\frac{\partial L(w,b,\beta)}{\partial w}=w-\sum _{i=1}^{m}\beta_{i}y^{(i)}x^{(i)}=0\Rightarrow w^{*}=\sum_{i=1}^{m}\beta_{i}y^{(i)}x^{(i)}

\frac{\partial L(w,b,\beta)}{\partial b}=-\sum _{i=1}^{m}\beta_{i}y^{(i)}=0\Rightarrow \sum _{i=1}^{m}\beta_{i}y^{(i)}=0

L(\beta )=\underset{w,b}{min}\left \{ L(w,b,\beta) \right \}=\underset{w,b}{min}\left \{ \frac{1}{2}w^{T}w-\sum_{i=1}^{m}\beta_{i}y^{(i)}w^{T}x^{(i)}-\sum_{i=1}^{m}\beta_{i}y^{(i)}b+\sum_{i=1}^{m}\beta_{i} \right \}

=\underset{w,b}{min}\left \{ \frac{1}{2}w^{T}w-w^{T}\sum_{i=1}^{m}\beta_{i}y^{(i)}x^{(i)}-b\sum_{i=1}^{m}\beta_{i}y^{(i)}+\sum_{i=1}^{m}\beta_{i} \right \}

=\underset{w,b}{min}\left \{ \frac{1}{2}w^{T}\sum_{i=1}^{m}\beta_{i}y^{(i)}x^{(i)}-w^{T}\sum_{i=1}^{m}\beta_{i}y^{(i)}x^{(i)}-b\sum_{i=1}^{m}\beta_{i}y^{(i)}+\sum_{i=1}^{m}\beta_{i} \right \}

=\underset{w,b}{min}\left \{ -\frac{1}{2}w^{T}\sum_{i=1}^{m}\beta_{i}y^{(i)}x^{(i)}+\sum_{i=1}^{m}\beta_{i} \right \}

=\underset{w,b}{min}\left \{ -\frac{1}{2}w^{T}\sum_{i=1}^{m}\beta_{i}y^{(i)}x^{(i)}w^{T}+\sum_{i=1}^{m}\beta_{i} \right \}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值