SVM分类

目录

1.1  Logistic回归线性分类器

1.2 SVM概述:

1.3 深入SVM

1.3.1 对偶问题求解的三个步骤

1.3.2 核函数

1.3.3 使用松弛变量处理 outliers 方法


1.1  Logistic回归线性分类器

 

给定一个分类超平面将空间中的数据分为两类,分类超平面为:

                https://i-blog.csdnimg.cn/blog_migrate/fe26f4ab82f017bdb9061010fcbe3959.jpeg

使 得,

https://i-blog.csdnimg.cn/blog_migrate/d8a4be6614d6ebc09db2ec89a45d03d1.png

    其中x是n维特征向量,函数g就是logistic函数。

 https://i-blog.csdnimg.cn/blog_migrate/3679fe3a60bbdbb15f528a8f651e2524.png的图像是

https://i-blog.csdnimg.cn/blog_migrate/b4f43c5c5e56d0fbcc16e0e0577a13bf.png

    可以看到,将无穷映射到了(0,1)。

也可以对g(z)做一个简化,将其简单映射到y=-1和y=1上。映射关系如下:

https://i-blog.csdnimg.cn/blog_migrate/1edf77c3ca84b0ef7950fab23cf41bf3.png

一个简单的线性回归分类超平面为:

https://i-blog.csdnimg.cn/blog_migrate/f4136f1ea6019c480b94a177451c2b02.jpeg

1.2 SVM概述:

易知符合1.1的分类器有多个,SVM是要寻找最优的分类器。

https://i-blog.csdnimg.cn/blog_migrate/a04e5ca03bc77c8e6ccea92ac1f13f84.jpeg

定义函数间隔(用表示)为:https://i-blog.csdnimg.cn/blog_migrate/2fe897c929ac75057a1046ef5ce2fa81.jpeg

几何间隔https://i-blog.csdnimg.cn/blog_migrate/285d96f4d6619036da204bdf4e12d3f5.jpeghttps://i-blog.csdnimg.cn/blog_migrate/7cdd424c67a4fdd53b6bea9cbe76dc4a.jpeg

http://blog.pluskid.org/wp-content/uploads/2010/09/geometric_margin.png https://i-blog.csdnimg.cn/blog_migrate/ecf10ebffec17b38be9e15f940bae3fc.jpeg两边同乘W,https://i-blog.csdnimg.cn/blog_migrate/b3a5786d04709cb40ffc367f7d78791e.gif

https://i-blog.csdnimg.cn/blog_migrate/7cdd424c67a4fdd53b6bea9cbe76dc4a.jpeg,距离要取绝对值,乘y实现取绝对值:https://i-blog.csdnimg.cn/blog_migrate/285d96f4d6619036da204bdf4e12d3f5.jpeg

 

求最优超平面问题转化为约束优化为题:

Maxhttps://i-blog.csdnimg.cn/blog_migrate/285d96f4d6619036da204bdf4e12d3f5.jpeg,s.t, https://i-blog.csdnimg.cn/blog_migrate/398e3e23301d1e001d205669cac22fba.jpeg

将函数间隔取1,问题转化为:

https://i-blog.csdnimg.cn/blog_migrate/ea1527fd25dba5634147a06d268934be.jpeg

1.3 深入SVM

优化问题可进一步转化为:

https://i-blog.csdnimg.cn/blog_migrate/16becf06e98ce0a57a405d707f0c0ff7.jpeg

因为现在的目标函数是二次的,约束条件是线性的,所以它是一个凸二次规划问题。

根据拉格朗日对偶性,得到与原问题等价的对偶问题,将约束优化问题转化为无约束优化问题:

https://i-blog.csdnimg.cn/blog_migrate/b5028b57e2b99558109ef4b72e6243f8.jpeg

https://i-blog.csdnimg.cn/blog_migrate/f7a77562a2d65001b13b9893ce4821ea.jpeg

把最小和最大的位置交换一下,变成:

https://i-blog.csdnimg.cn/blog_migrate/408957dc4c48bb283a80af781acce4f8.jpeg

因为满足KKT条件所以有d*=p*

1.3.1 对偶问题求解的三个步骤

(1)、首先固定https://i-blog.csdnimg.cn/blog_migrate/fe70900b2dd6d367873a837e0cafaedb.jpeg要让 L 关于 w 和 b 最小化,我们分别对w,b求偏导数,即令 L/w L/b 等于零

https://i-blog.csdnimg.cn/blog_migrate/1011019b15f62f98677b7d63e87fbc48.jpeg

将以上结果代入之前的L: 

    得到:https://i-blog.csdnimg.cn/blog_migrate/ce6d86e5c23fbe27648c920d673018a1.png

https://i-blog.csdnimg.cn/blog_migrate/583683cba9508788f88b3bf1f439d87d.jpeg

(2)利用SMO算法求解对偶问题中的拉格朗日乘子https://i-blog.csdnimg.cn/blog_migrate/fe70900b2dd6d367873a837e0cafaedb.jpeg

https://i-blog.csdnimg.cn/blog_migrate/ff865a42f805f299c76d2cd587f2079e.jpeg

(3)求出了https://i-blog.csdnimg.cn/blog_migrate/db857af01cc8a15e0bdcd6f923ca87c9.jpeg,根据https://i-blog.csdnimg.cn/blog_migrate/3c7ff505da3ac403fef3ab8abea2c157.jpeg,即可求出w,然后通过https://i-blog.csdnimg.cn/blog_migrate/37b7a6d986ea431612795495bc5b3eb5.png,即可求出b,最终得出分离超平面和分类决策函数。

注意:所有非Supporting Vector 所对应的系数https://i-blog.csdnimg.cn/blog_migrate/f74e08bbad89bcc942fdcce801f958a9.jpeg都是等于零的,因此对于新点的内积计算实际上只要针对少量的“支持向量”而不是所有的训练数据即可。

Lagrange multiplier得到的目标函数:

https://i-blog.csdnimg.cn/blog_migrate/c0ae5fdc3189e4ef90926ce6aca55adc.jpeg

     注意到如果 xi 是支持向量的话,上式中红颜色的部分是等于 0 的(因为支持向量的 functional margin 等于 1 ),而对于非支持向量来说,functional margin 会大于 1 ,因此红颜色部分是大于零的,而又是非负的,为了满足最大化,必须等于 0 。这也就是这些非Supporting Vector 的点的局限性。 

1.3.2 核函数

对于一个数据点 x 进行分类,实际上是通过把 x 带入到https://i-blog.csdnimg.cn/blog_migrate/ead0bd6f42bd92ac05c56ddc8f9502fb.jpeg算出结果然后根据其正负号来进行类别划分的。而前面的推导中我们得到 

https://i-blog.csdnimg.cn/blog_migrate/cd131035827fdfa8885e2831fdd19964.jpeg

    因此分类函数为:

https://i-blog.csdnimg.cn/blog_migrate/d4418d12f4d8e5180212e55cde835bff.jpeg

我们目前求出的f函数还是一个超平面,只能处理线性情况,我们通过引入Kernel函数可以将其推广到非线性情况。

在线性不可分的情况下,支持向量机首先在低维空间中完成计算,然后通过核函数将输入空间映射到高维特征空间,最终在高维特征空间中构造出最优分离超平面,从而把平面上本身不好分的非线性数据分开。如图所示,一堆数据在二维空间无法划分,从而映射到三维空间里划分:

https://i-blog.csdnimg.cn/blog_migrate/92971c8efa5cbb0b4dfd3ad7a473cdd1.jpeg

在我们的分类函数中我们主要是计算内积<xi,x>.所以我们现在是要将x映射到高维空间,在高维空间中计算内积<>.核函数方法:是一种直接计算样本x在高维空间中内积的方法.所以有https://i-blog.csdnimg.cn/blog_migrate/b092d292a15a48fce0dea20033901d3f.jpeg(ϕ:X->F是从输入空间到高维特征空间的映射).

有如下线性不可分样本:

   https://i-blog.csdnimg.cn/blog_migrate/edfca018fbb772336862cb448f485ac4.png

显然样本的理想分类超平面为圆

圆方程可表示为https://i-blog.csdnimg.cn/blog_migrate/51119c95d49769fc97f0c497188cbf7d.jpeg

相等于将样本x映射到五维空间(X1,X12,X2,X22,X1X2),后再做分类超平面求解。而求解过程中我们又要计算内积,所以我们直接用一下方法计算高维空间的内积:

https://i-blog.csdnimg.cn/blog_migrate/c2c833330d286ebef989cb520db5d19e.jpeg

我们把这里的计算两个向量在隐式映射过后的空间中的内积的函数叫做核函数:

https://i-blog.csdnimg.cn/blog_migrate/d16f103701156748b2392f55937f0088.jpeg

注意:我们之前的计算中先算w,b,再算a。而后将他们带入原式,得到分类函数

https://i-blog.csdnimg.cn/blog_migrate/ead0bd6f42bd92ac05c56ddc8f9502fb.jpeg

https://i-blog.csdnimg.cn/blog_migrate/d4418d12f4d8e5180212e55cde835bff.jpeg

b的求解公式为https://i-blog.csdnimg.cn/blog_migrate/37b7a6d986ea431612795495bc5b3eb5.png,在整个过程中没有单独计算x。所以我们使用核函数代替内积计算不影响中间任何求解过程。

最终 http://blog.pluskid.org/MathJax/fonts/HTML-CSS/TeX/png/Math/Italic/141/03B1.png 由如下 dual 问题计算而得:

https://i-blog.csdnimg.cn/blog_migrate/64a73c4aa88ee9c95155aa7ef66ca45f.jpeg

然后再带入求得w,b。

核函数的精髓就是避开了直接在高维空间中进行计算,而结果却是等价的。

核函数的价值在于它虽然也是将特征进行从低维到高维的转换,但核函数绝就绝在它事先在低维上进行计算,而将实质上的分类效果表现在了高维上,也就如上文所说的避免了直接在高维空间中的复杂计算。

附:

高斯核https://i-blog.csdnimg.cn/blog_migrate/ba1d941bb376f9b40c86e09f1d9fe490.jpeg

 

1.3.3 使用松弛变量处理 outliers 方法

例如可能并不是因为数据本身是非线性结构的,而只是因为数据有噪音。对于这种偏离正常位置很远的数据点,我们称之为 outlier。outlier 的存在有可能造成很大的影响,

https://i-blog.csdnimg.cn/blog_migrate/c49ebf988aa58e04f710d655360b98f3.jpeg

考虑到outlier问题,约束条件由:

https://i-blog.csdnimg.cn/blog_migrate/874b26968d0b4b018889552752669398.jpeg

 变为:

https://i-blog.csdnimg.cn/blog_migrate/9423de8af6b44d8a1226bf2ca009b376.jpeg

其中https://i-blog.csdnimg.cn/blog_migrate/a6d5665d5fbef8c714758166de92c8c2.jpeg称为松弛变量,对应数据点https://i-blog.csdnimg.cn/blog_migrate/4efe26a7010f031b02310d42772cfde2.jpeg允许偏离的 functional margin 的量。

所以最终的约束优化问题为:

https://i-blog.csdnimg.cn/blog_migrate/bfde084990627638d56a357b5094ae4c.jpeg

    其中 http://blog.pluskid.org/MathJax/fonts/HTML-CSS/TeX/png/Math/Italic/141/0043.png 是一个参数,用于控制目标函数中两项(“寻找 margin 最大的超平面”和“保证数据点偏差量最小”)之间的权重。

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值