统计学习精要(The Elements of Statistical Learning)课堂笔记(二十一):SMO算法

来源:互联网 发布:帝国cms 播放器 编辑:程序博客网 时间:2024/06/15 04:32

1. SVM优化问题

1) 原问题

min12w2+Ciξi

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

2) 拉格朗日形式的表述

minL(yi,wxi+b)+λw2

其中,L(yi,wxi+b)=l(y(wx+b))

3) 对偶问题

ming(λ,μ)=12ij(λiyi)(λjyj)(xixj)iλi

s.t.iλiyi=0

0λiC

μi0

4) SVM分类器

(i) W=iλiyixi

(ii) 选0<λi<C

b=yiwxi=yijλjyj(xixj),然后b~=average(bi)

(iii)SVM分类器 sign(wx+b)=sign(Ni=1λiyi(xxi)+b)

2. SMO算法

1) 基本思想:迭代下降、坐标下降

一次要选择两个变量(否则会破坏λiyi=0

的约束),之后就可以解这个双变量优化问题。

2) 两个变量的优化

任取λ1

,λ2作为变量,其他λ3,...

作为常量。

展开的矩阵大致如下:

λ1λ2λNy1x1y2x2yNxNλ1y1x1λ2y2x2yiyj(xixj)λiλjλNyNxN

目标函数=a11λ1λ1+a12λ1λ2+a21λ2λ1+a22λ2λ2+b1λ1+b2λ2+c

这样a11=x12

,a22=x22,a12=|x1x2|,a21=|x2x1|

约束0λ1,λ2C

(对应对偶问题)

λ1y1+λ2y2+d=0

,这里d代表其余不改变的那些Ni=3λiyi

化到单变量的话,λ2=(dλ1y1)/y2

所以,

  • 目标函数= e0λ21+e1λ1+e2
,最优条件λ1¯=e12e0


  • 约束 Lλ1H,其中LH
  • 分别为lower/upper bound。故必有最优点在L、H之间或者L、H之一。
  • mine0λ21+e1λ1s.t.Lλ1H,可以解得λ1=Lλ1¯Hλ1¯<LLλ1¯Hλ1¯>H

    这里虽然需要迭代很多次,但是迭代的每一步都比较快。

    至于如何选择λ1,2

    ,第一个变量λ1可以选择0<λ<C,同时bib¯最大。第二个变量选择HL最大的。
  • 0 0
    原创粉丝点击