【神经网络】神经元模型和感知器

1.神经元模型

在生物神经网络中,每个神经元与其他神经元相连,当它“兴奋”时,就会向相连的神经元发送化学物质,从而改变这些神经元内的电位。如果某神经元的电位超过了一个“阈值”,那么它就会被激活,即“兴奋”起来。

1943年,心理学家McCulloch和数学家Pitts提出了第一个抽象的神经元模型,称为MP模型。MP模型是人工神经网络的基本单元,如下图所示:

其中,向量x = (x_{1},x_{2},...,x_{n})^{T}是神经元模型的输入,为第i个神经元到第n个神经元的输出。w = (w_{1},w_{2},...,w_{n})^{T}是与输入相对应权值。在输入和神经元之间通常还有一个偏置(图上未画),这里记为b,神经元的输出为y。

整个过程为:神经元接收来自 n个其他神经元传递过来的输入信号x,将输入 x 和所对应的权值W 相乘后再求和,得到神经元接收到的总输入值\sum x_{i}w_{i},然后通过激活函数f处理产生神经元最终的输出y,如下式所示:

                                                                                                    y = f(\sum_{i = 0}^{n} w_{i}x_{i}+b)

激活函数f用于模拟人脑部神经元对输入的信息进行处理并判断是否产生对应的响应,即是否“兴奋”。常见的激活函数有:

  • 阶跃函数

 其中z表示阈值,即当输入x超过阈值z时(一般情况下z=0),激活函数的输出为1,表示神经元被激活,否则被抑制。但是可以看出,其函数输出是不连续的,为此更多地采用sigmoid函数。

  • Sigmoid函数

Sigmoid函数是在定义域内连续递增的函数,把输入映射到0到1之间,其中 被映射到1, 被映射到0。同样会设置一个阈值,当sigmoid函数的输出大于这个阈值时,神经元模型被激活。 

它们的图像如下:

MP模型虽然简单,却建立了神经网络大厦的地基。但是MP模型中,权重的值都是预先设置的,因此不能学习 

2.感知器

2.1 基本结构

感知器模型(Perceptron)是在1958年由计算科学家Rosenblatt首先提出的。感知器由两层神经元组成,分别为输入层和输出层构成。输入层接收外界输入信号后传递给输出层,输出层是 M-P 神经元,也就是说只有输出层神经元进行激活函数处理。如下图所示:

 

感知器的计算公式如下所示:

                                                                                          y = f(\sum_{i = 0}^{n} w_{i}x_{i}+b)

所采用的激活函数f为sign函数:

                                                                                        sign(x) = \left\{\begin{matrix} 1, x \geqslant 0 & \\ -1,x <0& \end{matrix}\right.

可以把感知机看作是n维实例空间中的超平面决策面,对于超平面一侧的实例,感知器输出1,即正例;对于另一侧的实例输出 -1,即负例。这个决策超平面方程就是wx+b = 0(n=2的话,即二维实例空间,此时感知机退化成一条直线)。那些可以被某一个超平面分割的正反样例集合称为线性可分样例集合,换句话说,感知机是一种线性的分类模型不能完成非线性的分类

从计算表达式上来看,感知器模型与神经元模型并没有明显区别,但是实际上主要的区别有三点:
(1)感知器的输入变成了一层神经元,而神经元模型的输入为其他神经元的输出信号;
(2)感知器的激活函数为sign函数,而神经元模型的激活函数可以是sign函数,也可以是sigmoid函数等;
(3)感知器可以采用有监督的方式学习到参数值,而神经元模型的参数是不能被学习的

2.2 损失函数 

感知器最大的亮点就是在于可以利用梯度下降算法来自主更新参数,为此必须要建立起损失函数。定义感知机的损失函数之前需要明确以下几点:

(1)当wx+b > 0y = +1,即数据被预测为正例;当wx+b < 0y = -1,数据被预测为负例,因此对于正确分类的数据都满足y(wx+b) > 0,分类错误的数据y(wx+b) < 0

(2)点到平面的距离计算公式为:d = \frac{|wx + b|}{||w||}

所以定义感知机的损失函数可以让误分类的数据到直线的距离和最小,此时误分类点到超平面的距离是:

                                                                                      d_{i} = -\frac{y_{i}(wx_{i} + b)}{||w||}

这样,假设超平面S的误分类点集合为M,那么所有误分类点到超平面的总距离为:
                                                                                     \frac{1}{||w||} \sum_{i = 0}^{M} y_{i}(wx_{i} + b)

不考虑\frac{1}{||w||},就得到了感知机学习的损失函数

                                                                                         L(w,b) =-\sum_{i = 0}^{M} y_{i}(wx_{i} + b)

显然,损失函数是非负的。如果没有误分类点,损失函数的值为0。而且误分类点越少,误分类点离超平面越近,损失函数的值就越小。

为什么损失函数可以不考虑1/||𝑤||?

  • 1/||𝑤||不影响𝑦𝑖(𝑤⋅𝑥𝑖+𝑏)正负的判断,即不影响学习算法的中间过程。因为感知机学习算法是误分类驱动的,这里需要注意的是所谓的“误分类驱动”指的是我们只需要判断−𝑦𝑖(𝑤⋅𝑥𝑖+𝑏)的正负来判断分类的正确与否,而1/||𝑤||并不影响正负值的判断。所以1||𝑤||对感知机学习算法的中间过程可以不考虑。
  • 1||𝑤||不影响感知机学习算法的最终结果。因为感知机学习算法最终的终止条件是所有的输入都被正确分类,即不存在误分类的点。则此时损失函数为0. 对应于−1/||𝑤||∑𝑖∈𝑀𝑦𝑖(𝑤⋅𝑥𝑖+𝑏),即分子为0.则可以看出1/||𝑤||对最终结果也无影响。

综上所述,即使忽略1/||𝑤||,也不会对感知机学习算法的执行过程产生任何影响。反而还能简化运算,提高算法执行效率。

2.3 梯度下降更新

梯度下降首先要求得损失函数对于参数的梯度,即导数。通过连式法则,很容易求出损失函数对参数W和b的导数:

                                                                                     dw = -\sum_{i = 0}^{M}y_{i}x_{i}

                                                                                       db = -\sum_{i = 0}^{M}y_{i}

梯度下降进行更新:

                                                                                    w = w -\eta dw = w + \eta y_{i}x_{i}

                                                                                       b = b - \eta db = b + \eta y_{i}

2.4 感知机和SVM的异同。

(1)相同点:

  • 都可以求取一个超平面来完成线性的二分类问题
  • 均属于监督学习的分类器

(2)不同点

  • SVM可以通过改变核函数来解决非线性问题,而感知机不行
  • 感知机的损失函数为所有误分类点的几何距离,使其最小,SVM的损失函数是参数的L2范数,也就是结构风险最小化的。或者说感知机的损失函数是函数距离的和,而支持向量机是几何距离的和,感知机是去掉距离限制的SVM
  • 感知机追求最大程度正确划分,最小化所有错误点到超平面的距离,很容易造成过拟合。而支持向量机最求两种数据最大程度的分开,即最大化支持向量点之间的间隔,一定程度上避免了过拟合,
  • 6
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值