支持向量机

线性可分

线性可分:假设特征空间为二维,存在一条直线,可以将两类样本分开,则为线性可分;则非线性可分即为不存在一条直线,将两类样本分开。在三维中,直线变为平面。超过四维时,则直线平面化为超平面

线性可分的严格定义:一个训练样本集 \(\left\{\left(X_{i}, y_{i}\right), \ldots,\left(X_{N}, y_{N}\right)\right\}\) ,在 \(\mathrm{i}=1 \sim \mathrm{N}\) 线性可分,是指存在\(\left(\omega_{1}, \omega_{2}, b\right)\),使得对\(\mathrm{i}=1 \sim \mathrm{N}\),有

\[(1) 若 y_{i}=+1 , 则 \omega_{1} x_{i 1}+\omega_{2} x_{i 2}+b>0 \]

\[(2) 若 y_{i}=-1 , 则 \omega_{1} x_{i 1}+\omega_{2} x_{i 2}+b<0 \]

最优分类直线

支持向量:两条平行线所插到的样本称为支持向量。

间隔:两条平行线之间的距离称为间隔。

jfo7hq.png

在线性可分的情况下,支持向量机寻找的最优分类直线应该满足:

  1. 该直线分开了两类;
  2. 该直线最大化间隔;
  3. 该直线处于间隔的中间,到所有支持向量的距离相等。

最优分类超平面

SVM的任务就是找到一个超平面,使之能够分开两类样本,同时使得两类样本的支持向量距离超平面最远且相等。超平面方程如下:

\[\omega^{T} x+b=0 \]

在n维空间中,点 \(x=(x_1,x_2,...,x_n)\) 到直线 \(\omega^{T} x+b=0\) 的距离公式为:

\[\frac{\left|\omega^{T} x+b\right|}{\|\omega\|} \]

假设超平面到支持向量的距离为d,于是有如下公式:

\[\left\{\begin{array}{l} \frac{\omega^{T} x+b}{\|\omega\|} \geq d \quad y=1 \\ \frac{\omega^{T} x+b}{\|\omega\|} \leq-d \quad y=-1 \end{array}\right.\]

\(x\) 为支持向量时取等号,当 \(x\) 为非支持向量时,距离大于d。

将上述公式稍作变化,方程两边同时乘 \(\|\omega\|\) ,令 \(\|\omega\|d\) 为1(方便推导,且对目标函数优化无影响,且其值为常数,等比例变化常数,超平面不发生变化),并将两个方程合并,得到如下公式:

\[y\left(w^{T} x+b\right) \geq 1 \]

由于前面令 \(\|\omega\|d = 1\) ,则支持向量到超平面的距离为

\[d = \frac{1}{\|\omega\|} \]

由此可见,最大化支持向量到超平面的距离,等价于最小化 \({\|\omega\|}\),为方便后续的求导计算,可将优化问题定义为

\[最小化\frac{1}{2}\|\omega\|^{2} \]

\[限制条件:y\left(w^{T} x_i+b\right) \geq 1 ,(\mathrm{i}=1 \sim \mathrm{N}) \]

其中\(\left(X_{i}, y_{i}\right),\mathrm{i}=1 \sim \mathrm{N}\)是已知的,\(\omega\)和b是未知的

由此可见,此类问题为凸优化问题中的二次规划问题。
二次规划问题定义:

  1. 目标函数是二次项
  2. 限制条件是一次项

此类凸优化问题,要么无解,要么只有唯一的最小值。(凸优化问题可以当做一个已经解决的问题,可直接用梯度下降求解最小值)