神经网络最终版课件_第1页
神经网络最终版课件_第2页
神经网络最终版课件_第3页
神经网络最终版课件_第4页
神经网络最终版课件_第5页
已阅读5页,还剩145页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

人工神经网络基础知识人工神经网络基础知识11.人工神经网络概述什么是人工神经网络(ArtificialNeuralNetwroks-----ANN)?

生物神经网络(naturalneuralnetwork,NNN):由中枢神经系统(脑和脊髓)及周围神经系统(感觉神经、运动神经等)所构成的错综复杂的神经网络,其中最重要的是脑神经系统。人工神经网络(artificialneuralnetworks,ANN):模拟人脑神经系统的结构和功能,运用大量简单处理单元经广泛连接而组成的人工网络系统。T.Koholen的定义:“人工神经网络是由具有适应性的简单单元组成的广泛并行互连的网络,它的组织能够模拟生物神经系统对真实世界物体所作出的交互反应。”1.人工神经网络概述什么是人工神经网络(Artificia21.1研究ANN目的1.2ANN的研究内容1.3研究ANN方法1.4神经网络的发展概况1.5神经网络的特点1.人工神经网络概述1.1研究ANN目的1.人工神经网络概述3利用机器模仿人类的智能是长期以来人们认识自然、改造自然和认识自身的理想。1.1研究ANN目的:(1)探索和模拟人的感觉、思维和行为的规律,设计具有人类智能的计算机系统。(2)探讨人脑的智能活动,用物化了的智能来考察和研究人脑智能的物质过程及其规律。利用机器模仿人类的智能是长期以来人们认识自然41.2ANN的研究内容(1)理论研究:ANN模型及其学习算法,试图从数学上描述ANN的动力学过程,建立相应的ANN模型,在该模型的基础上,对于给定的学习样本,找出一种能以较快的速度和较高的精度调整神经元间互连权值,使系统达到稳定状态,满足学习要求的算法。(2)实现技术的研究:探讨利用电子、光学、生物等技术实现神经计算机的途径。(3)应用的研究:探讨如何应用ANN解决实际问题,如模式识别、故障检测、智能机器人等。1.2ANN的研究内容(1)理论研究:ANN模型及其学习算51.3研究ANN方法(1)生理结构的模拟:

用仿生学观点,探索人脑的生理结构,把对人脑的微观结构及其智能行为的研究结合起来即人工神经网络(ArtificialNeuralNetwroks,简称ANN)方法。(2)宏观功能的模拟:

从人的思维活动和智能行为的心理学特性出发,利用计算机系统来对人脑智能进行宏观功能的模拟,即符号处理方法。1.3研究ANN方法(1)生理结构的模拟:6

探索时期:(开始于20世纪40年代)

1943年,麦克劳(W.S.McCullocn)和匹茨(W.A.Pitts)首次提出一个神经网络模型——M-P模型。

1949年,赫布(D.O.Hebb)提出改变神经元连接强度的Hebb学习规则。1.4神经网络的发展概况

1958年,罗森布拉特(F.Rosenblatt)提出感知器模型(perceptron)。

1959年,威德罗(B.Widrow)等提出自适应线性元件(adaline)网络,通过训练后可用于抵消通信中的回波和噪声。1960年,他和M.Hoff提出LMS(LeastMeanSquare最小方差)算法的学习规则。

第一次热潮时期:(20世纪50年代末-20世纪60年代初)探索时期:(开始于20世纪40年代) 1943年,麦7

1969年,明斯基(M.Minsky)等在《Perceptron》中对感知器功能得出悲观结论。

1972年,T.Kohonen和J.Anderson分别提出能完成记忆的新型神经网络。

1976年,S.Grossberg在自组织神经网络方面的研究十分活跃。

低潮时期:(20世纪60年代末-20世纪70年代)

1969年,明斯基(M.Minsky)等在《Percep8

第二次热潮时期:20世纪80年代至今

1982年-1986年,霍普菲尔德(J.J.Hopfield)陆续提出离散的和连续的全互连神经网络模型,并成功求解旅行商问题(TSP)。

1986年,鲁姆尔哈特(Rumelhart)和麦克劳(McCellan)等在《ParallelDistributedProcessing》中提出反向传播学习算法(B-P算法)。

1987年6月,首届国际神经网络学术会议在美国圣地亚哥召开,成立了国际神经网络学会(INNS)。第二次热潮时期:20世纪80年代至今 1982年-91.5人工神经网络的特点(1)固有的并行结构和并行处理人工神经网络与人类的大脑类似,不但结构上是并行的,其处理顺序也是并行的和同时的。在同一层内的处理单元都是同时工作的,即神经网络的计算功能分布在多个处理单元上,而传统的计算机通常只有一个处理单元,其处理顺序是串行的。目前的神经网络功能常常用一般计算机的串行工作方式来模拟,所以显得很慢,真正意义上的神经网络将会大大提高处理速度,实现快速处理。1.5人工神经网络的特点(1)固有的并行结构和并行处理10(2)知识的分布存储在神经网络中,知识不是存储在特定的存储单元,而是分布在整个系统中,要存储多个知识就需要很多连接。在计算机中,只要给定一个地址就可以得到一个或一组数据,在神经网络中,要获得存储的知识则采用“联想”的办法,这类似于人类和动物的记忆。当一个神经网络输入一个激励时,它要在已存储的知识中寻找与该输入匹配最好的知识存储为其解。人类根据联想善于正确识别图形,人工神经网络也具有这种能力。(2)知识的分布存储11(3)容错性人类大脑具有很强的容错能力,这正是由于大脑中知识是存储在很多处理单元和它们的连接上的。每天大脑的一些细胞都可能会自动死亡,但这并没有影响人们的记忆和思考能力。人工神经网络可以从不完善的数据和图形进行学习和做出决定由于知识存在整个系统中,而不是在一个存储单元内,因此一定比例的结点不参与运算,对整个系统的性能不会产生重大影响。神经网络中承受硬件损坏的能力比一般计算机要强得多。(3)容错性12(4)自适应性人类有很强的适应外部的学习能力 小孩在周围环境的熏陶下可以学会很多事情,如通过学习可以认字、说话、走路、思考、判断等。人工神经网络也具有学习能力有指导的训练:将输入样本加到网络输入并给出相应的输出,通过多次训练迭代获得连接权值。

好像告诉网络:“当你看到这个图形(比如5)时,请给我指示5”。无指导的训练:网络通过训练自行调节连接加权,从而对输入样本分类在网络训练时,有时只能给出大量的输入图形,没有指定它们的输出,网络就自行按输入图形的特征对它们进行分类。如小孩通过大量观察可以分辨出哪是狗、哪是猫一样。(4)自适应性人工神经网络也具有学习能力有指导的训练:132神经元与神经网络2.1生物神经元的结构2.2神经元数学模型2.3神经网络结构与工作方式2.4神经网络的学习方法2神经元与神经网络2.1生物神经元的结构142.1生物神经元的结构人脑由一千多亿(1011亿-1014亿)个神经细胞(神经元)交织在一起的网状结构组成,其中大脑皮层约140亿个神经元,小脑皮层约1000亿个神经元。神经元约有1000种类型,每个神经元大约与103-104个其他神经元相连接,形成极为错综复杂而又灵活多变的神经网络。人的智能行为就是由如此高度复杂的组织产生的。浩瀚的宇宙中,也许只有包含数千忆颗星球的银河系的复杂性能够与大脑相比。2.1生物神经元的结构人脑由一千多亿(1011亿-1015(输入)(输出)神经冲动神经元的信息传递和处理是一种电化学活动,树突由于电化学作用接受外界的刺激(输入);通过胞体内的活动体现为轴突电位,当轴突电位达到一定的值则形成神经脉冲或动作电位;再通过轴突末梢传递给其他神经元(输出)。从控制论的观点来看,这一过程可以看作一个多输入单输出非线性系统的动态过程。(输入)(输出)神经冲动神经元的信息传递和处理是一种电化16生物神经网络基本模型生物神经网络基本模型17神经元的工作状态:

兴奋状态:细胞膜电位>

动作电位的阈值→神经冲动

抑制状态:细胞膜电位<动作电位的阈值

学习与遗忘:由于神经元结构的可塑性,突触的传递作用可增强和减弱。脑神经信息活动的特征:巨量并行性。信息处理和存储单元结合在一起。自组织自学习功能。

神经元的工作状态:脑神经信息活动的特征:18人工神经元模型可以看成是由三种基本元素组成:(1)一组连接连接强度由各连接上的权值表示,权值可以取正值也可以取负值,权值为正表示激活,权值为负表示抑制;(2)一个加法器用于求输入信号对神经元的相应突触加权之和;(3)一个激活函数用限制神经元输出振幅,激活函数也称为压制函数。因为他将输入信号压制(限制)到允许范围之内的一定值。2.2神经元数学模型人工神经元模型可以看成是由三种基本元素组成:2.2神经元19输入信号连接权阈值激活函数输出图中是神经元的输入,即是来自前级n个神经元的轴突的信息A,是i神经元的阈值;分别是i神经元对的权系数,也即突触的传递效率;yi是i神经元的输出;f[.]是激励函数它决定i神经元受到输入的共同刺激达到阈值时以何种方式输出。

神经元数学模型输入信号连接权求和输入信号连接权阈值激活函数输出图中是20神经元数学模型由神经元模型,可以得到神经元的数学模型表达式:基本特性:

(1)非线性:线性系统就是满足叠加原理和齐次性的系统,通俗地讲,就是y=kx这样的函数关系就是线性,而神经网络是典型的非线性系统,它不满足这两个特性,也正因为它是非线性系统,所以才能解决非线性分类等问题。

(2)非局限性:以BP神经网络为例,BP要达到在全局范围内找到能使误差最小的权值,这就是非局域性。(3)非常定性:定常就是一个系统的结构参数是固定的常数,而神经网络是可以通过训练修改权值的,当然具有非定常性。

(4)非凸性:非凸性是指系统的能量函数有多个极值,即系统有多个稳定的平衡态。神经元数学模型由神经元模型,可以得到神经元的数学模型表达式:21激活函数的主要形式一些典型的特性函数

阈值型

线性型

s型激活函数的主要形式一些典型的特性函数222神经元与神经网络2.1生物神经元的结构2.2神经元数学模型2.3神经网络结构与工作方式2.4神经网络的学习方法2神经元与神经网络2.1生物神经元的结构232.3神经网络的结构与工作方式决定人工神经网络性能的三大要素:神经元的特性。神经元之间相互连接的形式——拓扑结构。为适应环境而改善性能的学习规则。2.3神经网络的结构与工作方式决定人工神经网络性能的三大24(1)神经网络的结构(a)前馈型神经网络,又称前向网络(FeedforwardNN)

2.3神经网络的结构与工作方式神经元分层排列,有输入层、隐层(亦称中间层,可有若干层)和输出层,每一层的神经元只接受前一层神经元的输入。(1)神经网络的结构2.3神经网络的结构与工作方25(b)反馈型神经网络(FeedbackNN)

(Hopfield神经网络)2.3神经网络的结构与工作方式如果总节点(神经元)数为N,那么每个节点有N个输入和一个输出,也就是说,所有节点都是一样的,它们之间都可相互连接。每个神经元同时将自身的输出信号作为输入信号反馈给其他神经元,它需要工作一段时间才能达到稳定。(b)反馈型神经网络(FeedbackNN)(Hopf26

(2)神经网络的工作方式同步(并行)方式:任一时刻神经网络中所有神经元同时调整状态。异步(串行)方式:任一时刻只有一个神经元调整状态,而其它神经元的状态保持不变。2.3神经网络的结构与工作方式(2)神经网络的工作方式同步(并行)方式:任一时刻神27目前神经网络的学习方法有多种:按有无导师来分类,可分为有教师学习(SupervisedLearning)、无教师学习(UnsupervisedLearning)和再励学习(ReinforcementLearning)等几大类。在有教师的学习方式中,网络的输出和期望的输出(即教师信号)进行比较,然后根据两者之间的差异调整网络的权值,最终使差异变小。在无教师的学习方式中,输入模式进人网络后,网络按照一预先设定的规则(如竞争规则)自动调整权值,使网络最终具有模式分类等功能。再励学习是介于上述两者之间的一种学习方式。2.4神经网络的学习方法目前神经网络的学习方法有多种:2.4神经网络的学习方法28神经网络中常用的几种最基本的学习方法(1).Hebb学习规则两个神经元同时处于激发状态时,它们之间的连接强度将得到加强,这一论述的数学描述被称为Hebb学习规则Hebb学习规则是一种无教师的学习方法,它只根据神经元连接间的激活水平改变权值,因此这种方法又称为相关学习或并联学习。神经网络中常用的几种最基本的学习方法(1).Hebb学习29(2)学习规则(误差修正规则)

令yi(k)为输入x(k)时神经元i在k时刻的实际输出,ti(k)表示相应的期望输出,则误差信号可写为:ei(k)=ti(k)-yi(k)

误差纠正学习的最终目的是使某一基于ei(k)的目标函数达最小,以使网络中每一输出单元的实际输出在某种统计意义上最逼近于期望输出。一旦选定了目标函数形式,误差纠正学习就成为一个典型的最优化问题。(2)学习规则(误差修正规则)30(3).概率式学习从统计力学、分子热力学和概率论中关于系统稳态能量的标准出发,进行神经网络学习的方式称概率式学习。神经网络处于某一状态的概率主要取决于在此状态下的能量,能量越低,概率越大。概率式学习的典型代表是Boltzmann机学习规则。它是基于模拟退火的统计优化方法,因此又称模拟退火算法。(3).概率式学习31(4).竞争式学习

竞争式学习属于无教师学习方式。

此种学习方式利用不同层间的神经元发生兴奋性联接,以及同一层内距离很近的神经元间发生同样的兴奋性联接,而距离较远的神经元产生抑制性联接。在这种联接机制中引入竟争机制的学习方式称为竟争式学习。它的本质在于神经网络中高层次的神经元对低层次神经元的输入模式进行竞争识别。(4).竞争式学习323BP神经网络及其学习算法3.1BP神经网络(back-propagationneuralnetwork)的结构3.2BP学习算法3.3BP算法的实现3BP神经网络及其学习算法3.1BP神经网络(back333.1BP神经网络的结构(1).BP网络结构3.1BP神经网络的结构(1).BP网络结构343.1BP神经网络的结构(2).输入输出变换关系

3.1BP神经网络的结构(2).输入输出变换关系353.1BP神经网络的结构(3).工作过程

第一阶段或网络训练阶段:N组输入样本:xi=[xi1,xi2,…,xip1]Tdi=[di1,di2,…,dipm]T

i=1,2,…,N

对网络的连接权进行学习和调整,以使该网络实现给定样本的输入输出映射关系。

第二阶段或称工作阶段:把实验数据或实际数据输入到网络,网络在误差范围内预测计算出结果。

3.1BP神经网络的结构(3).工作过程第一阶段或363BP神经网络及其学习算法3.1BP神经网络的结构3.2BP学习算法3.3BP算法的实现3BP神经网络及其学习算法3.1BP神经网络的结构37(1)是否存在一个BP神经网络能够逼近给定的样本或者函数。3.2BP学习算法两个问题:(2)如何调整BP神经网络的连接权,使网络的输入与输出与给定的样本相同。

1986年,鲁梅尔哈特(D.Rumelhart)等提出BP学习算法。(1)是否存在一个BP神经网络能够逼近给定的样本或者函数。3383.2BP学习算法目标函数:

约束条件:

连接权值的修正量:(1).基本思想

BP算法的基本原理:利用输出后的误差来估计输出层的直接前导层的误差,再用这个误差估计更前一层的误差,如此一层一层的反传下去,就获得了所有其他各层的误差估计。3.2BP学习算法目标函数:约束条件:连接权393.2BP学习算法正向传播:输入信息由输入层传至隐层,最终在输出层输出。反向传播:修改各层神经元的权值,使误差信号最小。(2).学习算法

3.2BP学习算法正向传播:输入信息由输入层传至隐层40(2)学习算法(2)学习算法41(3)BP算法直观解释情况一直观表达

当误差对权值的偏导数大于零时,权值调整量为负,实际输出大于期望输出,权值向减少方向调整,使得实际输出与期望输出的差减少。whoe>0,此时Δwho<0情况二直观表达当误差对权值的偏导数小于零时,权值调整量为正,实际输出少于期望输出,权值向增大方向调整,使得实际输出与期望输出的差减少。e<0,此时Δwho>0who(3)BP算法直观解释whoe>0,此时Δwho<0情423.3BP算法的实现(1)隐层数及隐层神经元数的确定:目前尚无理论指导。(2)初始权值的设置:一般以一个均值为0的随机分布设置网络的初始权值。(3)训练数据预处理:线性的特征比例变换,将所有的特征变换到[0,1]或者[-1,1]区间内,使得在每个训练集上,每个特征的均值为0,并且具有相同的方差。(4)后处理过程:当应用神经网络进行分类操作时,通常将输出值编码成所谓的名义变量,具体的值对应类别标号。(1).BP算法的设计

3.3BP算法的实现(1)隐层数及隐层神经元数的确定:433.3BP算法的实现

①初始化:对所有连接权和阈值赋以随机任意小值;②从N组输入输出样本中取一组样本:

x=[x1,x2,…,xp1]T,d=[d1,d2,…,dpm]T,把输入信息x=[x1,x2,…,xp1]T输入到BP网络中

③正向传播:计算各层节点的输出:④计算网络的实际输出与期望输出的误差:(2).BP算法的计算机实现流程

3.3BP算法的实现①初始化:对所有连接权和阈值44⑤反向传播:从输出层方向计算到第一个隐层,按连接权值修正公式向减小误差方向调整网络的各个连接权值。⑥让t+1→t,取出另一组样本重复(2)-(5),直到N组输入输出样本的误差达到要求时为止。⑤反向传播:从输出层方向计算到第一个隐层,按连接权值修正45BP学习算法程序框图BP学习算法程序框图46(3)BP神经网络学习算法的MATLAB实现MATLAB中BP神经网络的重要函数和基本功能

生成网络:newff

学习规则:learngd,learngdm

训练算法:traingd,traingdm,traingda,traingdx,trainlm

变换函数:tansig,purelin,logsig

训练网络:train

仿真网络:sim

画图:plotes,plotep,ploterr,barerr(3)BP神经网络学习算法的MATLAB实现MATLAB中47newff

该函数用于创建一个BP网络。调用格式为:net=newffnet=newff(PR,[S1S2..SN1],{TF1TF2..TFN1},BTF,BLF,PF)其中,net=newff;用于在对话框中创建一个BP网络。

net为创建的新BP神经网络;

PR为网络输入向量取值范围的矩阵;

[S1S2…SNl]表示网络隐含层和输出层神经元的个数;{TFlTF2…TFN1}表示网络隐含层和输出层的传输函数,默认为‘tansig’;

BTF表示网络的训练函数,默认为‘trainlm’;

BLF表示网络的权值学习函数,默认为‘learngdm’;

PF表示性能数,默认为‘mse’。

newff48例:基于BP神经网络逼近函数要求设计一个BP网络逼近以下函数:其中,分别令k=1,2,4进行仿真,通过调节参数(如隐藏层节点个数等)得出信号的频率与隐层节点之间,隐层节点与函数逼近能力之间的关系。步骤1:假设频率参数k=1,绘制要逼近的非线性函数的曲线。k=1;p=[-1:.05:8];t=1+sin(k*pi/4*p);plot(p,t,'-');title('要逼近的非线性函数');xlabel('时间');ylabel('非线性函数');例:基于BP神经网络逼近函数要求设计一个BP网49应用newff()函数建立BP网络结构。隐层神经元数目n可以改变,暂设为n=3,输出层有一个神经元。选择隐层和输出层神经元传递函数分别为tansig函数和purelin函数,网络训练的算法采用LM算法trainlm。n=3;net=newff(minmax(p),[n,1],{'tansig''purelin'},'trainlm');%对于初始网络,可以应用sim()函数观察网络输出。y1=sim(net,p);figure;plot(p,t,'-',p,y1,':')title('未训练网络的输出结果');xlabel('时间');ylabel('仿真输出--原函数-');步骤2:网络的建立应用newff()函数建立BP网络结构。隐层神经元数目n可以50其中“—”代表要逼近的非线性函数曲线;“‥‥‥”代表未经训练的函数曲线;其中“—”代表要逼近的非线性函数曲线;51步骤3:网络训练应用train()函数对网络进行训练之前,需要预先设置网络训练参数。将训练时间设置为50,训练精度设置为0.01,其余参数使用缺省值。

net.trainParam.epochs=50;%网络训练时间设置为50net.trainParam.goal=0.01;%网络训练精度设置为0.01net=train(net,p,t);%开始训练网络训练后得到的误差变化过程

步骤3:网络训练应用train()函数对网络进行训练之前,需52步骤4:网络测试对于训练好的网络进行仿真:

y2=sim(net,p);figure;plot(p,t,'-',p,y1,':',p,y2,'--')title('训练后网络的输出结果');xlabel('时间');ylabel('仿真输出');步骤4:网络测试对于训练好的网络进行仿真:53其中“—”代表要逼近的非线性函数曲线;“‥‥‥”代表未经训练的函数曲线;“―――”代表经过训练的函数曲线;其中“—”代表要逼近的非线性函数曲线;54不同频率下的逼近效果(1)频率参数设为k=2,当隐层神经元数目分别取n=3、n=6时当n=3时训练后网络的输出结果当n=6时训练后网络的输出结果不同频率下的逼近效果(1)频率参数设为k=2,当隐层神经元数55(2)频率参数设为k=4,当隐层神经元数目分别取n=6、n=8时当n=6时训练后网络的输出结果当n=8时训练后网络的输出结果(2)频率参数设为k=4,当隐层神经元数目分别取n=6、n=56结论通过上述仿真结果可知,当k=1,n=3时;k=2,n=6时;k=4,n=8时,BP神经网络分别对函数取得了较好的逼近效果。由此可见,n取不同的值对函数逼近的效果有很大的影响。改变BP网络隐层神经元的数目,可以改变BP神经网络对于函数的逼近效果。隐层神经元数目越多,则BP网络逼近非线性函数的能力越强。结论通过上述仿真结果可知,当k=1,n=3时;57RBF神经网络RBF神经网络58径向基函数(RadialBasisFunction,RBF)网络是由MoodyJ和DarkenC于20世纪80年代末提出的一种神经网络结构,是一种有监督的神经网络。它是借鉴生物机制中的局部凋节及交叉接受区域知识的基础上提出的一种采用局部接受域来执行函数映射的人工神经网络。RBF网络最基本的构成包括3层,其中每一层都有着完全不同的作用。1.RBF神经网络概念径向基函数(RadialBasisFuncti591.1RBF神经网络概况:Neuron:神经元输入输出X1x11x12x13x14y1X2x21x22x23x24y2X3x31x32x33x34y3X4x41x42x43x44y4....................................Xnxn1xn2xn3xn4yn

1.1.1神经网络基础:1.1RBF神经网络概况:Neuron:神经元X1x11601.1.1RBF神经网络基础:Neuron:神经元分类回归1.1.1RBF神经网络基础:Neuron:神经元分类回611.1.1RBF神经网络基础:

RBF神经网络的本质:把输入数据从一个空间转换到另一个空间。1.1.1RBF神经网络基础:

RBF神经网络的本质621.1.2RBF神经网络的例子1.1.2RBF神经网络的例子63

径向基函数有多种形式,如:二次型、逆二次型或Gauss型等。若采用高斯函数作为径向基函数,则神经元的输出为:1.2RBF神经网络的正式定义径向基函数有多种形式,如:二次型、逆二次64GaussianRBF(GRBF)1.2.1RBF神经网络的分类:一、Eeact有几组数据,就有几个,适合数据比较少的网络

二、Approximate如果数据多,需要先对数据进行归类

GaussianRBF(GRBF)1.2.1RBF神经65神经网络的应用神经网络的应用66(1)自动控制领域。神经网络方法已经覆盖了控制理论中的绝大多数问题,主要有系统建模与辨识、PID参数整定、极点配置、内模控制、优化设计、预测控制、最优控制、自适应控制、滤波与预测容错控制、模糊控制和学习控制等。(2)处理组合优化问题。最典型的例子是成功地解决了TSP问题,即旅行推销员问题。另外还有最大匹配问题、装箱问题和作业调度等。2.神经网络的应用(1)自动控制领域。神经网络方法已经覆盖了控制理论中的67神经网络PID控制(neuralnetworkPIDcontrol)

经典增量式数字PID的控制算法为:

NN是一个三层BP网络,有M个输入节点、N个隐含节点、3个输出节点。输入节点对应所选的系统运行状态量,输出节点分别对应PID控制器的3个可调参数kp,ki,kd。

神经网络PID控制(neuralnetworkPIDc68(3)模式识别。已成功应用于手写字符、汽车牌照、指纹和声音识别,还可用于目标的自动识别和定位、机器人传感器的图像识别以及地震信号的鉴别等。(3)模式识别。已成功应用于手写字符、汽车牌照、指纹和声69(4)机器人控制。对机器人眼手系统位置进行协调控制,用于机械手的故障诊断、智能自适应移动机器人的导航。(4)机器人控制。对机器人眼手系统位置进行协调控制,用于70(5)信号处理。能分别对通讯、语音、心电和脑电信号进行处理分类;可用于海底声纳信号的检测与分类,在反潜、扫雷等方面得到应用。(6)卫生保健、医疗。比如通过训练自主组合的多层感知器可以区分正常心跳和非正常心跳。(5)信号处理。能分别对通讯、语音、心电和脑电信号进行71(7)经济。能对商品价格、股票价格和企业的可信度等进行短期预测。(8)化工领域。能对制药、生物化学和化学工程等进行分析。如:进行蛋白质结构分析、谱分析和化学反应分析等。(9)图像处理。对图像进行边缘监测、图像分割、图像压缩和图像恢复。(10)传感器信号处理。传感器输出非线性特性的校正、传感器故障检测、滤波与除噪、环境影响因素的补偿、多传感器信息融合。(11)焊接领域。国内外在参数选择、质量检验、质量预测和实时控制方面都有研究,部分成果已得到应用。(7)经济。能对商品价格、股票价格和企业的可信度等进72(12)地理领域。在遥感图像分类中有广泛的应用,提高系统对数据进行复杂的综合分析的功能。(13)另外,在数据挖掘、电力系统、交通、军事、矿业、农业和气象等方面亦有应用。(12)地理领域。在遥感图像分类中有广泛的应用,提高系统733.神经网络的发展前景我们可以想象到那时声控电视、电话、计算机、打字机等将进入寻常百姓家;人类可以直接同机器进行接口对话;具有思维、语言、感情的智能机器人将替代我们去做许多繁琐和人类自身不适合做的事情。3.神经网络的发展前景我们可以想象到那74

谢谢!

75人工神经网络基础知识人工神经网络基础知识761.人工神经网络概述什么是人工神经网络(ArtificialNeuralNetwroks-----ANN)?

生物神经网络(naturalneuralnetwork,NNN):由中枢神经系统(脑和脊髓)及周围神经系统(感觉神经、运动神经等)所构成的错综复杂的神经网络,其中最重要的是脑神经系统。人工神经网络(artificialneuralnetworks,ANN):模拟人脑神经系统的结构和功能,运用大量简单处理单元经广泛连接而组成的人工网络系统。T.Koholen的定义:“人工神经网络是由具有适应性的简单单元组成的广泛并行互连的网络,它的组织能够模拟生物神经系统对真实世界物体所作出的交互反应。”1.人工神经网络概述什么是人工神经网络(Artificia771.1研究ANN目的1.2ANN的研究内容1.3研究ANN方法1.4神经网络的发展概况1.5神经网络的特点1.人工神经网络概述1.1研究ANN目的1.人工神经网络概述78利用机器模仿人类的智能是长期以来人们认识自然、改造自然和认识自身的理想。1.1研究ANN目的:(1)探索和模拟人的感觉、思维和行为的规律,设计具有人类智能的计算机系统。(2)探讨人脑的智能活动,用物化了的智能来考察和研究人脑智能的物质过程及其规律。利用机器模仿人类的智能是长期以来人们认识自然791.2ANN的研究内容(1)理论研究:ANN模型及其学习算法,试图从数学上描述ANN的动力学过程,建立相应的ANN模型,在该模型的基础上,对于给定的学习样本,找出一种能以较快的速度和较高的精度调整神经元间互连权值,使系统达到稳定状态,满足学习要求的算法。(2)实现技术的研究:探讨利用电子、光学、生物等技术实现神经计算机的途径。(3)应用的研究:探讨如何应用ANN解决实际问题,如模式识别、故障检测、智能机器人等。1.2ANN的研究内容(1)理论研究:ANN模型及其学习算801.3研究ANN方法(1)生理结构的模拟:

用仿生学观点,探索人脑的生理结构,把对人脑的微观结构及其智能行为的研究结合起来即人工神经网络(ArtificialNeuralNetwroks,简称ANN)方法。(2)宏观功能的模拟:

从人的思维活动和智能行为的心理学特性出发,利用计算机系统来对人脑智能进行宏观功能的模拟,即符号处理方法。1.3研究ANN方法(1)生理结构的模拟:81

探索时期:(开始于20世纪40年代)

1943年,麦克劳(W.S.McCullocn)和匹茨(W.A.Pitts)首次提出一个神经网络模型——M-P模型。

1949年,赫布(D.O.Hebb)提出改变神经元连接强度的Hebb学习规则。1.4神经网络的发展概况

1958年,罗森布拉特(F.Rosenblatt)提出感知器模型(perceptron)。

1959年,威德罗(B.Widrow)等提出自适应线性元件(adaline)网络,通过训练后可用于抵消通信中的回波和噪声。1960年,他和M.Hoff提出LMS(LeastMeanSquare最小方差)算法的学习规则。

第一次热潮时期:(20世纪50年代末-20世纪60年代初)探索时期:(开始于20世纪40年代) 1943年,麦82

1969年,明斯基(M.Minsky)等在《Perceptron》中对感知器功能得出悲观结论。

1972年,T.Kohonen和J.Anderson分别提出能完成记忆的新型神经网络。

1976年,S.Grossberg在自组织神经网络方面的研究十分活跃。

低潮时期:(20世纪60年代末-20世纪70年代)

1969年,明斯基(M.Minsky)等在《Percep83

第二次热潮时期:20世纪80年代至今

1982年-1986年,霍普菲尔德(J.J.Hopfield)陆续提出离散的和连续的全互连神经网络模型,并成功求解旅行商问题(TSP)。

1986年,鲁姆尔哈特(Rumelhart)和麦克劳(McCellan)等在《ParallelDistributedProcessing》中提出反向传播学习算法(B-P算法)。

1987年6月,首届国际神经网络学术会议在美国圣地亚哥召开,成立了国际神经网络学会(INNS)。第二次热潮时期:20世纪80年代至今 1982年-841.5人工神经网络的特点(1)固有的并行结构和并行处理人工神经网络与人类的大脑类似,不但结构上是并行的,其处理顺序也是并行的和同时的。在同一层内的处理单元都是同时工作的,即神经网络的计算功能分布在多个处理单元上,而传统的计算机通常只有一个处理单元,其处理顺序是串行的。目前的神经网络功能常常用一般计算机的串行工作方式来模拟,所以显得很慢,真正意义上的神经网络将会大大提高处理速度,实现快速处理。1.5人工神经网络的特点(1)固有的并行结构和并行处理85(2)知识的分布存储在神经网络中,知识不是存储在特定的存储单元,而是分布在整个系统中,要存储多个知识就需要很多连接。在计算机中,只要给定一个地址就可以得到一个或一组数据,在神经网络中,要获得存储的知识则采用“联想”的办法,这类似于人类和动物的记忆。当一个神经网络输入一个激励时,它要在已存储的知识中寻找与该输入匹配最好的知识存储为其解。人类根据联想善于正确识别图形,人工神经网络也具有这种能力。(2)知识的分布存储86(3)容错性人类大脑具有很强的容错能力,这正是由于大脑中知识是存储在很多处理单元和它们的连接上的。每天大脑的一些细胞都可能会自动死亡,但这并没有影响人们的记忆和思考能力。人工神经网络可以从不完善的数据和图形进行学习和做出决定由于知识存在整个系统中,而不是在一个存储单元内,因此一定比例的结点不参与运算,对整个系统的性能不会产生重大影响。神经网络中承受硬件损坏的能力比一般计算机要强得多。(3)容错性87(4)自适应性人类有很强的适应外部的学习能力 小孩在周围环境的熏陶下可以学会很多事情,如通过学习可以认字、说话、走路、思考、判断等。人工神经网络也具有学习能力有指导的训练:将输入样本加到网络输入并给出相应的输出,通过多次训练迭代获得连接权值。

好像告诉网络:“当你看到这个图形(比如5)时,请给我指示5”。无指导的训练:网络通过训练自行调节连接加权,从而对输入样本分类在网络训练时,有时只能给出大量的输入图形,没有指定它们的输出,网络就自行按输入图形的特征对它们进行分类。如小孩通过大量观察可以分辨出哪是狗、哪是猫一样。(4)自适应性人工神经网络也具有学习能力有指导的训练:882神经元与神经网络2.1生物神经元的结构2.2神经元数学模型2.3神经网络结构与工作方式2.4神经网络的学习方法2神经元与神经网络2.1生物神经元的结构892.1生物神经元的结构人脑由一千多亿(1011亿-1014亿)个神经细胞(神经元)交织在一起的网状结构组成,其中大脑皮层约140亿个神经元,小脑皮层约1000亿个神经元。神经元约有1000种类型,每个神经元大约与103-104个其他神经元相连接,形成极为错综复杂而又灵活多变的神经网络。人的智能行为就是由如此高度复杂的组织产生的。浩瀚的宇宙中,也许只有包含数千忆颗星球的银河系的复杂性能够与大脑相比。2.1生物神经元的结构人脑由一千多亿(1011亿-1090(输入)(输出)神经冲动神经元的信息传递和处理是一种电化学活动,树突由于电化学作用接受外界的刺激(输入);通过胞体内的活动体现为轴突电位,当轴突电位达到一定的值则形成神经脉冲或动作电位;再通过轴突末梢传递给其他神经元(输出)。从控制论的观点来看,这一过程可以看作一个多输入单输出非线性系统的动态过程。(输入)(输出)神经冲动神经元的信息传递和处理是一种电化91生物神经网络基本模型生物神经网络基本模型92神经元的工作状态:

兴奋状态:细胞膜电位>

动作电位的阈值→神经冲动

抑制状态:细胞膜电位<动作电位的阈值

学习与遗忘:由于神经元结构的可塑性,突触的传递作用可增强和减弱。脑神经信息活动的特征:巨量并行性。信息处理和存储单元结合在一起。自组织自学习功能。

神经元的工作状态:脑神经信息活动的特征:93人工神经元模型可以看成是由三种基本元素组成:(1)一组连接连接强度由各连接上的权值表示,权值可以取正值也可以取负值,权值为正表示激活,权值为负表示抑制;(2)一个加法器用于求输入信号对神经元的相应突触加权之和;(3)一个激活函数用限制神经元输出振幅,激活函数也称为压制函数。因为他将输入信号压制(限制)到允许范围之内的一定值。2.2神经元数学模型人工神经元模型可以看成是由三种基本元素组成:2.2神经元94输入信号连接权阈值激活函数输出图中是神经元的输入,即是来自前级n个神经元的轴突的信息A,是i神经元的阈值;分别是i神经元对的权系数,也即突触的传递效率;yi是i神经元的输出;f[.]是激励函数它决定i神经元受到输入的共同刺激达到阈值时以何种方式输出。

神经元数学模型输入信号连接权求和输入信号连接权阈值激活函数输出图中是95神经元数学模型由神经元模型,可以得到神经元的数学模型表达式:基本特性:

(1)非线性:线性系统就是满足叠加原理和齐次性的系统,通俗地讲,就是y=kx这样的函数关系就是线性,而神经网络是典型的非线性系统,它不满足这两个特性,也正因为它是非线性系统,所以才能解决非线性分类等问题。

(2)非局限性:以BP神经网络为例,BP要达到在全局范围内找到能使误差最小的权值,这就是非局域性。(3)非常定性:定常就是一个系统的结构参数是固定的常数,而神经网络是可以通过训练修改权值的,当然具有非定常性。

(4)非凸性:非凸性是指系统的能量函数有多个极值,即系统有多个稳定的平衡态。神经元数学模型由神经元模型,可以得到神经元的数学模型表达式:96激活函数的主要形式一些典型的特性函数

阈值型

线性型

s型激活函数的主要形式一些典型的特性函数972神经元与神经网络2.1生物神经元的结构2.2神经元数学模型2.3神经网络结构与工作方式2.4神经网络的学习方法2神经元与神经网络2.1生物神经元的结构982.3神经网络的结构与工作方式决定人工神经网络性能的三大要素:神经元的特性。神经元之间相互连接的形式——拓扑结构。为适应环境而改善性能的学习规则。2.3神经网络的结构与工作方式决定人工神经网络性能的三大99(1)神经网络的结构(a)前馈型神经网络,又称前向网络(FeedforwardNN)

2.3神经网络的结构与工作方式神经元分层排列,有输入层、隐层(亦称中间层,可有若干层)和输出层,每一层的神经元只接受前一层神经元的输入。(1)神经网络的结构2.3神经网络的结构与工作方100(b)反馈型神经网络(FeedbackNN)

(Hopfield神经网络)2.3神经网络的结构与工作方式如果总节点(神经元)数为N,那么每个节点有N个输入和一个输出,也就是说,所有节点都是一样的,它们之间都可相互连接。每个神经元同时将自身的输出信号作为输入信号反馈给其他神经元,它需要工作一段时间才能达到稳定。(b)反馈型神经网络(FeedbackNN)(Hopf101

(2)神经网络的工作方式同步(并行)方式:任一时刻神经网络中所有神经元同时调整状态。异步(串行)方式:任一时刻只有一个神经元调整状态,而其它神经元的状态保持不变。2.3神经网络的结构与工作方式(2)神经网络的工作方式同步(并行)方式:任一时刻神102目前神经网络的学习方法有多种:按有无导师来分类,可分为有教师学习(SupervisedLearning)、无教师学习(UnsupervisedLearning)和再励学习(ReinforcementLearning)等几大类。在有教师的学习方式中,网络的输出和期望的输出(即教师信号)进行比较,然后根据两者之间的差异调整网络的权值,最终使差异变小。在无教师的学习方式中,输入模式进人网络后,网络按照一预先设定的规则(如竞争规则)自动调整权值,使网络最终具有模式分类等功能。再励学习是介于上述两者之间的一种学习方式。2.4神经网络的学习方法目前神经网络的学习方法有多种:2.4神经网络的学习方法103神经网络中常用的几种最基本的学习方法(1).Hebb学习规则两个神经元同时处于激发状态时,它们之间的连接强度将得到加强,这一论述的数学描述被称为Hebb学习规则Hebb学习规则是一种无教师的学习方法,它只根据神经元连接间的激活水平改变权值,因此这种方法又称为相关学习或并联学习。神经网络中常用的几种最基本的学习方法(1).Hebb学习104(2)学习规则(误差修正规则)

令yi(k)为输入x(k)时神经元i在k时刻的实际输出,ti(k)表示相应的期望输出,则误差信号可写为:ei(k)=ti(k)-yi(k)

误差纠正学习的最终目的是使某一基于ei(k)的目标函数达最小,以使网络中每一输出单元的实际输出在某种统计意义上最逼近于期望输出。一旦选定了目标函数形式,误差纠正学习就成为一个典型的最优化问题。(2)学习规则(误差修正规则)105(3).概率式学习从统计力学、分子热力学和概率论中关于系统稳态能量的标准出发,进行神经网络学习的方式称概率式学习。神经网络处于某一状态的概率主要取决于在此状态下的能量,能量越低,概率越大。概率式学习的典型代表是Boltzmann机学习规则。它是基于模拟退火的统计优化方法,因此又称模拟退火算法。(3).概率式学习106(4).竞争式学习

竞争式学习属于无教师学习方式。

此种学习方式利用不同层间的神经元发生兴奋性联接,以及同一层内距离很近的神经元间发生同样的兴奋性联接,而距离较远的神经元产生抑制性联接。在这种联接机制中引入竟争机制的学习方式称为竟争式学习。它的本质在于神经网络中高层次的神经元对低层次神经元的输入模式进行竞争识别。(4).竞争式学习1073BP神经网络及其学习算法3.1BP神经网络(back-propagationneuralnetwork)的结构3.2BP学习算法3.3BP算法的实现3BP神经网络及其学习算法3.1BP神经网络(back1083.1BP神经网络的结构(1).BP网络结构3.1BP神经网络的结构(1).BP网络结构1093.1BP神经网络的结构(2).输入输出变换关系

3.1BP神经网络的结构(2).输入输出变换关系1103.1BP神经网络的结构(3).工作过程

第一阶段或网络训练阶段:N组输入样本:xi=[xi1,xi2,…,xip1]Tdi=[di1,di2,…,dipm]T

i=1,2,…,N

对网络的连接权进行学习和调整,以使该网络实现给定样本的输入输出映射关系。

第二阶段或称工作阶段:把实验数据或实际数据输入到网络,网络在误差范围内预测计算出结果。

3.1BP神经网络的结构(3).工作过程第一阶段或1113BP神经网络及其学习算法3.1BP神经网络的结构3.2BP学习算法3.3BP算法的实现3BP神经网络及其学习算法3.1BP神经网络的结构112(1)是否存在一个BP神经网络能够逼近给定的样本或者函数。3.2BP学习算法两个问题:(2)如何调整BP神经网络的连接权,使网络的输入与输出与给定的样本相同。

1986年,鲁梅尔哈特(D.Rumelhart)等提出BP学习算法。(1)是否存在一个BP神经网络能够逼近给定的样本或者函数。31133.2BP学习算法目标函数:

约束条件:

连接权值的修正量:(1).基本思想

BP算法的基本原理:利用输出后的误差来估计输出层的直接前导层的误差,再用这个误差估计更前一层的误差,如此一层一层的反传下去,就获得了所有其他各层的误差估计。3.2BP学习算法目标函数:约束条件:连接权1143.2BP学习算法正向传播:输入信息由输入层传至隐层,最终在输出层输出。反向传播:修改各层神经元的权值,使误差信号最小。(2).学习算法

3.2BP学习算法正向传播:输入信息由输入层传至隐层115(2)学习算法(2)学习算法116(3)BP算法直观解释情况一直观表达

当误差对权值的偏导数大于零时,权值调整量为负,实际输出大于期望输出,权值向减少方向调整,使得实际输出与期望输出的差减少。whoe>0,此时Δwho<0情况二直观表达当误差对权值的偏导数小于零时,权值调整量为正,实际输出少于期望输出,权值向增大方向调整,使得实际输出与期望输出的差减少。e<0,此时Δwho>0who(3)BP算法直观解释whoe>0,此时Δwho<0情1173.3BP算法的实现(1)隐层数及隐层神经元数的确定:目前尚无理论指导。(2)初始权值的设置:一般以一个均值为0的随机分布设置网络的初始权值。(3)训练数据预处理:线性的特征比例变换,将所有的特征变换到[0,1]或者[-1,1]区间内,使得在每个训练集上,每个特征的均值为0,并且具有相同的方差。(4)后处理过程:当应用神经网络进行分类操作时,通常将输出值编码成所谓的名义变量,具体的值对应类别标号。(1).BP算法的设计

3.3BP算法的实现(1)隐层数及隐层神经元数的确定:1183.3BP算法的实现

①初始化:对所有连接权和阈值赋以随机任意小值;②从N组输入输出样本中取一组样本:

x=[x1,x2,…,xp1]T,d=[d1,d2,…,dpm]T,把输入信息x=[x1,x2,…,xp1]T输入到BP网络中

③正向传播:计算各层节点的输出:④计算网络的实际输出与期望输出的误差:(2).BP算法的计算机实现流程

3.3BP算法的实现①初始化:对所有连接权和阈值119⑤反向传播:从输出层方向计算到第一个隐层,按连接权值修正公式向减小误差方向调整网络的各个连接权值。⑥让t+1→t,取出另一组样本重复(2)-(5),直到N组输入输出样本的误差达到要求时为止。⑤反向传播:从输出层方向计算到第一个隐层,按连接权值修正120BP学习算法程序框图BP学习算法程序框图121(3)BP神经网络学习算法的MATLAB实现MATLAB中BP神经网络的重要函数和基本功能

生成网络:newff

学习规则:learngd,learngdm

训练算法:traingd,traingdm,traingda,traingdx,trainlm

变换函数:tansig,purelin,logsig

训练网络:train

仿真网络:sim

画图:plotes,plotep,ploterr,barerr(3)BP神经网络学习算法的MATLAB实现MATLAB中122newff

该函数用于创建一个BP网络。调用格式为:net=newffnet=newff(PR,[S1S2..SN1],{TF1TF2..TFN1},BTF,BLF,PF)其中,net=newff;用于在对话框中创建一个BP网络。

net为创建的新BP神经网络;

PR为网络输入向量取值范围的矩阵;

[S1S2…SNl]表示网络隐含层和输出层神经元的个数;{TFlTF2…TFN1}表示网络隐含层和输出层的传输函数,默认为‘tansig’;

BTF表示网络的训练函数,默认为‘trainlm’;

BLF表示网络的权值学习函数,默认为‘learngdm’;

PF表示性能数,默认为‘mse’。

newff123例:基于BP神经网络逼近函数要求设计一个BP网络逼近以下函数:其中,分别令k=1,2,4进行仿真,通过调节参数(如隐藏层节点个数等)得出信号的频率与隐层节点之间,隐层节点与函数逼近能力之间的关系。步骤1:假设频率参数k=1,绘制要逼近的非线性函数的曲线。k=1;p=[-1:.05:8];t=1+sin(k*pi/4*p);plot(p,t,'-');title('要逼近的非线性函数');xlabel('时间');ylabel('非线性函数');例:基于BP神经网络逼近函数要求设计一个BP网124应用newff()函数建立BP网络结构。隐层神经元数目n可以改变,暂设为n=3,输出层有一个神经元。选择隐层和输出层神经元传递函数分别为tansig函数和purelin函数,网络训练的算法采用LM算法trainlm。n=3;net=newff(minmax(p),[n,1],{'tansig''purelin'},'trainlm');%对于初始网络,可以应用sim()函数观察网络输出。y1=sim(net,p);figure;plot(p,t,'-',p,y1,':')title('未训练网络的输出结果');xlabel('时间');ylabel('仿真输出--原函数-');步骤2:网络的建立应用newff()函数建立BP网络结构。隐层神经元数目n可以125其中“—”代表要逼近的非线性函数曲线;“‥‥‥”代表未经训练的函数曲线;其中“—”代表要逼近的非线性函数曲线;126步骤3:网络训练应用train()函数对网络进行训练之前,需要预先设置网络训练参数。将训练时间设置为50,训练精度设置为0.01,其余参数使用缺省值。

net.trainParam.epochs=50;%网络训练时间设置为50net.trainParam.goal=0.01;%网络训练精度设置为0.01net=train(net,p,t);%开始训练网络训练后得到的误差变化过程

步骤3:网络训练应用train()函数对网络进行训练之前,需127步骤4:网络测试对于训练好的网络进行仿真:

y2=sim(net,p);figure;plot(p,t,'-',p,y1,':',p,y2,'--')title('训练后网络的输出结果');xlabel('时间');ylabel('仿真输出');步骤4:网络测试对于训练好的网络进行仿真:128其中“—”代表要逼近的非线性函数曲线;“‥‥‥”代表未经训练的函数曲线;“―――”代表经过训练的函数曲线;其中“—”代表要逼近的非线性函数曲线;129不同频率下的逼近效果(1)频率参数设为k=2,当隐层神经元数目分别取n=3、n=6时当n=3时训练后网络的输出结果当n=6时训练后网络的输出结果不同频率下的逼近效果(1)频率参数设为k=2,当隐层神经元数130(2)频率参数设为k=4,当隐层神经元数目分别取n=6、n=8时当n=6时训练后网络的输出结果当n=8时训练后网络的输出结果(2)频率参数设为k=4,当隐层神经元数目分别取n=6、n=131结论通过上述仿真结果可知,当k=1,n=3时;k=

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论