神经网络发展简介

标签:#深度学习##神经网络# 时间:2018/09/20 07:13:16 作者:小木

看过很多书,都说了神经网络的进展,但总有一些小问题没有明白。这次基本上都明白了,记录一下。

模拟神经网络最早的原创文章是由麦卡洛克(Warren McCulloch)和皮茨(Walter Pitts)于1943年发表,他们提出了M-P(之所以叫M-P是因为作者两个人的名字)神经元模型,这是最早的基于神经元的模型。M-P神经元接受来自其他n个神经元的输入信号,然后使用线性组合计算这些信号的输出值,当这些输出值高于某个阈值的时候,该神经元为“兴奋”状态,输出为1,否则为0。这里可以将神经元的激活函数理解为一个阶跃函数。这种神经元模型称为M-P神经元模型。如下图所示:




M-P神经元模型有如下假设:
1、都是二元的,取值只有0和1两种情况
2、每个神经元都有一个阈值,称为\theta
3、每个神经元都从其他“兴奋(excitatory)”状态的神经元接受信号,并且它们的权重都一样(但是一个神经元可以从一个来源接受多次输入,所以这些兴奋权重都是正整数)
4、抑制性的输入与其它兴奋状态的输入相比有绝对的否决权
5、每一次迭代更新的时候,如果该神经元没有抑制性神经元作为输入,且所有兴奋状态神经元的线性组合结果高于阈值的时候,该神经元输出为1,否则为0。

这个M-P神经元模型是最早的神经元模型。这个模型没有学习的方法,但是其结果很鼓舞人心。尽管我们很难找出权重的值,也无法找出一种合适的方式将神经元连接起来以获取期望的计算结果。但是它意味着类似神经元的连接是可以计算出来的。它最大的贡献是用一种简单的方式来理解人脑如何基于简单的细胞来产生复杂的识别结果。

直到1957年康奈尔大学的罗森布拉特(Frank Rosenblatt)提出了感知机(Perceptron)模型,这是神经网络的又一个重大的突破。罗森布拉特从理论上证明了单层的神经网络在处理线性可分的问题中,可以收敛。与M-P神经元不同,感知机模型的假设如下:
1、权重和阈值不完全相同
2、权重可以是正值也可以是负值
3、没有绝对的抑制性突触
4、尽管神经元依然是两个阶段(线性组合+阶跃函数),但是输出函数范围是[-1,1],而不是之前的[0,1]。
5、最重要的是感知机有一个学习的规则。

一般的,给定训练数据集,神经元的输入权重W和阈值\theta是可以通过学习得到的。阈值可以当做权重为-1的节点,因此所有的训练都可以当做是对权重W的训练。假设训练集为(X,Y),模型对训练集X的预测结果是\hat{y},则训练方法如下:

W \leftarrow W + \Delta W

\Delta = \eta(y-\hat{y})X

这里的\eta是学习率。

然而这一段时间的神经网络的发展很快就进入冰河期。1969年闵斯基(Marvin Minsky)等人出版了《感知机》一书,认为当时的单层神经网络无法解决非线性问题(当时说无法解决异或这种问题,而异或问题是一个基本的逻辑问题,如果连这个都无法解决,那么这个模型的未来并不好),而多层神经网络的算法的训练在那个时候无法进行。直到1974年,哈佛大学的Paul Werbs提出了后向传播算法(即著名的BP方法),证明了当感知机网络多加一层,并使用BP方法训练就可以解决异或问题,但是未受重视。1983年加州理工学院的霍普菲尔德(John Hopfield)提出了一种新型网络可以解决一大类模式识别问题(旅行商问题),引起轰动,同时Rumelhart等人重新发明了BP方法,使得这一阶段的神经网络发展很好。然而,图模型和SVM等方法在此时兴起,他们具有良好的理论基础和可解释性,在很多问题上也有了很好的表现。而神经网络理论上的黑盒子等缺点使得神经网络再次消沉。同时,多层神经网络的训练需要好的硬件支持,也面临着梯度爆炸和梯度崩塌等问题。

直到2006年,辛顿(Geoffrey Hinton)等人使用深度学习这个新名词带来了神经网络的新时代,他们提出了“深度信念网络”可以通过“贪婪逐层训练”的策略来有效训练,并让大家知道目前研究者已经有能力使用现有的机器训练多层神经网络。然而当时这个模型并没有引起足够多的重视,直到后几年,深度学习在ImageNet比赛上以较大的优势获得成功之后才引起了人们的注意。至此,深度学习正式变成目前的热门技术。

欢迎大家关注DataLearner官方微信,接受最新的AI技术推送