核函数
在svm里,核函数是这样定义的。核函数是一个n*n(样本个数)的矩阵,其中:
$K_{ij}=exp(-\frac{||x^{(i)}-x^{(j)}||^{2}}{2\sigma ^{2}})$
也就是说,当两个向量越接近时,它们的核函数越接近于1;越远时,核函数越接近于0。在svm里,使用$K_{ij}$而不使用$(x^{(i)})^{T}x^{(j)}$,应该是就像神经网络或者逻辑回归里的激活函数吧。反正,以后出现两个样本内积的地方,都换成相应的核函数。那么从3最后求解的式子就变成了:
$\underset{\alpha}{min}W(\alpha)=\frac{1}{2} \sum_{i,j=1}^{n}y^{(i)}y^{(j)}\alpha_{i}\alpha_{j}k_{ij}-\sum_{i=1}^{n}\alpha_{i}$,使得满足(1)$\alpha_{i}\geq 0,1 \leq i \leq n$,(2)$\sum_{i=1}^{n}\alpha_{i}y^{(i)}=0$
离群点处理
在实际问题中,可能样本点并不是能够完全分成两类(比如有可能有几个正样本在负样本中间,或者相反),那这样岂不是有可能找不到超平面了?为了处理这个问题,我们将求解问题转换一下:$min_{w,b,\xi}$ $\frac{1}{2}||w||^{2}+C\sum_{i=1}^{n}\xi _{i}$,使得$y^{(i)}(w^{T}x^{(i)}+b)\geq 1-\xi _{i} ,1 \leq i \leq n$
那么对应的拉格朗日函数为:$L(w,b,\xi,\alpha,r)=\frac{1}{2}||w||^{2}+C\sum_{i=1}^{n}\xi _{i}-\sum_{i=1}^{n}\alpha_{i}[y^{(i)}(w^{T}x^{(i)}+b)-1+\xi_{i}]-\sum_{i=1}^{n}r_{i}\xi_{i}$
同样的,其对$w,b,\xi$的导数为0,然后化简,最后得到的问题为:
$\underset{\alpha}{min}W(\alpha)=\frac{1}{2} \sum_{i,j=1}^{n}y^{(i)}y^{(j)}\alpha_{i}\alpha_{j}k_{ij}-\sum_{i=1}^{n}\alpha_{i}$,使得满足(1)$0 \leq \alpha_{i}\leq C,1 \leq i \leq n$,(2)$\sum_{i=1}^{n}\alpha_{i}y^{(i)}=0$
同时有:
(1)$\alpha_{i}=0\Rightarrow y^{(i)}(w^{T}x^{(i)}+b)\geq 1$,正常样本
(2)$\alpha_{i}=C\Rightarrow y^{(i)}(w^{T}x^{(i)}+b)\leq 1$,异常样本,在支持向量之间
(3)$0< \alpha_{i}< C\Rightarrow y^{(i)}(w^{T}x^{(i)}+b)= 1$,支持向量