简述SVM

按照自己的理解初步的推导一下的SVM的原理,持续还会有更新,不断地加入新的内容。
SVM是一种二分类方法,是一种可以解决线性、非线性的分类算法,SVM的核心观点是在两类数据间找到一个线性“超平面”,使其与两类数据间隔最远,接下来我们按照这个思路对SVM进行推导,叙述大致思路,省略数学计算。
我们率先讨论线性可分问题,即可用一条线性直线(在二维空间,三维空间是线性平面,更高维是超平面,为便于表示我们假设二维空间)将两类分开,如下所示,定义f(x)=wTx+bf(x)=w^Tx+b分类函数,ww代表权重,xx代表数据特征,bb代表偏置,wTx+b=0w^Tx+b=0代表分类直线,当结果大于0时代表在分类直线上方,当结果小于0时代表在分类直线下方。
简述SVM
首先我们需要对间隔有一个定义,先给出一个间隔定义,名为函数间隔,functional margin。定义yy为每个数据的实际类别(labellabel),用+1和-1分别表示两类,图中圈圈为正类别+1,叉叉为负类别-1。
对每个函数点,定义γi=y(i)f(x)γ_i=y^{(i)}f(x),用labellabel乘以分类函数结果,当数据为正类,yiy^{{i}}f(x)f(x)均为正值,相乘结果为正,相反,当数据为负类,相乘结果为仍为正值,这样,我们就定义了一个恒正的间隔值,成为函数间隔。接着,对于每一个函数点,我们取一个最小值,代表这组数据的函数间隔,
γf=minγi(i=1,2,3,...,n)γ_f=\minγ_{i(i=1,2,3,...,n)}
可是仅仅使用函数间隔来表示是不够的,因为当成比例的改变wwbb,比如改变为2w2w2b2b,此时分割平面的位置没有改变,而函数间隔却改变了,这样是不严谨的,我们需要加入约束条件,使其规范化。
简述SVM
定义图中的γγ的为几何间隔,geometrical marginww实际上为法向量,我们对其进行推导,根据已知条件列出方程组,
{x1=x0+γiwwwTx0+b=0 \left\{\begin{array}{cc} x_1=x_0+γ_i\frac{w}{||w||} \\ w^Tx_0+b=0\ \end{array}\right.求得结果为γi=f(x)wγ_i=\frac{f(x)}{||w||}
因为距离非负性,将结果乘以yiy_i,得到γi=yif(x)wγ_i=\frac{y_if(x)}{||w||}对所有函数点,取最小值γg=minyif(x)w(i=1,2,3,...,n)=γfwγ_g=\min \frac{y_if(x)}{||w||}(i=1,2,3,...,n)=\frac{γ_f}{||w||}可以看出,几何间隔实际上就是函数间隔除以w||w||
我们的目的是寻找一个最大间隔分类器,因此我们要让函数间隔最大化,即
maxγgmaxγ_g
为简化计算,我们令函数间隔γf=1γ_f = 1,最后的求解即为
max1w,s.t.yi(wTxi+b)1i=1,...,n\max\frac{1}{||w||} ,s.t .y_i(w^Tx_i+b)\geq1,i=1,...,n
未完待续