上一节我们讲到,我们要像线性分类器一样找到一个超平面,不仅能够对数据点进行一个准确的分隔,同时我们希望所有的点尽量都能够远离我们的超平面,即所有点的f(x)值都是很大的正数或者是很小的负数。
但这里就会有一个疑问了,为什么f(x)值能够代表数据点远离超平面的程度呢?接下来,我们将讨论点到超平面的距离问题。
1、函数间隔
我们的函数间隔定义为:
函数间隔
可以看到,函数间隔其实就是类别标签乘上了f(x)的值,可以看到,该值永远是大于等于0的,正好符合了距离的概念,距离总不能是负的吧。那么为什么该值可以表示数据点到超平面的距离呢?我们不妨这样想,假设y=1,f(x)=1,其实就是将原来的分类超平面f(x) 向右平移了1个单位,而y=1,f(x)=2是将原来的分类超平面f(x) 向右平移了2个单位,所以f(x)值越大的点到分类超平面的距离当然越远,这就解释了我们之前提出的问题。
但是函数间隔存在一定的问题,上述定义的函数间隔虽然可以表示分类预测的正确性和确信度,但在选择分类超平面时,只有函数间隔还远远不够,因为如果成比例的改变 w 和 b,如将他们改变为 2w 和 2b,虽然此时超平面没有改变,但函数间隔的值 yf (x) 却变成了原来的 4 倍。
所以在实际中,我们定义点到超平面的距离时,采用的是几何间隔。
2、几何间隔
在介绍几何间隔之前,我们先来看一下下图:
几何间隔
对应的为 x0,由于 w 是垂直于超平面的一个向量,r 为样本 x 到分类间隔的距离,我们有:
要理解这个式子,我们首先需要知道为什么w是垂直于超平面的向量,其实举个例子就很容易明白,假设超平面的公式为 \(x_1+x_2-1=0\)
\(w=(1,1)^T\)(表示转置):
另一方面,要想使r表示距离,我们必须对w进行标准化,所以需要除以它的二范数。
又由于 x0 是超平面上的点,满足 f(x0) = 0,代入超平面的方程即可算出:
这个式子是如何推导的呢,看下面的过程:
推导过程
字写的比较烂,希望大家不要介意。
不过这里的 γ 是带符号的,我们需要的只是它的绝对值,因此类似地,也乘上对应的类别 y 即可,因此实际上我们定义几何间隔为:
几何间隔
可以看到,此时系数的成倍的变化,不会带来几何间隔的改变。数学功底比较深厚的童鞋可能发现了,这里的几何间隔其实就是我们本科高等数学中学到的点到直线的距离公式,这里我们顺手就将其推倒出来了,是不是很有成就感!
点到直线的距离公式(分母就是二范数)
转自:https://www.jianshu.com/p/2e3c0c583e85
一、函数间隔
函数间隔
一般来说, 一个点距离分离超平面的远近可以表示分类预测的确信程度。在超平面 \(w\cdot x+b=0\) (等于0代表是平面上的点)确定的情况下, \(|w\cdot x+b|\)(不为0代表该点不在平面上,和平面之间有距离)能够相对地表示点距离超平面的远近。 \(w\cdot x+b\) 的符号与类标记 \(y\)的符号是否一致能够表示分类是否正确。所以可用 \(y(w\cdot x+b)\)来表示分类的正确性(方向)及确信度(距离),这就是函数间隔(functional margin)的概念(两个函数之间的距离,平面上的点由一个函数确定,平面外的这个点也由一个函数确定,这两个函数确定的超平面是平行的)。
定义
对于给定的训练数据集 \(T\) 和超平面 \((w,b)\),定义超平面 \((w,b)\)关于样本点 \((x_i,y_i)\)的函数间隔为:
\(\hat{\gamma_i}=y_i(w\cdot x_i+b)\)
定义超平面\((w,b)\)关于训练数据集 \(T\)的函数间隔为超平面 \((w,b)\)关于 \(T\)中所有样本点 \((x_i,y_i)\) 的函数间隔最小值(样本点很多,取函数间隔最小的点即可),即:
\(\hat{\gamma}=\mathop{min}\limits_{i=1,2,...,N}\hat{\gamma_i}\)
当选择分离超平面时,只有函数间隔还不够。因为只要成比例地改变,例如将它们改为\((2w,2b)\),平面并没有改变,但函数间隔却成为原来的两倍。所以可以对分离超平面的法向量加某些约束,如规范化,\(||w||=1\),使得间隔是确定的 。这时函数间隔成为几何间隔 (geometric margin)
二、几何间隔
定义
对于给定的训练数据集 \(T\)和超平面\((w,b)\),定义超平面 \((w,b)\)关于样本点\((x_i,y_i)\)的几何间隔为:
\(\gamma_i=y_i({w\over||w||}\cdot x_i+{b\over||w||})\)
定义超平面 \((w,b)\) 关于训练数据集 \(T\)的几何间隔为超平面 \((w,b)\) 关于 \(T\)中所有样本点 \((x_i,y_i)\)的几何间隔最小值,即:
\(\gamma=\mathop{min}\limits_{i=1,2,...,N}\hat{\gamma_i}\)
超平面 \((w,b)\)关于样本点 \((x_i,y_i)\) 的几何间隔 是实例点到超平面的带符号的距离 (signed distance) ,当样本点被超平面正确分类时就是实例点到超平面的距离。
三、函数间隔和几何间隔的关系
\(\gamma_i={\hat\gamma_i\over||w||}\)
\(\gamma={\hat\gamma\over||w||}\)
若 \(\|w\|=1\),那么函数间隔和几何间隔相等,如果超平面参数成比例地改变(超平面没有改变) ,函数间隔也按此比例改变,而几何间隔不变。