Hinge Loss + Kernel Method 就是SVM。
hinge loss
进行二分类的过程中,采取sigmoid和cross entropy的原因是gradient descent的梯度很大,利于参数调整。
Hinge loss function就是:
图中的紫色段,hinge loss 和cross entropy的差别在于对于预测准确后的样本的奖赏程度。
Linear SVM:hinge loss在某些位置是不可微分的,但是类似于relu函数
Linear SVM进行gradient descent
另外一种形式的SVM:两种形式可以互相进行转化,由于是最小化loss function,所以红色方框中两个式子是一致的。
由于w每次都是加减data point的linear combination,所以当我们最终w的值就是数据点的linear combination。如果使用hinge loss的话,偏微分的值可能为0,也就是说某些数据点不会加入到w中。只有某些数据点上对w才有影响,这些数据点可以作为support vector
通过对w用x进行表示,可以对f(x)的函数形式进行更改,最终可以表示成Dual representation的形式。
用kernel函数代替内积,在训练过程中,只需要kernel值就可以优化,求解a的值
kernel函数,x变换成Φ(x)以后进行的操作,可以先在x上进行该操作,在进行Φ(x)操作即可。
直接计算Kernel(x,z),比“特征转换+内积”的速度要快的多
基于RBF(径向基函数)的核函数,能够将样本映射到无限维的空间中。
Sigmoid Kernel:sigmoid kernel函数类似于一层隐含层的,每个神经网络的权重就是一个数据点。
不需要考虑x、z的feature,当x是结构化数据的时候,很难定义x的特征转换函数。
SVM的相关方法:
Deep Learning VS SVM
- Deep Learning的前几层可以看成是feature transformation,最后一层是linear classifier。
- SVM基于Kernel function将input映射到feature space中。