您的位置:首页 > 其它

≪统计学习精要(The Elements of Statistical Learning)≫课堂笔记(十九):SVM

2016-11-28 10:09 453 查看
支持向量机——最大边距方法

前言:这节课我人在北京,只能回来之后抄一下笔记,然后对着书和wiki理解一下....有什么错误还请大家及时指出。

------------------------------

1. 背景

问题:两类分类问题
数据:有标识、有监督D={(xi,yi)∣xi∈Rp,yi∈{−1,1}}ni=1

模型:f(x)=sign(wx+b)

,线性模型
准则:最大边距

先说一下个人理解的SVM的直觉。下图来自wiki。二次元中的SVM就是想找到一条直线(或者对应高维空间下的超平面)来尽可能的分割开两组数据。比如图中H3和H2这两条直线虽然都可以分开这两组数据,但是显然H3离两组数据都远一些——这就是SVM遵循的最大边距准则。





而在实践中,我们把二类分类分别作为正负1,所以两条距离该分割线平行距离1的直线就应景而生。在这两条直线上的点我们称之为支持向量(SV)。

2. 线性可分时的SVM

1) 线性可分:存在w,b

使得yi=1,yi=−1,wx+b>0wx+b<0⇒wx+b=0
为分割超平面。

2) 一个点到超平面wx+b=0

的距离:

d(x|w,b)=⎧⎩⎨wx+b∥w∥−wx+b∥w∥,y=+1,y=−1

⇒=y(wx+b)∥w∥
3) 分割超平面的正则表示

数据集到某个超平面的距离d(D|w,b)=mind(i|w,b)=miniyi(wxi+b)∥w∥

。将y(wx+b)≥1标准化,则yi(wxi+b)∥w∥≥1∥w∥


4) 最大边距准则
maxw,bd(D|w,b)

5) 线性可分时的SVM

max1∥w∥

s.t.y(wxi+b)≥1

等同于

min12∥w∥2

s.t.y(wxi+b)≥1

这样就有了一个sign分类器。

6) support vector:分离超平面落在隔离带的边缘,满足yi(wxi+b)=1

的xi
被称为SV。

7) 优点:

对测试误差错识小
稀疏性
自然直观
有效
有理论深度(这话的意思是,又可以造出来一堆论文了么?)

3.一般的(线性)SVM

不满足约束的时候,可以做一些放松——引入ξi≥0

作为松弛变量。

这样原来的最优化问题就变成

min12∥w∥2+C∑iξi

s.t.yi(wi+b)≥1−ξi

最优的分类器则为f∗(x)=w∗x+b∗





这里大概示意了ξ

的应用场景。左边是上述完全可分的情况,右边是没法分开,所以我们容忍一些误差,只要误差之和在一个可以接受的范围之内。

4.非线性的SVM

这里的直觉大概是,在低维空间较为稠密的点,可以在高维空间下变得稀疏。从而可能可以找到一个高维空间的线性平面,把他们分开。

原来的数据集是:D={(xi,yi)∣xi∈Rp,yi∈{−1,1}}ni=1

然后定义一个从低维到高维的映射:Φ

,使得xΦ→z。其中x原本属于Rp,此时被映射到一个高维的Rq
,可为无限维Hilbert空间(这里我只是照抄笔记...)。

映射之后的D′={(zi,yi)∣zi∈Rq,yi∈{−1,1}}ni=1

,之后就是传统的寻找一个线性平面。

Φ

的例子:

Φ(x)=(Φ1(x),Φ2(x),Φ3(x))=(x21,2x1x2,x22)

,这样就打散到一个高维的空间(圆)。

下节课是线性SVM的计算。

这节课主要是讲线性优化的对偶问题。感觉这东西貌似在运筹学的时候被折腾过一遍,现在又来了-_-||

附赠个老的掉牙的段子...

有人问经济学家一个数学问题,经济学家表示不会解...

然后那个人把这个数学问题转成了一个等价的最优化问题,经济学家立马就解出来了...

好吧,我还是乖乖的赘述一遍对偶问题吧,表示被各种经济学最优化问题折磨过的孩子这点儿真是不在话下。

--------------------------------------------------------------------

1. 对偶问题的一般情况

1) 优化问题

一个典型的最优化问题形如:

minf0(x)

s.t.fi(x)≤0, i∈{1,…,m}

(不等式约束)

hi(x)=0, i∈{1,…,p}

(等式约束)

2) 优化问题的Lagrange (拉格朗日)函数

L(x,λ,ν)=f0(x)+∑mi=1λifi(x)+∑pi=1νihi(x).

λi,νi>0,∀i

3) 对偶函数

g(λ,ν)=infx∈DL(x,λ,ν)=infx∈D(f0(x)+∑mi=1λifi(x)+∑pi=1νihi(x))

称为该优化问题的对偶函数。此时,

∇xL(x,λ,ν)=0

,显然这个时候一阶偏导数为0。

4) 对偶问题

我们称maxg(λ,ν),s.t.λ≥0

为原优化问题的对偶问题,可化为最优化问题的标准形式min−g(λ,ν),s.t.−λ≤0


如果原优化问题为凸优化,则g(⋅)

必为凹函数,从而最终的标准形式依旧是一个凸优化问题。

5) 弱对偶性

令x∗

为原问题的解,则p∗=f0(x∗),且fi(x∗)≤0,hi(x∗)=0
.

令(λ∗,ν∗)

为对偶问题的解,则d∗=g(λ∗,ν∗);

λ∗≥0
.

定理(弱对偶性):d∗≤p∗

,即对偶问题的优化值必然小于等于原问题优化值。

6) 强对偶性

当d∗=p∗

时,两者具有强对偶性;满足该条件的称之为constraint qualifications,如Sliter定理

强对偶性满足的时候,原优化问题就可以化为一个二步优化问题了。

7) KTT条件(库恩-塔克条件)

局部最优化成立的必要条件:

∇xL(x,λ,ν)=∇f(x∗)+∑mi=1λi∇fi(x∗)+∑lj=1νj∇hj(x∗)=0

(一阶条件)

λifi(x∗)=0,∀i=1,…,m.

λi≥0,∀i

fi(x∗)≤0,∀i=1,…m

hj(x∗)=0,∀j=1,…,p

注:SVM满足强对偶性,所以可以直接解对偶问题。

2. 对偶问题应用于SVM

1) SVM的最优化问题

上节课可知,SVM的最优化问题为:

min12∥w∥2+C∑iξi

s.t.yi(wi+b)≥1−ξi,∀i

写成标准形式就是

min12∥w∥2+C∑iξi

s.t.1−ξi−yi(wi+b)≤0,∀i

−ξi≤0,∀i

这样这里总计有2N个约束条件。

对应的Lagrange函数为:minw,ξ,b{12∥w∥2+C∑ni=1ξi+∑ni=1λi[1−yi(w′⋅xi−b)−ξi]−∑ni=1μiξi}

这样一阶条件就是

∂L∂wk=wk+∑ni=1λi(−yixki)=0

⇒w=∑ni=1λi(yixi)
∂L∂b=∑ni=1λi(−yi)=0

⇒∑ni=1λiyi=0
∂L∂ξk=C−λk−μk=0

⇒C−λk−μk=0,∀k
这样最后我们有L∗=−12∑iλiyi(w′xi)+∑iλi(1−b)

.

3) 对偶函数

这里的对偶函数就是g(λ,μ)=−12∑i∑j(λiyi)(λjyj)(x′ixj)+∑iλi

4) 对偶问题

min−g(λ,μ)=12∑i∑j(λiyi)(λjyj)(x′ixj)−∑iλi

s.t.∑iλiyi=0

0≤λi≤C

μi≥0

5) KKT条件

w=∑λiyixi

λi(1−yi(w′xi+b)−ξi)=0

∑λiyi=0

0≤λi≤C

λi[yi(w′xi+b)−ξi]=0

μiξi=0

μi≥0

6) SVM分类器

解对偶问题,得到λ∗

,
μ∗

计算w∗=∑iλiyixi

计算b∗:找到一个<0λi<C(非边界上),从而满足{1−yi(w′⋅xi−b)=0ξi=0。由yi=±1,我们可得(w′⋅xi−b)=yi⇒b=yi−w′⋅xi=yi−∑jλjyj(x′jxi)

平面分类器:
y=w∗x+b,

y^=sign(w∗x+b)=sign(∑jλjyj(x′jxi))

,故只与内积有关。

这样下节课就会讲到解对偶问题的方法,以及SVM和kernel methods的联系。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐