在上一节中,我们对支持向量机(SVM)有了一个大概的印象,当然,这还远远不够。在深入了解之前,在本节中我们将涉及分类问题。分类的目的是学会一个分类函数或分类模型(或者叫做分类器),该模型能将数据库中的数据项映射到给定类别中的某一个,从而可以用于预测未知类别。分类在机器学习、数据挖掘等领域中得到广泛的应用,可以用来解决各种实际应用问题,因此它的重要性不言而喻。
支持向量机(SVM)算法也是分类方法的一种。
线性二分类模型
分类标准
对于两类分类问题,将数据点用
x
x
来表示,这是一个 维向量,
wT
w
T
上标中的“
T
T
”代表转置,而类别用 来表示,可以取
1
1
或者 ,分别代表两个不同的类。一个线性分类器就是要在
n
n
维的数据空间中找到一个超平面,其方程可以表示为:
这个1或–1的分类标准起源于逻辑回归,下面进行介绍。
逻辑回归
逻辑回归(Logistic Regression)的目的是从特征学习出一个 0/1 0 / 1 分类模型,而这个模型是将特征的线性组合作为自变量,由于自变量的取值范围是负无穷到正无穷。因此,使用逻辑函数(或称作Sigmoid函数)将自变量映射到 (0,1) ( 0 , 1 ) 上,映射后的值被认为是属于 y=1 y = 1 的概率。形式化表示就是:假设函数
其中 x x 是 维特征向量,函数 g g 就是逻辑函数。对于一元变量的情形, 的图像为:
由上图可以看出,函数 g g 将映射到了 (0,1) ( 0 , 1 ) ,式 (1.1) ( 1.1 ) 可作为 x x 对应 的概率:
如果要判别一个数据点 x x 属于哪个类时,只需求 ,若大于 0.5 0.5 就是 y=1 y = 1 的类,反之属于 y=0 y = 0 类,也即自变量 θTx θ T x 若大于 0 0 就是 的类,否则属于 y=0 y = 0 类。
总结:逻辑回归就是要学习得到 θ θ ,使得正例的特征远大于 0 0 ,负例的特征远小于 ,强调在全部训练实例上达到这个目标。
扩展:分类与回归的区别是什么?
答:区别在于输出变量的类型。
定量输出称为回归,或者说是连续变量预测;
定性输出称为分类,或者说是离散变量预测。
*举个例子:
预测明天的气温是多少度,这是一个回归任务;
预测明天是阴、晴还是雨,就是一个分类任务。*
形式化表示
我们采用结果标签 y=−1 y = − 1 和 y=1 y = 1 ,分别替换在逻辑回归中使用的 y=0 y = 0 和 y=1 y = 1 。同时将 θ θ 替换成 w w 和 。以前的 θTx=θ0+θ1x1+θ2x2+…+θnxn θ T x = θ 0 + θ 1 x 1 + θ 2 x 2 + … + θ n x n (其中认为 x0=1 x 0 = 1 )。现在我们替换 θ0 θ 0 为 b b ,替换后面的 为 w1x1+w2x2+…+wnxn w 1 x 1 + w 2 x 2 + … + w n x n (即 wTx w T x )。这样,我们让 θTx=wTx+b θ T x = w T x + b ,进一步 hθ(x)=g(θTx)=g(wTx+b) h θ ( x ) = g ( θ T x ) = g ( w T x + b ) 。也就是说除了 y y 由 变为 y=−1 y = − 1 ,只是标签表示值不同外,与逻辑回归的形式化表示没有区别。
现在,我们可以把式 (1.1) ( 1.1 ) 重写为:
“逻辑回归”部分提到过:只需考虑 θTx θ T x 的正负问题,而不用关心 g(z) g ( z ) ,因此我们这里将 g(z) g ( z ) 做一个简化,将其简单映射到 y=−1和y=1 y = − 1 和 y = 1 上。映射关系如下:
线性分类举例
还记得上一节桌面上用木棍分开红蓝小球的例子嘛?将其抽象到二维平面上表示为:
图中粉红色的线(即木棍)将红蓝色的点(即红蓝小球)分开,这条线也称为超平面(hyperplane),也可以说,在超平面一边的数据点所对应的 y y 全是 ,而在另一边全是 1 1 。
设分类函数(重要:后面会重点讨论)为:
显然,如果 f(x)=0 f ( x ) = 0 ,那么 x x 是位于超平面上的点。我们不妨要求对于所有满足 的点,其对应的 y y 等于 ,而 f(x)>0 f ( x ) > 0 则对应 y=1 y = 1 的数据点,见下图。
我们先从最简单的情形开始,假设数据都是线性可分的,亦即这样的超平面是存在的。当然,有些时候,或者说大部分时候数据并不是线性可分的,这个时候满足这样条件的超平面就根本不存在(后面会涉及到)。
再实际应用中,我们在进行分类的时候,将数据点 x x 代入 中,如果得到的结果小于 0 0 ,则赋予其类别 ,如果大于 0 0 则赋予类别 。如果 f(x)=0 f ( x ) = 0 ,则会出现问题,它并不属于任何一类。
参考文献
[1]支持向量机通俗导论(理解SVM的三层境界) - July
[2]分类与回归区别是什么? - 走刀口的回答 - 知乎
更多机器学习干货、最新论文解读、AI资讯热点等欢迎关注“AI学院(FAICULTY)”,内容持续更新中……
欢迎加入faiculty机器学习交流qq群:451429116(点此进群)
版权声明:本文不可任意转载,转载请联系作者。