基本型
每个样本可以对应到样本空间中的一个点,对应样本分类也就是找到一个超平面,将不同类别的样本划分开
超平面使用线性方程来表示
ωTx+b=0
假设超平面能够将样本正确分类,则有如下条件
{ωTx+bωTx+b≥+1,≤−1,yiyi=1=−1
距离超平面最近的几个使上式等号成立的样本点称为支持向量,异类支持向量到超平面的距离之和称为间隔
γ=∣∣ω∣∣2
在满足约束条件的情况下,找到最大间隔,即最小化 ∣∣ω∣∣,等价于最大化 ∣∣ω∣∣,SVM 基本型如下
ω,bmins.t.21∣∣ω∣∣2yi⋅(ωTxi+b)≥1,i=1,2,...,m
SVM 的优化问题可以转化为一个对偶问题,求解对偶问题可以得到支持向量
核函数
在现实样本中,原始样本空间中也许不存在一个超平面能够将样本分类,此时可将样本映射到更高维的空间中,若原始空间是有限维,此时存在一个高维特征空间使样本可分
将样本映射到高维特征空间后的超平面模型可表示为
f(x)=ωTϕ(x)+b
其对偶问题中需要求解 ϕ(xi)Tϕ(xj),由于映射后的特征空间维度可能很高,直接计算较为困难,因此假设以下函数
κ(xi,xj)=ϕ(xi)Tϕ(xj)
使得样本在原始样本空间中使用函数 κ(⋅,⋅) 计算的结果等于 ϕ(xi)Tϕ(xj),这样的函数称为核函数
核函数的形式可根据以下定理确定
令 χ 为输入空间,κ(⋅,⋅) 为定义在 χ×χ 上的对称函数,则 κ 是核函数当且仅当对于 ∀D={x1,x2,…,xm},核矩阵 K 总是半正定的
K=⎣⎢⎢⎢⎢⎢⎢⎢⎡κ(x1,x1)⋮κ(xi,x1)⋮κ(xm,x1)⋯⋱⋯⋱⋯κ(x1,xj)⋮κ(xi,xj⋮κ(xm,xj)⋯⋱⋯⋱⋯κ(x1,xm)⋮κ(xi,xm)⋮κ(xm,xm)⎦⎥⎥⎥⎥⎥⎥⎥⎤
以下是几种常见的核函数
软间隔与正则化
在求解超平面时,可能难以找到一个超平面将所有样本都正确分类,或也无法保证该超平面没有过拟合,为了提高模型的泛化能力,需要允许模型在一些样本上出错,这称为软间隔,与之对应的将所有样本都分类正确的间隔称为硬间隔
软间隔的优化目标为
ω,bmin21∣∣ω∣∣2+Ci=1∑ml(yi(ωTxi+b)−1)
其中,C>0,l(⋅) 称为 0/1 损失函数
l(x)={1,0,ifx<0otherwise
通过 C 控制样本不满足约束的程度,当 C 为无穷大时,要求所有样本都满足约束
在实践中,通常用其他数学性质更好的函数来替代 l(⋅),称为替代损失,常用的有以下三种
- hinge 损失:l(x)=max(0,1−x)
- 指数损失:l(x)=e−x
- 对率损失:l(x)=log(1+e−x)
更一般地,可以将优化目标写成如下形式
fminΩ(f)+Ci=1∑ml(f(xi),yi)
以上形式称为正则化问题,其中,Ω(f)称为正则化项,C称为正则化参数