周志华《机器学习》同步学习笔记 ——第六章 支持向量机
6.1 间隔与支持向量
定义: 1.分类学习中应找到两类训练样“正中间”的划分超平面(泛化能力最强)
2. 样本空间中任意点
x
x
x到超平面
(
ω
,
b
)
(\omega,b)
(ω,b)的距离
3.支持向量:使等号成立的离超平面最近的训练样本点
4.间隔:两个异类支持向量到超平面的距离之和
γ
=
2
∥
ω
∥
\gamma =\frac{2}{\left \| \omega \right \|}
γ=∥ω∥2 5.支持向量机(SVM)基本型:最大化间隔以使分类结果最鲁棒
6.2 对偶问题
得到对偶问题
SVM的基本型是一个凸二次规划问题,先用拉格朗日乘子得出其对偶问题
注意这是个有不等式约束的问题,需要满足KKT条件
最终解得模型
f
(
x
)
=
ω
T
x
+
b
=
∑
i
=
1
m
α
i
y
i
x
i
T
x
+
b
f(x)=\omega ^{T}x+b =\sum_{i=1}^{m} \alpha_{i}y_{i}\mathbf{x_{i}^{T}x}+b
f(x)=ωTx+b=i=1∑mαiyixiTx+b
注意到:对于任意样本总有
α
i
=
0
\alpha_{i} = 0
αi=0或
y
i
f
(
x
i
)
=
1
y_{i}\mathbf{f(x_{i})} = 1
yif(xi)=1 这对应了向量机的重要性质: 训练完成后,大部分的训练样本不需要保留,最终模型仅与支持向量有关
SMO求解
为求解6.11这个二次规划问题,SMO是一个高效算法。
思路:固定
α
i
\alpha_{i}
αi之外的所有参数然后求
α
i
\alpha_{i}
αi上的极值。 SMO执行两个步骤至收敛:
1.选取恰当的
α
i
\alpha_{i}
αi与
α
j
\alpha_{j}
αj 。第一个变量选取违背KKT条件程度较大的变量使得目标函数减幅较大,第二个变量与前个变量间隔需最大以使得更新带给目标函数更大变化(启发式)
2.固定
α
i
\alpha_{i}
αi与
α
j
\alpha_{j}
αj 以外的参数,求解6.11更新后的
α
i
\alpha_{i}
αi与
α
j
\alpha_{j}
αj
具体来看:考虑那个对b偏导等于0的约束 得到常数
c
=
α
i
y
i
+
α
j
y
j
c=\alpha_{i}y_{i}+\alpha_{j}y_{j}
c=αiyi+αjyj 消去6.11中的
α
j
\alpha_{j}
αj变成只有一个
α
i
\alpha_{i}
αi的关于其
≥
0
\geq0
≥0的二次规划问题,即可求得两个
α
\alpha
α
确定b:
6.3 核函数
对于原始样本空间不存在能正确划分两类样本超平面的问题,可以将样本映射到更高纬的特征空间,使得样本在这个特征空间内线性可分。其最优化问题涉及到样本映射到特征空间的内积。但是特征维数可能很高,所以需要核函数直接在样本空间直接计算结果。
模型最优解通过训练样本的核函数展开,称为 支持向量展式
定理:
表明:只要一个对称函数对应的核矩阵半正定,就能作为核函数使用。对于一个上述矩阵,总能找到其对应的映射,也就决定了一个特征空间(RKHS)
特征空间的好坏对向量机的性能至关重要
k1,k2为核函数,则其线性组合,直积,都为核函数
6.4 软间隔与正则化
软间隔
现实任务往往很难找到合适的核函数,也难以判定线性可分的结果是不是由于过拟合造成。
为解决这个问题需要软间隔。
在允许一些样本不满足约束,最大化间隔的同时,其不满足的数目尽量少
优化目标即变为
C为常数,
ι
0
/
1
(
z
)
\iota _{0/1}(z)
ι0/1(z)为损失函数 (当
z
<
0
时
=
1
,
否
则
=
0
z<0时=1,否则=0
z<0时=1,否则=0)
为取得较好的数学性质,常用一些替代损失函数
以hinge损失导出的 软间隔支持向量机
同样用拉格朗日导出对偶问题
与硬间隔情况下的区别在于多了
α
i
≤
C
\alpha_{i}≤C
αi≤C 可以用同样方法求解和核函数展开
类似的KKT要求中
体现了最终模型仅与支持向量有关,保持了稀疏性。
如果用对率损失函数来进行导出,其模型具有自然的概率意义也可以直接用于多分类任务,但由于是光滑的单调递减,所以不能导出支持向量,依赖更多的训练样本,预测开销较大。
正则化
用一般形式描述优化目标:
其中
Ω
(
f
)
\Omega\left ( f \right )
Ω(f) 为结构风险:描述模型的性质 是正则化项
L
p
L_{p}
Lp范数是常用的正则化项,2维倾向于
ω
\omega
ω分量均衡,0和1维倾向于分量稀疏
∑
i
=
1
m
ι
(
f
(
x
i
,
y
i
)
)
)
\sum_{i=1}^{m} \iota (f(x_{i},y_{i})))
∑i=1mι(f(xi,yi))) 为经验风险:描述模型与样本的契合度
C
C
C为 正则化系数 用于二者折中 是正则化系数
6.5 支持向量回归
对于支持向量回归问题(XVR),容忍
ϵ
\epsilon
ϵ的偏差,即构建了宽度为
2
ϵ
2\epsilon
2ϵ 的间隔带,在此中被认为预测正确。
导出对偶问题及其KKT条件:
可表明:当样本在间隔带中
α
i
和
α
i
^
\alpha_{i} 和\hat{\alpha _{i}}
αi和αi^才能取非0值,且至少有一个为0
求得模型:
可用类似方法求得b
考虑特征映射形式:
6.6 核方法
发现:SVM,SVR都可表示成核函数的线性组合。
一般结论:
即优化问题都可以表示为核函数的线性组合。基于核函数的学习方法称为“核方法”,
常见:通过引入核函数将线性学习器拓展为非线性学习器。
例子:核线性判断分析
求解后等价为