Foundations of Machine Learning 2nd——第五章(一)
本章内容
这一章主要介绍最常用,也是理论性最强的机器学习模型之一——SVMs(Supper Vector Machines)
首先会在可分数据集(separable datasets)来介绍SVMs。
之后会在不可分的数据集(non-separable datasets)上来介绍SVMs。
最后会根据margin这一概念来介绍SVM的理论基础。
线性分类
我们先来明确一下线性分类的概念:
首先输入空间用
X
\mathcal{X}
X表示,他是
R
N
(
N
≥
1
)
\Bbb{R}^N(N\geq1)
RN(N≥1)的子集。输入空间用
Y
=
{
−
1
,
+
1
}
\mathcal{Y}=\{-1,+1\}
Y={−1,+1}(二分类,关于多分类的介绍会在后面的章节独立讲述)。我们的目标函数就是
f
:
X
→
Y
f:\mathcal{X}\rightarrow\mathcal{Y}
f:X→Y。给定一个从
X
映
射
到
Y
\mathcal{X}映射到\mathcal{Y}
X映射到Y的映射集
H
\mathcal{H}
H,二分类的任务可以形式化的表示成:训练器接收到一个大小为
m
m
m,从
X
\mathcal{X}
X依据某未知的分布
D
\mathcal{D}
D独立采样出的训练集
S
S
S,
S
=
(
(
x
1
,
y
1
)
,
(
x
2
,
y
2
)
,
.
.
.
,
(
x
m
,
y
m
)
)
∈
(
X
×
Y
)
m
S=((x_1,y_1),(x_2,y_2),...,(x_m,y_m))\in(\mathcal{X}\times\mathcal{Y})^m
S=((x1,y1),(x2,y2),...,(xm,ym))∈(X×Y)m,且对于任意的
x
i
,
i
∈
[
m
]
x_i,i\in[m]
xi,i∈[m],
y
i
=
f
(
x
i
)
y_i=f(x_i)
yi=f(xi)(注意这里的
f
f
f是我们刚才说的目标函数)。任务目标是找到一个映射
h
∈
H
h\in\mathcal{H}
h∈H,将它作为二分类器,所以要求要找到generalization error最小的
h
h
h:
R
D
(
h
)
=
P
x
∈
D
[
h
(
x
)
≠
f
(
x
)
]
R_\mathcal{D}(h)=\Bbb{P}_{x\in\mathcal{D}}[h(x)\neq f(x)]
RD(h)=Px∈D[h(x)=f(x)]
根据第三章学的内容,我们希望映射集
H
\mathcal{H}
H的VC维,或者说拉德马赫复杂度越小越好,这样能够有更好的guarantee(generalization error的上界更小)。常见的拉德马赫复杂度很小的映射集就是线性分类器,或者超平面:
H
=
{
x
→
s
i
g
n
(
w
⋅
x
+
b
)
:
w
∈
R
N
,
b
∈
R
}
\mathcal{H}=\{\textrm{\textbf{x}}\rightarrow sign(\textrm{\textbf{w}} \cdot \textrm{\textbf{x}}+b):\textrm{\textbf{w}}\in \Bbb{R}^N,b\in\Bbb{R}\}
H={x→sign(w⋅x+b):w∈RN,b∈R}
N N N表示数据的维数, s i g n ( w ⋅ x + b ) = 0 sign(\textrm{\textbf{w}} \cdot \textrm{\textbf{x}}+b)=0 sign(w⋅x+b)=0以这个超平面为分类器,在平面一边的预测为正样本,另一边的预测为负样本。注意 w \textbf{\textrm{w}} w是非零向量。
可分情况
这节我们假设输入的训练数据是线性可分的,也就是说存在一个超平面能够把所有的正样本分在一边,所有的负样本在另一边。就像下图的左图一样。公式化的描述如下:
存在
(
w
,
b
)
∈
(
R
N
−
0
)
×
R
(\textrm{\textbf{w}},b)\in(\Bbb{R}^N-{\textbf{0}})\times\Bbb{R}
(w,b)∈(RN−0)×R使得:
∀
i
∈
[
m
]
,
y
i
(
w
⋅
x
+
b
)
≥
0
\forall i\in[m],y_i(\textbf{\textrm{w}}\cdot\textbf{\textrm{x}}+b)\geq0
∀i∈[m],yi(w⋅x+b)≥0
即:所有的预测标签和真实标签都是同号的。
让我们再来看看图5.1的右图,和左图相比,右图的分类器看起来似乎更好,因为他看起来分类的更准确,而能够完美分类的超平面有很多,我们应该怎么选呢?来看看下面的关于margin的定义吧~
定义5.1 Geometric margin(几何边距)
一个线性分类器
h
:
x
→
w
⋅
x
+
b
h:\textbf{\textrm{x}}\rightarrow\textbf{\textrm{w}}\cdot\textbf{\textrm{x}}+b
h:x→w⋅x+b在点
x
\textbf{\textrm{x}}
x的geometric margin
ρ
(
x
)
\rho(x)
ρ(x)就是该点距离超平面
w
⋅
x
+
b
=
0
\textbf{\textrm{w}}\cdot\textbf{\textrm{x}}+b=0
w⋅x+b=0的欧氏距离:
ρ
(
x
)
=
∣
w
⋅
x
+
b
∣
∣
∣
w
∣
∣
2
\rho(x)=\frac{|\textbf{\textrm{w}}\cdot\textbf{\textrm{x}}+b|}{||\textbf{\textrm{w}}||_2}
ρ(x)=∣∣w∣∣2∣w⋅x+b∣
一个线性分类器
h
h
h在一个样本集
S
=
(
x
1
,
x
2
,
.
.
.
,
x
m
)
S=(\textbf{\textrm{x}}_1,\textbf{\textrm{x}}_2,...,\textbf{\textrm{x}}_m)
S=(x1,x2,...,xm)上的geometric margin
ρ
h
=
min
i
∈
[
m
]
ρ
(
x
i
)
\rho_h=\min_{i\in[m]}\rho(x_i)
ρh=mini∈[m]ρ(xi),就是距离超平面最近的点的距离。
SVM要找的就是有最大 ρ h \rho_h ρh的超平面,通常称为最大边距的超平面(maximum-margin hyperplane)。图5.1右图所示的就是SVM在可分数据集上返回的maximum-margin hyperplane。
优化目标
根据我们上面说的geometric margin的定义,一个可分超平面的maximum geometric margin
ρ
\rho
ρ通过下式得到:
ρ
=
max
w
,
b
:
y
i
(
w
⋅
x
+
b
)
≥
0
min
i
∈
[
m
]
∣
w
⋅
x
+
b
∣
∣
∣
w
∣
∣
=
max
w
,
b
min
i
∈
[
m
]
y
i
(
w
⋅
x
+
b
)
∣
∣
w
∣
∣
\rho=\max_{\textbf{\textrm{w}},b:y_i(\textbf{\textrm{w}}\cdot\textbf{\textrm{x}}+b)\geq0}\min_{i\in[m]}\frac{|\textbf{\textrm{w}}\cdot\textbf{\textrm{x}}+b|}{||\textbf{\textrm{w}}||}=\max_{\textbf{\textrm{w}},b}\min_{i\in[m]}\frac{y_i(\textbf{\textrm{w}}\cdot\textbf{\textrm{x}}+b)}{||\textbf{\textrm{w}}||}
ρ=w,b:yi(w⋅x+b)≥0maxi∈[m]min∣∣w∣∣∣w⋅x+b∣=w,bmaxi∈[m]min∣∣w∣∣yi(w⋅x+b)
因为我们最终要找到最大的margin,所以计算geometric margin的时候肯定是选能使 y i ( w ⋅ x + b ) y_i(\textbf{\textrm{w}}\cdot\textbf{\textrm{x}}+b) yi(w⋅x+b)对任意 x i , i ∈ [ m ] x_i,i\in[m] xi,i∈[m]大于0的。
对于最后一个表达式,我们发现,给
y
i
(
w
⋅
x
+
b
)
y_i(\textbf{\textrm{w}}\cdot\textbf{\textrm{x}}+b)
yi(w⋅x+b)乘上任意一个常数,结果都是不变的,所以我们可以加一个约束:
min
i
∈
[
m
]
y
i
(
w
⋅
x
+
b
)
=
1
\min_{i\in[m]}y_i(\textbf{\textrm{w}}\cdot\textbf{\textrm{x}}+b)=1
mini∈[m]yi(w⋅x+b)=1。这样问题就转化成了:
ρ
=
max
w
,
b
:
min
i
∈
[
m
]
y
i
(
w
⋅
x
+
b
)
=
1
1
∣
∣
w
∣
∣
=
max
w
,
b
:
∀
i
∈
[
m
]
,
y
i
(
w
⋅
x
+
b
)
≥
1
1
∣
∣
w
∣
∣
\rho=\max_{\textbf{\textrm{w}},b:\min_{i\in[m]}y_i(\textbf{\textrm{w}}\cdot\textbf{\textrm{x}}+b)=1}\frac{1}{||\textbf{\textrm{w}}||}=\max_{\textbf{\textrm{w}},b:\forall i\in[m],y_i(\textbf{\textrm{w}}\cdot\textbf{\textrm{x}}+b)\geq1}\frac{1}{||\textbf{\textrm{w}}||}
ρ=w,b:mini∈[m]yi(w⋅x+b)=1max∣∣w∣∣1=w,b:∀i∈[m],yi(w⋅x+b)≥1max∣∣w∣∣1
图5.3中间的实现就是maximum-marginal 超平面,两次的虚线是marginal hyperplane,是与maximum-marginal hyperplane平行,且传过正样本侧或者负样本侧距离最近的点的平面。
最大化
1
∣
∣
w
∣
∣
\frac{1}{||\textbf{\textrm{w}}||}
∣∣w∣∣1等价于最小化
1
2
∣
∣
w
∣
∣
2
\frac{1}{2}||\textbf{\textrm{w}}||^2
21∣∣w∣∣2,所以优化目标转换成:
ρ
=
min
w
,
b
1
2
∣
∣
w
∣
∣
2
(
5.7
)
subject to
:
y
i
(
w
⋅
x
+
b
)
≥
1
,
∀
i
∈
[
m
]
\rho=\min_{\textbf{\textrm{w}},b}\frac{1}{2}||\textbf{\textrm{w}}||^2\quad(5.7)\\ \textrm{subject to}:y_i(\textbf{\textrm{w}}\cdot\textbf{\textrm{x}}+b)\geq1,\forall i\in[m]
ρ=w,bmin21∣∣w∣∣2(5.7)subject to:yi(w⋅x+b)≥1,∀i∈[m]
1/2是为了求导方便,使用
∣
∣
w
∣
∣
2
||w||^2
∣∣w∣∣2是因为这是凸函数,方便优化。
∇ 2 F ( w ) = I \nabla^2F(\textbf{\textrm{w}})=\textbf{\textrm{I}} ∇2F(w)=I, I \textbf{\textrm{I}} I的特征值都大于0,所以其为正定矩阵,所以 ∣ ∣ w ∣ ∣ 2 ||w||^2 ∣∣w∣∣2是严格的凸函数。
我们把约束条件写成 1 − y i ( w ⋅ x + b ) ≤ 0 1-y_i(\textbf{\textrm{w}}\cdot\textbf{\textrm{x}}+b)\leq0 1−yi(w⋅x+b)≤0的形式,从而利用拉格朗日求极值法来求解该问题。根据凸优化的特性,该优化问题只有一个解,这对机器学习算法来说是一个很大的优点,大部分算法都不具备这个优点(只能找到局部最优解)。
同时,因为目标函数是一个二次函数并且约束是仿射函数,这个优化问题属于“”二次规划"问题,“quadratic programming”(QP),很多计算机软件上集成了很多解决QP问题的包,方便求解(当然直接解SVM的包也集成的很好了。。)。
支持向量 Support Vector
我们常说SVM是“支持向量机”,所谓的“支持向量”到底是什么呢?
看一下我们的优化问题:目标函数和约束函数都是可微的凸函数,因此我们可以使用KKT求解。
引入拉格朗日因子
α
i
>
0
,
i
∈
[
m
]
\alpha_i>0,i\in[m]
αi>0,i∈[m],对应所有的
m
m
m个样本,其向量用
α
=
(
α
1
,
.
.
.
,
α
m
)
\alpha=(\alpha_1,...,\alpha_m)
α=(α1,...,αm)表示。对于所有的
w
∈
R
N
,
b
∈
R
,
α
∈
R
+
m
\textbf{\textrm{w}}\in \Bbb{R}^N,b\in\Bbb{R},\alpha\in\Bbb{R}^m_+
w∈RN,b∈R,α∈R+m,拉格朗日等式如下:
L
(
w
,
b
,
α
)
=
1
2
∣
∣
w
∣
∣
2
−
∑
i
=
1
m
α
i
[
y
i
(
w
⋅
x
i
+
b
)
−
1
]
(
5.8
)
\mathcal{L}(\textbf{\textrm{w}},b,\alpha)=\frac{1}{2}||\textbf{\textrm{w}}||^2-\sum_{i=1}^m\alpha_i[y_i(\textbf{\textrm{w}}\cdot \textbf{\textrm{x}}_i+b)-1](5.8)
L(w,b,α)=21∣∣w∣∣2−i=1∑mαi[yi(w⋅xi+b)−1](5.8)
KKT条件如下:
∇
w
L
=
w
−
∑
i
=
1
m
α
i
y
i
x
i
=
0
→
w
=
∑
i
=
1
m
α
i
y
i
x
i
(
5.9
)
∇
b
L
=
−
∑
i
=
1
m
α
i
y
i
=
0
→
∑
i
=
1
m
α
i
y
i
=
0
(
5.10
)
∀
i
∈
[
m
]
,
α
i
[
y
i
(
w
⋅
x
i
+
b
)
−
1
]
=
0
→
α
i
=
0
∨
y
i
(
w
⋅
x
i
+
b
)
=
1
(
5.11
)
\begin{aligned} &\nabla_\textbf{\textrm{w}}\mathcal{L}=\textbf{\textrm{w}}-\sum_{i=1}^m\alpha_iy_i\textbf{\textrm{x}}_i=0 \rightarrow \textbf{\textrm{w}}=\sum_{i=1}^m\alpha_iy_i\textbf{\textrm{x}}_i(5.9)\\ &\nabla_b\mathcal{L}=-\sum_{i=1}^{m}\alpha_iy_i=0 \rightarrow \sum_{i=1}^{m}\alpha_iy_i=0(5.10)\\ &\forall i\in[m] ,\alpha_i[y_i(\textbf{\textrm{w}}\cdot \textbf{\textrm{x}}_i+b)-1]=0\rightarrow\alpha_i=0\lor y_i(\textbf{\textrm{w}}\cdot \textbf{\textrm{x}}_i+b)=1(5.11) \end{aligned}
∇wL=w−i=1∑mαiyixi=0→w=i=1∑mαiyixi(5.9)∇bL=−i=1∑mαiyi=0→i=1∑mαiyi=0(5.10)∀i∈[m],αi[yi(w⋅xi+b)−1]=0→αi=0∨yi(w⋅xi+b)=1(5.11)
根据KKT条件可以看出,SVM的解是
x
i
x_i
xi的线性组合,系数是
α
i
y
i
\alpha_iy_i
αiyi,且当
α
i
≠
0
\alpha_i\neq0
αi=0的时候,也就是
y
i
(
w
⋅
x
i
+
b
)
=
1
y_i(\textbf{\textrm{w}}\cdot \textbf{\textrm{x}}_i+b)=1
yi(w⋅xi+b)=1对应的
x
i
x_i
xi才对求解有贡献。我们称
y
i
(
w
⋅
x
i
+
b
)
=
1
y_i(\textbf{\textrm{w}}\cdot \textbf{\textrm{x}}_i+b)=1
yi(w⋅xi+b)=1对应的
x
i
\textbf{\textrm{x}}_i
xi为支持向量(support vector)也是我们上文说的"marginal hyperplane"。
对偶优化
为了导出公式(5.7)的对偶优化问题,我们把KKT条件得到的表达式带入(5.7)得到:
L
=
1
2
∣
∣
∑
i
=
1
m
α
i
y
i
x
i
∣
∣
2
−
∑
i
=
1
m
∑
j
=
1
m
α
i
α
j
y
i
y
j
(
x
i
⋅
x
j
)
−
∑
i
=
1
m
α
i
y
i
b
+
∑
i
=
1
m
α
i
(
5.12
)
\mathcal{L}=\frac{1}{2}||\sum_{i=1}^m\alpha_iy_i\textrm{\textbf{x}}_i||^2-\sum_{i=1}^m\sum_{j=1}^m\alpha_i\alpha_jy_iy_j(\textrm{\textbf{x}}_i\cdot\textrm{\textbf{x}}_j)-\sum_{i=1}^m\alpha_iy_ib+\sum_{i=1}^m\alpha_i\quad(5.12)
L=21∣∣i=1∑mαiyixi∣∣2−i=1∑mj=1∑mαiαjyiyj(xi⋅xj)−i=1∑mαiyib+i=1∑mαi(5.12)
注意
1
2
∣
∣
∑
i
=
1
m
α
i
y
i
x
i
∣
∣
2
=
1
2
∑
i
=
1
m
∑
j
=
1
m
α
i
α
j
y
i
y
j
(
x
i
⋅
x
j
)
\frac{1}{2}||\sum_{i=1}^m\alpha_iy_i\textrm{\textbf{x}}_i||^2=\frac{1}{2}\sum_{i=1}^m\sum_{j=1}^m\alpha_i\alpha_jy_iy_j(\textrm{\textbf{x}}_i\cdot\textrm{\textbf{x}}_j)
21∣∣∑i=1mαiyixi∣∣2=21∑i=1m∑j=1mαiαjyiyj(xi⋅xj)
结合公式(5.10),(5.12)可化简为:
L
=
∑
i
=
1
m
α
i
−
1
2
∑
i
=
1
m
∑
j
=
1
m
α
i
α
j
y
i
y
j
(
x
i
⋅
x
j
)
\mathcal{L} = \sum_{i=1}^m\alpha_i-\frac{1}{2}\sum_{i=1}^m\sum_{j=1}^m\alpha_i\alpha_jy_iy_j(\textrm{\textbf{x}}_i\cdot\textrm{\textbf{x}}_j)
L=i=1∑mαi−21i=1∑mj=1∑mαiαjyiyj(xi⋅xj)
也就是说,优化问题(5.7)的对偶问题如下:
max
α
∑
i
=
1
m
α
i
−
1
2
∑
i
=
1
m
∑
j
=
1
m
α
i
α
j
y
i
y
j
(
x
i
⋅
x
j
)
(
5.14
)
subject to
α
i
>
0
∧
∑
i
=
1
m
α
i
y
i
=
0
\max_\alpha\sum_{i=1}^m\alpha_i-\frac{1}{2}\sum_{i=1}^m\sum_{j=1}^m\alpha_i\alpha_jy_iy_j(\textrm{\textbf{x}}_i\cdot\textrm{\textbf{x}}_j)\quad(5.14)\\ \textrm{subject to} \quad\alpha_i>0\land\sum_{i=1}^m\alpha_iy_i=0
αmaxi=1∑mαi−21i=1∑mj=1∑mαiαjyiyj(xi⋅xj)(5.14)subject toαi>0∧i=1∑mαiyi=0
对偶问题的目标函数 G : α → ∑ i = 1 m α i − 1 2 ∑ i = 1 m ∑ j = 1 m α i α j y i y j ( x i ⋅ x j ) G:\alpha\rightarrow\sum_{i=1}^m\alpha_i-\frac{1}{2}\sum_{i=1}^m\sum_{j=1}^m\alpha_i\alpha_jy_iy_j(\textrm{\textbf{x}}_i\cdot\textrm{\textbf{x}}_j) G:α→∑i=1mαi−21∑i=1m∑j=1mαiαjyiyj(xi⋅xj)是一个无限可微函数,他的海瑟矩阵是 ∇ 2 G = − A , A = ( y i x i ⋅ y j x j ) i j \nabla^2G=-\textbf{\textrm{A}},\textbf{\textrm{A}}=(y_i\textrm{\textbf{x}}_i\cdot y_j\textrm{\textbf{x}}_j)_{ij} ∇2G=−A,A=(yixi⋅yjxj)ij,显然 A \textbf{\textrm{A}} A是格拉姆矩阵(Gram matrix),是半正定的,因此 ∇ 2 G \nabla^2G ∇2G是一个半负定矩阵,从而目标函数 G G G是凹函数,同时约束矩阵是一个仿射的,也就是凸函数(仿射矩阵即是凸函数也是凹函数),所以(5.14)这个优化问题也是一个凸优化的问题(因为目标函数是max,取个负数就是min,凹函数变成凸函数),同时我们能看到 G G G也是关于 α \alpha α的二次函数,所以这也是一个二次规划问题(QP),可以调包解决。
再来~因为约束函数是仿射函数,所以满足强对偶性,因此原本的优化问题和他的对偶问题是等价的,对偶问题的解可以直接应用到原问题上求解:
h
(
x
)
=
sgn
(
w
⋅
x
+
b
)
=
sgn
(
∑
i
=
1
m
α
i
y
i
(
x
i
,
x
)
+
b
)
(
5.15
)
h(x)=\textrm{sgn}(\textbf{\textrm{w}}\cdot\textbf{\textrm{x}}+b) = \textrm{sgn}(\sum_{i=1}^m\alpha_iy_i(\textbf{\textrm{x}}_i,\textbf{\textrm{x}})+b)\quad(5.15)
h(x)=sgn(w⋅x+b)=sgn(i=1∑mαiyi(xi,x)+b)(5.15)
根据支持向量都在marginal hyperplane上这一推论,对于任意的支持向量
x
i
\textbf{\textrm{x}}_i
xi,都有
w
⋅
x
i
+
b
=
y
i
\textbf{\textrm{w}}\cdot\textbf{\textrm{x}}_i+b=y_i
w⋅xi+b=yi:
b
=
y
i
−
∑
i
=
j
m
α
j
y
j
(
x
j
,
x
i
)
(
5.16
)
b=y_i-\sum_{i=j}^m\alpha_jy_j(\textbf{\textrm{x}}_j,\textbf{\textrm{x}}_i)\quad(5.16)
b=yi−i=j∑mαjyj(xj,xi)(5.16)
我们可以观察到SVM的解都是基于向量(x)的内积,而非向量本身。这一特点对于核函数的引入来说十分重要,核函数会在第六章介绍。
定义5.2 留一损失
令
h
S
h_S
hS表示算法
A
\mathcal{A}
A在规定的样本集
S
S
S学习到的映射,
A
\mathcal{A}
A在
S
S
S上的留一损失是:
R
^
L
O
O
(
A
)
=
1
m
∑
i
=
1
m
1
h
S
−
{
x
i
}
(
x
i
)
≠
y
i
\hat{R}_{LOO}(\mathcal{A})=\frac{1}{m}\sum_{i=1}^m1_{h_S-\{x_i\}(x_i)\neq y_i}
R^LOO(A)=m1i=1∑m1hS−{xi}(xi)=yi
也就是说我们每次都把 { x i } \{x_i\} {xi}拿出来当作测试集,其余的当做训练集,训练 m m m次,平均的损失就是留一损失。
定理5.3
对
m
>
2
m>2
m>2的样本集计算的平均留一损失 是 样本大小为
m
−
1
m-1
m−1的样本集的平均generalization损失 的无偏估计:
E
S
∼
D
m
[
R
^
L
O
O
(
A
)
]
=
E
S
′
∼
D
m
−
1
[
R
(
h
S
′
)
]
\Bbb{E}_{\mathcal{S}\sim\mathcal{D^m}}[\hat{R}_{LOO}(\mathcal{A})]=\Bbb{E}_{\mathcal{S}^{'}\sim\mathcal{D}^{m-1}}[R(h_{S^{'}})]
ES∼Dm[R^LOO(A)]=ES′∼Dm−1[R(hS′)]
D
\mathcal{D}
D是样本点服从的分布。
证明略
留一损失在样本量比较小的时候比较容易计算,当样本量大的时候要计算 m m m次,计算量比较大。
定理5.4
设
h
S
h_S
hS是SVM算法在样本集
S
S
S上学习后返回的映射,令
N
S
V
(
S
)
N_{SV}(S)
NSV(S)表示定义了
h
S
h_S
hS的支持向量的数量,那么我们有:
E
S
∼
D
m
[
R
(
h
S
)
]
≤
E
S
∼
D
m
+
1
[
N
S
V
(
S
)
m
+
1
]
\Bbb{E}_{S\sim\mathcal{D}^m}[R(h_S)]\leq\Bbb{E}_{S\sim\mathcal{D}^{m+1}}[\frac{N_{SV}(S)}{m+1}]
ES∼Dm[R(hS)]≤ES∼Dm+1[m+1NSV(S)]
定理5.4给出了一个关于SVMs的稀疏性论点:算法的平均损失是由支持向量的平均比例限定(bounded)的。也许我们会希望在实践中,只有相当小的训练样本落在marginal hyperplane上,这样只有很小一部分的对偶变量
α
i
\alpha_i
αi会是非零的,返回的结果映射就会比较稀疏。
不过我们必须要注意这个边界限定的是所有的样本大小为
m
m
m的训练集的平均generalization 损失,并没有提供关于generalization 损失的方差信息,所以对于我们使用的
S
S
S的generalization损失的上界,这个定理的保证性不强。在后面的章节,我们会介绍基于margin的概率更高的强边界。