1、22:43,1,第五章 神经网络,神经网络概述单层前向网络及LMS学习算法多层前向网络及BP学习算法反馈网络(Hopfield网络)神经网络控制基于MATLAB的神经网络实现,22:43,2,5.1 神经网络概述 定义 特征和功能 发展概况 人工神经网络模型 神经网络的分类和学习规则 神经网络应用,22:43,3,一、神经网络定义,人工神经网络是一个由许多简单的并行工作的处理单元组成的系统,其功能取决于网络的结构、连接强度以及各单元的处理方式。,人工神经网络是一种旨在模仿人脑结构及其功能的信息处理系统。,神经网络是由多个非常简单的处理单元彼此按某种方式相互连接而形成的计算系统,该系统是靠其状态
2、对外部输入信息的动态响应来处理信息的。,22:43,4,二、神经网络特征和功能 1、特征 结构特征:并行、分布、容错 能力特征:自学习、自组织、自适应 2、功能,22:43,5,联想记忆功能,22:43,6,非线性映射功能,22:43,7,分类与识别功能,22:43,8,优化计算功能,22:43,9,知识处理功能,22:43,10,三、神经网络发展历史 1943-1969年初创期:形式神经元模型(简称MP模型)的问世 (由McCulloch和Pitts提出);神经元学习规则的提出(由心理学 家Hebb提出);以及感知器模型和联想记忆模型的建立。 1970-1986年过渡期:一度陷入低潮。但是这
3、项研究并未中 断。其中芬兰的Kohonen提出了线性神经网络模型和自组织 映射理论;福岛提出了自组织识别神经网络模型;美国的 Grossberg也提出了几个非线性动力系统结构。影响力较大的属Rumelhart提出的误差反向传播神经网络(error back propagation),简称BP网络 1987年至今发展期。在该阶段,国内外的许多组织及研究机构发起了对神经网络的广泛探讨,并举行了有代表意义的学术会议。这些都意味着神经网络的研究已在世界范围形成了又一个高潮。,11,人类大脑大约包含有1.41011个神经元,每个神经元与大约103105个其它神经元相连接,构成一个极为庞大而复杂的网络,即
4、生物神经网络。,四、人工神经网络 1、生物神经元,神经生理学和神经解剖学的研究结果表明,神经元(Neuron)是脑组织的基本单元,是人脑信息处理系统的最小单元。,22:43,12,(1)、生物神经元的结构,生物神经元在结构上由细胞体(Cell body)树突(Dendrite)轴突(Axon)突触(Synapse)四部分组成。用来完成神经元间信息的接收、传递和处理。,22:43,13,22:43,14,22:43,15,(2)、生物神经元的信息处理机理,1)、信息的产生,神经元间信息的产生、传递和处理是一种电化学活动。,神经元状态: 静息 兴奋 抑制,膜电位: 极 化 去极化 超极化,22:4
5、3,16,22:43,17,2)、信息的传递和接收,22:43,18,3)、信息的整合,空间整合:同一时刻产生的刺激所引起的膜电位变化,大致等于各单独刺激引起的膜电位变化的代数和。,时间整合:各输入脉冲抵达神经元的时间先后不一样。总的突触后膜电位为一段时间内的累积。,22:43,19,2 、生物神经网络,由多个生物神经元以确定方式和拓扑结构相互连接即形成生物神经网络。,生物神经网络的功能不是单个神经元信息处理功能的简单叠加。,神经元之间的突触连接方式和连接强度不同并且具有可塑性,这使神经网络在宏观呈现出千变万化的复杂的信息处理能力。,22:43,20,3、人工神经元模型,神经元及其突触是神经网
6、络的基本器件。因此,模拟生物神经网络应首先模拟生物神经元。在人工神经网络中,神经元常被称为“处理单元”。有时从网络的观点出发常把它称为“节点”。人工神经元是对生物神经元的一种形式化描述。,22:43,21,神经元模型示意图,22:43,22,j 神经元j的阈值;wij 神经元i到 j 的突触连接系数或称权重值;f ()神经元转移函数。,22:43,23,(1)阈值型转移函数,22:43,24,(2)非线性转移函数,22:43,25,(3)分段线性转移函数,22:43,26,4、人工神经网络,22:43,27,五、神经网络分类及学习方法,1、神经网络分类不同角度分类 1)从网络性能角度:连续型和
7、离散型,确定性和随机网络 2)从网络结构角度:前向网络和反馈网络 3)从学习方式角度:有导师学习和无导师学习网络 4)从连接突触性质:一阶线性关联网络和高阶非线性网络,22:43,28,从网络结构和学习算法相结合,分成几类: (1)单层前向网络:拥有的计算节点(神经元)是单层的。 (2)多层前向网络:具有分层的结构,通常包括输入层、隐层(也称中间层)和输出层。每一层的神经元只接受上一层神经元的输入,并且该层神经元的输出送给下一层的各个神经元 。 (3)反馈网络:网络中至少含有一个反馈回路的网络。在反馈网络中,任意一个节点既可接收来自前一层各节点的输入,同时也可接收来自后面任一节点的反馈输入。
8、Hopfield神经网络是反馈型网络的代表 (4)随机神经网络:神经元按照概率的原理进行工作,每个神经元的兴奋或抑制具有随机性,其概率取决于神经元的输入,Boltzmann机就是典型的随机网络。 (5)竞争网络:输出神经元相互竞争以确定胜者,胜者指出哪一种原型模式最能代表输入模式,Hamming网络。,22:43,29,2、神经网络学习方法 可分为有导师学习和无导师学习 (1)有导师学习(监督学习)。学习时需要给出导师信号或称期望输出。神经网络对外部环境是未知的,将导师看作对外部环境的了解,由输入-输出样本集合表示。导师信号代表了神经网络执行情况的最佳结果,使网络输出逼近导师信号。 (2)无导
9、师学习,包括强化学习和无监督学习(自组织学习)。在强化学习中,对输入输出映射的学习是通过和外界环境的连续作用最小化性能的标量索引而完成的。在无监督学习中没有外部导师或评价来统观学习过程,而是提供一个关于网络学习表示方法质量的测量尺度,根据该尺度将网络的参数最优化。,22:43,30,5种基本的神经网络学习规则 (1)Hebb学习:为纪念神经心理学家Hebb而命名。用于调整神经网络的突触权值,概括为: 1)如果一个突触连接两边的两个神经元被同时(同步)激活,则该突触的能量就被选择性的增加 2)如果一个突触连接两边的两个神经元被异步激活,则该突触的能量就被选择性的消弱或消除。 (2)纠错学习:实际
10、输出和期望输出之间存在误差,通过调整突触权值,使误差信号减少,设定代价函数为1/2平方和形式,通过反复调整权值是代价函数达到最小或系统达到一个稳定状态。,22:43,31,(3)基于记忆的学习:主要用于模式分类,将过去的学习结果存储在一个大的存储器中,当输入一个新的测试向量是,学习过程就是将测试向量归到已存储的某个类中。 (4)随机学习算法:又称Boltzmann学习规则,该方法由统计力学思想而来,在Boltzmann学习规则基础上设计出的神经网络称为Boltzmann机,其学习算法就是著名的模拟退火算法。 (5)竞争学习:神经网络的输出神经元之间相互竞争,在任一时间只能有一个输出神经元是活性
11、的。,22:43,32,六、神经网络应用 1、宇宙飞船。高性能飞行器自动驾驶 2、汽车行业。自动驾驶系统 3、国防领域。武器操控、目标跟踪、物体识别、雷达信号处理 4、电子领域。集成电路芯片设计、过程控制、机器视觉 5、医药领域。 6、制造领域 等等,22:43,33,5.2 单层前向网络及LMS算法,一、单层感知器,22:43,34,22:43,35,二、单层感知器的学习算法单层感知器对权值向量的学习算法是基于迭代思想,常采用纠错学习规则的学习算法。,22:43,36,22:43,37,22:43,38,三、LMS学习算法,22:43,39,22:43,40,22:43,41,22:43,4
12、2,5.3 多层前向网络及BP算法,由输入层、隐含层(一层或多层)和输出层构成的网络称为多层前向神经网络。两种常见的多层前向网络:多层感知器和径向基函数神经网络。,一、多层感知器,22:43,43,和单层感知器相比,4个明显特点,22:43,44,二、BP算法 BP网络学习过程分成两部分: (1)工作信号正向传播:输入信号从输入层经隐层,传向输出层,在输出端产生输出信号,这是信号的正向传播。在信号向前传递过程中网络的权值是固定不变的,每一层神经元的状态只影响下一层神经元的状态。如果在输出层不能得到期望的输出,则转入误差信号反向传播。 (2)误差信号反向传播:网络的实际输出与期望输出之间差值即为
13、误差信号,误差信号由输出端开始逐层向前传播,这是误差信号的反向传播。在误差信号反向传播的过程中,网络权值由误差反馈进行调节,通过权值的不断修正使网络的实际输出更接近期望输出。,22:43,45,22:43,46,22:43,47,22:43,48,22:43,49,22:43,50,22:43,51,22:43,52,22:43,53,22:43,54,22:43,55,22:43,56,BP学习算法步骤,第1步、设置变量和参量,22:43,57,22:43,58,第2步 第3步 第4步第5步,22:43,59,第6步,22:43,60,第7步第8步 判断是否学完所有的训练样本,是则结束,否则
14、转至第3步,22:43,61,5.3 前向神经网络,3、BP算法的改进 (1)变步长算法在BP算法中步长 (学习率)是不变的,可是从BP网络的误差曲面看出,有平坦区存在,如果在平坦区上 太小使得迭代次数增加,而当W落在误差剧烈变化的地方,步长太大又使误差增加,反而使迭代次数增加影响了学习收敛的速度,变步长方法可以使步长得到合理的调节,22:43,62,5.3 前向神经网络,22:43,63,5.3 前向神经网络,(2)加动量项,22:43,64,5.3 前向神经网络,4、LevenbergMarquart算法,22:43,65,上次课内容:,22:43,66,5.3 前向神经网络,5BP网络的
15、设计参数 (1)输入与输出层的设计输入的神经元可以根据需要求解得问题和数据表示的方式来而定,输出层维数可根据使用者的要求来确定 。 (2)隐含层层数及隐单元数目的选择 1989年Robert Hecht-Nielson证明了对于任何在闭区间内的一个连续函数都可以用一个隐层的BP网络来逼近,因而一个三层BP网络可以完成任意的n维到m维的映射。对于隐单元个数的选择是一个十分复杂的问题,往往根据设计经验和和对于具体问题而言不断的测试来确定。,22:43,67,5.3 前向神经网络,(3)初始权值的选取初始值对于学习是否达到局部最小和是否能收敛的关系很大。一个重要的要求就是希望初始权值在输入累加时使每
16、个神经元的状态接近于零,这样可以保证每个神经元都在他们的转移函数的最大区域进行变换,而不会落在那些变化很小的区域。 (4)数据的预处理在很多实际问题的应用中,对于多维数的输入样本,往往问题样本本身属于不同的量纲,其取值量级也会相差较大,因此有必要将输入的数值转换到01之间,即进行归一化处理,这样有利于避免由量纲上的级别差异影响网络的识别精度。,22:43,68,5.3 前向神经网络,6、BP网络的泛化能力“过适配”:对训练集样本误差很小,对训练集样本以外的新样本数据误差很大。网络记忆了训练过的样本,但缺乏对新样本的泛化能力。泛化(generalization)能力是指经训练后的网络对未在训练集
17、出现的(来自同一分布的)样本做出正确反应的能力。学习不是单纯的记忆过的输入,而是通过训练样本学习到隐含在样本中的有关环境本身的内在规律性,从而对未出现的输入也能给出正确的反映。,22:43,69,5.3 前向神经网络,提高泛化能力的措施: 1)调整网络规模,使之刚好足以“适配”; 2)归一化。(1)修正网络误差性能函数,使网络获得较小的权值和阈值,从而迫使网络的响应变得平滑,从而减小“过适配”。(2)自动归一化,以自动的方式决定归一化最佳误差性能调整率。 3)提前终止法。,22:43,70,5.3 前向神经网络,能够利用的数据被分成3个子集,第一个子集是训练样本集,用以计算梯度和修正网络权值和
18、阈值。第二个子集是确认样本集,在训练的过程中,监控确认样本集的误差。在训练的初始阶段,确认样本集误差在正常地减小,即为训练样本集的误差;而在网络开始出现“过适配”时,确认样本集的误差在明显地增加,当确认样本集的误差连续增加的次数达到指定的迭代次数是,训练被终止,此时,网络返回具有最小确认样本集误差的权值和阈值。第三个子集是测试样本集,用于各种不同模型的比较;另外,在训练期间画出测试样本集的误差曲线,如果测试样本集的误差和确认样本集误差间的误差达到最小值时,所需的迭代次数明显不同,表明数据集的划分可能有问题。,22:43,71,7、BP网络的局限性 1)学习率和稳定性的矛盾; 2)学习率的选择缺
19、乏有效的方法; 3)训练过程可能陷于局部最小; 4)没有确定隐层神经元个数的有效方法;,22:43,72,8、BP网络的MATLAB实现 net=newff(minmax(p),20,1,tansig,purelin); %创建BP神经网络,输入分别为最大传感器数据,平均数据,速度和标定系数 %输入的范围为输入矢量p的最大最小值,隐层有20个神经元 %隐层为tansig类型曲线,输出为线性 net.trainFcn=trainlm; net.trainParam.epochs=2000; net.trainParam.show=100; %神经网络的训练方法 net,tr=train(net,
20、p,t); temp=net.layerWeights; tempiw=net.IW; templw=net.LW; tempb=net.b; y=sim(net,test);,22:43,73,5.3 前向神经网络,三、 径向基函数神经网络 基本思想是:用径向基函数(RBF)作为隐单元的“基”,构成隐含层空间,隐含层对输入矢量进行变换,将低维的模式输入数据变换到高维空间内,使得在低维空间内的线性不可分问题在高维空间内线性可分。该类网络结构简单、训练简洁而且学习收敛速度快,能够逼近任意非线性函数。因此RBF网络具有较广泛的应用。如时间序列分析,模式识别,非线性控制和图像处理等。,22:43,7
21、4,5.3 前向神经网络,1RBF神经网络的网络模型RBF网络是单隐层的前向神经网络,输入层由信号源节点组成;第二层为隐含层,隐单元的个数由所描述的问题而定,隐单元的变换函数是对中心点径向对称且衰减的非负非线性函数;第三层为输出层,它对输入模式做出响应。,22:43,75,(1)正规化网络隐单元的个数和训练样本的个数相同,22:43,76,22:43,77,22:43,78,22:43,79,22:43,80,(2)广义网络,22:43,81,22:43,82,22:43,83,2、学习算法,22:43,84,22:43,85,22:43,86,(3)学习权值,22:43,87,5.3 前向神
22、经网络,3. RBF神经网络的特点及应用领域 能够逼近任意的非线性函数,可以处理系统内在的难以解析的规律性,并具有极快的学习收敛速度。 非线性函数逼近、时间序列分析、数据分类、模式识别、信息处理、图像处理、系统建模、控制和故障诊断。,22:43,88,5.4 反馈神经网络,反馈神经网络(Feedback Neural Network)又称递归网络或回归网络。在该神经网络中,输入信号决定反馈系统的初始状态,然后系统经过一系列状态转换后,逐渐收敛于平衡状态。这种平衡状态就是反馈神经网络经计算后的输出结果。由此可见,稳定性是反馈神经网络中最重要的问题之一 。Hopfield神经网络是反馈网络中最简单
23、且应用最广的模型 ,通常有两种形式:离散型Hopfield网络和连续型Hopfield网络。,22:43,89,5.4 反馈神经网络,一、离散型Hopfield神经网络 1、网络的拓扑结构 离散型Hopfield神经网络是一种单层的输入输出为二值的反馈网络,它主要用于联想记忆Hopfield网络结构图 Hopfield网络示意图,22:43,90,22:43,91,5.4 反馈神经网络,2、离散Hopfield网络的学习算法,22:43,92,22:43,93,22:43,94,22:43,95,5.4 反馈神经网络,二、连续型Hopfield神经网络 连续型Hopfield神经网络是J.J.
24、Hopfield在离散型Hopfield神经网络的基础上提出,其原理与离散型Hopfield神经网络相似,它以模拟量作为网络的输入输出量,各神经元采用并行方式工作,所以它在信息处理的并行性、联想性、实时性、分布存储、协同性等方面比离散型Hopfield神经网络更接近于生物神经网络 .,22:43,96,5.4 反馈神经网络,1、物理实现结构,22:43,97,5.4 反馈神经网络,22:43,98,22:43,99,22:43,100,5.4 反馈神经网络,三、Hopfield网络的主要应用 联想记忆,优化计算。主要集中在图像处理、语声处理、控制、信号处理、模式分类等领域。 1、联想记忆的概念
25、人类具有的联想功能:从一种事物联系到与其相关的事物或其他事物。人工神经网络的联想:系统在给定一组刺激信号作用下,该系统能联系出与之相对应的信号。联想以记忆为前提,首先把信息存储起来,再按某种方式或规则将相关信息取出。联想记忆的过程就是信息的存取过程。,22:43,101,5.4 反馈神经网络,2、联想记忆的工作过程 (1)记忆阶段。在记忆阶段就是通过设计或学习网络的权值,使网络具有若干个稳定的平衡状态,这些稳定的平衡状态也称为吸引子,吸引子有一定的吸引域。 (2)联想阶段。联想过程就是给定输入模式,联想记忆网络通过动力学的演化过程达到稳定状态,即收敛到吸引子,回忆起已存储模式的过程。,22:4
26、3,102,5.4 反馈神经网络,3、网络的权值设计 吸引子的分布是网络的权值(包括阈值)决定的,设计吸引子的核心就是如何设计一组合适的权值。为了使所设计的权值满足要求,权值矩阵应符合以下要求: (1)为保证异步方式工作时网络收敛,权值矩阵w为对称矩阵 (2)为保证同步方式工作时网络收敛,权值矩阵w应为非负定对称阵; (3)保证给定的样本是网络的吸引子,并且要有一定的吸引域。,22:43,103,5.4 反馈神经网络,22:43,104,5.4 反馈神经网络,22:43,105,22:43,106,5.5 自组织神经网络,生物神经元在接受刺激并进行竞争产生获胜神经元后,获胜神经元不但加强自身,
27、而且带动周围的邻近神经元得到相应的加强,同时抑制周围距离较远的神经元。“加强中心而抑制周围”的现象。,墨西哥草帽函数,22:43,107,5.5 自组织神经网络,自动寻找样本中的内在规律和本质属性,自组织、自适应地改变网络的参数和结构 。 一、网络的拓扑结构 自组织特征映射网络(self-organizing map,SOM),又称Kohonen网络,是1982年芬兰教授Kohonen提出的一种自组织神经网络,该网络的主要目的是将任意维数的输入信号模式以拓扑结构有序的方式转变为低维(一维或二维)的离散空间(网格)上。这种变换属于特征映射,而这个过程是自动完成的。,22:43,108,5.5 自
28、组织神经网络,网络由输入层和输出层组成。输入层模拟感知外界输入信息其形式与BP网络相同,节点数与样本维数相同;输出层模拟做出相应的大脑皮层,其神经元的排列有多种形式,如一维阵、二维平面阵和三维栅格阵,22:43,109,5.5 自组织神经网络,二、SOM网络的原理及其算法 自组织特征映射网络的实现属于无监督竞争学习的过程 ,自组织映射主要由竞争、合作和自组织调解三个过程 。,22:43,110,5.5 自组织神经网络,22:43,111,5.5 自组织神经网络,22:43,112,5.5 自组织神经网络,三、SOM算法步骤,22:43,113,5.5 自组织神经网络,22:43,114,5.5
29、 自组织神经网络,22:43,115,5.6 神经网络控制,一、概述 1、神经网络控制的优越性 1)可以处理那些难以用模型和规则描述的过程或系统。 2)并行分布式信息处理,具有很强的容错性。 3)本质的非线性系统,在非线性系统控制中有很大前途。 4)具有很强的信息综合能力。 5)硬件实现越来越方便。,22:43,116,2、神经网络控制器分类 1)导师指导下的控制器,22:43,117,2)逆控制器,22:43,118,3)自适应网络控制器,22:43,119,4)神经内模控制结构,22:43,120,5)前馈控制结构,22:43,121,6)自适应评价网络,22:43,122,7)混合控制系
30、统,22:43,123,二、非线性动态系统的神经网络辨识 1、辨识基础系统辨识就是在输入和输出数据的基础上,从一组给定的模型类中确定一个与所测系统等价的模型。三个基本要素: 1)输入输出数据指能够测量到的系统的输入输出 2)模型类指所考虑系统的结构 3)等价准则指辨识的优化目标,22:43,124,22:43,125,神经网络辨识三大因素: 1)模型的选择 模型是某种意义下对实际系统的近似描述。 2)输入信号的选择 时域上输入信号必须充分激励系统的所有模态,频域上输入信号频谱必须足以覆盖系统的频谱。所以在神经网络辨识中可选用白噪声或伪随机信号作为系统输入信号。 3)误差准则的选择,22:43,
31、126,和传统辨识的不同: 1)不要求建立实际系统的辨识格式; 2)可对本质非线性系统进行辨识; 3)收敛速度不依赖待辨识系统维数,只和网络本身及采用学习算法有关; 4)通过调节权值使网络输出逼近系统输出; 5)作为系统辨识模型,也是系统的一个物理实现,可用于在线控制。,22:43,上海工程技术大学机械学院,127,系统辨识(Identification)的主要应用: 1)控制系统的分析和设计 2)用于自校正、模型参考自适应系统 3)预测和预报 4)监视系统运行状态,进行故障诊断,22:43,128,2、辨识模型结构 1)前向建模 2)逆模型,22:43,129,3)实用逆模型建模,22:43
32、,130,3、神经网络辨识 非线性离散时间动态系统的四种类型:,22:43,131,22:43,132,22:43,133,22:43,134,22:43,135,22:43,136,22:43,137,22:43,138,22:43,139,22:43,140,22:43,141,三、神经网络控制的学习机制 1、离线学习法,22:43,142,2、在线学习法,22:43,143,3、反馈误差学习法,22:43,144,4、多网络学习法,22:43,145,四、神经网络控制器的设计 1、直接逆模型法,22:43,146,2、直接网络控制设计法,22:43,147,5.7基于MATLAB的神经网络实现,MATLAB神经网络工具箱提供了典型的神经网络模型: 1)感知器模型 2)线性网络模型 3)BP网络模型 4)RBF网络模型 5)反馈网络模型 6)自组织竞争网络模型,22:43,148,