感知机原理及其Gram矩阵的理解

本文借鉴统计学习方法里的内容。

感知机介绍:

感知机(perceptron)是二类分类的线性分类模型,其输入为实例的特征向量,输出为实例的类别,取+1和-1。感知机用公式表示如下:
在这里插入图片描述
其中w和b是要学习的参数。w*x+b是一个多维的超平面,维度由x决定。
感知机可以如下理解,寻找一个超平面,在该平面的两侧分别标记为两类,即+1和-1。以二维图展示如下:以x1+x2-2=0直线分割成两部分,直线上面为正,下面为负。

损失函数:

这部分介绍一下感知机损失函数的由来。感知机选用的是误分类的点到分类平面的总距离。有如下几个步骤:

  1. 点到平面的距离公式:我直接用了,推导读着可以查一下,不难。
    在这里插入图片描述
  2. 文章中,在超平面上面记为+1,下面记为-1。因此在分类正确的情况下,当y为+1时,wx+b也为正,反之一样。将标签y与距离公式合并,(xi,yi)距离超平面的距离为:
    在这里插入图片描述
    如果分类错误,则y反号,因此对于误分类的点来说,与超平面距离为:
    在这里插入图片描述
  3. 记误分类点的集合为M,损失函数为该集合内的所有点到超平面的距离之和。因此损失函数为:
    在这里插入图片描述
    忽略||w||得到最终的损失函数。
    在这里插入图片描述
    注:这里大家肯定疑问,为什么可以忽视||w||。大家可以看完我后面感知机更新参数的过程,随后我单独做解释。

感知机学习的原始方式

感知机采用梯度下降法,对损失函数求偏导来更新参数w和b
梯度如下:
在这里插入图片描述
实际上感知机并不是求出所有误分类点到超平面的总距离后再求梯度,更新参数,而是每遇到一个误分类点(xi,yi),就根据该点进行更新参数。
在这里插入图片描述
其中η是学习率,yixi是该点w的负梯度,yi是该点b的负梯度,可以参照上面梯度公式。这样没遇到一个分类错误的点,就更新一次参数,直到所有点都分类正确,得到最终的分类器。

感知机对偶方式学习

首先声明:对偶方式学习只是在计算上进行了优化,在学习原理上与原始方式是同样的。下面介绍一下对偶方式学习的理论。
在刚才介绍的原始学习方式中,每当遇到一个误分类点(xi,yi),w和b的更新为:
在这里插入图片描述
训练数据集假设有N个点,在感知机学习的全部过程中,记第i个点被分类错误的次数为ni,因此w和b的更新公式变为(此处有一个前提条件,即初始情况下,设w0=0,b0=0):
在这里插入图片描述
记αi=niη,得到如下参数更新公式:
在这里插入图片描述
可以看出αi>=0,相当于第i个点分类错误次数的一个衡量值,当第i个点分类次数越多,αi的值越大。

接下来介绍对偶方式与原始方式哪里不一样了?
对偶方式下,每遇到误分类的点,感知机的参数w和b不是直接更新,而是更新α所组成的向量,即(α1,α2…αn),这样最终感知机函数可以表示为:
在这里插入图片描述
这就是对偶方式的感知机学习过程。那Gram矩阵是怎么回事,我先直接说出来,然后后面具体解释:Gram矩阵就是(x1,x2…xn)的内积所组成的矩阵,提前将x的Gram矩阵计算出来。然后对偶方式求出的感知机函数计算时,直接利用Gram矩阵预先计算的结果,来提高算法的速度。(如有理解错误请批评指正)
我们先看一下x的Gram矩阵:
在这里插入图片描述
然后我们再看一下感知学习到的函数
在这里插入图片描述
红圈的位置不正好是内积的形式,Gram矩阵主要是针对方框包含的表达式的优化。方框内的表达式,用向量相乘的方式可以表达为:
在这里插入图片描述
这里可以看出,标红框的部分正好对应Gram矩阵的某一列,也就是当计算xi的结果时,相当于使用Gram矩阵的第i列,该列数值是预先计算好的,因此可以提升运算速度,当n越大时,效果越明显。

遗漏的问题

最后还要回答一下上面的一个问题:为什么||w||可以省略。我们发现在感知机学习的过程中,遇到误分类点时便更新参数,更新的目的是使得该点分类正确,也就是使得表达式变号。是否忽略||w||不影响函数表达式的正负,因此不影响感知机的学习更新过程,所以可以将||w||忽略。
你可能会说忽略||w||后,会影响梯度的大小,实际上我们会将负梯度乘以学习率η,梯度的变化只会带来更新次数的变化,不会影响最终分类结果。因此引起的梯度变化同样可以忽略。

  • 4
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值