APP下载

神经网络与深度学习基础

2018-06-11袁冰清陆悦斌

数字通信世界 2018年5期
关键词:梯度神经元神经网络

袁冰清,陆悦斌,张 杰

(国家无线电监测中心上海监测站,上海 201419)

1 引言

2016 年3月份,以深度增强学习为核心技术的人工智能围棋程序AlphaGo以4∶1击败了围棋界的小李子-曾经的围棋第一人李世石,深度学习(Deep Learning,DL)彻底火起来。到如今人工智能(Arti fi cial Intelligence,AI)遍地开花,AI除了可以做我们熟知的人脸识别、语音识别之外,还可以做很多有趣的事情,只是在图像及语音识别上面取得了全面的突破。目前,深度学习在算法领域可谓是大红大紫,现在不只是互联网、人工智能,生活中的各大领域都能反映出深度学习引领的巨大变革。要学习深度学习,那么首先要熟悉神经网络(Neural Networks,NN)的一些基本概念。这里所说的神经网络指的是人工神经网络(Ar tif icial Neural Networks,ANN)。神经网络最早是人工智能领域的一种算法或者说是模型,目前神经网络已经发展成为一类多学科交叉的学科领域,特别是随着Hinton在深度学习上取得的进展,神经网络再次受到人们的关注。本文以神经网络为主,介绍一些相关的基础知识,引出深度学习的概念。

2 神经元模型

神经元是神经网络中最基本的结构,也是神经网络的基本单元。它的设计灵感完全来源于生物学上神经元的信息传播机制。我们知道一个神经元通常由树突、轴突,轴突末梢组成,树突通常有多个,主要用来传递信号,而轴突只有一条,轴突尾端有很多轴突末梢可以用来给其他神经元传递信息。轴突末梢跟其他神经元的树突产生连接,连接的位置在生物学上叫着突触。神经元有两种状态:兴奋和抑制,一般情况下,大多数的神经元是处于抑制状态,但是一旦某个神经元收到刺激,导致它的电位超过一个阈值,那么这个神经元就会被激活,处于“兴奋”状态,进而向其他的神经元传播化学物质(其实就是信息),神经元之间的信息传输是通过突触来完成的。

1943年,McCulloch和Pitts将图1的神经元结构用一种简单的模型进行了表示,构成了一种人工神经元模型,也就是我们现在经常用到的“M-P神经元模型”,如图2所示:

从图2可以看出,神经元的输出:

式中,θ为神经元的激活阈值;函数f(·)也被称为激活函数;ω是权值。如图2所示,函数f(·)可以用一个阶跃方程表示,大于阈值激活;否则就抑制。但是阶跃函数不光滑,不连续,不可导,因此我们更常用的方法是用sigmoid函数来表示函数f(·)。sigmoid 函数的表达式和分布图如图3所示:

图1 神经元结构图

图2 M-P神经元模型

图3 sigmoid函数分布图

3 感知机和神经网络

感知机(percept ron)是由两层神经元组成的结构,输入层用于接受外界输入信号,输出层(也被称为是感知机的功能层)就是M-P神经元。图4表示了一个输入层具有三个神经元(分别表示为x0,x1,x2)的感知机结构:

由图4可知,感知机模型可表示为:

式中,ω为感知机输入层到输出成的权重;b代表输出层的偏置。实际上由于它只有一层功能神经元,所以学习能力非常有限,事实也证明,单层感知机无法解决最简单的非线性可分问题,而我们日常生活中大多数问题都是非线性可分的。既然单层感知机解决不了,我们就采用多层感知机,试验证明多层感知机确实能很好地解决非线性可分问题,我们通常将多层感知机这样的多层结构称之为神经网络。但是在解决实际问题时,我们往往要构建多层网络,而对于多层网络采用什么样的学习方法又是一项巨大的挑战,如图5所示的具有4层隐含层的网络结构至少有33个参数(神经元之间的输入x与权重ω,不计偏置b),我们如何得到最优化的参数,涉及到图5的算法。

图4 M-P结构

图5 4层隐含层神经网络参数

4 误差逆传播

所谓神经网络的训练或者是学习,其主要目的在于通过学习算法得到神经网络解决指定问题所需的参数,这里的参数包括各层神经元之间的连接权重以及偏置等。我们通常是根据实际问题来构造出网络结构,参数的确定则需要神经网络通过训练样本和学习算法来迭代找到最优参数组。说起神经网络的学习算法,不得不提其中最杰出、最成功的代表—误差逆传播(Error Back Propagation,BP)算法。BP学习算法通常用在最为广泛使用的多层前馈神经网络中。

BP算法的主要流程可以总结如下:以有监督的BP模型为例:首先我们有一个训练集D,它包括了输入xk、与被期望输出的yk,即D=(xk,yk);学习过程:

⊙ 在(0,1)范围内随机初始化网络中所有连接权和阈值。

⊙ 对所有的(xk,yk)∈D,根据当前参数计算当前样本的输出。

⊙ 计算输出层神经元的梯度项。

⊙ 计算隐含层神经元的梯度项。

⊙ 更新连接权与阈值。

⊙ 循环,直到达到条件(与期望值误差最小)。

⊙ 最后确定神经网络的连接权和阈值。

5 常见的神经网络模型

神经网络的种类越来越多,可以根据实际的应用选择合适的神经网络模型,比如上面介绍的一些简单的神经网络模型如:感知机、BP神经网络。下面再简单介绍几类常用的神经网络模型。

5.1 RBF网络

RBF(Radial Basis Function)径向基函数网络是一种单隐藏层前馈神经网络,它使用径向基函数作为神经元激活函数,而输出层则是对隐藏层神经元输出的线性组合,如图6所示。

由于网络的输出层对隐含层的线性加权,使得网络避免了像BP神经网络反向传播那样繁琐的计算,从而使网络具有较快的运算速度和较强的非线性映射能力。

图6 RBF神经网络模型

5.2 卷积神经网络(CNN)

卷积神经网络主要用于处理图像数据,但可用于其他形式数据的处理,如语音数据。一个典型的应用就是给它输入一个图形,然后它给出一个分类结果。

图7 CNN神经网络模型

5.3 递归神经网络(RNN)

与前馈神经网络不同,递归神经网络(Recurrent Neural Networks,RNN)允许网络中出现环形结构,从而可以让一些神经元的输出反馈回来作为输入信号,这样的结构与信息反馈过程,使得网络在t时刻的输出状态不仅与t时刻的输入有关,还与t-1时刻的网络状态有关,从而能处理与时间有关的动态变化RNN一般的训练算法采用推广的BP算法。从某种意义上来讲,RNN被视为是时间深度上的深度学习也未尝不对。所以RNN是推测和补全信息很好的选择。RNN在(t+1)时刻网络的结果Out(t+1)是该时刻输入和所有历史共同作用的结果,但是“梯度发散”同样也会发生在时间轴上,也就是说对于t时刻来说,它产生的梯度在时间轴上向历史传播几层之后就消失了,根本无法影响太遥远的过去。在实际中,这种影响也就只能维持若干个时间戳而已。换句话说,后面时间步的错误信号,往往并不能回到足够远的过去,像更早的时间步一样,去影响网络,这使它很难以学习远距离的影响。

图8 RNN神经网络模型

为了解决上述时间轴上的梯度发散,机器学习领域发展出了长短时记忆单元(Long-Short Term Memory,LSTM),通过门的开关实现时间上的记忆功能,并防止梯度发散。其实除了学习历史信息,RNN和LSTM还可以被设计成为双向结构,即双向RNN、双向LSTM,同时利用历史和未来的信息。

6 深度学习

深度学习指的是深度神经网络模型,一般指网络层数在三层或者三层以上的神经网络结构。理论上而言,参数越多的模型复杂度越高,“容量”也就越大,也就意味着它能完成更复杂的学习任务。就像前面多层感知机带给我们的启示一样,神经网络的层数直接决定了它对现实的刻画能力。但是在一般情况下,复杂模型的训练效率低,易陷入过拟合,因此难以受到人们的青睐。具体来讲就是,随着神经网络层数的加深,优化函数越来越容易陷入局部最优解(即过拟合,在训练样本上有很好的拟合效果,但是在测试集上效果很差)。同时,不可忽略的一个问题是随着网络层数增加,“梯度消失”(或者说是梯度发散diverge)现象更加严重。我们经常使用sigmoid函数作为隐含层的功能神经元,对于幅度为1的信号,在BP反向传播梯度时,每传递一层,梯度衰减为原来的0.25。层数一多,梯度指数衰减后低层基本接收不到有效的训练信号。

为了解决深层神经网络的训练问题,其中一种有效的手段就是采取无监督逐层训练,基本思路就是每次训练一层隐节点,训练时将上一层隐节点的输出作为输入,本层隐节点的输出作为下一层的输入,这种训练被称为“预训练”;在预训练完成后,再对整个网络进行“微调”。事实上,“预训练”+“微调”的训练方式是将大量参数分组,对每组先找到局部看起来较好的设置,然后再基于这些局部较优的结果联合起来进行全局寻优,这样就有效地节省了训练开销。

7 结束语

通过上述文章的简单介绍,我们对神经网络及深度学习有了一定的了解,因此我们希望能建立一些能工作的深度学习系统来解决无线电监测工作中的一些问题。

[1] 赵申剑,黎彧君,符天凡,李凯译.深度学习[M].北京:人民邮电出版社,2017.

[2] Poll的笔记.https://www.zhihu.com/question/34681168.

[3] 知乎 .https://www.zhihu.com/question/34681168.

猜你喜欢

梯度神经元神经网络
一个带重启步的改进PRP型谱共轭梯度法
一个改进的WYL型三项共轭梯度法
一种自适应Dai-Liao共轭梯度法
神经网络抑制无线通信干扰探究
一个具梯度项的p-Laplace 方程弱解的存在性
跃动的神经元——波兰Brain Embassy联合办公
基于神经网络的拉矫机控制模型建立
复数神经网络在基于WiFi的室内LBS应用
ERK1/2介导姜黄素抑制STS诱导神经元毒性损伤的作用
毫米波导引头预定回路改进单神经元控制