支持向量机(SVM)
1. 推导及理解
借鉴于逻辑回归的代价函数,我们给出了支持向量机的整个优化的目标函数如下:
当最小化这个代价函数,我们会得到参数 θ θ ,然后用这个参数 θ θ 来预测 y y 的值为1还是0。当
大于或者等于0时,假设预测为1;否则,预测为0.
支持向量机常被称作大间距分类器,其实就是引入了安全的间距因子。如下图:
当 y=1 y = 1 我们希望 θTx≥1 θ T x ≥ 1 ,当 y=0 y = 0 我们希望 θTx≤−1 θ T x ≤ − 1 ,不再以0为边界,增强了限制,相当于嵌入了一个额外的安全因子!然后代价函数左边这一项会为0,只剩下右边这一项!按照这种方式优化,我们可以得到一个很有意思的边界!
我们可以通过一个图像来更加直观的来看,对于下面这样一个数据集,其中有正样本也有负样本,我们能否找到一条直线将正负样本分开呢?
没错,我们可以找到如下图很多直线来将正负样本分开。
可是,这条黑色的线比其他线要好很多,看起来像是更稳定的决策边界。如下图,
黑色的决策边界有和训练样本之间有更大的最短距离,这个距离我们称为间距(margin)。支持向量机的基本思想就是努力将正样本和负样本用最大的间距分开,因而也被成为最大间距分类器。
当上面代价函数左边为0时,支持向量机的最小化问题就变成:
补充小知识:向量的内积等与一个向量到另一个向量的投影乘以另一个向量的范数。
![]()
即 uTv=p⋅||u||