人工神经网络算法(基础精讲)课件

上传人:沈*** 文档编号:240978809 上传时间:2024-05-22 格式:PPT 页数:68 大小:1.51MB
返回 下载 相关 举报
人工神经网络算法(基础精讲)课件_第1页
第1页 / 共68页
人工神经网络算法(基础精讲)课件_第2页
第2页 / 共68页
人工神经网络算法(基础精讲)课件_第3页
第3页 / 共68页
点击查看更多>>
资源描述
人工神人工神经网网络算法算法(基基础精精讲)目目 录录2一、一、人工神经网络的人工神经网络的 基本概念基本概念3一、一、人工神经网络的 基本概念 人工神经网络(Artificial Neural Network,即ANN)可以概括的定义为:由大量具有适应性的处理元素(神经元)组成的广泛并行互联网络,它的组织能够模拟生物神经系统对真实世界物体所作出的交互反应,是模拟人工智能的一条重要途径。人工神经网络与人脑相似性主要表现在:神经网络获取的知识是从外界环境学习得来的;各神经元的连接权,即突触权值,用于储存获取的知识。神经元是神经网络的基本处理单元,它是神经网络的设计基础。神经元是以生物的神经系统的神经细胞为基础的生物模型。在人们对生物神经系统进行研究,以探讨人工智能的机制时,把神经元数学化,从而产生了神经元数学模型。因此,要了解人工神经模型就必须先了解生物神经元模型。41.11.1人工神经网络发展简史 u最早的研究可以追溯到20世纪40年代。1943年,心理学家McCulloch和数学家Pitts合作提出了形式神经元的数学模型。这一模型一般被简称M-P神经网络模型,至今仍在应用,可以说,人工神经网络的研究时代,就由此开始了。u1949年,心理学家Hebb提出神经系统的学习规则,为神经网络的学习算法奠定了基础。现在,这个规则被称为Hebb规则,许多人工神经网络的学习还遵循这一规则。u1957年,F.Rosenblatt提出“感知器”(Perceptron)模型,第一次把神经网络的研究从纯理论的探讨付诸工程实践,掀起了人工神经网络研究的第一次高潮。51.11.1人工神经网络发展简史u20世纪60年代以后,数字计算机的发展达到全盛时期,人们误以为数字计算机可以解决人工智能、专家系统、模式识别问题,而放松了对“感知器”的研究。于是,从20世纪60年代末期起,人工神经网络的研究进入了低潮。u1982年,美国加州工学院物理学家Hopfield提出了离散的神经网络模型,标志着神经网络的研究又进入了一个新高潮。1984年,Hopfield又提出连续神经网络模型,开拓了计算机应用神经网络的新途径。u1986年,Rumelhart和Meclelland提出多层网络的误差反传(back propagation)学习算法,简称BP算法。BP算法是目前最为重要、应用最广的人工神经网络算法之一。61.21.2生物神经元结构生物神经元结构(1)细胞体:细胞核、细胞质和细胞膜。(2)树突:胞体短而多分枝的突起。相当于神经元的输入端。(3)轴突:胞体上最长枝的突起,也称神经纤维。端部有很多神经末稍传出神经冲动。71.21.2生物神经元结构(4)突触:神经元间的连接接口,每个神经元约有1万10万个突触。神经元通过其轴突的神经末稍,经突触与另一神经元的树突联接,实现信息的传递。由于突触的信息传递特性是可变的,形成了神经元间联接的柔性,称为结构的可塑性。突触结构示意图1.31.3生物神经元的信息处理机理神经元的兴奋与抑制 当传入神经元冲动,经整和使细胞膜电位升高,超过动作电位的阈值时,为兴奋状态,产生神经冲动,由轴突经神经末稍传出。当传入神经元的冲动,经整和,使细胞膜电位降低,低于阈值时,为抑制状态,不产生神经冲动。9延时性传递生物神经元的特点单向性传递阈值特性生物神经元的特点:1.41.4生物神经元的特点1.51.5人工神经元模型人工神经元模型 神经元模型 从神经元的特性和功能可以知道,神经元相当于一个多输入单输出的信息处理单元,而且,它对信息的处理是非线性的,人工神经元的模型如图所示:神经元的n个输入对应的连接权值net=阈值输出激活函数11 上面的神经元模型可以用一个数学表达式进行抽象与概括,从而得到神经元的数学模型:1.51.5人工神经元模型人工神经元模型神经元的网络输入记为net,即 net=12 有时为了方便起见,常把-也看成是恒等于1的输入X0 的权值,这时上面的数学模型可以写成:1.51.5人工神经元模型人工神经元模型其中,W0=-;x0=1 13神经元的模型具有以下特点:神经元是一个多输入、单输出单元。它具有非线性的输入、输出特性。它具有可塑性,反应在新突触的产生和现有的神经突触的调整上,其塑性变化的部分主要是权值w的变化,这相当于生物神经元的突出部分的变化,对于激发状态,w取正直,对于抑制状态,w取负值。神经元的输出和响应是个输入值的综合作用的结果。兴奋和抑制状态,当细胞膜电位升高超过阈值时,细胞进入兴奋状态,产生神经冲动;当膜电位低于阈值时,细胞进入抑制状态。1.51.5人工神经元模型人工神经元模型141.61.6激活函数激活函数 神经元的描述有多种,其区别在于采用了不同的激活函数,不同的激活函数决定神经元的不同输出特性,常用的激活函数有如下几种类型:151.阈值型激活函数 阈值型激活函数是最简单的,前面提到的M-P模型就属于这一类。其输出状态取二值(1、0或+1、-1),分别代表神经元的兴奋和抑制。1.61.6激活函数激活函数当f(x)取0或1时,16当f(x)取1或-1时,f(x)为下图所示的sgn(符号)函数sgn(x)=1.61.6激活函数激活函数171.61.6激活函数激活函数2.S型激活函数 神经元的状态与输入级之间的关系是在(0,1)内连续取值的单调可微函数,称为S型函数。双极性S型函数:单极性S型函数:183.分段线性激活函数分段线性激活函数的定义为:1.61.6激活函数激活函数194.概率型激活函数 概率型激活函数的神经元模型输入和输出的关系是不确定的,需要一种随机函数来描述输出状态为1或为0的概率,设神经元输出(状态)为1的概率为:1.61.6激活函数激活函数(其中,T为温度函数)20激活函数的基本作用表现在:1.61.6激活函数激活函数控制输入对输出 的激活作用将可能无限域的输入变换成指定的有限范围内的输出对输入、输出进行函数转换21 神经网络是由许多神经元互相在一起所组成的神经结构。把神经元之间相互作用关系进行数学模型化就可以得到人工神经网络模型。神经元和神经网络的关系是元素与整体的关系。人工神经网络中的神经元常称为节点或处理单元,每个节点均具有相同的结构,其动作在时间和空间上均同步。1.71.7人工神经网络模型人工神经网络模型人工神经网络模型22人工神经网络的基本属性1.71.7人工神经网络模型人工神经网络模型23神经网络模型 神经元的连接方式不同,网络的拓扑结构也不同,人工神经网络的拓扑结构是决定人工神经网络特征的第二要素,根据神经元之间连接的拓扑结构不同,可将人工神经网络分成两类,即分层网络和相互连接型网络。1.71.7人工神经网络模型人工神经网络模型24分层网络 分层网络将一个神经网络中的所有神经元按功能分为若干层,一般有输入层、中间层(隐藏层)和输出层。分层网络按照信息的传递方向可分为前向式网络(如图a)和反馈网络(如图b、c)。1.71.7人工神经网络模型人工神经网络模型25相互连接型网络 相互连接型网络是指网络中任意单元之间都是可以相互双向连接的。1.71.7人工神经网络模型人工神经网络模型 上述的分类方法是对目前常见的神经网络结构的概括和抽象,实际应用的神经网络可能同时兼有其中的一种或几种形式。26二、人工神经网络的人工神经网络的 学习方法学习方法272.12.1学习机理学习机理学习机理 人工神经网络信息处理可以用数学过程来说明,这个过程可以分为两个阶段:执行阶段和学习阶段。学习是智能的基本特征之一,人工神经网络最具有吸引力的特点是它能从环境中学习的能力,并通过改变权值达到预期的目的。神经网络通过施加于它的权值和阈值调节的交互过程来学习它的环境,人工神经网络具有近似于与人类的学习能力,是其关键的方面之一。282.22.2学习方法学习方法学习方法 按照广泛采用的分类方法,可以将神经网络的学习方法归为三类:无导师学习灌输式学习有导师学习292.22.2学习方法学习方法有导师学习 有导师学习又称为有监督学习,在学习时需要给出导师信号或称为期望输出。神经网络对外部环境是未知的,但可以将导师看做对外部环境的了解,由输入-输出样本集合来表示。导师信号或期望响应代表了神经网络执行情况的最佳效果,即对于网络输入调整权值,使得网络输出逼近导师信号或期望输出。302.22.2学习方法学习方法无导师学习 无导师学习也称无监督学习。在学习过程中,需要不断地给网络提供动态输入信息(学习样本),而不提供理想的输出,网络根据特有的学习规则,在输入信息流中发现任何可能存在的模式和规律,同时能根据网络的功能和输入调整权值。灌输式学习 灌输式学习是指将网络设计成记忆特别的例子,以后当给定有关该例子的输入信息时,例子便被回忆起来。灌输式学习中网络的权值不是通过训练逐渐形成的,而是通过某种设计方法得到的。权值一旦设计好,即一次性“灌输给神经网络不再变动,因此网络对权值的”“学习”是“死记硬背”式的,而不是训练式的。312.32.3学习规则学习规则学习规则 在神经网络的学习中,各神经元的连接权值需按一定的规则调整,这种权值调整规则称为学习规则。下面介绍几种常见的学习规则。2.32.3学习规则学习规则1.Hebb学习规则 当神经元i与神经元j同时处于兴奋状态时,在神经网络中表现为连接权增加。根据该假设定义权值调整的方法,称为Hebb学习规则。Hebb学习规则的数学描述:假设oi(n)和oj(n)是神经元i和j在时刻n的状态反应,Wij(n)表示时刻n时,连接神经元i和神经元j的权值,Wij(n)表示从时刻n到时刻n+1时连接神经元i和神经元j权值的改变量,则 其中,是正常数,它决定了在学习过程中从一个步骤到另一个步骤的学习速率,称为学习效率332.32.3学习规则学习规则2.Delta()学习规则 Delta学习规则是最常用的学习规则,其要点是通过改变神经元之间的连接权来减小系统实际输出与理想输出的误差。假设n时刻输出误差准则函数如下:其中,Ok=f(netk)为实际输出;yk代表理想输出;W是网络的所有权值组成权矩阵W=(wij);K为输出个数。使用梯度下降法调整权值W,使误差准则函数最小,得到W的修正Delta规则为:注:Delta学习规则只适用于线性可分函数,无法用于多层网络342.32.3学习规则学习规则3.LMS学习规则 LMS学习规则又称为最小均方差规则,其学习规则为:注:LMS学习规则可以看成是Delta学习规则的一个特殊情况。该学习规则具有学习速度快和精度高的特点,权值可以初始化为任何值。352.32.3学习规则学习规则4.胜者为王学习规则 胜者为王(Winner-Take-All)学习规则是一种竞争学习规则,用于无导师学习。一般将网络的某一层确定为竞争层,对于一个特定的输入X,竞争层的K个神经元均有输出响应,其中响应值最大的神经元j*为竞争中获胜的神经元,即 只有获胜的神经元才有权调整其权向量Wj,调整量为:其中,为学习参数(01)362.32.3学习规则学习规则5.Kohonen学习规则 该规则只用于无导师指导下训练的网络。在学习过程中,处理单元竞争学习时,具有高输出的单元为胜利者,它有能力阻止它的竞争者并激活相邻的单元,只有胜利者才能有输出,也只有胜利者与其相邻单元可以调节权重。在训练周期内,相邻单元的规模是可变的。一般的方法是从定义较大的相邻单元开始,在训练过程中不断减少相邻的范围。胜利单元可定义为与输入模式最为接近的单元。Kohonen网络可以模拟输入的分配 372.32.3学习规则学习规则5.概率式学习 从统计学、分子热力学和概率论中关于系统稳态能量的标准出发,进行神经网络学习的方式称为概率是学习。神经网络处于某一状态的概率主要取决于在此状态下的能量,能量越低,概率越大。概率式学习的典型代表是玻尔兹曼(Boltzmann)机学习规则。这是基于模拟退火的统计优化算法。38三、前向式神经网络与算法393.13.1感知器及算法感知器及算法感知器 感知器是具有单层计算单元的神经网络,由线性元件和阈值元件组成。感知器的结构如下图所示,其中X=(x1,x2,xn)为n个输入,有m个输出,即O=(o1,o2,.,om),W=(wij)nm为连接权矩阵。(wij)nm为连接权矩阵感知器结构3.13.1感知器及算法感知器及算法感知器的数学模型其中,j是阈值;wj0=-j;x0=1;f(.)是跃阶函数,即注:可以看出,单输出感知器模型就是人工神经单元3.13.1感知器及算法感知器及算法 感知器学习是有导师学习。感知器的训练算法来源于Hebb学习规则,其基本思想是:逐步地将样本集中的样本输入到网络中,根据输出结果和理想输出之间的差别来调整网络中的权矩阵。设网络的输入向量为X=(x1,x2,xn),W=(wji)为网络的连接权矩阵,网络的训练样本集为(X,Y)丨X为输入向量,Y为X对应的输出 下面介绍多输出感知器学习算法3.13.1感知器及算法感知器及算法多输出感知器学习算法步骤如下:Step1 设置连接权W的初值。对权系数W=(wji)的各个元素置一个较小的随机值。Step2 输入样本X=(x1,x2,xn),以及它的期望输出 Y=(y1,y2,yn)。Step3 计算感知器的实际输出值 Step4 根据实际输出求误差3.13.1感知器及算法感知器及算法Step5 用误差ej去调整权值其中,Wji(n)是第n次调整连接权值;称为学习效率,且01,用于调整权值的调整速度。通常,的取值不能太大,如果的取值太大,则会影响Wji(n)的稳定,的取值太小则会使Wji(n)得收敛速度太慢。当实际输出和期望值y相同时,有 Wji(n+1)=Wji(n)。Step6 转到step2,一直执行到一切样本均稳定为止。3.13.1感知器及算法感知器及算法注1:上述算法涉及循环控制问题,常用的方法有:(1)循环次数控制法。对样本集进执行规定次数的迭代。(2)分阶段迭代次数控制法。设定一个基本的迭代次数N,每当训练完成N次迭代后,就给出一个中间结果。(3)精度控制法。给定一个精度控制参数,精度度量可选择:实际输出向量与理想输出向量的对应分量的差的绝对值之和;实际输出向量与理想输出向量的欧氏距离之和;“死循环”:网络无法表示样本所代表的问题。(4)综合控制法。将上述三种方法结合起来使用。453.13.1感知器及算法感知器及算法注2:由于感知器的激活函数采用的是阈值函数,输出矢量只能取0或1,所以只能用它来解决简单的分类问题,它不是对所有的问题都适用。注3:当输入矢量中有一个数比其他数都大或小很多时,可能导致收敛速度较慢。463.2 BP3.2 BP神经网络算法神经网络算法BP神经网络 BP神经网络(Back Propagation Neural Network),即误差后向传播神经网络,是一种按误差逆向传播算法训练的多层前馈网络,是目前应用最广泛的网络模型之一。BP网络能学习和储存大量输入-输出模式的映射关系,而无需事前揭示描述这种映射关系的数学方程。它的学习规则是使用最速下降法,通过后向传播来不断调整网络权值和阈值,使网络的误差平方和最小。BP神经网络模型拓扑结构中出了有输入层、输出层外,还至少有一层隐藏层,每一层的神经元输出均传送到下一层,而每层内神经元之间无连接。473.2 BP3.2 BP神经网络算法神经网络算法 BP神经元的结构模型与感知器模型类似,如下图:注:与感知器模型不同的是,BP网络的激活函数f()要求是可微的,所以不能用二值函数,常用S型的对数、正切函数或线性函数。483.2 BP3.2 BP神经网络算法神经网络算法BP算法 BP算法由数据流的正向传播和误差信号的反向传播两个过程构成。1)正向传播 设BP网络的输入层有n个节点,隐藏层有q个节点,输出层有m个节点,输入层与隐藏层之间的权值为vki,隐藏层与输出层的权值为wjk,隐藏层的激活函数为f1(),输出层的激活函数为 f2(),则隐藏层节点的输出为493.2 BP3.2 BP神经网络算法神经网络算法输出层节点的输出为:至此,BP网络完成了n维空间向量对m维空间的近似映射。3.2 BP3.2 BP神经网络算法神经网络算法2)反向传播 BP算法的实质是求取误差函数的最小值问题,这种算法采用的是非线性规划中的最速下降法,按误差函数的负梯度方向修改权值。设训练样本总数为P,用X1,X2,.,Xp来表示。第P个样本输入所得到实际输出和理想输出分别记为采用理想输出和实际输出值差的平方和为误差函数,于是得到第P个样本的误差:513.2 BP3.2 BP神经网络算法神经网络算法则P个样本的总误差为:网络误差是各层权值的函数,按照最速下降法,可得输出层各神经元的权值和第n次输出层权值的迭代公式分别为:523.2 BP3.2 BP神经网络算法神经网络算法隐藏层各神经元的权值和第n次隐藏层权值的迭代公式分别为:求解的过程533.2 BP3.2 BP神经网络算法神经网络算法BP网络学习算法的具体步骤如下:Step1 从训练样本集中取某一样本,把它的输入信息输入到网络中。Step2 由网络正向计算出各层节点的输出。Step3 计算网络的实际输出和期望输出的误差。Step4 从输出层开始反向计算到第一个隐藏层,按一定的原则向减少误差方向调整整个网络的各个连接权值。Step5 对训练样本集中的每一个样本重复上述步骤,直到对整个网络训练样本集的误差达到要求为止。543.2 BP3.2 BP神经网络算法神经网络算法设三层BP网络,则其算法可描述为:A 初始化连接权值vki 和wjk;B 初始化精度控制系数;C E=+1;E while E do E.1 E=0 E.2 对S中的每一个样本(Xp,Yp)E.2.1 计算出Xp,对应的实际输出op;E.2.2 计算出Ep;E.2.3 E=E+Ep;E.2.4 根据 调整输出层的权值wjk(n);E.2.4 根据 调整输出层的权值vki(n);E.3 E=E/2.0553.2 BP3.2 BP神经网络算法神经网络算法BP网络的优点:1)非线性映射能力:BP神经网络实质上实现了一个从输入到输出的映射功能,数学理论证明三层的神经网络就能够以任意精度逼近任何非线性连续函数。2)自学习和自适应能力:BP神经网络在训练时,能够通过学习自动提取输出、输出数据间的“合理规则”,并自适应的将学习内容记忆于网络的权值中。3)泛化能力:所谓泛化能力是指在设计模式分类器时,即要考虑网络在保证对所需分类对象进行正确分类,还要关心网络在经过训练后,能否对未见过的模式或有噪声污染的模式,进行正确的分类。4)容错能力:BP神经网络在其局部的或者部分的神经元受到破坏后对全局的训练结果不会造成很大的影响,也就是说即使系统在受到局部损伤时还是可以正常工作的。563.2 BP3.2 BP神经网络算法神经网络算法BP网络的缺点:1)局部极小化问题:BP神经网络为一种局部搜索的优化方法,它要解决的是一个复杂非线性化问题,这样会使算法陷入局部极值,权值收敛到局部极小点2)BP神经网络算法的收敛速度慢:由于BP神经网络算法本质上为梯度下降法,它所要优化的目标函数是非常复杂的,这使得BP算法低效;3)BP神经网络结构选择不一:BP神经网络结构的选择至今尚无一种统一而完整的理论指导,一般只能由经验选定。4)BP神经网络样本依赖性问题:网络模型的逼近和推广能力与学习样本的典型性密切相关,而从问题中选取典型样本实例组成训练集是一个很困难的问题。57四、四、BPBP神经网络的应用举例神经网络的应用举例 (matlab(matlab实现实现)58四、四、神经网络的应用(matlab实现)例一:输入向量 P=0 1 2 3 4 5 6 7 8 9 10;期望输出 T=0 1 2 3 4 3 2 1 2 3 4;创建两层的BP网络net=newff(0 10,5 1,tansig,purelin);Y=sim(net,P);plot(P,T,P,Y,o)输出结果为:Y=-2.3431 -2.7532 -2.4510 -1.2784 -0.8590 -0.2981 0.2495 0.4811 1.0375 1.2268 1.423259四、四、神经网络的应用(matlab实现)误差很大!未训练,非线性映射能力差。60四、四、神经网络的应用(matlab实现)P=0 1 2 3 4 5 6 7 8 9 10;T=0 1 2 3 4 3 2 1 2 3 4;net=newff(0 10,5 1,tansig purelin);net.trainparam.show=50;%每次循环50次net.trainParam.epochs=500;%最大循环500次net.trainparam.goal=0.01;%期望目标误差最小值net=train(net,P,T);%对网络进行反复训练Y=sim(net,P)plot(P,T,P,Y,o)修改程序:61四、四、神经网络的应用(matlab实现)输出结果为:Y=0.0005 1.0026 1.9947 3.0134 3.9429 3.1211 1.8482 1.1755 1.8568 3.1150 3.959562四、四、神经网络的应用(matlab实现)例二:下表为某药品的销售情况,现构建一个如下的三层BP神经网络对药品的销售进行预测:输入层有三个结点,隐含层结点数为5,隐含层的激活函数为tansig;输出层结点数为1个,输出层的激活函数为logsig,并利用此网络对药品的销售量进行预测,预测方法采用滚动预测方式,即用前三个月的销售量来预测第四个月的销售量,如用1、2、3月的销售量为输入预测第4个月的销售量,用2、3、4月的销售量为输入预测第5个月的销售量.如此反复直至满足预测精度要求为止。月份123456销量205623952600229816341600月份789101112销量18731478190015002046155663四、四、神经网络的应用(matlab实现)P=0.51520.8173 1.0000;0.81731.0000 0.7308;1.00000.7308 0.1390;0.73080.1390 0.1087;0.13900.1087 0.3520;0.10870.3520 0.0000;T=0.7308 0.1390 0.1087 0.3520 0.0000 0.3761;%以第四个月的销售量归一化处理后作为目标向量net=newff(0 1;0 1;0 1,5,1,tansig,logsig,traingd);net.trainParam.epochs=15000;net.trainParam.goal=0.01;net=train(net,P,T);Y=sim(net,P)plot(P,T,P,Y,o)%以每三个月的销售量经归一化处理后作为输入Pmax=2600,Pmin=1478,P=(P0-Pmin)/(Pmax-Pmin)64四、四、神经网络的应用(matlab实现)65四、四、神经网络的应用(matlab实现)66Thank you!谢谢!
展开阅读全文
相关资源
相关搜索

最新文档


当前位置:首页 > 管理文书 > 施工组织


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!