4.1、支持向量机(SVM)

1、二分类问题

  在以前的博客中,我们介绍了用于处理二分类问题的Logistic Regression算法和用于处理多分类问题的Softmax Regression算法,典型的二分类问题,如图:

对于上图的二分类问题中,“.”表示的是正类,“。”表示的是负类。我们试图寻找到图中的分隔平面,能够分隔图中的正负样本,其中,分隔超平面为:

                                              

    最终的到的分类决策函数:

        

    其中,函数sign(x)为符号函数:

        

    其中,当W*X+b*>0,时为正类。当W*X+b*<0时,为负类。

2、感知机算法

  对于二分类问题,假设有m个训练样本{(X(1),y(1)),(X(2),y(2)),.......,(X(x),y(x))}其中,y∈{-1,1}。那么,应该如何从训练中的到分隔超平面W*X+b*=0?

在感知机算法中直接使用通误分类的样本到分隔超平面之间的距离作为其损失函数,并利用梯度下降法求得误分类函数额极小值,得到最终的分隔超平面。

  设直线 L 的方程为Ax+By+C=0,点 P 的坐标为(Xo,Yo),则点 P 到直线 L 的距离为:

                                                   
 

    对于训练样本点X(i),其到分隔超平面的距离S为:

      

  其中为W的L2范数,样本点X(i)到分隔超平面的距离S如图:

     在训练样本中,对于误分类的样本(X(1),y(1)),即预测值WX(i)+b与真实值y(i)异号,即:

        

   则误分类样本到分隔超平面之间的距离为:

                    

  若不考虑,即为感知机算法的损失函数,感知机算法的损失函数为:

    

  通过求感知机损失函数的最小值求得最终的分隔超平面。

2.1、感知机算法存在的问题

  在感知机算法中,通过最小化误分类样本到分隔超平面的距离,求得最终的分隔超平面,但是对于感知机算法来说,分隔超平面参数W和b的初始值和选择误分类样本的顺序对最终的分隔超平面的计算都有影响,采用不同的初始化值或者不同的误分类点,最终的分隔超平面是不同的,如下图可以分隔除不同的超平面:

  

猜你喜欢

转载自www.cnblogs.com/wanshuai/p/9207313.html