You are on page 1of 124

SVM -

最⼤间隔边界

正样本 划分超平⾯
+
不是⽀持向量,分类正确, + +
+ + 最⼤间隔边界
且满⾜⼤间隔约束
+ +
+ +
+ + -
+ +
- +
+
⽀持向量,分类正确, + -
且满⾜⼤间隔约束 -
- -
+ + -
- - -
负样本
- -
- -
⽀持向量,分类正确, -
但不满⾜⼤间隔约束 +
-
- - -
- -
+ - -
⽀持向量,
-
恰好位于划分超平⾯, -
且不满⾜⼤间隔约束 -

0
+

⽀持向量,分类错误,
且不满⾜⼤间隔约束

⽀持向量,分类错误,
且不满⾜⼤间隔约束

SVM 保姆级教程

https://haomood.github.io/homepage/

zhangh0214@gmail.com

2.0

2022 3 13
间隔:离划分超平⾯最近的样本
到划分超平⾯的距离的两倍

最⼤化间隔

- 属于凸⼆次规划; 特征映射 - 属于凸⼆次规划;


- 具有全局最⼩; - 具有全局最⼩;
(硬间隔)线性 SVM 的基本型 (硬间隔)核化 SVM 的基本型
- d + 1 个优化变量; - + 1 个优化变量;
! - m 项不等式约束 - m 项不等式约束
线性映射

拉格朗⽇乘⼦法 拉格朗⽇乘⼦法

- 属于凸⼆次规划; 特征映射
- 属于凸⼆次规划;
- 具有全局最⼩;
(硬间隔)线性 SVM 的对偶型 ! (硬间隔)核化 SVM 的对偶型 ! - m 个优化变量;
- m 个优化变量;
- m + 2 项不等式约束
- m + 2 项不等式约束 线性核

允许训练样本 不允许训练样本 允许训练样本 不允许训练样本


预测错误 预测错误 预测错误 预测错误

- 属于凸⼆次规划; 特征映射 - 属于凸⼆次规划;


- 具有全局最⼩; - 具有全局最⼩;
软间隔线性 SVM 的基本型 软间隔核化 SVM 的基本型 - m + + 1 个优化变量;
! - d + 1 个优化变量; !
- m 项不等式约束 线性映射 - 2m 项不等式约束

拉格朗⽇乘⼦法 拉格朗⽇乘⼦法

- 属于凸⼆次规划; 特征映射 - 属于凸⼆次规划;


- 具有全局最⼩; - 具有全局最⼩;
软间隔线性 SVM 的对偶型 软间隔核化 SVM 的对偶型
- m 个优化变量; - m 个优化变量;
- m + 2 项不等式约束 线性核 - 2m + 2 项不等式约束

等价推导 等价推导

- 经验⻛险 + 结构⻛险 - 经验⻛险 + 结构⻛险


(正则化); (正则化);
合⻚损失 合⻚损失
- 合⻚损失是 0/1 损失的 - 合⻚损失是 0/1 损失的
替代损失 替代损失

1 / 124
SVM -

SVM

LAMDA

240
2016 CVPR

https://haomood.github.io/homepage/ “ ”

SVM Support Vector Machine


SVM
AdaBoost Boosting Kaggle
XGBoost LightGBM Boosting

SVM
SVM SVM
SVM SVM

SVM

SVM SVM

“ ”
SVM
SVM

SVM
“ SVM ”
SVM

2 / 124
SVM -

SVM
SVM
SVM
SVM
SVM
SVM

SVM

4 4
SVM SVM
5 6
SVM
SVM
Scikit-learn SVM
LibLinear LibSVM 5 LibLinear LibSVM
SVM

. SVM . 2022. https://haomood.github.io/homepage/

zhangh0214@gmail.com

3 / 124
SVM -

SVM

1 . SVM
1.1
1.2
1.3
1.4
1.5
1.6
2 . SVM
2.1
2.2 SVM
2.3
2.4
3 . SVM
3.1
3.2
3.3
3.4
3.5
3.6
4 . SVM
4.1 SVM
4.2 SVM
4.3
4.4 SVM
4.5
4.6
5 . SVM
5.1 Pegasos
5.2
5.3 DCD
5.4 SMO
5.5
6 . SVR
6.1
6.2 -
6.3 SVR
6.3 SVR
6.5
6.6
7 . SVM
7.1 Platt

4 / 124
SVM -

7.2 SVM

5 / 124
SVM -

1 . SVM

1.1
Binary Classification SVM

Training Set

Feature Vector
Training Sample Label Positive
Sample Negative Sample

SVM

“ ” “ ” “ ”
“ “ Assignment
1

Hypothesis

Prediction

Linear

6 / 124
SVM -

Parameters
1
0

sign(s)

0 s

-1

6 4

Linearly Separable Binary


Classification Model

2
2

Normal Vector
Intercept

7 / 124
SVM -

正样本 +
+ 划分超平⾯
+
+ +
+
+ +
+ + -
- -
-
- - -
- 负样本
- -

1.2
3

Inductive Bias
Logistic Regression

对样本进⾏局部扰动

划分超平⾯
正样本 +
+
+
+ +
+
+ +
+ + 对样本进⾏局部扰动
-
- -
-
- - -
负样本
- - -

SVM Support Vector Machine


Hard Margin SVM “ ”
SVM 1.1 SVM

SVM SVM
“ ” “ ”
SVM “ ”

8 / 124
SVM -

SVM 3
Training Error 0
Generation Error
Testing Error
3

3
Robust
SVM

“ ”

60 60

SVM “ ” “ ”

60 70 80
1

“ ”

60

60

9 / 124
SVM -

SVM “ ”
SVM Margin

12 11

超平⾯

10 / 124
SVM -

5 2 2

划分超平⾯
正样本 +
+
+
+ +
+
+ +
+ + -
离划分超平⾯ - -
最近的样本 -
- - -
间隔为该距离 - 负样本
- -
的两倍

“ ”

“ ”

min max “ ” “ ”
min max
SVM

1.1

11 / 124
SVM -

Objective “s.t.” Subject to


Constriant
17

min max

5
6

划分超平⾯
正样本 +
+
+
+ +
+
+ +
+ + -
间隔为该距离 - -
-
的两倍 - - -
- 负样本
- -

离划分超平⾯
最近的样本

min max
min
max
7

12 / 124
SVM -

x2

划分超平⾯ 恰好位于最近的正负样本正中间
正样本 +
+
+
+ +
+
+ +
+ +
离划分超平⾯ -
最近的正样本 - -
-
- - -
- 负样本
- -

0 x1
间隔为最近的正负样本 离划分超平⾯
到划分超平⾯距离之和 最近的负样本

1.3
x

18
18 max min 18
18

18
18 Scaling

18

18

13 / 124
SVM -

Scaling

18

24

18 18

18

14 / 124
SVM -

18 18 max min 29
min 29 18
29

x min
min 29 SVM Primal Form of Hard
Margin Linear SVM

SVM x x

SVM 30 29

SVM 30 29
8

15 / 124
SVM -

最⼤间隔边界
划分超平⾯ 恰好位于最近的正负样本正中间
正样本 + 最⼤间隔边界
+
+
+ +
+
+ +
+ +
离划分超平⾯ -
最近的正样本 - -
-
- - -
- 负样本
- -

间隔为最近的正负样本 离划分超平⾯
到划分超平⾯距离之和 最近的负样本

1.4
Convex Optimization
Convex Function

Convex Set
9
“ ”
“ ” “ ”
“ ”

(a) 凸集 (b) ⾮凸集

10

16 / 124
SVM -

x2 x2
0x1
x1

(a) 凸集 (b) ⾮凸集

10 $\mathbb R^2$

Above On
11
Concave Function

11 Wikipedia

Linear
Function Quadratic Function

12 12

17 / 124
SVM -

0 0 0

(a) a > 0 (b) a = 0 (c) a < 0

12 $f(x):= ax^2 + bx + c$

“ ” “ ”

Local Minimum Global


Minimum 13

13 [ , 2016]

18 / 124
SVM -

Gradient Descent

Deep Learning
Loss Function
14
“ ”
Momentum Dropout

14 [Huang et al., 2017]

19 / 124
SVM -

1.5
1.2
Linear Programming LP 15 15
3
Quadratic Programming QP

15

39

1.4
Convex Quadratic Programming
13

20 / 124
SVM -

SVM 30
SVM

SVM 30 39

SVM 30 39

1 0

1.6
16 SVM

不同的模型有
不同的归纳偏好

对数⼏率回归

线性可分 (硬间隔) (硬间隔)线性


间隔
⼆分类问题 线性 SVM SVM 的基本型

存在⼀个划分超平⾯ 找到离正负样本都 离划分超平⾯最近的样本到


最⼤化间隔
⼆分类问题 将正负样本分开 ⽐较远的划分超平⾯ 划分超平⾯的距离的两倍

……
⾮线性可分
找到
⼆分类问题
(硬间隔)线性 SVM 的基本型
是凸⼆次规划,具有全局最⼩值

线性规划

⽬标函数为线性函数、
约束为线性不等式 凸⼆次规划

⽬标函数为
优化问题 ⼆次规划 凸⼆次函数

⽬标函数为⼆次函数、
约束为线性不等式 ⾮凸⼆次规划

⽬标函数为
…… ⾮凸⼆次函数

16 1

21 / 124
SVM -

SVM

SVM

SVM

22 / 124
SVM -

2 . SVM

1 SVM
1 SVM

13
Lagrange Multipliers
SVM

2.1

(1).

Primal Problem

(2).

49

49

23 / 124
SVM -

49 51
49
51

51 49

max

max

0 max

max
max min
0

(3).

51 49 51
max

min max

min
min

24 / 124
SVM -

max
Dual Problem

min max

“ ”

min max max


min x

58

60

57

57 Slater
[Boyd & Vandenberghe, 2004]

SVM Slater

49 SVM
SVM

25 / 124
SVM -

(4). KKT

KKT Karush-Kuhn-Tucker Conditions

Complementary Slackness

52 53

52

55 KKT

2.2 SVM
SVM

SVM
2.1 SVM
2.1

(1).

SVM 49

(2).

50 SVM SVM

(3).

26 / 124
SVM -

53

2.1 SVM Slater

76 min
Matrix
Cookbook [Petersen & Petersen, 2008]

KKT

27 / 124
SVM -

min
82

SVM Dual Form of Hard Margin Linear SVM


83

SVM

SVM

28 / 124
SVM -

SVM 39

1 0

1.5

SVM 39

29 / 124
SVM -

2.3

(4). KKT

2.1 KKT

SVM

KKT

KKT
17

30 / 124
SVM -

Support Vector

2.3

x2
最⼤间隔边界
划分超平⾯ 恰好位于最近的正负样本正中间
正样本 + 最⼤间隔边界
+
+
不是⽀持向量 + +
+
+ +
⽀持向量: +
离划分超平⾯ + -
最近的正样本 - -
-
- - -
- 负样本
- -

0 x1
间隔为最近的正负样本
到划分超平⾯距离之和 ⽀持向量:
离划分超平⾯
最近的负样本

17

2 SVM

31 / 124
SVM -

Robust

SVM

Parametric Model

Non-parametric Model “ ”

SVM

1.2

32 / 124
SVM -

18

18

1.2

SVM

SVM

SVM
19 (a) SVM

19 (b) SVM

SVM Outlier

33 / 124
SVM -

对数⼏率回归的划分超平⾯

SVM 和对数⼏率回归
的划分超平⾯ SVM 的划分超平⾯
正样本 正样本

+ +
⽀持向量 ⽀持向量

负样本 负样本
- -

⽀持向量 ⽀持向量

(a) (b)

19 SVM

2.4
20

(硬间隔)线性 SVM 的对偶型


是凸⼆次规划,具有全局最⼩值

⽀持向量是距离划分超平⾯最近的样本,
落在最⼤间隔边界上
(硬间隔)线性 (硬间隔)线性
⽀持向量
SVM 的基本型 SVM 的对偶型
d + 1 个优化变量 m 个优化变量 参数 仅由⽀持向量决定,
对应的样本
m 项不等式约束 m + 2 项不等式约束 与训练集的其他样本⽆关

构造优化基本型

构造拉格朗⽇函数

拉格朗⽇乘⼦法

交换 min、max
顺序得到对偶型

利⽤ KKT 条件
得到主问题最优值

20 2

3 min max
Slater Slater

1 SVM
SVM

34 / 124
SVM -

SVM

SVM

35 / 124
SVM -

3 . SVM
2 SVM SVM

3.1
1 2
1

XOR [Minsky & Papert, 1969] 21 (a)


4

Aritifical Neural Networks ANN


M-P Perceptrons [Minsky & Papert, 1969]

Hopfield NP
Gradient Back-propagation
Statistical Learning
SVM
2010

36 / 124
SVM -

21 [ , 2016]

21 (b) Decision Tree


22

21 (c)
SVM

22 [ , 2016]

37 / 124
SVM -

21 (b)
21 (c)

22

22 3 6 20 [Li et
al., 2021]

23

[Radford et al., 2021]

38 / 124
SVM -

23 [He et al., 2016]

SVM
Feature Engineering

……

Black Box

Distributed Representations [Bengio et al., 2013]

39 / 124
SVM -

3.2
SVM SVM 21 (c)
SVM

“ ”

Shatter [Vapnik, 2013]

SVM
SVM

105 SVM Primal Form of Hard Margin Kernelized SVM

Kernel Trick

SVM
Dual Form of Hard Margin Kernelized SVM

40 / 124
SVM -


41 / 124
SVM -

Taylor's Formula

42 / 124
SVM -

SVM
SVM

3.3
3.2
3.2

SVM SVM

(1). LibLinear [Fan et


al., 2008] LibSVM [Chang & Lin, 2011] (2).

3.2

43 / 124
SVM -

(1). (2).
1 1

SVM SVM

Gaussian RBF Radial Basis Function


3.2

0 1
4.4

(1).
(2). (3).
(1). (2).

3.2

SVM 0

44 / 124
SVM -

45 / 124
SVM -

3
Sigmoid Chi-Squared Kernel Histogram Intersection
Kernel

SVM
SVM
SVM

SVM

Mercer Mercer

46 / 124
SVM -

SVM

[Lanckriet et al., 2004]

Trace
4

47 / 124
SVM -

3.4
2.3 SVM

SVM

SVM

SVM

SVM

Representer Theorem

48 / 124
SVM -

Weight
Decay

111

111

[Scholkopf & Smola, 2001]

49 / 124
SVM -

[Hofmann et al., 2008]

3.5

Logistic Regression Sigmoid

Sigmoid 24

24 Sigmoid [ , 2016]

50 / 124
SVM -

sklearn.linear_model.LogisticRegression

SVM
Kernel Logistic Regression

148

150

51 / 124
SVM -

52 / 124
SVM -

SVM SVM

0 x

SVM Sklearn

3.6
25

53 / 124
SVM -

线性核

多项式核

RBF 核
(硬间隔)线性 (硬间隔)核化
核函数
SVM 的对偶型 SVM 的对偶型
……

⾃定义核函数

核⽅法 核函数组合

决策树

⾮线性划分边界

深度学习
⾮线性可分问题

特征映射到
核化对数⼏率回归
线性可分空间

对数⼏率回归

25 3

SVM ︎ 2 SVM

SVM

SVM

54 / 124
SVM -

4 . SVM
1 2 SVM 3
SVM
SVM SVM
0 “ ” “ ”

0 26

0
“ ”

划分超平⾯ A

正样本 +
+
+ 噪声样本
+ +
+
+ + + 划分超平⾯ B
+ + -
- -
-
- - -
- 负样本
- -

26 0

1.2
60
60

4.1 SVM
SVM

55 / 124
SVM -

1.1 SVM

SVM
True 1
False 0

162

162 SVM
SVM
162

59 40 0 1

Slack Variable

27 27

56 / 124
SVM -

最⼤间隔边界

正样本 划分超平⾯
+
+ +
分类正确, + + 最⼤间隔边界
且满⾜⼤间隔约束 + +
+ + + - +
+ +
- +
+ + -
分类正确, -
且满⾜⼤间隔约束 - -
+ + -
- - -
- 负样本
- - -
-
分类正确, +
但不满⾜⼤间隔约束 -
- - -
- -
+ - -
恰好位于划分超平⾯, -
且不满⾜⼤间隔约束 -
-

0 +
分类错误,
且不满⾜⼤间隔约束

分类错误,
且不满⾜⼤间隔约束

27

127 SVM Primal


Form of Soft Margin Kernelized SVM

SVM
28

28
0

28

57 / 124
SVM -

28 C Scikit-learn

SVM
SVM

︎ SVM 39

SVM 39

1 0

4.2 SVM

58 / 124
SVM -

2.2 2.1 SVM


SVM
2.1

(1).

SVM 49

(2).

50 SVM SVM

50

(3). min max

53

SVM
SVM Slater

168 min

59 / 124
SVM -

KKT

60 / 124
SVM -

min

142

61 / 124
SVM -

SVM Dual Form of Soft Margin Kernelized SVM


177 SVM 2.2
SVM

SVM
SVM

︎ SVM 39

SVM 39

62 / 124
SVM -

4.3

(4). KKT

2.1 KKT

SVM

SVM KKT

63 / 124
SVM -

KKT
29

4.1

4 29 29

4 SVM

64 / 124
SVM -

最⼤间隔边界

正样本 划分超平⾯
+
不是⽀持向量,分类正确, + +
+
+ 最⼤间隔边界
且满⾜⼤间隔约束 + +
+ + + - +
+ +
- +
+ + -
⽀持向量,分类正确,
-
且满⾜⼤间隔约束 - -
+ + -
- - -
- 负样本
- - -
⽀持向量,分类正确, -
但不满⾜⼤间隔约束 +
-
- - -
- -
⽀持向量, + - -
-
恰好位于划分超平⾯, -
且不满⾜⼤间隔约束 -

0 +
⽀持向量,分类错误,
且不满⾜⼤间隔约束

⽀持向量,分类错误,
且不满⾜⼤间隔约束

29 SVM

65 / 124
SVM -

Robust
KKT

SVM

SVM

4.4 SVM
SVM SVM
SVM SVM

30

66 / 124
SVM -

训练集 超参数

训练阶段
软间隔⾼斯核 SVM 的对偶型
优化算法

⽀持向量 系数 参数

预测阶段

预测
待预测样本

预测结果

30 SVM

SVM
3.1 SVM
31

31 SVM Scikit-learn

SVM
SVM 32 SVM

67 / 124
SVM -

32 SVM Scikit-learn

4.1

0 1
0

33

68 / 124
SVM -

正样本 +
+
+
+ +
+
+ +
+ + -
- -
-
- - -
- 负样本
⽀持向量 - -

⽀持向量

33

-NN -Nearest Neighbor -


-NN

SVM

-NN

-NN SVM

-NN SVM

-NN
SVM

1.2
SVM

SVM

69 / 124
SVM -

33

SVM

SVM

SVM
SVM

SVM SVM x
C SVM

Grid Search x
34
SVM
sklean.model_selection.GridSearchCV

34

70 / 124
SVM -

34 Scikit-learn

SVM

Hold-out
(1).

(2).

- -fold Cross Validation

35
-

35 K- K=10 [ , 2016]

- Leave-One-Out
Cross Validation LOOCV (1).
(2).

SVM

71 / 124
SVM -

SVM SVM

SVM

4.3
0

0
1 1

SVM

4.5
4.1

SVM

206

72 / 124
SVM -

206 SVM
SVM

206
0

Hinge Loss

211 209

Empirical Risk “ ” “ ” “

Structural Risk “ ”
Regularization

36 36

73 / 124
SVM -

36 [ , 2016]

SVM

1.1

1 0

0/1 0/1 175

37
0/1 37 0/1
0
0/1

0/1
0/1 Surrogate Loss
0/1
0/1
0 0/1
38

74 / 124
SVM -

37 [ , 2016]

38

37

0/1
0/1
SVM SVM

SVM

“ ” SVM
4.3 +
3.4
125 “ ”

SVM SVM
SVM
SVM 7.1

SVM

75 / 124
SVM -

SVM Supervised Learning Discriminative


Model Generative Model

Naive Bayes Classifier


SVM
SVM SVM
SVM 3.5
SVM SVM
2.3
SVM +
0/1
SVM
SVM
SVM
SVM SVM SVM 7.2
Softmax

SVM
SVM
7.1
SVM SVM

SVM
SVM

SVM
5
SVM SVM

4.6
SVM Vladimir N. Vapnik Alexey Ya.
Chervonenkis 1963 SVM VC
[Boser et al., 1992] SVM
[Cortes & Vapnik, 1995] [Cortes & Vapnik,
1995] Support Vector Networks Vladimir N. Vapnik
“Nothing is more practical than a good theory.” [Vapnik, 2000]

76 / 124
SVM -

39 4 39
4 39
SVM SVM
SVM

构造优化基本型
间隔:离划分超平⾯最近的样本
到划分超平⾯的距离的两倍

构造拉格朗⽇函数

最⼤化间隔
交换 min、max
顺序得到对偶型 特征映射
- 属于凸⼆次规划; - 属于凸⼆次规划;
- 具有全局最⼩; - 具有全局最⼩;
硬间隔线性 SVM 的基本型 硬间隔核化 SVM 的基本型
利⽤ KKT 条件 - d + 1 个优化变量; - + 1 个优化变量;
得到主问题最优值 ! - m 项不等式约束 - m 项不等式约束
线性映射

拉格朗⽇乘⼦法 拉格朗⽇乘⼦法

- 属于凸⼆次规划; 特征映射 - 属于凸⼆次规划;


- 具有全局最⼩;
硬间隔线性 SVM 的对偶型 ! 硬间隔核化 SVM 的对偶型 ! - m 个优化变量;
- m 个优化变量;
- m + 2 项不等式约束
- m + 2 项不等式约束 线性核

⽀持向量是距离划分超平⾯最近的样本,
落在最⼤间隔边界上

允许训练样本 不允许训练样本 参数 仅由⽀持向量决定,与训练集 允许训练样本 不允许训练样本


预测错误 预测错误 ⽀持向量: 对应的样本 预测错误 预测错误
的其他样本⽆关

假设函数可以写作⽀持向量对应核函数的
线性组合

- 属于凸⼆次规划; 特征映射 - 属于凸⼆次规划;


- 具有全局最⼩; - 具有全局最⼩;
软间隔线性 SVM 的基本型 软间隔核化 SVM 的基本型 - m + + 1 个优化变量;
! - d + 1 个优化变量; !
- m 项不等式约束 线性映射 - 2m 项不等式约束

拉格朗⽇乘⼦法 拉格朗⽇乘⼦法

- 属于凸⼆次规划; 特征映射 - 属于凸⼆次规划;


- 具有全局最⼩; - 具有全局最⼩;
软间隔线性 SVM 的对偶型 - m 个优化变量; 软间隔核化 SVM 的对偶型 - m 个优化变量;
- m + 2 项不等式约束 线性核 - 2m + 2 项不等式约束

等价推导 等价推导
样本 i 分类正确,恰好位于最⼤间隔边界

样本 i 分类正确,位于最⼤间隔带内部
⽀持向量:
对应的样本
样本 i 恰好位于划分超平⾯

样本 i 分类错误,位于最⼤间隔带内部或之外

线性核

核函数 多项式核

⾼斯核

- 经验⻛险 + 结构⻛险 - 经验⻛险 + 结构⻛险


(正则化); (正则化);
合⻚损失 合⻚损失
- 合⻚损失是 0/1 损失的 - 合⻚损失是 0/1 损失的
替代损失 替代损失

39 4

5 SVM
SVM

77 / 124
SVM -

“ ”

60

60 SVM

60

60

60

39 SVM SVM
SVM

SVM

78 / 124
SVM -

SVM SVM sklearn.svm.LinearSVC


sklearn.svm.SVC LibLinear LibSVM

SVM

SVM
SVM SVM

SVM
SVM
SVM

SVM SVM 7.1

SVM
SVM

SVM SVM 40
SVM
SVM

40 Scikit-learn

79 / 124
SVM -

5 . SVM
4 SVM SVM
4 SVM
cvxopt https://cvxopt.org/index.html
cvxopt.solvers.qp()
SVM

5.1 Pegasos
SVM 4.5
SVM

Subgradient

80 / 124
SVM -

ReLU
ReLU

Pegasos Primal Estimated sub-GrAdient SOlver for Svm [Shalev-Shwartz et al., 2011]
SVM Pegasos

Pegasos

81 / 124
SVM -

Learning Rate “ ”
Pegasos

Pegasos 41

Pegasos [Shalev-Shwartz et al., 2011] Pegasos

Pegasos [Shalev-Shwartz
et al., 2011]

训练集 超参数

训练阶段

初始化参数

随机选择样本

学习率

更新参数

更新参数

参数

预测阶段
待预测样本 预测

预测结果

41 Pegasos

82 / 124
SVM -

5.2
5.1 Pegasos SVM
SVM SVM DCD Dual Coordinate Descent
[Hsieh et al., 2008] SMO Sequential Minimal Optimization [Platt,
1998] SVM SVM SVM
LibLinear [Fan et al., 2008] LibSVM [Chang & Lin, 2011]
DCD SMO SVM SVM DCD SMO
Coordinate Descent

42

83 / 124
SVM -

42 [Ng et al., 2022]

5.3 DCD
DCD SVM

SVM

4.2 (3) SVM

84 / 124
SVM -

SVM
SVM 1
SVM

SVM

(1).

(2).

85 / 124
SVM -

240

(3).

86 / 124
SVM -

(4).

DCD DCD 51 DCD


SVM Pegasos
DCD

87 / 124
SVM -

训练集 超参数

训练阶段

数据集处理

初始化拉格朗⽇乘⼦

初始化参数

选择优化参数

得到优化参数的最优值

根据约束进⾏调整

更新参数

更新参数

参数

预测阶段
数据处理
待预测样本

预测

预测结果

51 DCD

5.4 SMO
SMO SVM

88 / 124
SVM -

SVM

DCD DCD
DCD SVM
DCD SVM

SMO SMO
SMO DCD
SMO

(1).

89 / 124
SVM -

90 / 124
SVM -

(2).

91 / 124
SVM -

259

(3).

92 / 124
SVM -

52
52

52 (a)

52 (b)

52 (c)

52 (d)

52 (a) 52 (b)

52 (c) 52 (d)

C C C C

0 L H C 0 L H C 0 L H C 0 L H C

(a) (b) (c) (d)

52 SMO

(4).

93 / 124
SVM -

SVM KKT 4.3

276 278

280

94 / 124
SVM -

KKT

SMO SMO 53 SMO

训练集 超参数

训练阶段
核函数矩阵

初始化拉格朗⽇乘⼦

初始化参数

选择优化参数

计算样本 u 的误差项

计算样本 v 的误差项

更新拉格朗⽇乘⼦

否 是

计算约束范围 计算约束范围

根据约束进⾏调整

更新拉格朗⽇乘⼦

计算参数候选值

是 否

是 否

更新参数 更新参数 更新参数

95 / 124
SVM -

更新拉格朗⽇乘⼦

⽀持向量 系数 参数

预测阶段

预测
待预测样本

预测结果

53 SMO

SMO

double float
LRU Least Recently Used
SMO

SMO SVM KKT


4.3

KKT KKT KKT


SMO
KKT

SMO

SMO KKT

5.5
96 / 124
SVM -

54

梯度下降 次梯度下降

合⻚损失 Pegasos

软间隔线性
SVM 的基本型

软间隔线性
DCD
SVM 的对偶型

坐标下降

软间隔核化
SMO
SVM 的对偶型

54 5

SVM SVM SVM


Pegasos DCD SMO Pegasos
Pegasos DCD SMO
DCD SMO

SVM Pegasos DCD SVMperf

SVM

SVM SMO

CVM [Tsang et al., 2005]


Nyström [Williams & Watkins, 1999]
[Rahimi & Recht, 2007]

LibLinear [Fan et al., 2008] LibSVM [Chang & Lin, 2011] SVM
SVM LibLinear DCD LibSVM SMO

97 / 124
SVM -

6 . SVR
5 SVM
SVM SVR Support Vector Regression
[Drucker et al., 1996]

6.1
Linear Regression

Ordinary Least Squares MSE Mean Square Error

MSE
Euclidean Distance

sklearn.linear_model.LinearRegression

Ridge Regression MSE

sklearn.linear_model.Ridge

LASSO Least Absolute Shrinkage and Selection Operator


MSE

98 / 124
SVM -

LASSO sklearn.linear_model.Lasso
0

MAE Mean Absolute Erro

MAE
SVR

3.5 +
SVM
+

Kernel Ridge Regression

DCD 5.3

99 / 124
SVM -

100 / 124
SVM -

sklearn.kernel_ridge.KernelRidge

6.2 -

MSE MSE MAE


MSE MAE
0 4.5 “ ”
SVM

“ ” SVR
0 0
55

101 / 124
SVM -

55 SVR 2ε [ , 2016]

SVR - -insensitive Loss

- MSE 56 MSE
- MSE -
- Outlier -
MAE

56 ε- MSE

- -
SVR

102 / 124
SVM -

SVM -
SVR

6.3 SVR
4.5 SVM
SVM SVR
- SVR -
SVR

SVM -
SVR

SVR

57

103 / 124
SVM -

间隔带上边界

回归超平⾯
位于间隔带之上
间隔带下边界

位于间隔带上边界

位于间隔带内部

位于间隔带下边界

位于间隔带之下

57 SVR

- SVR
SVR Primal Form of Kernelized SVR

SVR
SVR

SVR 39

104 / 124
SVM -

SVR 39

1 0

6.3 SVR
2.2 4.2 SVM
SVM SVM
SVM 2.1

(1).

105 / 124
SVM -

SVR 45

(2).

46 SVR SVR

46

SVR

(3). min max

49

SVR
SVR Slater

106 / 124
SVM -

min

KKT

107 / 124
SVM -

min
x
SVR Dual Form of Kernelized SVR

SVR
SVR

SVR 39

108 / 124
SVM -

SVR 39

Spectral Decomposition
0

109 / 124
SVM -

6.5

(4). KKT

2.1 KKT

SVR

110 / 124
SVM -

4 SVR KKT

111 / 124
SVM -

KKT
58

6.2

KKT
58

6.2

KKT

112 / 124
SVM -

6 58

6 SVR

间隔带上边界

回归超平⾯
⽀持向量,位于间隔带之上
间隔带下边界

⽀持向量,位于间隔带上边界

⾮⽀持向量,位于间隔带内部

⽀持向量,位于间隔带下边界

⽀持向量,位于间隔带之下

58 SVR

113 / 124
SVM -

KKT

SVR

SVR

59 SVR
60 SVR

114 / 124
SVM -

59 SVR Scikit-learn

60 SVR Wikipedia

6.6

115 / 124
SVM -

61 61 SVR
SVR
SVR

- 属于凸⼆次规划; 特征映射 - 属于凸⼆次规划;


- 具有全局最⼩; - 具有全局最⼩;
线性 SVR 的基本型 核化 SVR 的基本型
- 2m + + 1 个优化变量; - 2m + + 1 个优化变量;
- 4m 项不等式约束 线性映射 - 4m 项不等式约束

拉格朗⽇乘⼦法 拉格朗⽇乘⼦法

- 属于凸⼆次规划; 特征映射 - 属于凸⼆次规划;


! - 具有全局最⼩; ! - 具有全局最⼩;
线性 SVR 的对偶型 核化 SVR 的对偶型
! - 2m 个优化变量; ! - 2m 个优化变量;
- 4m + 2 项不等式约束 线性核 - 4m + 2 项不等式约束

等价推导 等价推导

⽀持向量 对应的样本,位于间隔带边界或之外

线性核

核函数 多项式核

⾼斯核

- 经验⻛险 + 结构⻛险 - 经验⻛险 + 结构⻛险


(正则化); (正则化);
-不敏感损失 -不敏感损失
- 只有样本超出间隔带才 - 只有样本超出间隔带才
计算经验⻛险 计算经验⻛险

61

SVR SVR sklearn.svm.LinearSVR


sklearn.svm.SVR LibLinear LibSVM

SVR SVM - MSE


SVR SVR

- “ ” SVR
6.5 + 6.1
MSE “

SVR SVR
SVR

62 SVR
SVR

116 / 124
SVM -

62 SVR KRR Scikit-learn

63 SVR
SVR SVR
SVR

63 SVR KRR Scikit-learn

117 / 124
SVM -

7 . SVM
SVM

7.1 Platt

SVM

SVM Sigmoid
Sigmoid sign

Sigmoid

Platt Platt Scaling [Platt, 1999]

Platt SVM

118 / 124
SVM -

SVM Platt

7.2 SVM
5 Multiclass
Classification 0-
9 10

OvO One vs One OvO

OvR One vs Rest OvR

7 OvO OvR
OvR

7 OvO OvR

OvO One vs One

OvR One vs Rest

SVM SVM
SVM [Weston & Watkins, 1999]

SVM

119 / 124
SVM -

SVM

SVM

SVM SVM
SVM
SVM

SVM

SVM

SVM
+1

SVM

120 / 124
SVM -

SVM [Tang, 2013]


3.1
Softmax SVM
Softmax SVM

121 / 124
SVM -

[Bengio et al., 2013] Yoshua Bengio, Aaron C. Courville, Pascal Vincent. Representation
learning: A review and new perspectives. IEEE Transactions on Pattern Analysis and Machine
Intelligence, 35(8): 1798-1828, 2013.

[Boser et al., 1992] Bernhard E. Boser, Isabelle Guyon, Vladimir Vapnik. A training algorithm for
optimal margin classifiers. COLT: 144-152, 1992.

[Boyd & Vandenberghe, 2004] Stephen Boyd, Lieven Vandenberghe. Convex Optimization.
Cambridge University Press, 2004.

[Burges, 1998] Christopher J. C. Burges. A tutorial on support vector machines for pattern
recognition. Data Mining and Knowledge Discovery. 2(2): 121-167, 1998.

[Chang & Lin, 2011] Chih-Chung Chang, Chih-Jen Lin. LibSVM: A library for support vector
machines. ACM Transactions on Intelligent Systems and Technology, 2(3): 27:1-27:27, 2011.

[Cortes & Vapnik, 1995] Corinna Cortes, Vladimir Vapnik. Support-vector networks. Machine
Learning, 20(3): 273-297, 1995.

[Cristianini & Shawe-Taylor, 2000] Nello Cristianini, John Shawe-Taylor. An Introduction to


Support Vector Machines and Other Kernel-based Learning Methods. Cambridge University
Press, 2000.
[Drucker et al., 1996] Harris Drucker, Christopher J. C. Burges, Linda Kaufman, Alexander J.
Smola, Vladimir Vapnik. Support vector regression machines. NIPS: 155–161, 1996.

[Fan et al., 2008] Rong-En Fan, Kai-Wei Chang, Cho-Jui Hsieh, Xiang-Rui Wang, Chih-Jen Lin.
LIBLINEAR: A library for large linear classification. Journal of Machine Learning Research, 9(8):
1871–1874, 2008.

[He et al., 2016] Kaiming He, Xiangyu Zhang, Shaoqing Ren, Jian Sun. Deep residual learning
for image recognition. CVPR: 770-778, 2016.

[Hofmann et al., 2008] Thomas Hofmann, Bernhard Schölkopf, Alexander J. Smola. Kernel
methods in machine learning. The Annals of Statistics, 1171–1220, 2008.

[Hsieh et al., 2008] Cho-Jui Hsieh, Kai-Wei Chang, Chih-Jen Lin, S. Sathiya Keerthi, S.
Sundararajan. A dual coordinate descent method for large-scale linear SVM. ICML: 408-415,
2008.

[Huang et al., 2017] Gao Huang, Yixuan Li, Geoff Pleiss, Zhuang Liu, John E. Hopcroft, Kilian
Q. Weinberger. Snapshot ensembles: Train 1, get M for free. ICLR, 2017.

[Lanckriet et al., 2004] Gert R. G. Lanckriet, Nello Cristianini, Peter L. Bartlett, Laurent El
Ghaoui, Michael I. Jordan. Learning the kernel matrix with semidefinite programming. Journal
of Machine Learning Research, 5(1): 27–72, 2004.

[Li et al., 2021] Fei-Fei Li, Ranjay Krishna, Danfei Xu. CS231n: Convolutional Neural Networks
for Visual Recognition. Stanford, 2021.

[Lin, 2017] Hsuan-Tien Lin. Machine Learning Techniques. National Taiwan University, 2017.

122 / 124
SVM -

[Minsky & Papert, 1969] Marvin Minsky, Seymour Papert. Perceptrons: an Introduction to
Computational Geometry. MIT Press, 1969.

[Murphy, 2012] Kevin P. Murphy. Machine Learning: A Probabilistic Perspective. MIT Press,
2012.

[Ng et al., 2022] Andrew Ng, Carlos Guestrin, Moses Charikar. CS 229: Machine Learning.
Stanford, 2022.

[Osuna et al., 1997] Edgar Osuna, Robert Freund, Federico Girosi. An improved training
algorithm for vector machines. NNSP: 276-285, 1997.

[Petersen & Petersen, 2008] Kaare B. Pedersen, Michael S. Pedersen. The matrix cookbook.
Technical University of Denmark, 2008.

[Platt, 1998] John Platt. Sequential minimal optimization: A fast algorithm for training support
vector machines. Micriosoft Research, 1998.

[Platt, 1999] John Platt. Probabilistic outputs for support vector machines and comparisons to
regularized likelihood methods. Advances in Large Margin Classifiers, 10(3): 61–74, 1999.

[Radford et al., 2021] Alec Radford, Jong Wook Kim, Chris Hallacy, Aditya Ramesh, Gabriel
Goh, Sandhini Agarwal, Girish Sastry, Amanda Askell, Pamela Mishkin, Jack Clark, Gretchen
Krueger, Ilya Sutskever. Learning transferable visual models from natural language
supervision. ICML: 8748-8763, 2021.

[Rahimi & Recht, 2007] Ali Rahimi, Benjamin Recht. Random features for large-scale kernel
machines. NIPS: 1177–1184, 2007.

[Scholkopf & Smola, 2001] Bernhard Schölkopf, Alexander Johannes Smola. Learning with
Kernels: Support Vector Machines, Regularization, Optimization, and Beyond. MIT press, 2001.

[Shalev-Shwartz et al., 2011] Shai Shalev-Shwartz, Yoram Singer, Nathan Srebro, Andrew Cotter.
Pegasos: Primal estimated sub-gradient solver for SVM. Mathematical Programming, 127(1): 3–
30, 2011.

[Tang, 2013] Yichuan Tang. Deep learning using support vector machines. CoRR abs/1306.0239,
2013.

[Tsang et al., 2005] Ivor W. Tsang, James T. Kwok, Pak-Ming Cheung. Core vector machines:
Fast SVM training on very large data sets. Journal of Machine Learning Research, 6(4): 363– 392,
2005.

[Vapnik, 2000] Vladimir Vapnik. The Nature of Statistical Learning Theory. Statistics for
Engineering and Information Science, Springer, 2000.

[Weston & Watkins, 1999] Jason Weston, Chris Watkins. Support vector machines for multi-class
pattern recognition. ESANN: 219–224, 1999.

[Williams & Seeger, 2001] Christopher K. I. Williams, Matthias W. Seeger. Using the Nyström
method to speed up kernel machines. NIPS: 682–688, 2001.

[ , 2020] , , . . , 2020.

[ , 2016] . . , 2016.

123 / 124
SVM -

[ & , 2018] , . .
, 2018.

124 / 124

You might also like