《神经网络》PPT课件.ppt

上传人:牧羊曲112 文档编号:5563514 上传时间:2023-07-28 格式:PPT 页数:64 大小:902KB
返回 下载 相关 举报
《神经网络》PPT课件.ppt_第1页
第1页 / 共64页
《神经网络》PPT课件.ppt_第2页
第2页 / 共64页
《神经网络》PPT课件.ppt_第3页
第3页 / 共64页
《神经网络》PPT课件.ppt_第4页
第4页 / 共64页
《神经网络》PPT课件.ppt_第5页
第5页 / 共64页
点击查看更多>>
资源描述

《《神经网络》PPT课件.ppt》由会员分享,可在线阅读,更多相关《《神经网络》PPT课件.ppt(64页珍藏版)》请在三一办公上搜索。

1、第九章 神经网络,1、人工神经网络(Artificial Neural Network,简称ANN)是指由简单计算单元组成的广泛并行互联的网络,能够模拟生物神经系统的结构和功能。2、组成神经网络的单个神经元的结构简单,功能有限,但是,由大量神经元构成的网络系统可以实现强大的功能。3、人工神经网络在模式识别、计算机视觉、智能控制、信号处理、语音识别、知识处理、机器学习、数据挖掘等领域有着广泛的应用前景。,原理与概念,4、神经网络由许多基本单元构成,这些基本单元模仿了人脑的神经元。5、如果将多个基本单元以适当的方式连接起来,就构成了神经网络。基本单元之间的连接相当于人脑中神经元的连接。基本单元之间

2、的连接方式有多种,从而形成了多种神经网络。6、神经网络可以模仿人的头脑,通过向一个训练数据集学习和应用所学知识来生成分类和预测的模式。7、在数据没有任何明显模式的情况下,这种方法很有效。,1、最早的形式化神经元数学模型是M-P模型,由美国心理学家McCulloch和数理逻辑学家Pitts合作于1943年提出。2、1949年,心理学家Hebb提出Hebb学习规则。3、1958年,计算机科学家Rosenblatt提出感知器(Perception)的概念,掀起人工神经网络研究的第一次高潮。4、1982年,美国加州工学院的生物物理学家Hopfield提出Hopfield网络模型,这标志着神经网络研究高

3、潮的再次兴起。,发展过程,1、使用神经网络模型近似多变量函数,如:2、此处,函数f()是未知的。Xi代表输入变量,wi代表系数。,数学描述,如果至少有两个变量输入为1,那么输出y的结果就是1。,人工神经元是对生物神经元的抽象与模拟。1943年,心理学家麦克洛奇(WMcMulloch)和数理逻辑学家皮茨(W Pitts)根据生物神经元的功能和结构,提出了一个将神经元看作二进制阈值元件的简单模型,即M-P模型,如图所示。,人工神经元网络模型,在图中,x1,x2,xn表示某一神经元的n个输入;i表示第i个输入的连接强度,称为连接权值,正数权值表示兴奋性输入,负数权值表示抑制性输入;为神经元兴奋时的阈

4、值,当神经元输入的加权和大于时,神经元处于兴奋状态;y为神经元的输出。可以看出,人工神经元是一个具有多输入,单输出的非线性器件。,Y=sign(0.3x1+0.3x2+0.3x3-0.4)其中:,M-P神经元模型的输入是:i*xi(i=1,2,n)输出是:y=f()=f(i*xi)其中f 称之为神经元功能函数或作用函数。,功能函数f是表示神经元输入与输出之间关系的函数,根据功能函数的不同,可以得到不同的神经元模型。常用的神经元模型有以下几种。(1)阈值型(Threshold),常用的人工神经元模型,阈值型神经元是一种最简单的人工神经元,也就是我们前面提到的M-P模型。这种二值型神经元,其输出状

5、态取值1或0,分别代表神经元的兴奋和抑制状态。某一时刻,神经元的状态由功能函数f 来决定。当激活值0时,即神经元输入的加权总和超过给定的阈值时,该神经元被激活,进入兴奋状态,其状态f()为1;否则,当激活值0时,即神经元输入的加权总和不超过给定的阈值时,该神经元不被激活,其状态f()为0。,这种模型的神经元没有内部状态,作用函数f是一个阶跃函数,它表示激活值和其输出f()之间的关系,如图所示。,(2)分段线性强饱和型(Linear Saturation),这种模型又称为伪线性,其输入输出之间在一定范围内满足线性关系,一直延续到输出为最大值1为止。但当达到最大值后,输出就不再增大。如图所示。,(

6、3)S型(Sibmoid),这是一种连续的神经元模型,其输出函数也是一个有最大输出值的非线性函数,其输出值是在某个范围内连续取值的,输入输出特性常用指数、对数或双曲正切等S型函数表示。它反映的是神经元的饱和特性,如图所示。,(4)子阈累积型(Subthreshold Summation)这种类型的作用函数也是一个非线性函数,当产生的激活值超过T值时,该神经元被激活产生一个反响。在线性范围内,系统的反响是线性的,如图所示。,1)神经元及其联接;2)神经元之间的联接强度决定信号传递的强弱;3)神经元之间的联接强度是可以随训练改变的;4)信号可以是起刺激作用的,也可以是起抑制作用的;5)一个神经元接

7、受的信号的累积效果决定该神经元的状态;6)每个神经元可以有一个“阈值”。,神经元模型的六个基本特征,一个典型的三层神经网络结构,人工神经网络的学习方式,1、死记式学习:网络连接权值根据特殊记忆模式设计而成,其值不变。在网络输入相关模式时,唤起对记忆模式的回忆,对输入模式进行相应处理。2、有监督学习:网络将实际输出和教师指定的输出加以比较,得到在一定范数意义下的误差,由误差函数决定连接权值的调整,目的是使误差函数达到最小值。3、无监督学习:网络的学习是自我调整的过程,不存在教师示教来指示网络输出是否正确。4、有监督与无监督的混合学习:混合学习过程首先采用无监督学习抽取输入模式的特征,然后利用有监

8、督学习方式对其进行处理,形成输入输出的某种映射。,多层前馈神经网络,1、最流行的神经网络算法是20世纪80年代提出的后向传播算法。2、这种算法是在多层前馈神经网络基础上运行的。,前馈神经网络是分层网络模型,具有一个输入层、一个输出层,输入层和输出层之间有一个或多个隐藏层。每个层具有若干个单元,前一层单元与后一层单元之间通过有向加权边相连。,输入层 节点的数据与训练样本的非类别属性数目对应,通常一个连续属性对应一个输入层单元,一个p值离散属性对应p个输入层单元;输出层 节点的数据与训练样本的类别数目对应;隐藏层 层数及隐藏层节点的数目目前尚无理论指导,凭经验选取。但是,至今也没有一个明确的理论来

9、指导我们如何确定每个隐含层的节点数和网络的层数。在实践中通常用试错法。,红,紫,绿,圆,长,番茄,茄子,黄瓜,一个隐藏或输出单元j:j的输入是来自前一层的输出;这些输出与对应的权相乘,形成加权和;加权和加到与单元j相连的阈值(偏置)上;一个非线性的激活函数作用于净输入,在实践中发现logistic函数(s形函数)效果最好。,Output nodes,Input nodes,Hidden nodes,Output vector,Input vector:xi,wij,BP网络,BP算法是目前应用最广泛的一种人工神经网络模型。1986年,Rumelhart和 McCelland提出了误差后向传播(

10、Error Back Propagation)算法,通常称为后向传播或反向传播算法,简称BP算法,标志着BP算法的产生,成功地解决了多层网络中隐含层神经元连接权值的学习问题。基本的BP算法采用有监督学习方式,基于梯度下降算法,极小化误差函数。其主要思想是将学习过程分为信号正向传播过程和误差后向传播过程两个阶段。,BP神经网络是一种具有三层或三层以上结构的神经网络,包括输入层、隐层和输出层。层与层之间多采用全互连方式,但同一层的节点之间不存在相互连接。,图 BP神经网络模型,BP网络的各层之间具有不同的功能:输入层节点上的神经元接受外部环境的输入模式,并由它传递给相连隐层上的各个神经元。隐层是神

11、经元网络的内部处理层,这些神经元在网络内部构成中间层,由于它们不直接与外部输入、输出打交道,故称隐层。人工神经网络所具有的模式变换能力主要体现在隐层的神经元上。输出层用于产生神经网络的输出模式。,通过迭代地处理一组训练样本,将每个样本的网络预测与实际指导的类标号比较,进行学习。对于每个训练样本,修改权,使得网络预测和实际类之间的均方误差最小。这种修改“后向”进行。即由输出层,经由每个隐藏层,到第一个隐藏层。一般地,权将最终收敛,学习过程停止。反向传播算法的速度使得神经网络成为一个实际的工具,正是因为反向传播算法的有效性,才使得80年代中期,对神经网络的强烈兴趣复苏。,向后传播方法,BP神经网络

12、是对人类神经系统的一种模拟。尽管人类神经系统规模宏大、结构复杂、功能神奇,但其最基本的处理单元却只有神经元。BP神经系统的功能实际上是通过大量神经元的广泛互连,以规模宏伟的并行运算来实现的。,相关概念,设(Xp,Tp)表示输入样本,p1,2,N,N为输入样本的个数。W表示网络权向量。误差函数:E(W)=g(f(W,Xp,Tp),E称为误差(测度)函数。用误差函数来判别网络的实际输出向量Yp与教师信号向量Tp的误差。常采用二乘误差函数加以判别(m为输出向量的维数):,网络学习:是指按照某种学习规则选取新的W,使E(W)E(W),即使E(W)对应的误差曲面上的点总是向山下移动,最终移到最深的谷底(

13、全局最小)。若曲面有多个谷底,移动的过程可能陷入局部极小。移动步长:也称学习率,步长较小时移动轨迹较慢且平滑,易陷入局部极小;步长较大时移动速度快,可能跳过局部极小,也可能跳过全局最小点,易产生振荡。一般情况下,开始时取较大步长,后期取较小步长。梯度下降算法:如果移动是在误差曲面最陡的方向,或梯度下降的方向上进行,这样下山的速度快,称作最速梯度下降法。,映射:对于给定的一组数据(Xp,Tp),神经网络通过一组特定的权值W,实现一定精度的映射。训练目的是希望得到的权值能产生最小的误差和最好的精度。从XpRn到TpRm的映射记为:f:XpRnTpRm 误差曲面:若隐层与输出层间的权值数目记为mn2

14、,对于给定的训练样本(Xp,Tp),网络权向量W(W1,W2,Wmn2),通过误差函数E(W)计算出来的映射误差可描述为mn2+1空间的一个曲面,称为误差曲面。不同的E(W)对应不同的误差曲面形状。,BP算法权值的修正量,BP算法基于梯度下降算法。在梯度下降算法中,权值的修正量正比于误差函数E(W)对W的负梯度,即:W(t+1)=W(t)+W(t),BP学习原理,工作信号正向传播/前向传播误差信号反向传播/后向传播,正向传播:当给定网络一组输入模式时,BP网络将依次对这组输入模式中的每个输入模式按如下方式进行学习:把输入模式从输入层传到隐含层单元,经隐含层单元逐层处理后,产生一个输出模式传至输

15、出层,这一过程称为正向传播。反向传播:如果经正向传播在输出层没有得到所期望的输出模式,则转为误差反向传播过程,即把误差信号沿原连接路径返回,并通过修改各层神经元的连接权值,使误差信号为最小。重复正向传播和反向传播过程,直至得到所期望的输出模式为止。,Output nodes,Input nodes,Hidden nodes,Output vector,Input vector:xi,wij,信号正向传播,反向传播求误差,Output nodes,Input nodes,Hidden nodes,Output vector,Input vector:xi,wij,通过迭代地处理一组训练样本,将每

16、个样本的网络预测与实际指导的类标号比较,进行学习。对于每个训练样本,修改权,使得网络预测和实际类之间的均方误差最小。这种修改“后向”进行。即由输出层,经由每个隐藏层,到第一个隐藏层。一般地,权将最终收敛,学习过程停止。,向后传播:,训练的最终目的 利用训练集获得权重的集合,使得网络能够正确地将训练集分类。步骤:1、利用随机数初始化权重(-1.01.0,或-0.50.5)2、将训练集样本逐一的输入到网络中3、对于每一个样本 1)利用单元全部输入的线性组合和单元的偏置计算单元的净输入;2)将变换函数作用于单元的净输入,得到单元输出;3)计算误差;4)修改权重和偏置值。,更新方法:实例更新:每处理一

17、个样本就更新权和偏置。周期更新:权和偏置的增量也可以累积到变量中,使得可以在处理完训练集中的所有样本之后再更新权和偏置。终止条件:前一周期所有的wij的变化量都很小,小于某个指定的阈值前一周期未正确分类的样本百分比小于某个阈值超过预先指定的周期数 实践中,权收敛可能需要数十万个周期。,1)初始化网络及学习参数,即将隐含层和输出层各节点的连接权值、神经元阈值赋予1,1区间的一个随机数。2)提供训练模式,即从训练模式集合中选出一个训练模式,将其输入模式和期望输出送入网络。3)正向传播过程,即对给定的输入模式,从第一隐含层开始,计算网络的输出模式,并把得到的输出模式与期望模式比较,若有误差,则执行第

18、(4)步;否则,返回第(2)步,提供下一个训练模式;4)反向传播过程,即从输出层反向计算到第一隐含层,逐层修正各单元的连接权值。5)返回第(2)步,对训练模式集中的每一个训练模式重复第(2)到第(3)步,直到训练模式集中的每一个训练模式都满足期望输出为止。,BP网络的学习算法思想:,1、在BP算法学习过程中,对于每一个输入样本逐次修正权值向量,若有N个输入样本,一次学习过程将对权值向量修正N次。这种逐次不断修正权值向量的方法称为逐次修正法。2、BP算法学习过程:确定和选择网络结构,包括确定输入层和输出层的节点数,选择隐层数和各隐层内的节点数。确定节点的转移函数、误差函数类型,并选择各个可调参数

19、值。,训练样本x=1,0,1类标号为1,实例1,本例只有一个训练样本,只示例了网络学习过程中的一次迭代过程。,神经网络的学习过程虽然漫长,但分类速度却很快。学习结束后,网络得到一组固定的权值及偏值。未知类别的样本到来后,将其属性送入输入层各节点,从输入层到输出层正向传播,计算输出层各单元的值,输出值最大的单元所代表的类就是该样本所属的类别。,实例2,通过实例归纳算法的基本流程,假设某汽车销售公司希望对购买不同档次汽车的客户进行分类,分类的依据是客户的年龄、收入和学历。公司希望通过这三个分类标准,推断出客户会购买哪种档次的汽车。,年龄划分成四档:30岁以下,31-40岁,41-50岁,50岁以上

20、。收入划分成四档:1500元以下,1501-2500元,2501-3500元,3500元以上。学历也划分成四档:大学及大学以上,大专,高中及中专,初中及初中以下。车的档次分为两档:高档和低档。,1、输入数据的预处理 输入到神经网络中的数据必须是在0,1闭区间内的数字,所以需要用0,1上的数字形式来表示分类数据。30岁以下用0,0表示,31-40岁用0,1表示,41-50岁用1,0表示,50岁以上用1,1表示。1500元以下用0,0表示,1501-2500元用0,1表示,2501-3500元用1,0表示,3500元以上用1,1表示。大学及大学以上用0,0表示,大专用0,1表示,高中及中专用1,0

21、表示,初中及初中以下用1,1表示。,实现步骤:,1)输入数据有三个:年龄、收入和学历。,2)设网络中只有一个隐层,而且隐层中包含两个结点。,3)输出层中有一个输出结点。若输出值为1,则表示购买高档车,若输出值为0,则表示购买低档车。,2、确定网络拓扑图,3、BP算法的具体流程,(1)权重阈值初始化,一般初始化权重的范围在一个较小的区间内,如-1.0,1.0或-0.5,0.5。,结点的初始阈值,结点的初始权重,(2)正向传播 计算各个层次的每个结点的输入及输出情况。输入层:对于输入层中的结点i来说,其输出值等于输入值,即Oi=Ii。设有一个样本是:年龄在41-50岁之间,收入在3500元以上,学

22、历是大学水平,已知的输出是它会购买高档汽车。此样本的输入为:,期望的输出是:1。隐层、输出层:每个结点的输入都与上一层的输出有关,是上一层的输出与相应权值的复合。其中,Wij表示从上一层的结点i到当前层中的结点j的连接权重。Oi表示i结点的输出,j表示结点j的阈值。,根据公式计算得到(隐层的输入):I7=0.25*1+0.1*0+0.2*1+0.3*1+0.4*0+0.5*0-0.1=0.65I8=-0.2*1-0.1*0-0.15*1+0.2*1+0.3*0+0.1*0-0.5=0.2,对于结点j,若给定其输入为Ij,则其输出为,根据公式计算得到:,I9=0.15*0.657+0.05*0.

23、55-(-0.2)=0.326,(3)反向传播 反向传播过程实际上是一个误差反向传播修正的过程。在这个过程中,根据输出层的实际输出和期望输出之间的误差,修改权重及相应的阈值以减少网络预测中存在的误差。,对于输出层误差的计算公式:Errj=f(Ij)(Tj-Oj)其中,Ij表示j结点的输入,Tj表示目标输出,Oj表示j结点的实际输出,f(Ij)是S型函数的一阶导数。S型函数在Ij的导数可以方便地计算为Oj(1-Oj)。Errj=Oj(1-Oj)(Tj-Oj),对于隐层误差的计算公式为:,权值的修正公式为:wij=ErrjOiwij=wij+wij阈值的修正公式为:j=Errjj=j+j 其中,0

24、1,表示学习率。在BP网络的收敛过程中,一个明显的缺点就是容易导致局部最优解,而的作用就是避免BP网络的局部最优解问题。,根据公式计算得到:Err9=O9(1-O9)(T9-O9)=0.581*(1-0.581)*(1-0.581)=0.102Err7=O7(1-O7)*Err9*W79=0.657*(1-0.657)*0.102*0.15=0.0035Err8=O8(1-O8)*Err9*W89=0.55*(1-0.55)*0.102*0.05=0.0013,Errj=Oj(1-Oj)(Tj-Oj),设=0.5,则对权值的修正为:W17=Err7O1=0.5*0.0035*1=0.0018W

25、27=0.5*0.0035*0=0W37=0.5*0.0035*1=0.0018W47=0.5*0.0035*1=0.0018W57=0.5*0.0035*0=0W67=0.5*0.0035*0=0,wij=ErrjOi,wij=wij+wij,W17=W17+W17=0.25+0.0018=0.2518W27=0.1+0=0.1W37=0.2+0.0018=0.2018W47=0.3+0.0018=0.3018W57=0.4+0=0.4W67=0.5+0=0.5,wij=ErrjOi,wij=wij+wij,W18=Err8O1=0.5*0.0013*1=0.0007W28=0.5*0.00

26、13*0=0W38=0.5*0.0013*1=0.0007W48=0.5*0.0013*1=0.0007W58=0.5*0.0013*0=0W68=0.5*0.0013*0=0,W18=W18+W18=-0.2+0.0007=-0.1993W28=-0.1+0=-0.1W38=-0.15+0.0007=-0.1493W48=0.2+0.0007=0.2007W58=0.3+0=0.3W68=0.1+0=0.1,W79=Err9O7=0.5*0.102*0.657=0.0335W89=Err9O8=0.5*0.102*0.55=0.0281W79=W79+W79=0.15+0.0335=0.18

27、35W89=W89+W89=0.05+0.0289=0.0789,对阈值的修正为:7=Err7=0.5*0.0035=0.00188=Err8=0.5*0.0013=0.00079=Err9=0.5*0.102=0.0517=7+7=0.1+0.0018=0.10188=8+8=0.5+0.0007=0.50079=9+9=-0.2+0.051=-0.149,(4)BP算法的终止条件重复次数超过指定的周期数。,对于此题,即输入一百个样本,重复上述计算,对权值和阈值进行训练,当一百个样本输入完毕后,网络中的权值和阈值即为所求。,BP算法性能评价,优点,1通过初始权值较小化和并行的方式解决了非线性的问题;,2通过误差反向传播以有教师的方式训练权值;,3具有一定推广综合能力。,1学习速度不稳定(可适当改进);,2对复杂非线性问题训练出来的参数容易落入局部极小值;,3隐层节点的选取无理论指导,一般采用成长算法(删除法、添加法)尝试;,4BP算法本身缺乏生物学借鉴;,5.网络的学习、记忆具有不稳定性。,缺点,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号