关于SVM类别选择的一点思考

学习SVM时,关于类别选择问题陷入了一个误区,现在把这个过程记录下来,希望有同样疑问的童鞋也能注意一下。

图1 二分类问题

如图1所示,直线方程为x+y-4=0,设直线上方的"o"为正例,直线下方的"+"为负例。当样本点被超平面正确分类时,满足y_i(w \cdot x_i +b) > 0条件,但是这个前提是假设直线上方的点为正例,下方的点为负例。

现在换一种打标签的方式,现在我设直线下方的点为正例,上方的点为负例,显然y_i(w \cdot x_i +b) < 0(比如说取直线下方的点(0,0),代入直线方程得w \cdot x_i+b=0+0-4<0,而此时y_i=+1,所以y_i(w \cdot x_i +b) < 0),也就是说,即使我把数据点正确分类了,但是此时满足的是y_i(w \cdot x_i +b) < 0而不是y_i(w \cdot x_i +b) > 0。那岂不是说明,如果我这样打标签的话,SVM理论就不成立了?

答案当然不是,但看似这样想也没错,问题究竟出在哪呢?

这是因为我们先入为主了,想像一下,如果让你自己解决这个分类问题,你怎么解决?现在已知的是数据点和它对应的标签,但你并不知道这条直线方程,好,现在我们的目标当然是求这个直线方程。

(1)假设直线上方数据点是正例,下方的是负例,根据SVM算法,我们求出直线方程是x+y-4=0,此时数据点被正确分类,满足y_i(w \cdot x_i +b) > 0

(2)再假设直线上方数据点是负例,下方的是正例,根据SVM算法,我们求出直线方程是-x-y+4=0,注意,现在的直线方程虽然与x+y-4=0是一样的,但却反映了不同的问题,此时数据点被正确分类,满足y_i(w \cdot x_i +b) > 0。(读者可以把正例点(0,0)代入验证一下。)

最后再举一个简单的例子来阐述一下这个问题:

引用李航老师《统计学习方法》中的例7.1:已知一个如图1所示的训练数据集,其正例点是x_1=(3,3)^Tx_2=(4,3)^T,负例点是x_3=(1,1)^T,试求最大间隔分离超平面。

解:

根据训练数据集构造约束优化问题:

\min_{w,b}\frac{1}{2}(w^2_1+w^2_2) \\ s.t. \quad \ 3w_1+3w_2+b\geq1 \\ \quad \quad \quad 4w_1+3w_2+b\geq1 \\ \quad \quad \quad -w_1-w_2-b\geq1

解得:w_1=w_2=0.5b=-2,所以最大间隔分离超平面为:0.5x_1+0.5x_2-2=0。数据点被正确分类。

现在把题目改动一下,设x_1,x_2为负例点,x_3为正例点,则优化问题变成:

\min_{w,b}\frac{1}{2}(w^2_1+w^2_2) \\ s.t. \quad \ -3w_1-3w_2-b\geq1 \\ \quad \quad \quad -4w_1-3w_2-b\geq1 \\ \quad \quad \quad w_1+w_2+b\geq1

解得:w_1=w_2=-0.5b=2,所以最大间隔分离超平面为:-0.5x_1-0.5x_2+2=0。数据点被正确分类。

也就是说,对于二分类问题,不管选哪一类为正例,哪一类为负例,都不影响分类的正确性,分离超平面也是一样的。不同的是,一个超平面为w \cdot x+b=0,另一个超平面为-w \cdot x-b=0,虽然表示的都是同一个超平面,但本质是不同的。这个差别保证了超平面一侧的点代入w \cdot x+b后的符号与相应的标签y是一致的。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 【概述】 SVM训练分类器的方法是寻找到超平面,使正负样本在超平面的两侧(分类正确性即“分得开”),且样本到超平面...
    sealaes阅读 13,832评论 0 7
  • 【概述】 1、感知机模型特征:感知机对应于输入空间中将实例划分为正负两类的分离超平面,属于判别模型。 2、感知机策...
    sealaes阅读 8,302评论 2 3
  • 本文纯理论,来源于 Andrew Ng 公开课和李航的《统计学习方法》。Support Vector Machin...
    董泽润阅读 5,027评论 0 0
  • 世界是什么?这个问题可以说一直为难着我们人类。如果你对此问题是明白而又笃定的,只能说你很幸运!这无关学识,无关身份...
    雨子_阅读 4,053评论 0 0
  • 本次学习内容: 目标词汇: Adjectives: tall, short, fat, thin, young, ...
    TimmySHENX阅读 1,683评论 0 0