day6 SVM支持向量机

6.1什么是支持向量机

一个二分类模型,寻找决策边界最宽的一个超平面将数据进行分割
解决问题的步骤:
*把所有样本和其对应的分类标记交给算法进行训练
*如果发现线性可分,那么直接找出超平面
*如果发现线性不可分,那么先进行映射到高维(接近无限高)再找超平面 事实上并没有映射只是将其计算结果映射到相应维度(因为得出的值是相同的)
*最后得到的超平面就是分类函数的表达式

在这里插入图片描述
显然第二个比第一个好一些

6.2 推导过程

6.2.1距离和目标函数

在这里插入图片描述
距离
有这样一个平面,如何求点X到该平面的距离呢?

求点到平面的距离,只要求点到点在方向量上的映射即可
设平面 w T X + b = 0 w^{T}X+b=0 wTX+b=0上有点X’ X’’ 可以求出向量
X ′ X ′ ′ ⃗ = ( X ′ ′ − X ′ ) \vec{{X'X''}}=(X''-X') XX =(XX)
w T X ′ = − b , w T X ′ ′ = − b w^{T}X' = -b,w^{T}X'' = -b wTX=b,wTX=b
则可以求出平面法向量 W T W^{T} WT
( w T ( x ′ ′ − x ′ ) ) = 0 \left(w^{T}(x''-x') \right)=0 (wT(xx))=0
距离表达式如下:
d = ∣ w T ∣ w ∣ ( X − X ′ ) ∣ = 1 ∣ w ∣ ∣ w T x + b ∣ d=\left|\frac {w^{T}}{|w|}(X-X') \right|=\frac {1}{|w|}|w^{T}x+b| d=wwT(XX)=w1wTx+b
目标
有这样的数据集:(X1,Y1)(X2,Y2)… (Xn,Yn)
Y为样本类别:
当X为正时 Y=+1
当Y为负时 Y=-1
决策方程为 y ( x ) = w T Φ ( x i ) + b y_(x)=w^{T}\Phi(x_i)+b y(x)=wTΦ(xi)+b

y ( x i ) &gt; 0 &lt; = &gt; y i = + 1 y_{(x_i)&gt;0} &lt;=&gt;y_{i}=+1 y(xi)>0<=>yi=+1
y ( x i ) &lt; 0 &lt; = &gt; y i = − 1 y_{(x_i)&lt;0} &lt;=&gt;y_{i}=-1 y(xi)<0<=>yi=1
推出 y i ∗ y ( x i ) &gt; 0 y_{i}*y_(x_i)&gt;0 yiy(xi)>0
优化目标
通俗的讲:找到一个条件(w和b),使得离该平面最近的点最远
点到直线的距离简化为:
y i ∗ ( w T Φ ( x i ) + b ) ∣ ∣ W ∣ ∣ \frac{y_{i}*(w^{T}\Phi(x_i)+b)}{||W||} Wyi(wTΦ(xi)+b)
则目标为
m a x { 1 ∣ ∣ W ∣ ∣ m i n { y i ∗ ( w T Φ ( x i ) + b ) } } max\lbrace\frac{1}{||W||}min\lbrace{y_{i}*(w^{T}\Phi(x_i)+b)}\rbrace\rbrace max{W1min{yi(wTΦ(xi)+b)}}
y ( i ) ∗ y ( x i ) &gt; 0 y_{(i)}*y_{(x_i)}&gt;0 y(i)y(xi)>0放缩变换得到:
y ( i ) ∗ y ( x i ) ≥ 1 y_{(i)}*y_{(x_i)}≥1 y(i)y(xi)1
y i ∗ ( w T Φ ( x i ) + b ) ≥ 1 y_{i}*(w^{T}\Phi(x_i)+b)≥1 yi(wTΦ(xi)+b)1
那么 y i ∗ ( w T Φ ( x i ) + b ) y_{i}*(w^{T}\Phi(x_i)+b) yi(wTΦ(xi)+b)的最小值为1
只需要考虑
m a x 1 ∣ ∣ W ∣ ∣ max\frac{1}{||W||} maxW1
约束条件
y i ∗ ( w T Φ ( x i ) + b ) ≥ 1 y_{i}*(w^{T}\Phi(x_i)+b)≥1 yi(wTΦ(xi)+b)1
然后将求极大值问题转化为求极小值问题
m i n w , b 1 2 w 2 min_{w,b}\frac{1}{2}w^2 minw,b21w2
然后使用拉格朗日乘子法求解

6.2.2使用拉格朗日乘子法解SVM

先转化

带约束的优化问题:
m i n x f 0 ( x ) min_{x} f_{0}(x) minxf0(x)
约束为
f i ( x ) ≤ 0 , i = 1 , . . . m f_i(x)≤0,i=1,...m fi(x)0,i=1,...m
h i ( x ) ≤ 0 , i = 1 , . . . q h_i(x)≤0,i=1,...q hi(x)0,i=1,...q
原式转化为:
m i n L ( x , λ , v ) = f ( x ) + ∑ i = 1 m λ i f i ( x ) + ∑ i = 1 q v i h i ( x ) min L_{(x,λ,v)}=f_{(x)}+\sum_{i=1}^{m}λ_{i}f_{i}(x)+\sum_{i=1}^{q}v_{i}h_{i}(x) minL(x,λ,v)=f(x)+i=1mλifi(x)+i=1qvihi(x)
套下这个式子那么咱们的式子为:
L ( w , b , a ) = 1 2 ∣ ∣ w ∣ ∣ 2 − ∑ i = 1 n α i ( y i ( w T ∗ Φ ( x i ) + b ) − 1 ) L(w,b,a)=\frac{1}{2}||w||^2-\sum_{i=1}^{n}α_i(y_i(w^T*Φ_{(x_i)+b})-1) L(w,b,a)=21w2i=1nαi(yi(wTΦ(xi)+b)1)
约束条件 y i ∗ ( w T Φ ( x i ) + b ) ≥ 1 y_{i}*(w^{T}\Phi(x_i)+b)≥1 yi(wTΦ(xi)+b)1

SVM求解

分别对w和b求偏导,分别得到两个条件(基于对偶性质)
m i n w , b m a x a L ( w , b , a ) = m a x a m i n w , b L ( w , b , a ) min_{w,b}max_{a}L_{(w,b,a)}=max_{a}min_{w,b}L_{(w,b,a)} minw,bmaxaL(w,b,a)=maxaminw,bL(w,b,a)
对w求偏导:
δ L δ W = 0 = &gt; w = ∑ i = 1 n α i y i Φ ( x n ) \frac{δL}{δW}=0 =&gt; w=\sum_{i=1}^{n}α_iy_iΦ_{(x_n)} δWδL=0=>w=i=1nαiyiΦ(xn)
对b求偏导: \frac{δL}{δW}=0 =>0=\sum_{i=1}^{n}α_iy_iKaTeX parse error: Can't use function '$' in math mode at position 9: 带入原始公式:$̲L(w,b,a)=\frac{…\frac{1}{2}*w{T}*w-wT\sum_{i=1}{n}α_iy_iΦ_{(x_i)}-b\sum_{i=1}{n}α_iy_i+\sum_{i=1}^{n}α_iKaTeX parse error: Can't use function '$' in math mode at position 2: $̲=\sum_{i=1}{n}α…min_α \frac{1}{2}\sum_{i=1}{n}\sum_{j=1}{n}α_iα_jy_iy_jΦ_(x_i)Φ_(y_i)-\sum_{i=1}^{n}Φ_i$$
条件:
∑ i = 1 n α i y i = 0 \sum_{i=1}^{n}α_iy_i=0 i=1nαiyi=0
α i ≥ 0 α_i≥0 αi0

6.2.3 SVM求解实例

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

6.3 软间隔

在这里插入图片描述
要使整体很小当C大时 ξ i ξ_i ξi就越小,则意味着不能容忍错误
在这里插入图片描述

6.4 低维不可分或者难分解时

需要映射到高维实际上并没有映射到高维,还是在低维计算将结果映射到高维
例如

在这里插入图片描述

6.7 高斯核函数

可以认为转化到一个无穷高的维度
k ( x , y ) = e x p − ∣ ∣ x − y ∣ ∣ 2 2 σ 2 k_{(x,y)}=exp{-\frac{||x-y||^2}{2σ^2}} k(x,y)=exp2σ2xy2

在这里插入图片描述

6.8 SVM的应用实践

别人写的,很好。点着个跳转。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值