第三课 SVM(2)

1 线性可分的数据集

1.1 超平面

SVM的思想是找到最大间隔的分隔超平面。

在这里插入图片描述

在两个分类中,找到能够一条线,以最好地区分这两个分类。这样如果有了新的点,这条线也能很好地做出分类。
这样的线在高维样本中的时候就叫做超平面。

1.2 几何间隔与函数间隔

图中绿线h1效果不好,h2效果还行,h3效果最好。怎么区分效果好不好?
如果超平面 w . x + b = 0 w.x+b=0 w.x+b=0已经存在,那么样本点距离超平面的距离能够表示预测的确信程度。 ∣ w . x + b ∣ |w.x+b| w.x+b能够相对地表示点x距离超平面的距离。而 w . x + b w.x+b w.x+b的符号与标记y的符号是否一致表示分类是否正确。那么就可以用 y ( w . x + b ) y(w.x+b) y(w.x+b)表示分类的正确性和确信程度,这就是函数间隔。

函数间隔:超平面(w,b)关于样本点( x i x_i xi, y i y_i yi)样本点的函数间隔为: r i ^ = y i ( w . x i + b ) \hat{r_i}=y_i(w.x_i+b) ri^=yi(w.xi+b)
超平面(w,b)关于数据集T的函数间隔,为所有样本点的函数间隔的最小值: r ^ = m i n i = 1 , 2... N r i ^ \hat{r}=min_{i=1,2...N} \hat{r_i} r^=mini=1,2...Nri^

函数间隔的问题是如果成比例的改变w和b,例如改为2w+2b,超平面不变,函数间隔却变成了原来的两倍。如果规范化之后就会使得间隔是确定的。这时候函数间隔就变成了几何间隔。
几何间隔:对于给定数据集T和超平面(w,b),w是超平面的法向量,样本点( x i x_i xi, y i y_i yi)的几何间隔为: r i = y i w . x + b ∣ ∣ w ∣ ∣ r_i=y_i\dfrac{w.x+b}{||w||} ri=yiww.x+b
在这里插入图片描述

超平面(w,b)关于数据集T的几何间隔,为所有样本点的几何间隔的最小值: r = m i n i = 1 , 2... N r i r=min_{i=1,2...N} {r_i} r=mini=1,2...Nri

1.3 目标函数

目标函数:最大化几何间隔r: m a x r = m a x r ^ ∣ ∣ w ∣ ∣ max r=max\dfrac{\hat{r}}{||w||} maxr=maxwr^
s.t. y i ( w . x i + b ) > = r ^ , i = 1 , 2 , 3... N y_i(w.x_i+b)>=\hat{r},i=1,2,3...N yi(w.xi+b)>=r^,i=1,2,3...N
r ^ = 1 \hat{r}=1 r^=1(这里等于1,没有特别的含义,只是好计算,不影响结果),那么目标函数变为: m a x 1 ∣ ∣ w ∣ ∣ max\dfrac{1}{||w||} maxw1 m i n ∣ ∣ w ∣ ∣ min||w|| minw m i n 1 2 ∣ ∣ w ∣ ∣ 2 min\dfrac{1}{2}||w||^2 min21w2
s.t. y i ( w . x i + b ) > = r ^ , i = 1 , 2 , 3... N y_i(w.x_i+b)>=\hat{r},i=1,2,3...N yi(w.xi+b)>=r^,i=1,2,3...N

用拉格朗日乘子法:
L ( w , b , α ) = 1 2 ∣ ∣ w ∣ ∣ 2 − ∑ i = 1 N α i y i ( w . x i + b ) + ∑ i = 1 N α i L(w,b,\alpha)=\dfrac{1}{2}||w||^2-\sum_{i=1}^N\alpha_iy_i(w.x_i+b) + \sum_{i=1}^N\alpha_i L(w,b,α)=21w2i=1Nαiyi(w.xi+b)+i=1Nαi

分别对w、b、求导得到: w = ∑ i = 1 N α i y i x i w=\sum_{i=1}^N\alpha_iy_ix_i w=i=1Nαiyixi ∑ i = 1 N α i y i = 0 \sum_{i=1}^N\alpha_iy_i=0 i=1Nαiyi=0

这样代入上面的式子得到: L ( w , b , α ) = 1 2 ∑ i = 1 N ∑ j = 1 N α i α j y i y j ( x i . x j ) + ∑ i = 1 N α i L(w,b,\alpha)=\dfrac{1}{2}\sum_{i=1}^N\sum_{j=1}^N\alpha_i\alpha_jy_iy_j(x_i.x_j)+\sum_{i=1}^N\alpha_i L(w,b,α)=21i=1Nj=1Nαiαjyiyj(xi.xj)+i=1Nαi

1.4 支持向量

在线性可分情况下,训练数据集中的样本点中距离分离超平面最近的样本点称为支持向量

2 线性近似可分

训练样本中有一些点不满足函数间隔>=1的约束。
解决方法:是对每一个样本引入一个松弛变量 ϵ i > = 0 \epsilon_i>=0 ϵi>=0使得函数间隔大于等于1。约束条件变为: y i ( w . x i + b ) > = 1 − ϵ i y_i(w.x_i+b)>=1-\epsilon_i yi(w.xi+b)>=1ϵi
目标函数:min 1 2 ∣ ∣ w ∣ ∣ 2 + C ∑ i = 1 N ϵ i \dfrac{1}{2}||w||^2+C\sum_{i=1}^{N}\epsilon_i 21w2+Ci=1Nϵi
s.t. y i ( w . x i + b ) > 1 − ϵ i , i = 1 , 2 , 3... N y_i(w.x_i+b)>1-\epsilon_i, i=1,2,3...N yi(w.xi+b)>1ϵi,i=1,2,3...N
ϵ i > = 0 , i = 1 , 2 , 3... N \epsilon_i>=0, i=1,2,3...N ϵi>=0,i=1,2,3...N

拉格朗日函数变为: L ( w , b , α , μ ) = 1 2 ∣ ∣ w ∣ ∣ 2 + C ∑ i = 1 N ϵ i − ∑ i = 1 N α i ( y i ( w . x i + b ) − 1 + ϵ i ) + ∑ i = 1 N μ i ϵ i L(w,b,\alpha,\mu)=\dfrac{1}{2}||w||^2 +C\sum_{i=1}^{N}\epsilon_i -\sum_{i=1}^N\alpha_i(y_i(w.x_i+b) -1 +\epsilon_i ) + \sum_{i=1}^N\mu_i\epsilon_i L(w,b,α,μ)=21w2+Ci=1Nϵii=1Nαi(yi(w.xi+b)1+ϵi)+i=1Nμiϵi

经过求导替换得到: m i n L ( w , b , α , μ , ϵ ) = − 1 2 ∑ i = 1 N ∑ j = 1 N α i α j y i y j ( x i . x j ) + ∑ i = 1 N α i min L(w,b,\alpha,\mu,\epsilon)=-\dfrac{1}{2}\sum_{i=1}^N\sum_{j=1}^N\alpha_i\alpha_jy_iy_j(x_i.x_j)+\sum_{i=1}^N\alpha_i minL(w,b,α,μ,ϵ)=21i=1Nj=1Nαiαjyiyj(xi.xj)+i=1Nαi

3 非线性支持向量机与核函数

对于线性不可分的问题通过一个变换,将低纬度的非线性问题变换为高纬度的线性问题。通过变换后的线性问题求解原来的非线性问题。
核函数定义:设X是输入空间,H为特征空间,如果存在一个从X到H的映射, ϕ ( X ) : X − > H \phi(X):X->H ϕ(X):X>H,使得对所有的 x , z ∈ X x,z \in X x,zX,函数K(x,z)满足条件: K ( x , z ) = ϕ ( x ) ϕ ( z ) K(x,z)=\phi(x)\phi(z) K(x,z)=ϕ(x)ϕ(z),则称K(x,z)为核函数, ϕ ( x ) \phi(x) ϕ(x)为映射函数。
核函数技巧的核心是,只需要定义核函数,而不是定义映射函数。因为通常直接计算K(x,z)更容易,而计算 ϕ ( x ) ϕ ( z ) \phi(x)\phi(z) ϕ(x)ϕ(z)不容易,计算量还很大。

所以目标函数变为: L ( w , b , α , μ , ϵ ) = 1 2 ∑ i = 1 N ∑ j = 1 N α i α j y i y j K ( x i . x j ) − ∑ i = 1 N α i L(w,b,\alpha,\mu,\epsilon)=\dfrac{1}{2}\sum_{i=1}^N\sum_{j=1}^N\alpha_i\alpha_jy_iy_jK(x_i.x_j)-\sum_{i=1}^N\alpha_i L(w,b,α,μ,ϵ)=21i=1Nj=1NαiαjyiyjK(xi.xj)i=1Nαi

常用核函数为高斯核函数、多项式核函数。

三个类型讨论到后面使用SMO解决问题。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值