[ML Notes] SVM:非线性模型
前文假设样本是线性可分的。如果在原始样本空间内,不能存在能够正确划分两类样本的超平面,则可以将样本从原始空间映射到一个更高维的特征空间,使得样本在这个特征空间内线性可分。
假设将样本 x 映射到特征空间后,得到的特征向量为 ϕ(x),则在特征空间中的划分超平面对应的模型为
f(x)=wTϕ(x)+b
其中 w 和 b 为参数。类似于线性 SVM,此时的优化问题可以表述为
minw,b12||w||2s.t.yi(wTϕ(x)+b)≥1,i=1,2,…,m
其对偶问题为
maxαm∑i=1αi–12m∑i=1m∑j=1αiαjyiyjϕ(xi)Tϕ(xj)s.t.m∑i=1αiyi=0,αi≥0,i=1,2,…,m.
ϕ(xi) 位于高维的特征空间,式 (3) 中的内积 ϕ(xi)Tϕ(xj) 的计算量会非常大。为了避免这个计算,可以通过核函数 K(⋅,⋅) 将原始样本空间的内积转换为特征空间的内积,即
K(xi,xj)=⟨ϕ(xi),ϕ(xj)⟩=ϕ(xi)Tϕ(xj)
此时式 (3) 可以写为
maxαm∑i=1αi–12m∑i=1m∑j=1αiαjyiyjK(xi,xj)s.t.m∑i=1αiyi=0,αi≥0,i=1,2,…,m.
求解上面的优化问题,得到模型
f(x)=wTϕ(x)+b=m∑i=1αiyiϕ(xi)Tϕ(x)+b=m∑i=1αiyiK(x,xi)+b
称为支持向量展式(support vector expansion)。