目录
SVM模型
函数间隔
将图中五角星所代表的正例样本用1表示,将实心圆所代表的负例样本有-1表示;实体加粗直线表示某条分割面;两条虚线分别表示因变量y取值为+1和-1时的情况,它们与分割面平行。
不管是五角星代表的样本点,还是实心圆代表的样本点,这些点均落在两条虚线以及虚线之外,则说明这些点带入到方程w'x+b所得的绝对值一定大于等于1。
进而可以说明如果点对应的取值越小于-1,该样本为负例的可能性越高;点对应的取值越大于+1,样本为正例的可能性越高。
γ i ^ = y i ∗ ( w ′ x i + b ) \hat{\gamma_i}=y_i *(w'x_i +b) γi^=yi∗(w′xi+b)
其中,y_i 表示样本点所属的类别,用+1和-1表示。当 w ′ x i + b w'x_i +b w′xi+b计算的值小于等于-1时,根据分割面可以将样本点 x i x_i xi对应的 y i y_i yi预测为-1;当 w ′ x i + b w'x_i +b w′xi+b计算的值大于等于+1时,分割面会将样本点 x i x_i xi对应的 y i y_i yi预测为+1。故利用如上的乘积公式可以得到线性可分的SVM所对应的函数间隔满足>=1的条件。
几何间隔
γ i = γ i ^ ∥ w ∥ = y i ∗ ( w ′ x i + b ) ∥ w ∥ = ∣ w ′ x i + b ∣ ∥ w ∥ = d i \gamma_i=\frac{\hat{\gamma_i}}{\parallel{w}\parallel} =\frac{y_i *(w'x_i +b)}{\parallel{w}\parallel}=\frac{|w'x_i +b|}{\parallel{w}\parallel}=d_i γi=∥w∥γi^=∥w∥yi∗(w′xi+b)=∥w∥∣w′xi+b∣=di
当分割面中的参数w和b同比例增加时,所对应的 γ i ^ \hat{\gamma_i} γi^值也会同比例增加,但这样的增加对分割面 w ′ x i + b = 0 w'x_i +b=0 w′xi+b=0来说却丝毫没有影响。
所以,为了避免这样的问题,需要对函数间隔做约束,常见的约束为单位化处理。
线性可分的SVM模型
目标函数
J ( w , b , i ) = a r g w , b m a x m i n ( d i ) = a r g w , b m a x m i n y i ∗ ( w ′ x i + b ) ∥ w ∥ = a r g w , b m a x 1 ∥ w ∥ m i n ( y i ∗ ( w ′ x i + b ) ) = a r g w , b m a x 1 ∥ w ∥ m i n ( γ i ^ ) J(w,b,i) = arg_{w,b}maxmin(d_i) \\ =arg_{w,b}maxmin\frac{y_i *(w'x_i +b)}{\parallel{w}\parallel}\\ =arg_{w,b}max\frac{1}{\parallel{w}\parallel}min(y_i *(w'x_i +b))\\ =arg_{w,b}max\frac{1}{\parallel{w}\parallel}min(\hat{\gamma_i}) J(w,b,i)=argw,bmaxmin(di)=argw,bmaxmin∥w∥yi∗(w′xi+b)=argw,bmax∥w∥1min(yi∗(w′xi+b))=argw,bmax∥w∥1min(γi^)
目标函数的等价转换
线性可分的SVM所对应的函数间隔满足 γ i ^ > = 1 \hat{\gamma_i}>=1 γi^>=1的条件,故min(\hat{\gamma_i})就等于1.所以,可以将目标函数
J(w,b,i)等价为如下的表达式:
{ m a x 1 ∥ w ∥ s . t . y i ∗ ( w ′ x i + b ) > = 1 \begin{cases} max\frac{1}{\parallel{w}\parallel} \\ s.t. y_i *(w'x_i +b)>=1 \end{cases} {max∥w∥1s.t.yi∗(w′xi+b)>=1
由于最大化 1 ∥ w ∥ \frac{1}{\parallel{w}\parallel} ∥w∥1与最小化 1 2 ∥ w 2 ∥ \frac{1}{2} \parallel{w^2}\parallel 21∥w2∥是等价的,故可以将上面的表达式重新表示为:
{ m i n 1 2 ∥ w 2 ∥ s . t . y i ∗ ( w ′ x i + b ) > = 1 \begin{cases} min\frac{1}{2} \parallel{w^2}\parallel \\ s.t. y_i *(w'x_i +b)>=1 \end{cases} {min21∥w2∥s.t.yi∗(w′xi+b)>=1
拉格朗日乘子法
假设存在一个需要最小化的目标函数f(x),并且该目标函数同时受到g(x)<=0的约束。如需得到最优化的解,则需要利用拉格朗日对偶性将呀孙吉的最优化问题,转换成对偶问题,即:
m i n ( f ( x ) ) = m i n x m a x λ ( L ( x , λ ) ) = m i n x m a x λ ( f ( x ) + ∑ i = 1 k λ i g i ( x ) ) = m a x λ m i n x ( f ( x ) + ∑ i = 1 k λ i g i ( x ) ) min(f(x))=min_x max_{\lambda}(L(x,\lambda))\\ =min_x max_{\lambda}\Big(f(x) +\sum_{i=1}^k{\lambda_ig_i(x)}\Big) \\ =max_{\lambda}min_x\Big(f(x)+\sum_{i=1}^k{\lambda_ig_i(x)}\Big) min(f(x))=minxmaxλ(L(x,λ))=minxmaxλ(f(x)+i=1∑kλigi(x))=maxλminx(f(x)+i=1∑kλigi(x))
其中, f ( x ) + ∑ i = 1 k λ i g i ( x ) f(x)+\sum_{i=1}^k{\lambda_ig_i(x)} f(x)+∑i=1kλigi(x)为拉格朗日函数; λ i \lambda_i λi即为拉格朗日乘子,且 λ i \lambda_i λi>0
基于拉格朗日乘子法的目标函数
目标函数的求解
求偏导,令导函数为0
将导函数反代之目标函数
其中,( x i ∗ x j x_i*x_j xi∗xj)表示两个样本点的内积。最终根据已知样本点 ( x i , y i ) (x_i,y_i) (xi,yi)计算 1 2 ∑ i = 1 n ∑ j = 1 n α i α j y i y j ( x i ∗ x j ) − ∑ i = 1 n α i \frac{1}{2}\sum_{i=1}^n\sum_{j=1}^n{\alpha_i\alpha_jy_iy_j(x_i*x_j)}- \sum_{i=1}^n{\alpha_i} 21∑i=1n∑j=1nαiαjyiyj(xi∗xj)−∑i=1nαi的极小值,并利用拉格朗日乘子 α i \alpha_i αi的值计算分割面w'x+b=0的参数w和b: