统计学习方法-感知机、超平面

目录

 

一、感知机

超平面介绍

感知机损失函数确定

感知机的原始形式 

 感知机的对偶形式


一、感知机

感知机是一种线性二分类模型,其思想是:对于输入空间,找到一个可以将空间分为正负两类的分离超平面,这个超平面其实就是需要的感知机。感知机分为原始形式和对偶形式。

超平面介绍

超平面:类似与一维直线上的点(0维),二维平面上的直线(1维),三维空间上的平面(2维),但是超平面一定过原点,所以,它(k-1 dim)可以将k dim空间平分成均匀的两份。

超平面公式:假设超平面法向量为统计学习方法-感知机、超平面超平面上任一点为统计学习方法-感知机、超平面,则超平面可表示为 统计学习方法-感知机、超平面统计学习方法-感知机、超平面统计学习方法-感知机、超平面。具体证明:设超平面上有一点统计学习方法-感知机、超平面,则有统计学习方法-感知机、超平面(法向量和超平面上的任意两点之间的连线的内积为0,因为互相垂直),则统计学习方法-感知机、超平面,令统计学习方法-感知机、超平面统计学习方法-感知机、超平面,则有统计学习方法-感知机、超平面统计学习方法-感知机、超平面代表着超平面到原点的距离d与法向量长度||统计学习方法-感知机、超平面||的乘积的相反数,证明:以三维空间中的平面为例,如图一,原点到平面统计学习方法-感知机、超平面的距离是向量统计学习方法-感知机、超平面的长度,它垂直于统计学习方法-感知机、超平面,同时也与法向量统计学习方法-感知机、超平面平行,我们可以看到统计学习方法-感知机、超平面的长度其实就是向量统计学习方法-感知机、超平面统计学习方法-感知机、超平面的投影,所以统计学习方法-感知机、超平面统计学习方法-感知机、超平面是向量统计学习方法-感知机、超平面统计学习方法-感知机、超平面的夹角,那么也就是op与统计学习方法-感知机、超平面的夹角,又因为统计学习方法-感知机、超平面,所以统计学习方法-感知机、超平面,是个定值,我们也可以得到超平面到原点的距离d=统计学习方法-感知机、超平面=统计学习方法-感知机、超平面

为什么超平面过原点,它仍到原点有距离?这个应该与超平面的定义有关:超平面是Rn 空间内的一个 n - 1 维的仿射子空间。仿射子空间概念查查看,我的理解是超平面是可以平移的,也不知道对不对。

统计学习方法-感知机、超平面
图一 超平面公式证明

 

空间中任一点x到超平面距离公式:

统计学习方法-感知机、超平面

 推导过程见https://blog.csdn.net/RushCode/article/details/89382749,和图一的推导类似。

感知机损失函数确定

感知机的定义如下:

统计学习方法-感知机、超平面

 统计学习方法-感知机、超平面是位于超平面上的点,统计学习方法-感知机、超平面,统计学习方法-感知机、超平面说明点位于超平面的两侧,我们的目的就是要找到一个超平面使所有的正实例点满足统计学习方法-感知机、超平面,所有的负实例点满足统计学习方法-感知机、超平面,下图直观的看出超平面的分割作用

统计学习方法-感知机、超平面

感知机要求数据集是线性可分的,由此才可能获得一个分割超平面,为了找到这样一个超平面,即确定统计学习方法-感知机、超平面统计学习方法-感知机、超平面,我们需要一个损失函数,我们通过最小化这个损失函数来找到最优的超平面。一个最优化策略是最小化误分类点的个数,但是这样的损失函数对统计学习方法-感知机、超平面统计学习方法-感知机、超平面不连续可导,这样,就不能用梯度下降法来调整参数了。另一个策是最小化误分类点到分离超平面的总距离,以总距离作为损失函数。显然,误分类个数越少,总距离越小,对一个具体的样本来说,正确分类,则损失函数是0,所以,损失函数在统计学习方法-感知机、超平面统计学习方法-感知机、超平面连续可导。

我们已经知道了空间中任意一点统计学习方法-感知机、超平面到超平面的距离公式,

统计学习方法-感知机、超平面

分类的符号函数和类别标签是+1、-1,对误分类的样例统计学习方法-感知机、超平面,我们有统计学习方法-感知机、超平面,因为统计学习方法-感知机、超平面与(统计学习方法-感知机、超平面)是异号的。所以对于误分类的点,它到分离超平面的距离是

统计学习方法-感知机、超平面

 这样,对于误分类的点集和M,我们的到所有误分类的点到超平面的总距离是

统计学习方法-感知机、超平面

不考虑统计学习方法-感知机、超平面,那么我们可以得到下面的损失函数 

统计学习方法-感知机、超平面

该损失函数就是感知机的经验风险函数。

感知机的原始形式 

我们已经得到的要优化的损失函数,即下式 

统计学习方法-感知机、超平面

感知机是误分类驱动的,我们首先赋予 统计学习方法-感知机、超平面统计学习方法-感知机、超平面初值,然后使用随机梯度下降法极小化损失函数。注意,极小化时,不是使用全部的误分类点进行梯度下降,而是一次随机选取一个误分类点进行梯度下降,这相当于每次调整超平面,使得当前误分类点回到正确分类的一侧,如此循环,直至所有点都正确分类(当然,这样很难达到)。

我们对统计学习方法-感知机、超平面统计学习方法-感知机、超平面进行梯度求偏导可得到

统计学习方法-感知机、超平面

那么我们随机选一个误分类点,对 统计学习方法-感知机、超平面统计学习方法-感知机、超平面进行梯度下降更新有

统计学习方法-感知机、超平面

 统计学习方法-感知机、超平面是学习率。

所以可以得到原始感知机的算法:

统计学习方法-感知机、超平面

例题:

统计学习方法-感知机、超平面

解答:

统计学习方法-感知机、超平面

 

统计学习方法-感知机、超平面

注意,感知机  统计学习方法-感知机、超平面统计学习方法-感知机、超平面选取不同的初值,或选取不同的误分类点(次序),最后获得的感知机都可能不同。为了得到唯一的超平面,需要加约束条件,这就是下面的线性支持向量机。另外,感知机要求训练集线性可分,否则,可以想象,超平面会一直调整,这时,算法就不在收敛,感知机的损失函数值也会忽高忽低,发生震荡。

 感知机的对偶形式

感知机的对偶形式与原始形式本质上没有区别,我们还记得原始形式是不断地对误分类的数据进行梯度计算更新参数,这里假设我们知道了所有训练样本参与更新的次数,即被分为误分类的次数,我们看前面的统计学习方法-感知机、超平面统计学习方法-感知机、超平面的更新公式,看出其实他就是在统计学习方法-感知机、超平面初值的基础上累加所有样本错误分类的次数与当前学习率统计学习方法-感知机、超平面和当前样本(统计学习方法-感知机、超平面,统计学习方法-感知机、超平面)的乘积,b类似。

更清楚的说,对一个样本(统计学习方法-感知机、超平面,统计学习方法-感知机、超平面),我们知道了它在最终找到超平面时被误分类了统计学习方法-感知机、超平面次,那么统计学习方法-感知机、超平面就得在初值统计学习方法-感知机、超平面的基础上累加统计学习方法-感知机、超平面,对b也是类似。

那么我们的训练目标就不时找合适的统计学习方法-感知机、超平面了,我们要找出每个样本对应的统计学习方法-感知机、超平面,或者说,我们令统计学习方法-感知机、超平面,我们要找到全部样本的统计学习方法-感知机、超平面

通过上述描述,我们的对偶感知机模型可以变成

统计学习方法-感知机、超平面

其实 

统计学习方法-感知机、超平面

在对偶感知机模型中,我们只需要初始化所有的统计学习方法-感知机、超平面=0就可以了,然后在训练中逐次判断对应样本是否为错误分类,若是,则对应统计学习方法-感知机、超平面加1,对应的统计学习方法-感知机、超平面统计学习方法-感知机、超平面(因为统计学习方法-感知机、超平面) 。所以我们可以得到下面对偶形式感知机的算法。

统计学习方法-感知机、超平面

统计学习方法-感知机、超平面

 

统计学习方法-感知机、超平面

 我们可以看到每次判断当前样本是否是错误分类时,都要计算统计学习方法-感知机、超平面,所以可以提前把这些计算好并以矩阵形式保存起来,这个矩阵就是Gram矩阵。

对于上面例题,我们用对偶形式的感知机求解如下:

统计学习方法-感知机、超平面

 

统计学习方法-感知机、超平面

 

 

 

参考:《统计学习方法》,李航