附录3 混沌神经元、递归结构与卷积神经网络计算举要
人工神经网络设法模拟活动神经元本身的状态、不同层相互的加权连接作用及其反馈机制。经典的人工神经网络便是有权连接的神经元网络,混沌神经网络的神经元具有混沌特征,递归神经网络则能保留上一时刻的神经元状态,而所谓深层神经网络则将通常的三层网络推向了多层结构。这是在认知神经科学支撑下的不断深入的建模过程,同时体现出在智能模拟探索所获得的启发。
神经元模型是人工神经网络的基础,它对应于生物学上的神经细胞。[1]神经元的结构形式并非是完全相同,不过都包括树突、轴突和突触等。一般而言,神经元本身的生物学行为包括:
●能处于抑制或兴奋状态。
●能产生抑制后的反冲。
●具有适应性。
在一个神经元与另一个神经元间联系并进行信息传送的突触的生物学行为包括:
●能进行信息综合。
●产生渐次变化的传送和延时激发。
●有电接触和化学接触等多种连接方式。
人工神经网络的研究多数是对神经元和突触的第一种行为进行模拟。一个神经元的兴奋和抑制两种状态是由神经元外细胞膜内外之间不同的电位差来表征的。神经元的电脉冲几乎可以不衰减地沿着轴突传送到其他神经元去,而人工神经网络的动态行为则是十分复杂的。
大量不同的神经元的轴突末梢可以到达同一个神经元的树突并形成大量突触。来源不同的突触所释放的神经递质都可以对同一个神经元的膜电位变化产生作用。因此,在树突上,神经元可以对不同来源的输入信息进行综合。对于来自同一个突触的信息,神经元还可以对于不同时间传入的信息进行综合。它们分别对应神经元对信息的空间综合特性和时间综合特性。
于是,对于有n个输入的神经元,某一时刻(t+1)某个神经元(i)的基本模型可以是

其中,Wij为神经元间的连接权值,f为激励函数,θ是阈值,y为实际输出。
把神经元之间相互作用的关系模型化就可以得到人工神经网络模型。人们按不同的角度对神经网络进行分类,比如前向网络和反馈网络,霍普菲尔德网络是最典型的反馈网络模型,可以解决一类模式识别问题,还可以给出一类组合优化问题的近似解,是研究得最多的模型之一。还可分为有教师学习和无教师学习网络、连续型和离散型网络、随机型和确定型网络、一阶线性关联网络和高阶非线性关联网络等。
人工神经网络结构确定后首先要自我训练。训练时,当输出值与预期值不同时,神经网络就要从错误中“学习”。方法是采用惩罚原则:如果某节点输出出错,则看该错误由哪些输入节点的影响导致的,从而调整权值。另一方面,若训练时间足够长,神经网络很可能把所有细节都努力“记得”,但对宏观上的规律性缺乏把握,即训练过度,而这并不意味着不管什么数据神经网络都能有效工作。
可以有不同的训练或学习规则,比如梯度下降法,按局部改善最大的方向一步步优化,从而最终找到接近全局优化的值。例如常见的反向传播算法,其目标函数是神经网络在所有训练样本上的预测输出与期望输出的均方误差,采用梯度下降法通过调整权值Wij使之达到最小化。
设d为期望输出,t时刻均方误差为

这里有P个学习样本,输出层有m个神经元。
针对梯度下降法,并使神经元的激励函数为可微分函数,例如Sigmoid函数,其非对称形式为f(X)=1/(1+e-x),对称形式为f(X)=(1-e-x)/(1+e-x),可以得到如下权值修正公式:

其中,ηij是可以预设的权重变化率,n是学习时的迭代次数。
运算过程一般为:
初始值:在输入累加时使每个神经元的状态值接近零。权是随机数,输入较小;权值学习可若干步进行一次。计算步骤如下:
(1)初始化,给定输入向量和目标输出。
(2)求中间层、输出层各单元输出。
(3)求实际值与目标值的偏差ε,若ε满足要求则结束。
(4)求误差梯度等,进行权值学习。
(5)回到步骤(2)。
人工神经网络的主要问题涉及:
第一,现有的人工神经网络结构的思路是否确实符合脑内过程是可以进一步探讨的,无论其运行机制还是规模都有待于认知神经科学的进一步结论并建立更为有效的模型。
第二,尽管有很多针对稳定性、收敛性、容错性等的分析工作,而网络初始权值和网络隐层神经元个数等的选取对网络的训练有较大影响,如何选取缺乏理论指导。
第三,学习算法的收敛速度往往很慢,通常要迭代成千上万次以上,更多情况下是不收敛的,而对新加入样本的学习会影响已训练好的权值,泛化能力弱、易陷入局部最优是典型问题。
3.1 混沌神经元模型
脑中混沌的发现,为人工神经网络的建模提供了进一步的参考,进而有了混沌神经网络模型。混沌神经网络的记忆可发生在混沌吸引子的轨迹上,由于其具有遍历特性,能通过动态联想记忆避免混淆、遗漏。神经网络理论研究中引入混沌学思想有助于揭示人类形象思维等方面的奥秘,进而为合理利用神经网络的混沌行为指明方向。[2]
为了在混沌语境下讨论,早先的神经元模型可表示为[3]

其中,xi(t+1)是在第t+1个离散时刻第i个神经元的输出,x取1(激活)或0(非激活),M是输入神经元个数。u定义如下:

其中,
是第j个神经元激活r+1个时间单位后影响第i个神经元的联结权值,
是第i个神经元激活r+1个时间单位后保持的对自己的影响的记忆系数,与不应性(refractoriness)相对应,θ是第i个神经元的全或无激活的阈值。这里,不应性指神经元激活后其阈值增加的性质,全或无规律是指神经元激活与否取决于刺激的强度是否大于阈值。在此基础上,假设过去的激活导致的不应性影响随指数衰减,即
=-αkr,α>0,k∈[0,1]是不应性的衰减因子,并设A(t)是离散时刻t的输入强度,进一步有如下模型:

设神经元内部状态为

则式(3)可化为

这里

下面是式(4)的证明。
由式(2)得

在通常的生物电子实验中,输入A(t)是等幅周期脉冲,于是式(6)可改为

即
A(t)-θ-a(t)=k(A(t)-θ)


又由式(3)得两边同乘以k,得

代入上面y(t+1)式,得式(4),即

由于空间钳制条件下的全或无定律未必被满足,响应并非不连续的全或无,而有连续增加的趋势,因而考虑用一连续递增函数f(·)代替式(3)中的u:

其中,xi(t+1)为[0,1]间的模拟输出,g(·)是表示神经元输出与不应性的大小间的关系的函数,f(·)可取为具有陡度参数ε的函数:

从而同理有

通过上面的分析可知,由以上神经元构成混沌神经网络时,要考虑不同于普通神经网络的方面:来自内部神经元的反馈项和外部输入项,以及不应性响应和阈值。从而有

其中,M是混沌神经元的个数,N是外部输入个数,Wij是第j个混沌神经元到第i个混沌神经元的联结权值,Vij是第j个外部输入到第i个混沌神经元的联结权值,fi(·)是第i个混沌神经元的连续输出函数,h(·)j是第j个混沌神经元的内部传递函数,Ij(t-r)是第t-r个离散时刻第j个外部输入的强度,gi(·)是第i个混沌神经元的不应性函数。假设过去的输入随时间指数衰减,形如Wijk r或Vijk r,k为衰减因子。则同样可得

当k和α趋向零,则有

上述只是可能情状之一。混沌神经网络可以由不同的奇异吸引子构成。
3.2 递归结构
有反馈的动力系统与无反馈的前向系统相比有其优点,对于某些问题,一个很小的反馈系统可能等价于一个很大的前向系统。对于网络而言,可通过增加“递归联结”来实现这一想法,从而顺序行为可保留前一响应。可将其称作“上下文单元”,它同样是“隐层单元”。递归神经网络就是具有反馈的神经网络,[4-5]其结构如附图3-1所示。
设在时间t,输入单元接收第一次输入,上下文单元初始值为0.5。输入单元和上下文单元激励隐层单元,隐层单元前馈激励输出单元,还反馈激励上下文单元。这构成了向前激励。递归联结固定为1。在时间t+1,上下文单元包含恰好为隐层单元时间t时的值。这使递归网络具有动态记忆能力。

附图3-1 递归神经网络结构
在前馈网络中,隐层单元实现输入模式的内部表达。在递归网络中,上下文单元记录前一内部状态。从而隐层单元映像外部状态和某一期望输出的前一内部状态。因为在隐层单元上的模式为上下文单元所保存,隐层单元要完成这一映像并同时表达顺序输入的时间特征。因此内部表达敏感于时间内容,时间的影响隐含于这些内部状态中。
设网络的外部输入为u(k-1)∈R m,输出为y(k)∈R,隐层输出为x(k)∈R n。又设W 1、W 2、W 3分别为输入层到隐层、隐层到输出层和上下文单元到隐层的联结权矩阵。
网络在k时刻的输入不仅包括目前的输入值,还包括隐层单元前一时刻的输出值xc(k),即x(k-1)。这时网络仅是一个前馈网络,可由上述输入通过前向传播产生输出,用反向传播算法进行联结权的修正。在训练结束后,k时刻隐层的输出值将通过递归联结部分,反传回上下文单元,并保留到下一训练时刻(k+1)。
设f(·)和g(·)分别为隐层单元和输出单元的激发函数所组成的非线性向量函数,α为上下文单元的自反馈固定增益,则有

f(·)和g(·)可分别取为

递归神经网络可以说是较早出现的一种可以具有深层结构的人工神经网络,它与卷积神经网络有机结合可呈现优良性能。
3.3 卷积神经网络计算
人类分层组织概念,首先学习简单的内容,然后用它们去表示更抽象的概念,人的视觉神经系统就是深层结构。深度学习的一般做法是:首先用无监督学习对深层神经网络从低层到高层依次进行训练,在优化求得某一层的初始权值后,以该层的输出作为后面一层的输入,同样采用无监督学习对该层参数进行优化,如此反复直到最高层;逐层无监督预训练后,再用监督学习对整个深层神经网络进行微调,以获得更好的性能。以下是深层神经网络的一种——卷积神经网络的基本结构与计算方法,它使用4个关键的想法来利用自然信号的属性:局部连接、权值共享、池化以及多网络层的使用。[5-6]融合规则推理和深层神经网络的方法即基于此。
3.3.1 基本结构
卷积神经网络包括两类基本结构层和最后的分类层,第一类基本结构层为卷积层,每个神经元的输入与前一层的固定局部区域(接受域)相连,输出完全由该接受域决定,其中所有神经元的权值、偏移值和计算函数都是一样,与视觉形成过程比,它类似于在该局部区域提取某一特征;第二类基本结构层是取样层,每个神经元的输入也与前一层的固定局部接受域相连(不同神经元接受域不重叠),并对接受域做变换得到一个值(一般是取最大值);最后的分类层则通常直接使用多层感知器进行分类。一种神经元只能提取一种特征,同种神经元提取的特征组成的集合被认为是一个特征面,而一般一个卷积层为了提取不同种类特征会有许多特征面。如附图3-2所示,输入层是8×1 900的多导联心电图;卷积层A共有8个特征面,每个特征面使用一个3×18卷积核(表示一个输入元素个数固定,与时间和初值等都无关的单值函数),该层输出8个6×1 883(其中6=8-3+1,1 883=1 900-18+1)大小的特征面;取样层A采取1×7取样核,产生8个6×269(其中6=6/1,269=1 883/7)的特征面;卷积层B采用3×12的核,产生14个4×258(其中4=6-3+1,258=269-12+1)的特征面;取样层B采用1×6的核,产生14个4×43(其中4=4/1,43=258/6)的特征面;卷积层C采用3×8的卷积核,产生20个2×36(其中2=4-3+1,36=43-8+1)的特征面;取样层C同样采用1×6的核,产生20个2×6(其中2=2/1,6=36/6)的特征面,实际上是240个神经元;最后两层是使用多层感知器进行分类输出。

附图3-2 卷积神经网络结构示意图
每个输入特征面通过各自不同的卷积核映射成多个输出特征面,而组成同一个输出特征面的每个神经元与每个输入特征面的相同局部区域相连,且权值共享,但不同输出特征面的神经元权值不共享;每个输出特征面再通过缩放操作减少神经元数量。显然,若输出特征面过少,则不利于神经网络学习,因为其他有利于学习的特征可能被忽略了;但输出特征面过多,待调整参数以及网络前向计算时间均大量增加,不利用参数优化。因此,选择合适的特征面数就显得极其重要。在实际应用中,一般可先尝试较少个数的特征面,然后逐步增加个数,并观察所得分类模型的性能,直到找到一个前向计算时间和分类性能都较为恰当的模型。
3.3.2 网络层次
先从一维结构来说明其原理,然后再扩展为二维结构,分别对应于单导联心电图和多导联心电图数据的处理。
(1)卷积层
定义如下参数:
输入特征面个数:iMap。
每个输入特征面神经元个数:iMap Neuron。
输出特征面个数:oMap。
每个输出特征面神经元个数:oMap Neuron。
附图3-3展示一般情况下卷积层的权值连接方式,输入特征面个数为2,每个输入特征面神经元个数为3,局部窗宽尺寸为2,局部间隔尺寸为1,输出特征面个数为m,每个输出特征面神经元个数为2。事实上,每个输出特征面神经元个数oMap Neuron为(iMap Meuron-Window)/Interval+1。一般要保证式能够整除,否则网络结构就需要额外处理。
局部窗宽尺寸:Window。
局部间隔尺寸:Interval。
一般情况下,每个卷积层有iMap个输入特征面和oMap个输出特征面,不过与输入层相连的卷积层,其输入特征面个数为1,也即输入层本身。

附图3-3 一维结构的卷积层和取样层关系示意图
下面针对附图3-3来说明卷积层权值共享情况。设wn(i),m(j)表示连接“输入特征面n第i个神经元”和“输出特征面m第j个神经元”的连接权值,则有

这是对应于“输出特征面1”的连接权值,再加上偏置b1,共有(8+1)个权值;通过共享机制,实际只有(4+1)个权值(每个输出特征面不仅连接权值共享,偏置也共享,连接权值和偏置统称为权值)。当然不同的输出特征面有不同的权值,但均只有(4+1)个,因此每个卷积层待调整的权值个数为(iMap×Window+1)×oMap。
卷积层的计算过程同传统全连接层,区别是在同一个输出特征面中,连接权w和偏置b值均共享。设
表示“输入特征面n第i个神经元”的输入值
表示“输出特征面m第j个神经元”的输出值,bm是对应的偏置,则有

其中f(·)为激励函数,例如tan h(x)函数等。
(2)取样层
取样层紧接在卷积层之后,可看作是一个类似于图像缩放的过程,经典做法是等间隔取最大值或平均值。在图3-3中,每个输出特征面上均有2个神经元,可取其输出值的最大值或平均值,这样每个输出特征面就变成了只有1个神经元。以取最大值为例,其具体计算过程为

其中
表示“输入特征面m第j个神经元”的输入值
表示“输出特征面m第j个神经元”的输出值。取样层最大的作用是有效减少神经元个数,从而在构造下一个卷积层时,减少权值个数。
相邻的卷积层和取样层统称为卷积单元。卷积层和取样层中的局部窗宽分别称为卷积核和取样核,而卷积层中的局部间隔在实际应用中一般设为1。
(3)全连接层
全连接层一般在2~3个卷积单元之后,该层就是传统意义上的多层感知器。若有5个输入神经元、2个输出神经元,则5个输入神经元分别与2个输出神经元全连接。
若设wi,j为“第i个输入神经元”和“第j个输出神经元”的连接权值,bj为“第j个输出神经元”的偏置值,
为“第i个输入神经元”的值,
为“第j个输出神经元”的值,f(·)为激励函数,则有

(4)分类层
分类层本质上也是全连接层,但除了通常意义上的计算外,还要计算神经网络输出和期望输出之间的误差。目前,主要有“概率输出”和“均方误差”两种,前者的一种具体形式(Softmax回归)如下。
这种方法首先计算某个样本属于每个类别的概率,然后取概率最大值所对应的类别。设
|1≤i≤5,1≤j≤2}为连接“5个输入神经元”和“2个输出类别神经元”的权值和偏置,P(y=j|x)表示样本x属于类别j的概率,y pred表示预测类别,则有

多个类别的概率计算可做类似处理,仅需将2换成指定的类别数即可。
此时的神经网络损失函数E可基于经典的最大似然函数定义,由于网络训练以最小化损失函数为目标,所以可采用负的最大似然函数值,定义如下:

卷积神经网络的最大特点是输入数据先通过多个卷积单元后再交由传统的多层感知器进行分类,而卷积单元中每一个特征提取层(卷积层)都紧跟着一个二次提取的计算层(取样层),这种特有的两次特征提取结构使得分类模型具有较高的畸变容忍能力:一方面,通过卷积核(可看作是滤波器)在输入信号上游走,在对应位置上做卷积运算,不仅增强了原信号特征,还降低了噪声;另一方面,通过取样核对不同位置的特征进行聚合统计(可看作是一个模糊滤波器),不仅减少了特征的维数,对位置信息而言还增加了鲁棒性。
此外,神经网络的训练本质上是一个函数优化问题。显然,在相同的条件下,待优化的权值数越多就越容易陷入局部极值,使得要拟合出真实的决策函数更为困难,这也是深层神经网络此前一直未予以深入探索的一个原因。而对于网络结构较为简单的模型,由于待优化的权值数相对少,其陷入局部极值的可能性要小些,但不够复杂的网络结构的非线性函数拟合能力有限,在复杂的模式识别领域不能拟合出有效的决策函数。卷积神经网络通过权值共享和取样巧妙地在两者之间做平衡,通过多个卷积单元可使网络结构变得足够复杂而拟合不同的非线性函数,同时待优化的权值数并不会剧烈增长。
3.3.3 二维结构
通常意义上的卷积神经网络指二维结构,与一维结构的区别在于卷积单元的组织方式不同,而全连接层和分类层则一样。多维卷积单元的每维实际上也是按照一维卷积单元组织。
设二维输入数据为3×5,第1行为(1,1)…(1,5),第2行为(2,1)…(2,5),第3行为(3,1)…(3,5)。卷积层的行局部窗宽尺寸RWindow=2,列局部窗宽尺寸CWindow=3,行局部间隔尺寸RInterval=1,列局部间隔尺寸CInterval=1,则经过卷积操作后每个新特征面为2×3,其中2=(3-2)/1+1,3=(5-3)/1+1,每个新特征面对应待调整权值数为7=3×2+1(RWindow×CWindow+1)。若输入/输出特征面都不止1个,则该卷积层待优化的权值个数为(iMap×RWindow×CWindow+1)×oMap。
二维结构的卷积层以“局部矩形区域”为最小单元进行权值连接。以(i,j)表示第i行第j列所对应的数据点。输入数据点(1,1),(1,2),(1,3),(2,1),(2,2),(2,3)均连接到特征面1上的数据点(1,1),输入数据点(1,2),(1,3),(1,4),(2,2),(2,3),(2,4)均连接到特征面1上的数据点(1,2),输入数据点(2,1),(2,2),(2,3),(3,1),(3,2),(3,3)均连接到特征面1上的数据点(2,1);其余类似。
二维结构的取样层同样以“局部矩形区域”进行权值连接,但不交叉,每个特征面对应一个取样层。若取样层的行局部窗宽尺寸RWindow=2,列局部窗宽尺寸CWindow=2,则特征面1上的数据点(1,1),(1,2),(2,1),(2,2)均连接到取样层1上的数据点(1,1),特征面1上的数据点(1,3),(2,3)则均连接到取样层1数据点(1,2);其余类似。
二维结构的卷积层和取样层的实现,同样是基于线性排序的神经元,只不过其连接方式和一维结构是不同的。
3.3.4 网络训练
卷积神经网络一般也采用反向传播算法,用梯度下降法调整各层的权值,使损失函数达到最小,其过程如下。
设
表示第n层第i个神经元的输出值(输入层和输出层分别用
和
表示),
表示连接第n层第i个神经元与第(n-1)层第j个神经元的权值,T i表示输出层第i个神经元的期望输出,f(·)表示激励函数,E表示损失函数,则给定一个训练样本,根据当前网络权值,从输入层开始,依次迭代下式可求得每层每个神经元的输出值:

以均方误差为例,网络损失函数为

分别对其求关于
和
的一阶偏导数,有

从输出层开始,先计算求得
,然后依次迭代计算得每个
,于是网络权值更新如下:

这里的η可以周期变化,也可以保持不变。
3.3.5 导联卷积神经网络
导联卷积神经网络(lead convolutional neural network,LCNN)如附图3-4所示。

附图3-4 导联卷积神经网络结构,1D-Cov表示一维卷积计算,LR表示Logistic回归
卷积单元CU包括多个卷积层和取样层,每个导联均有3个卷积单元A i、B i、C i(1≤i≤8),且不同导联间的卷积单元互不相干。8个导联,有24个卷积单元。每个卷积单元包括多个卷积层和取样层,还有一个全连接层和一个分类层。三个卷积核分别为1×21、1×13和1×9,三个取样核分别为1×7、1×6和1×6,三个特征面数分别为6、7和5,全连接层有50个神经元,分类层采用Logistic回归(1个神经元)。每个导联的心电图数据依次通过最适合自己的3个卷积单元,之后汇总所有导联的信息做最后的分类。数据处理如下。
第一,500 Hz原始心电图数据下采样到200 Hz。接着跳过开始25个点,取中间连续1 900个点的数据作为输入数据,且仅保留8个基本导联的心电数据,即Ⅱ、Ⅲ、Ⅴ1、Ⅴ2、Ⅴ3、Ⅴ4、Ⅴ5、Ⅴ6导联。
第二,对8×1 900个心电数据选取起始点位置,取值区间为[1,200]。在训练阶段,随机选取起始点,但保证每个导联的起始点相同;而在测试阶段,起始点均为1,选取连续1 700个点作为输入数据。
第三,训练时,对8×1 700个心电数据叠加随机噪声,在测试时,则跳过这个处理。叠加的噪声包含幅度为0~0.1 mV的0~0.2 Hz的低频噪声,幅度为0~0.15 mV的45~90 Hz的高频噪声以及幅度为0~0.1 mV的白噪声。
设输入样本为x=[x 1,x 2,…,x 8],其中xi(1≤i≤8)为第i通道的数据,f cov为卷积函数,f sub为取样函数,则有

其中,g D是全连接层计算函数,g E是Logistic回归函数,W和b是相应层的连接权值和偏置值,φ(·)是激励函数。g Ai、g Bi、g Ci为卷积单元计算函数,表达式均为f sub(f cov(x)),唯一区别是计算权值不同,两函数的具体计算公式如下:

这里设第i层的卷积核和取样核分别为1×Pi和1×Qi,
表示“第i层第j个特征面”位置是x(从1开始编号)的神经元输出值,
表示“第i层第j个特征面”和“第(i-1)层第m个特征面”的连接权值,bij表示第i层第j个特征面的偏置值。
参考文献
[1]格林菲尔德.人脑之谜[M].杨雄里,等译.上海:上海科学技术出版社,1998:48-67.
[2]胡上序,程翼宇.人工神经元计算导论[M].北京:科学出版社,1994:52-54.
[3]AIHARA K,et al.Chaotic neural networks[J].Phys Lett A,1990,144(6,7):334-340.
[4]ELMAN J L.Finding structure in time[J].Cognitive Science,1990,14:179-211.
[5]DONG J,et al.Predication-based intelligence routing on telecommunications[J].Chinese Journal of Electronics,2004,13(2):233-239.
[6]LECUN Y,et al.Gradient-based learning applied to document recognition[J].Proceedings of the IEEE,1998,86(11):2278-2324.
[7]金林鹏.面向临床应用的心电图分类方法研究[D].北京:中国科学院大学,2016.