机器学习之感知机

作者: zenRRan | 来源:发表于2017-05-28 13:57 被阅读170次

什么是感知机

感知机是二分类的线性分类模型,输入为实例的特征向量,输出为实例的类别(取+1和-1)。
感知机目的在求一个可以将实例分开的超平面,为了求它,我们用到基于误分类的损失函数和梯度下降的优化策略。

感知机模型

比如x表示n维的数据,y表示数据的类别。则感知机公式可表示为:
f(x) = sign(wx + b)
其中w,b为模型参数,w为权值,b为偏置。w
x表示w,x的内积。这里sign是激励函数:

sign(x)

该感知机超平面的线性方程为:
w*x + b = 0
它的几何意义是:

Paste_Image.png
该平面(w1x1 + w2x2 + b= 0)距离在轴上的坐标为:
(0 , -b/w2)
(-b/w1 , 0)
(后面的代码会用到,这里提前说明下。)
这里再说明其他的一点知识并证明下 w为什么是超平面的法向量:
Paste_Image.png
这里再补充点超平面的知识:

超平面分离定理是应用凸集到最优化理论中的重要结果,这个结果在最优化理论中有重要的位置。所谓两个凸集分离,直观地看是指两个凸集合没有交叉和重合的部分,因此可以用一张超平面将两者隔在两边。

回归正题:
我们将大于0的分为+1类,小于0的分为-1类。有些比如大于0的判断为-1类或者相反则就产生了损失,刚开始第一反应就是用误分类点的数目越少作为损失函数,但是这样的损失函数的w, b并不是连续可导,无法进行优化。
于是我们想转到另一种选择,就是误分类点到超平面的距离越短越好。距离公式如下:

Paste_Image.png

如果忘记距离公式给你个提示:

Paste_Image.png
而我们知道每一个误分类点都满足-yi(wx+b)>0
因为当我们数据点正确值为+1的时候,你误分类了,那么你判断为-1,则算出来(w
x0+b)<0,所以满足-yi(w*x+b)>0

当数据点是正确值为-1的时候,你误分类了,那么你判断为+1,则算出来(wx0+b>0),所以满足-yi(wx+b)>0
则我们可以将绝对值符号去掉,得到误分类点的距离为:

Paste_Image.png
因为你知道,所以可以直接将绝对值去掉。那么可以得到总距离为:
Paste_Image.png
不考虑w范数分之一(考虑和不考虑结果都一样,经过实验证明),我们可以得到损失函数为:
Paste_Image.png
其中M为误分类点的数目。
当我们已经有了一个目标是最小化损失函数,如下图:
Paste_Image.png
我们就可以用常用的梯度下降方法来进行更新,对w,b参数分别进行求偏导可得:
Paste_Image.png
那么我们任意初始化w,b之后,碰到误分类点时,采取的权值更新为w,b分别为:
Paste_Image.png
整理下整个过程(比如二维平面):

a.选定初值w1,w2,b (相当于初始化了一个超平面)
b.在训练集中选取数据(xi,yi)(任意抽取数据点,判断是否所有数据点判断完成没有误分累点了,如果没有了,直接结束算法,如果还有进入c)
c.如果yi(w*xi+b)<0(说明是误分类点,就需要更新参数)
那么进行参数更新!更新方式如下:


Paste_Image.png

其中η为学习率在0-1之间。

代码讲解

初始化数据


Paste_Image.png
Paste_Image.png

循环迭代更新


Paste_Image.png
Paste_Image.png
Paste_Image.png
Paste_Image.png
Paste_Image.png
Paste_Image.png

欢迎关注深度学习自然语言处理公众号

image

相关文章

  • 反馈神经网络

    1、Reference 多层感知机MLP(机器学习5)多层感知机原理详解 & Python与R实现深度学习笔记——...

  • 机器学习 - 感知机

    1.感知机模型 1.1感知机定义 假设输入空间(特征空间)是,输出空间是,输入表示实例的特征向量,对应于输入空间特...

  • 机器学习_感知机

    近期,打算重温机器学习算法,之前看过之后就忘了,没有达到真正的消化,这次以思考总结和代码实践为主,发现一些不懂问题...

  • 机器学习-逻辑回归推导

    逻辑回归在机器学习中属于比较常见的模型,它由感知机模型发展而来。刚学习机器学习的时候,看到感知机这个名字好奇怪,为...

  • CH2 感知机|2.1感知机模型&2.2学习策略《统计学

    文章原创,最近更新:2018-06-21 1.感知机模型2.学习策略 参考链接:1、 机器学习十七:感知机 前言:...

  • 统计学习方法笔记(第二章个人笔记)

    统计学习方法笔记(第二章个人笔记) 标签: 机器学习深度学习 感知机(P25) 感知机是神经网络与支持向量机的基础...

  • 机器学习(一)-感知机

    形象描述感知机 感知机(Perception)是神经网络和 SVM(支持向量机)的基础,是一种二分类的线性分类模型...

  • 机器学习之感知机

    一、定义 感知机是Frank Rosenblatt在1957年就职于Cornell航空实验室(Cornel...

  • 【统计机器学习】感知机

    开始记录机器学习中的传统算法。图片来自http://www.guokr.com/blog/793310/https...

  • 机器学习之感知机

    什么是感知机 感知机是二分类的线性分类模型,输入为实例的特征向量,输出为实例的类别(取+1和-1)。感知机目的在求...

网友评论

    本文标题:机器学习之感知机

    本文链接:https://www.haomeiwen.com/subject/awfhfxtx.html