SVM和SMO的简单原理与数学推导

Post on 26-Jun-2015

117 views 6 download

Transcript of SVM和SMO的简单原理与数学推导

北京 9 月秋季班 · 机器学习 II

SVM和 SMO的简单原理与数学推导

参考资料:《支持向量机通俗导论(理解 SVM 的三层境界)》http://blog.csdn.net/v_july_v/article/details/7624837

2014-09-21

2

分类:将两类不同的数据分开

• 二维平面

3

• 函数间隔

• 几何间隔

4

寻找最大几何间隔

• 让 gap 最大化, gap = 2

5

令函数间隔 为 1

6

引入拉格朗日乘子,转换为对偶问题

7

但有两个问题待解决:

1. 二维好分,高维咋办?2. 数据总是那么好分么?

8

核函数 -- 解决问题 1 :高维• 映射到高维

9

松弛变量 -- 解决问题 2 :异常点

• 蓝点偏离

10

引入松弛变量

• 约束条件变成了:

• 目标函数变成:

• 完整表示:

11

• 新的拉格朗日函数

• 求解:先让 L 对 w 、 b 、 最小化:

• w 代回 L ,得:

12

• 故:引入核函数 & 松弛变量后,新的目标函数:

• SMO 算法求出了 a ,可以求出 w 、 b

13

SMO 算法流程

1. 有多个拉格朗日乘子2. 每次只选择其中两个乘子

– 其中一个违法 KKT 条件– 另外一个选择满足 的乘子。

3. 需要满足一定的约束条件

4. 求出其中一个乘子,然后求出另外一个乘子5. 最后更新 b

14

• 目标函数:

• 目标函数的子函数

– 满足 KKT 条件

– 一个约束条件:

15

• 求解两个乘子 a1 、 a2– 先求 a2 ,再求 a1– 求 a2 取值范围

• 根据约束条件可得:

• 且

16

• 得到 a2 的取值范围

17

• 目标函数的子函数转换为只含 a2 :

18

• 求出了 a2 ,求 a1

• b 的更新

• 分类函数最终求出!

19

thank you更多 10 月机器学习班上见

机器学习课表见下文最末:http://blog.csdn.net/v_july_v/article/details/7237351#t62

contact me微博:@研究者 July