4.3.1 背景介绍
神经网络的研究范围较为广泛,作为一个多学科交叉的领域,各个学科对神经网络的定义多种多样。根据解决问题的难易程度,神经网络从简单到复杂分为神经元模型、感知机、多层网络。对于复杂的问题,多层网络的学习能力强于单层的感知器,而要训练多层网络,需要采用强大的学习算法,如误差逆传播算法、径向基函数和深度学习等。对于神经网络中存在的局部最小问题,可以采用遗传算法和粒子群算法对多层网络进行改进。
1.神经元模型与感知机
神经网络的基本组成部分是神经元模型,现今使用的“M-P神经元模型”是McCulloch和Pitts在1943年提出的抽象生物神经元兴奋传导的过程[21]。M-P神经元模型如图4-19所示。其中的神经元可以收到n个其他神经元传递过来的信号,传递过来的输入信号通过连接权重进行传递,当前神经元将接收到的输入信号进行累加并与神经元的阈值进行比较,通过激活函数f()判断神经元此刻的输出信号。其中,激活函数常用Sigmoid函数。
感知器通常是由两层神经元构成的,如图4-20所示。输入层负责接收外界信号,输出层则是一个M-P神经元,x 1、x 2表示两个输入神经元,w 1、w 2表示连接权重,y代表输出值。一般感知器的学习能力有限,这种简单的结构只解决线性可分问题,如逻辑与、或、非等。若要解决非线性问题,则需要使用多层神经网络,即引入隐含层。

图4-19 M-P神经元模型

图4-20 两层感知器网络结构图
2.误差逆传播算法与多层网络
多层网络一般呈现为层级结构,相邻神经元之间完全相连,且同层神经元之间不连接,也不跨层连接,这样的结构被称为“多层前馈神经网络”。多层网络学习能力较单层感知机要强大得多,需要采用更好的学习策略对网络进行训练,误差逆传播(Error Backpropagation,BP)算法是较为成熟的算法,通过BP算法训练多层网络,可以得到BP神经网络(如图4-21所示)。

图4-21 BP神经网络结构示意图
一般BP神经网络分为输入层、隐含层、输出层三层。在图4-21中,输入层包括x 1,…,x d共d个输入神经元,隐含层包括b 1,…,bq共q个输出神经元,输出层包括y 1,…,y l共l个输出神经元。其中,用θj来表示输出层的第j个神经元阈值,用γh来表示隐含层的第h个神经元。第i个输入层神经元与第h个隐含层神经元之间的连接权为v ih,第h个隐含层神经元与第j个输出层神经元之间的连接权为w hj。一般隐含层和输出层都使用Sigmoid函数。第h个隐含层神经元收到的输入如式(4-8)所示,第j个输出层神经元收到的输入如式(4-9)所示。
(https://www.daowen.com)
另外,BP算法采用梯度下降策略对上述参数进行调整,可以通过公式推导分别求出输出层梯度项g j和隐含层梯度项e h。
对于数据集(x k,y k),输出层的神经元每次的输出用y ∧k表示,得到BP算法如下所示。

径向基函数(Radial Basis Function,RBF)神经网络是另外一种多层神经网络,相对于BP神经网络,主要区别是其使用了径向基函数作为隐含层神经元的激活函数,能够逼近任意的非线性连续函数,解析系统难解的规律性,对问题进行泛化。
对于数据较大的系统,需要训练的模型越来越复杂,包含的参数越来越多。简单的学习算法不能更好地完成数据的训练,所以深度学习开始应用到较为复杂的模型中。其中最典型的就是深层次的神经网络,简言之就是通过增加隐含层和隐含层神经元的数目来完成上述过程。但是隐含层的增加带来的是神经网络训练的发散,不能收敛到稳定状态的问题,卷积神经网络(Convolutional Neural Network,CNN)利用权值共享的策略解决了上述问题。
3.局部最小与全局最小问题
对于BP神经网络,其数据训练的整个过程可以被总结为一个参数寻找最优解的问题。最优问题一般分为两种,即局部最小和全局最小,如图4-22所示。神经网络的训练过程就是一个计算连接权和阈值使误差最小的过程。
定义4-9 局部最小(local minimum):如果存在一个ζ>0,使得对于任意满足|xx*|<ζ的x*都有f(x*)≤f(x),我们就把点x*对应的函数值f(x*)称为函数f(x)的一个局部最小值。
定义4-10 全局最小(global minimum):如果点x*对于任意的x都满足f(x*)≤f(x),则称f(x*)为函数f(x)的全局最小值。

图4-22 全局最小和局部最小
神经网络的训练过程容易陷入局部最小解中,为了解决该问题,可以使用遗传算法(Genetic Algorithm,GA)和粒子群优化(Particle Swarm Optimization,PSO)算法使其跳出局部最小,从而获得全局最小,得到最优的参数。
两种算法跳出局部最优都采用启发性的策略。遗传算法是人工智能领域中用于解决最优化问题的一种启发式算法,基本的运算过程包括种群的初始化、个体评价、选择运算、交叉运算、变异运算等过程,其输出是进化过程中具有最大适应度的个体。粒子群优化算法与遗传算法相似,从随机解出发,通过不断迭代寻找最优解,但没有交叉与变异的过程。