是的。
李航老师书上证明了一个结论,线性可分的训练数据集的最大间隔分离超平面是存在而且唯一的,细节可以查小蓝书。
对于线性不可分的训练数据集,用高斯核可以让训练数据完美可分,但是这样很容易overfitting,以下是详细推导,参考https://blog.youkuaiyun.com/taoqick/article/details/102644779,最终SVM训练后的表达式是:
f(x)=wTx+b=∑i=1mαiyixiTx+bf(x)=w^Tx+b=\sum_{i=1}^{m}\alpha_{i}y_{i}x_i^Tx+bf(x)=wTx+b=i=1∑mαiyixiTx+b
所谓的核函数,就是把xiTxx_i^TxxiTx变成K(xi,x)K(x_i,x)K(xi,x)把原空间的数据映射到一个非线性空间,此时得到的函数表达式是:
f(x)=wTx+b=∑i=1mαiyiK(xiT,x)+bf(x)=w^Tx+b=\sum_{i=1}^{m}\alpha_{i}y_{i}K(x_i^T,x)+bf(x)=wTx+b=i=1∑mαiyiK(xiT,x)+b
其实我们就是希望找到解,使得:
min∣∣w∣∣2,s.t,f(xi)yi>=1(公式1)min{\frac{||w||}{2}}, s.t, f(x_i)y_i>=1 (公式1)min2∣∣w∣∣,s.t,f(xi)yi>=1(公式1)
这个约束条件并不难满足,固定b=0:
f(xi)yi=yi∑j=1m(αjyjK(xj,xi))=yjαjyjK(xj,xj)+yi∑j=1,i!=jm(αjyjK(xj,xi))=αj+yi∑j=1,i!=jm(αjyjK(xj,xi))f(x_i)y_i=y_i\sum_{j=1}^m(\alpha_jy_jK(x_j,x_i))\\
=y_j\alpha_jy_jK(x_j,x_j)+y_i\sum_{j=1,i!=j}^m(\alpha_jy_jK(x_j,x_i))\\=\alpha_j+y_i\sum_{j=1,i!=j}^m(\alpha_jy_jK(x_j,x_i))f(xi)yi=yij=1∑m(αjyjK(xj,xi))=yjαjyjK(xj,xj)+yij=1,i!=j∑m(αjyjK(xj,xi))=αj+yij=1,i!=j∑m(αjyjK(xj,xi))
因此只要让αj\alpha_jαj足够大,高斯核K(xj,xi)K(x_j,x_i)K(xj,xi)足够小,大于1是没有任何问题的,而最优解也一定满足以上的条件。
但是如果加入了松弛变量以后,目标函数变成了
C∑i=1mξ+12∣∣w∣∣2C\sum_{i=1}^m\xi+\frac{1}{2}||w||^2Ci=1∑mξ+21∣∣w∣∣2
极端情况下,整个目标函数都等于0,但是训练集的数据并不一定能都分对
参考李航老师的书、西瓜书、葫芦书