人工神经网络

来自计算思维百科
跳转至: 导航搜索

人工智能已经取得了很大的进展,但是这个领域里的许多问题对基于冯·诺依曼体系的计算机的能力仍然提出了巨大的挑战。执行指令序列的中央处理单元的感知和推理能力并不能与人的大脑相匹敌。许多研究者的目标转向了其他体系结构的机器。其中之一就是人工神经网络。自1986年D.Rumelhart等人提出面向多层神经网络的反向传播学习算法后,人工神经网络已经被广泛而深入地研究,在模式识别、经济分析和控制优化等领域也有了不少实际应用。

基本概念

人工智能已经取得了很大的进展,但是这个领域里的许多问题对基于冯·诺依曼体系的计算机的能力仍然提出了巨大的挑战。执行指令序列的中央处理单元的感知和推理能力并不能与人的大脑相匹敌。许多研究者的目标转向了其他体系结构的机器。其中之一就是人工神经网络。自1986年D.Rumelhart等人提出面向多层神经网络的反向传播学习算法后,人工神经网络已经被广泛而深入地研究,在模式识别、经济分析和控制优化等领域也有了不少实际应用。

基本特性

人工神经网络(Artificial Neural Network)通过模拟人脑感知行为出发,基于神经元间的连接来实现感知信息的大规模并行、分布式存储和处理,并提供自组织、自适应和自学习能力。人工神经网络由许多单个的处理器以模仿活的生物体神经元网络的方式构成,这些处理器称为处理单元。一个生物神经元始一个单个细胞,具有一些称为树突的输入触角和一个称作轴突的输出触角(图1)。经由一个细胞的轴突传递的信号反映了细胞是处于抑制状态还是兴奋状态。这种状态由细胞的树突接收到的信号的合成来决定。这些树突从其他细胞的轴突通过称为突触的小间隙采集信号。研究表明,一个突触的传导是由突触的化学成分控制的。也就是说,具体的输入信号将对神经元起兴奋作用还是抑制作用是由突触的化学成分决定。所以可以认为,一个生物神经网络是通过调整神经元间的这些化学连接来学习的。

3.4.2.png

图1 活的生物体中的一个神经元

人工神经网络的一个处理单元式模仿对生物神经元这种基本了解的一个简单装置。这个装置是一个多输入单输出的非线性阈值器件。根据其有效输入是否超过了一个给定的阈值产生0或1作为输出。如图2所示,这个有效输入是许多实际输入的一个加权和。图中,神经元的输入为x1、x2xn,每个输入xi对应某一个权值wi。每个输入值与相应的权值相乘,再把这些乘积相加形成有效输入∑=x1w1+x2w2+…+xnwn,,使用输出函数f比较∑和单元的阈值θ,如果∑>θ那么f(∑) = 1,否则f(∑) = 0。既输入加权和超过阈值产生一个输出值1(模拟神经元的兴奋状态);否则就产生一个输出值0(模拟神经元的抑制状态)。这里输出函数f也可以是其他函数如S型函数或者伪线性型函数。关于生物神经元和人工神经元的对比如表1所示。

3.4.3.png

图2 一个处理单元中的活动

表1 人工神经元与生物神经元作用对比

生物神经元

人工神经元

作用

树突

细胞体

轴突

突触

输入层

加权和

阈值函数

输出层

接收输入信号

加工处理信号

控制输出

输出结果

 

我们通过一个例子来看看神经元的工作过程,图3的例子表示了一个有3个输入且阈值为1.5的处理单元。第1个输入的权值为-2,第2个输入的权值为3,第3个输入的权值为-1.因此,如果单元接收的输入分别为1、1、0,那么其有效输入为(1)(-2)+(1)(3)+(0)(-1)=1,小于阈值1.5,所以其输出为0。

3.4.4.png

图3 神经元表示

权值可以是正值,也可以是负值,说明相应的输入对接收单元的作用可以使兴奋或是抑制。(若权值为负,接收的输入为1就减少了加权和,故有效输入偏向低于阈值;相反,一个正的权值使相应输入对加权和起增加作用,故增加了加权和超过阈值的机会。)此外,权的实际大小控制了相应输入单元对接收单元起抑制作用还是兴奋作用的程度。

3.4.5.png

图4 神经网络

许多神经元以一定的方式连接一起,一个神经元的输出作为另一个神经元的输入既构成神经网络,如图4所示。通过调节整个人工神经网络中神经元与神经元的连接权值,就能够对网络编程,让神经网络按照预定的方式对不同的输入做出正确响应。

训练人工神经网络

人工神经网络的一个重要特征是自适应学习,神经网络的权值决定了网络能否正确工作,权值的设置不再是传统意义上的被编程而是被训练。也就是说,一个程序员不再决定解决一个特定问题所需权的值,然后并把这些值“插”入网络中;相反,一个人工神经网络通过监督训练学习获得合适的权值,该训练是一个反复的过程,从训练装置而来的输入被应用到网络,然后用小的增量调整权值使网络的性能接近期望状态。如何调整权值是一个值得研究的课题。修改权值需要一种合理的策略,每次调整都应该导向正确目标而不是破坏前一步调整取得的进展。

神经网络的最基本学习规则是Hebbian规则,所有的学习规则都可视为Hebbian规则的变种。Hebbian学习规则的基本思想是如果神经网络中某一神经元与另一直接与其相连的神经元同时处于兴奋状态,那么这两个神经元之间的连接强度应该加强。

3.4.6.png

图5 神经元间的连接

如图5所示,神经元i和神经元j之间的连接权值的修改规则可以定义为 ,其中wij(t+1)表示修改后的权值,η是学习因子,表示权值学习速率的比例常数,yi(t)和yj(t)分别表示t时刻第i个和第j个神经元的输出值。如果yi(t)和yj(t)都是1,那么wij将增大,否则保持不变。由于yi(t)=xi(t),Hebbian修改规则也可以表示成 。

另外一种学习方式是误差修正学习,也称为Delta学习规则,通过实际输出与期望输出的误差来修正权值,误差修正学习的修改规则是 ,其中ej表示第j个神经元的期望输出值。误差修正学习是一个迭代过程。一开始可以随机设置权值然后根据输入模式对应的实际输出和期望输出的误差更新权值,不断重复这个过程知道所有训练模式网络输出满足要求。

除了上述两种学习方法意外,神经网络训练方法还有梯度下降学习、Kohonen学习、反向传播学习、概率式学习、竞争式学习等。其中反向传播学习是目前应用最为广泛的网络学习规则,误差的反向传播技术一般采用Delta规则,该过程分成两步:第一步是正反馈,当输入数据在网络中从前往后计算每个神经元的输出,然后计算每个单元的输出与期望输出的误差;第二步是向后传播,从后向前重新计算误差,并修改权重。完成这两步以后才输入新的输入数据,不断调整网络的权重直到网络的计算误差达到最小。

联想记忆

人工神经网络也可以用于联想记忆。人类具有很高的智能,其中一个主要原因是人脑具有联想记忆能力。人不仅能够记忆完整模式,而且能够从当前关心的情景中提取与之关联的信息来。当闻到特定气味时,我们很容易勾起儿时的回忆;听到朋友的声音也会让我们联想起友人的身影;特定的音乐可能会产生对某个假日的怀念。这些都是联想记忆的例子——提取与手头信息相关联的或相关的信息。

构建具有联想记忆能力的神经网络模型是人工智能许多年来研究的一个目标,其中霍普菲尔德(Hopfield)提出的反馈式神经网络对后来神经网络的发展产生了重大影响。在Hopfield模型中,网络系统的稳定性由网络能量函数来描述,记忆样本以向量的形式分布存储于神经元之间的连接权上,并使其对应与网络能量函数的局部最小值;每个神经元的输入输出特性为一个有界的非线性函数,如S型函数;各神经元以随机异步方式进行计算。Hopfield网络由初始状态向稳定状态演化的过程就是寻找记忆的过程,这种内容寻址记忆方式与实际神经系统的记忆方式十分相似。