首页 理论教育 人工神经网络:概念与应用

人工神经网络:概念与应用

时间:2023-07-02 理论教育 版权反馈
【摘要】:人工神经网络是对生物神经网络进行仿真研究的结果,是一种模仿人脑神经细胞的结构和功能的物理可实现系统。美国加州理工学院物理学家Hopfield对人工神经网络研究的复苏起到了关键的作用[39,40]。根据神经网络的拓扑结构和信息流的传递方式,人工神经网络可以大致分

人工神经网络:概念与应用

1.概述

人工神经网络(Artificial Neural Networks,简称ANN)是一门新兴的学科,自20世纪40年代提出基本概念以来得到了迅速的发展[31~35]。人工神经网络是对生物神经网络进行仿真研究的结果,是一种模仿人脑神经细胞的结构和功能的物理可实现系统。它是根据生物神经网络机理的基本知识,按照控制工程的思路和数学模型,采用适当算法,有针对性地确定数学模型的参数(如连接权值、域值等),以获得某个特定问题的解,以其具有大规模并行处理能力、分布式存储能力、自适应能力以及适合于求解非线性、容错性和冗余性等问题而引起众多领域科学家的广泛关注。近年来,随着计算机技术的发展,国内外专家学者将神经网络理论应用到环境预测、水质与水量预报、水库优化调度、环境评价、环境规划等方面的研究并取得了重大进展[30]

ANN并不是人脑神经网络系统的真实写照,而是对其作简化、抽象和模拟,是在人类对其大脑神经网络认识理解的基础上,人工构造的能够实现某种功能的网络系统。ANN由大量功能简单而具有自适应能力的信息处理单元——人工神经元(以下简称为神经元)按照大规模并行的方式,通过一定的拓扑结构连接而成。神经元是对人脑神经细胞功能的抽象、简化与模拟。一个人工神经网络的神经元模型和结构描述了一个网络的输入向量转化为输出向量的过程。这个转化过程从数学的角度来看就是一个计算过程[36~38]

最早用数学模型对神经系统中的神经元进行理论建模的是美国神经生物学家麦卡洛克(W.McCulloch)和数学家皮茨(W.Pitts)。1943年他们合作提出了兴奋与抑制型神经元模型,首次用简单的数学模型模仿出生物神经元的活动功能。1957年,美国计算机学家Rosenblatt提出了著名的感知器(Perception)模型,经过训练可以达到对一定的输入矢量模式进行分类和识别的目的。1959年,美国工程师Widrow和Hoff开发出自适应线性单元(Adaline)的网络模型,第一次把神经网络研究从纯理论的研究付诸工程应用,掀起了神经网络研究的第一次高潮。1969年,人工智能创始人之一Minsky和Papert在合著的《Perception》书中指出了简单感知器的严重局限性,导致人工神经网络研究陷于低潮。美国加州理工学院物理学家Hopfield对人工神经网络研究的复苏起到了关键的作用[39,40]。1982年,他提出了Hopfield网络模型,将能量函数引入到对称反馈网络中,使网络的稳定性有了明确的判据,并利用所建立的网络的神经计算能力来解决条件优化问题。另一个突破性的研究成果是Rumelhart等人在1986年提出的解决多层神经网络权值修正的算法——误差反向传播算法(Error back-propagation a1gorithm,简称BP算法),解决了Minsky提出的多层网络的设想问题,使ANN得以全面迅速地恢复发展起来[30]

2.特点

ANN具有以下显著的特点:

(1)大规模并行计算和分布式存储能力。信息以分布方式存储于整个网络中,即使网络局部受损,也不会对整个网络造成很大影响,还可根据不完整或模糊的信息联想出完整的信息,得到正确的输出,ANN具有并行处理特征,信息处理是在大量单元中并行而有层次地进行的,因此运算速度极快。由于其信息处理能力是由整个网络决定的,所以具有较强的容错能力和鲁棒性。

(2)非线性映射能力。ANN各神经元具有非线性映射特征。虽然ANN各神经元的结构和功能简单,但由大量神经元构成的网络系统的行为却是丰富多彩和十分复杂的。因此,ANN是一个高度复杂的非线性动力系统,具有很强的非线性处理能力。

(3)自适应、自组织、自学习、联想、容错能力。ANN可以通过对信息的有监督和无监督学习,调整自身的结构。可以处理各种变化的信息,在处理信息的同时非线性系统本身也在不断变化。ANN可通过训练样本,根据周围环境来改变自己的网络,处理一些环境信息十分复杂、背景知识不清楚、推理规则不明确的问题[30]

图7-2 人工神经元的数学模型

3.人工神经元

神经元是构成神经网络的最基本单元,因此要想构造一个人工神经网络系统,首要任务是构造人工神经元模型。一个人工神经网络的神经元模型和结构描述了一个网络如何将它的输入矢量转化为输出矢量的过程,人工神经元模型如图7-2所示[41]

图7-2中,x1,x2,…,xi,…,xn分别表示来自其他神经元的输入,相应的wj1,wj2,…,wji,…,wjn表示第1,2,…,i,…,n个神经元与第j个神经元的连接强度,即连接权重。θj阈值,它起到了调节神经元兴奋水平的作用,其作用反映在S函数的输出曲线上。Sj为神经元j的净输入

式中:Wj=[wj1,wj2,…,wji,…,wjn]为行向量,表示神经元j的连接权重向量;X=[x1,x2,…,xi,…,xn]T为输入向量。

净输入Sj经过激活函数(转移函数)f(·)的作用后,得到的神经元的输出yi

若θj采用x0=1的处理方法,则式(7-17)表示为

激活函数f(·)是模拟生物神经元所具有的非线性转移函数。其作用是控制输入对输出的激活作用;对输入、输出进行函数转换;将可能无限域的输入变换成指定的有限范围内的输出。线性函数和对数形式的函数(S型函数)是最为常用的两种激活函数。

(1)线性函数

(2)双曲正切传递函数

(3)S型函数。常用的S型函数是对数函数,即

由式(7-21)可知,对数型的S激活函数上下限分别为0和1,并且系数t决定了函数的压缩程度。系数t越大,曲线越陡;反之,曲线越缓。

由上述分析可知,人工神经元运行过程可以总结为以下三个数学计算步骤:

(1)加权:对每个输入信号进行程度不等的加权计算。

(2)求和:进行全部输入信号的组合效果的求和计算。

(3)映射:通过激活函数f(·)计算输出结果。

4.模型拓扑结构

单个神经元对信息的处理能力是十分有限的,只有将多个神经元相互连接起来,构成一个神经网络体系,才能够对复杂的信息进行识别处理。

根据神经网络的拓扑结构和信息流的传递方式,人工神经网络可以大致分为前馈网、反馈网和混合网三种形式。下面仅以前馈网络来说明问题[41]

前馈网络(feedforward network)的信息流由输入层,逐级向下层传递,没有反馈信息流,经网络处理后由输出层输出。单层前馈网是最简单的前馈式网络,如图7-3所示。对于多层前馈网络,输入、输出神经元与外界发生联系,直接感受外部环境的刺激,而中间层与外界无直接联系,所以称为隐含层。图7-4为多层前馈网络的拓扑结构示意图

图7-3 单层前馈网络

下面以单层前馈网络为例,描述人工神经网络对信息流的处理过程。网络的输入向量为X=[x1,x2,…,xi,…,xn]T,神经元节点的连接权重表示为权重矩阵W,权重矩阵W的行数等于输出神经元节点数m,列数等于输入神经元节点数n。第j行是神经元节点j的权重向量Wj

图7-4 多层前馈网络拓扑结构

若设阈值为θ=[θ1 θ2 … θj … θm]T,神经元节点的净输入为S=[s1 s2 … sj … sm]T,则有

多层前馈网络在结构上增加了多个隐含层,在功能上隐含层的加入大大提高了人工神经网络对复杂信息的处理能力。经过训练的多层网络,能够实现X→Y的非线性映射,根本原因在于引入隐含层和非线性激活函数的缘故。

5.模型运行过程

人工神经网络的拓扑结构虽然不同,但其运行过程大体上可分为两个阶段:网络学习(或称之为训练)和网络联想,其中网络学习又包括学习过程和学习规则两个方面[41]

(1)学习过程。网络的学习过程就是通过不断地向网络输入一些样本模式,遵循一定的学习规则,不断地调整网络的各层权重,使网络的输入和输出以一定精度向给定的样本模式逼近。学习的实质就是网络通过输入和输出信息识别信息之间的内在规律。学习方法有两种:

1)有监督学习或有教师学习,是指给定一组输入、输出作为样本模式,网络根据学习规则不断地调整网络的权重,使网络的实际输出与样本的期望输出之间的误差降到允许的精度。有监督学习常常用来进行系统规律的映射。

2)无监督学习或无教师学习,是指样本模式中不包含期望输出,网络完全按照样本所提供的某些统计规律来调整网络自身,以获得输入信息的某些固有特征。这种网络常用于分类。

(2)学习规则。不同拓扑结构的人工神经网络,甚至相同结构的神经网络,因其学习规则的不同,神经网络的功能各异。权重调整方法的不同,便产生了各种各样的学习规则。设学习信号定义为

式中:tj为示教信号。

ΔWj表示第j个神经元节点的权重增量,可定义为输入向量X、学习信号r以及学习率η三者之积的形式

第j个神经元节点在下一迭代中对应的权重可表示为

常用的学习规则有Hebb学习规则、感知器、Delta学习规则、Widrow-Hoff学习规则、相关学习规则等,这里不再详细介绍。(www.xing528.com)

(3)网络的联想。完成训练的神经网络已经将学习样本的信息存储于网络之中,这样的网络已经具有映射功能。通过某种方式,使已经存储在网络中的有关信息从输出层浮现出来的过程,称为联想或回忆。不同网络的联想方式也不同,前馈联想的方式是输入的激励模式只需一次性通过权重矩阵,就可以产生所需的响应,即输出模式;反馈联想的方式是输入的激励模式通过网络产生的响应,作为下一次激励再输入网络(初次激励撤销),这样依次循环,直到输入、输出均不再变化为止的输出便是网络的联想结果。

6.BP人工神经网络

根据分类标准的不同,人工神经网络可归纳为表7-4中所示的几种主要形式。

表7-4 人工神经网络模型分类

BP神经网络是人工神经网络中最具代表性和广泛应用的一种,在运算过程中采用反向传播的学习方法进行权值调整,其结构简单,可操作性强,能模拟任意的非线性输入输出关系,可用于多因子影响的评价和预测分析中,目前BP模型已成为人工神经网络的重要模型之一。

BP算法的核心是通过一边向后传播误差,一边修正误差的方法来不断调节网络参数(权,阈值),以实现或逼近所希望的输入、输出映射关系。它对每一个训练过程进行两次传播计算:第一次,前向计算,从输入层开始向后逐层计算输出,产生最终输出,并计算实际输出与目标输出间的误差;第二次,反向计算,从输出层开始向前逐层传播误差信号,修正权值,直到误差小于给定值。

BP人工神经网络模型由输入层、隐含层、输出层组成,其拓扑结构如图7-5所示。

图7-5 BP算法原理示意图

7.BP模型的计算步骤[42~47]

BP模型的计算步骤为:

(1)初始化。给各连接权wij、Tli及域值θi、θl赋予(-1,+1)间的随机数

(2)随机选取一模式对xj、tl提供给网络。

(3)用输入模式xj连接权wij和域值θl计算中间层各单元的输入si,然后通过S函数计算中间层(隐含层)各单元的输出yi

(4)用隐含层的输出yi、连接权Tli和域值θl计算输出层各单元的输入Ll,然后通过S函数计算输出层各单元的输出ol

(5)用期望输出模式tl、网络实际输出ol,计算输出层的各单元的一般化误差δl

(7)用输出层各单元的一般化误差δi、中间层各单元的输出yi修正连接权Tli和域值θl

式中:k为迭代次数。

(9)随机选取下一个学习模式对提供给网络,返回步骤(3),直至全部样本模式对训练完毕。

(10)重新从原始模式样本对中随机选取一个模式对,返回步骤(3),直至网络全局误差函数E小于预先设定的一个极小值,即网络收敛,或学习次数大于预先设定的值,即网络无法收敛。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈