人工神经网络的算法(完整版)
- 格式:doc
- 大小:8.16 MB
- 文档页数:19
人工神经网络方法人工神经网络是一种类似于生物神经系统的计算模型,它由多个节点(神经元)和连接这些节点之间的权重组成。
这些节点和连接可以模拟人类大脑的工作原理,从而实现复杂的计算任务。
以下是人工神经网络常用的几种方法:1.前馈神经网络(Feedforward neural network)前馈神经网络是最常用的神经网络类型之一,它的数据流仅向前流动,没有回流。
该网络由多个层组成,其中输入层接受数据,输出层产生输出,中间层包含多个带有权重的神经元。
每个神经元的输出都可以通过权重连接到下一层神经元的输入。
通过调整权重,前馈神经网络可以进行监督学习,用于分类或回归问题。
2.循环神经网络(Recurrent neural network)循环神经网络是一种形式化的神经网络,它可以对序列数据进行处理,如语音识别、自然语言处理等。
循环神经网络的节点之间可以相互连接,形成一个循环,输入数据会在整个网络中进行传递和加工,输出也会受到之前状态的影响。
循环神经网络还可以使用长短时记忆(LSTM)单元或门控循环单元(GRU)单元来处理长序列数据。
3.卷积神经网络(Convolutional neural network)卷积神经网络是一种针对图像识别和视觉处理任务的神经网络。
它由多个卷积层、池化层和全连接层组成。
在输入层之后的每一层都是由若干个卷积核组成的,并对输入数据进行卷积处理。
卷积操作可以有效地提取图像特征,池化层可以对输出信号进行降采样处理。
通过卷积和池化操作,卷积神经网络可以自动学习特征,并具有很高的图像识别准确率。
4.自编码器(Autoencoder)自编码器是一种非监督学习方法,它可以有效地进行数据的压缩和重建。
自编码器通过输入数据,将其表示为低维的潜在表示,然后通过解码器将其转换回原始维度。
自编码器主要由编码器和解码器组成。
编码器将输入数据转换成低维度的潜在表示,解码器将潜在表示转换成原始数据。
在训练过程中,自编码器可以调整权重和偏置,以最小化重建误差。
bp算法公式
BP算法是一种常用的人工神经网络训练算法。
其全称为“反向传播算法”,其基本思想是利用链式求导法则,通过计算输出误差对每个权重的偏导数来更新网络中各层之间的连接权重,从而不断调整网络参数直到达到预定的训练目标。
BP算法的公式如下:
1. 前向传播
对于输入样本x,在神经网络中进行前向传播,计算出每个神经元的输出值,并将这些值作为输入传递到下一层神经元中,直至输出层。
2. 计算误差项
对于输出层每个神经元j,计算其误差项δj = yj - tj,其中yj为神经元j的输出值,tj为样本对应的真实标签值。
3. 反向传播
从输出层开始,计算每个神经元的误差项,然后根据误差项计算每个权重的偏导数,最后根据偏导数调整权重。
对于隐藏层每个神经元h,其误差项δh可由以下公式计算:
δh = f"(netH) * Σ(δj * wjh)
其中f"为h的激活函数的导数,netH表示神经元h的净输入,wjh为从神经元h到神经元j的权重,Σ表示对输出层每个神经元j 求和。
对于连接h->j的权重wjh,其偏导数可以使用以下公式计算: E/wjh = δj * ah
其中ah为连接h->j的输入值。
4. 更新权重
根据计算出来的各个权重的偏导数,利用梯度下降法更新权重。
具体地,对于权重wjh,更新方式为:
wjh = wjh - η * E/wjh
其中η为学习率,即权重的调整步长。
人工神经网络模型算法和应用的综述人工神经网络(Artificial Neural Network,ANN)是一种模仿生物神经网络的计算模型,由许多人工神经元节点组成。
它通过模拟人类神经系统的工作方式,实现对信息的处理和学习能力。
随着计算机科学和人工智能领域的发展,人工神经网络模型算法和应用得到了广泛的研究和应用。
本文将对人工神经网络模型算法以及其在各个领域中的应用进行综述。
一、人工神经网络模型算法1. 感知器模型感知器模型是最早应用于人工神经网络中的一种模型。
它由多个输入节点和一个输出节点组成,通过对输入节点和权重的线性组合,利用激活函数将结果转化为输出。
感知器模型的简单结构和快速训练特性使得它在二分类问题中得到广泛应用。
2. 多层前馈神经网络(Feedforward Neural Network,FNN)多层前馈神经网络是一种典型的人工神经网络模型。
它由多个神经元层组成,每一层的神经元与上一层的神经元全连接。
信息在网络中只向前传递,从输入层经过隐藏层最终到达输出层。
多层前馈神经网络通过反向传播算法进行训练,可以应用于各种复杂的非线性问题。
3. 循环神经网络(Recurrent Neural Network,RNN)循环神经网络是一种具有反馈环的神经网络模型。
它在网络中引入了记忆机制,使得信息可以在网络中进行循环传播。
循环神经网络适用于序列数据的处理,如自然语言处理和时间序列预测等任务。
4. 卷积神经网络(Convolutional Neural Network,CNN)卷积神经网络是一种专门用于图像识别和处理的人工神经网络模型。
它通过卷积层、池化层和全连接层等组件,实现对图像中特征的提取和分类。
卷积神经网络在计算机视觉领域中具有重要的应用,如图像分类、目标检测和语义分割等任务。
二、人工神经网络的应用1. 自然语言处理人工神经网络在自然语言处理中具有广泛的应用。
例如,利用循环神经网络可以实现语言模型和机器翻译等任务;利用卷积神经网络可以进行文本分类和情感分析等任务。
人工神经网络的算法和应用人工神经网络是一种由多个节点和连接组成的计算模型,其灵感来自于生物神经网络。
与传统的机器学习模型相比,人工神经网络可以处理更加复杂的任务,并且能够进行自适应性的学习,从而实现高效的模式识别和数据分析。
在本文中,我们将探讨人工神经网络的算法和应用。
一、算法1.感知机算法感知机算法是最早的人工神经网络算法之一,它基于一种称为感知机的计算单元。
感知机可以被看作是多个独立的逻辑门,通过输入和输出之间的权重调整来实现逻辑运算。
感知机算法的缺点在于它只适用于线性可分问题。
如果数据不能被线性分割,那么感知机就无法解决这个问题。
因此,感知机主要用于二元分类和线性回归问题。
2.反向传播算法反向传播算法是一种基于梯度下降的优化算法。
它通过不断调整权重和偏置,使神经网络的预测结果更加接近于实际值。
反向传播算法的优点在于它可以处理非线性可分问题,并且具有更好的精度和收敛速度。
然而,反向传播算法也有一些缺点,例如容易收敛到局部最优解、容易受到梯度消失和爆炸等问题的影响。
3.长短时记忆(LSTM)算法LSTM算法是一种专门用于处理序列数据的神经网络算法。
它通过引入“门”机制来控制信息的流动,并且能够长时间记忆先前的信息。
LSTM算法在自然语言处理、语音识别、股价预测等领域得到了广泛应用。
二、应用1.图像识别图像识别是人工神经网络的一个重要应用领域。
通过训练神经网络模型,图像识别系统可以实现对于图片中物体和场景的识别和分类。
在医疗诊断、自动驾驶、安防等领域,图像识别技术已经得到了广泛应用。
2.自然语言处理自然语言处理是另一个重要的应用领域。
通过训练神经网络模型,自然语言处理系统可以实现对于自然语言的理解和生成。
自然语言处理技术在智能客服、智能翻译、信息提取、情感分析等方面得到了广泛应用。
3.股价预测股价预测是人工神经网络在金融领域的应用之一。
通过训练神经网络模型,股价预测系统可以实现对于股票价格的预测。
ann算法人工神经网络(Artificial Neural Network,ANN),也简称神经网络,是众多机器学习算法中比较接近生物神经网络特性的数学模型。
人工神经网络通过模拟生物神经网络(大脑)的结构和功能,由大量的节点(或称“神经元”,或“单元”)和之间相互联接构成,可以用来对数据之间的复杂关系进行建模。
一、每层由单元(unit)组成二、输入层由训练集的实例特征向量传入三、每个结点都有权重(weight)传入下一层,一层的输出是下一层的输入。
(根据生物学上的定义,每个单元成为神经结点)四、以上成为两层神经网络(输入层不算)五、每一层的加权求和,到下一层结点上还需要非线性函数激活,之后作为输出六、作为多层前馈神经网络,如果由足够多的隐藏层,和足够大的训练集,理论上可以模拟出任何方程。
反向传输算法核心(backpropagation)特点:1、通过迭代来处理训练集中的实例2、计算输入层预测值(predicted value)和真实值(target value)之间的差值error3、反向传输(输出层->隐藏层->输入层)来最小化误差(error)来更新每个链接的权重(weight)显然,对于神经网络而言,最重要的是能恰当配置好隐藏层和输出层神经元的权值和偏置。
幸好的是,这个配置是由机器来做,而不是人类。
使用神经网络的步骤一般为:建立模型,按照业务场景建立网络结构,多少个输入神经元和输出神经元,多少层隐含层,层与层之间是全连接,还是部分连接等等。
训练模型,对于已经标记好的大量数据,将它们扔到神经网络中,神经网络通过预测输出与实际输出的差值来自动调整隐藏层和输出层神经元权值和偏置。
数据预测,对于新的数据,将他们直接扔到输入层,得到的输出就是预测输出。
机器学习的主要用途为分类,聚类,回归,关联规则等等。
现有的机器学习方法有SVM,logistic回归,决策树,随机森林等方法。
但是,在需要高精度,难以提取特征的无结构化数据机器学习中,深度学习几乎是唯一的选择。
人工神经网络算法人工神经网络(Artificial Neural Network,ANN)是一种模拟人脑神经网络进行计算的算法。
它由多个神经元(或称为节点)组成,通过不同神经元之间的连接进行信息传递和处理。
ANN可以用于解决各种问题,如分类、回归、聚类等。
ANN的设计灵感来自于人脑神经系统。
人脑中的神经元通过电信号进行信息处理和传递,而ANN中的神经元模拟了这个过程。
ANN中的每个神经元都有多个输入和一个输出,输入通过带有权重的连接传递给神经元,然后通过激活函数进行处理,并将结果传递给输出。
通过调整连接的权重和选择合适的激活函数,ANN可以学习和适应不同的输入模式,并做出相应的输出。
ANN的训练是通过反向传播算法来实现的。
反向传播算法基于梯度下降法,通过计算预测输出和实际输出之间的误差,并根据误差来调整每个连接的权重。
这个过程通过不断迭代来实现,直到达到一定的精确度或收敛条件。
ANN的性能和表达能力取决于其结构和参数的选择。
常见的ANN结构有多层感知机(Multi-Layer Perceptron,MLP)、卷积神经网络(Convolutional Neural Network,CNN)和循环神经网络(Recurrent Neural Network,RNN)等。
不同结构适用于不同类型的问题。
此外,ANN 的性能还受到学习率、激活函数、正则化和初始化等参数的影响。
ANN的算法具有以下优点:1.具备学习和适应能力:ANN可以通过训练数据学习和适应不同的模式,从而适用于不同的问题。
2.并行处理能力:ANN中的神经元可以并行处理输入,从而加速计算速度。
3.容错性:ANN的误差传递和权重调整机制使其对输入数据的噪声和干扰具有一定的容忍能力。
然而1.需要大量的训练数据:ANN的性能和泛化能力需要大量的标记训练数据进行训练。
2.训练过程较为复杂:ANN的训练过程需要通过反向传播算法进行权重调整,这涉及到大量的计算和迭代。
人工神经计算公式人工神经计算是一种模拟生物大脑功能的计算模型,通过构建神经元和神经网络来模拟人类大脑的学习和推理过程。
人工神经计算公式是用于描述神经元和神经网络内部计算和信号传导的数学表达式。
下面将介绍一些常见的人工神经计算公式。
一、神经元的计算公式神经元是神经网络的基本单元,被用于模拟人脑神经元的功能。
神经元接收输入信号,对其进行处理并产生输出信号。
常见的神经元计算公式包括:1.感知机神经元计算公式感知机神经元是最简单的神经元模型,其计算公式可以表示为:y = f(∑(wi*xi) + b)其中,wi是输入信号xi的权重,b是偏置项,f是激活函数,∑(wi*xi)表示输入信号和权重的加权和。
2. Sigmoid神经元计算公式Sigmoid神经元是一种常用的激活函数,其计算公式可以表示为:y=1/(1+e^(-x))其中,x是输入信号和权重的加权和,e是自然对数的底。
3.ReLU神经元计算公式ReLU神经元是一种常用的激活函数,其计算公式可以表示为:y = max(0, x)其中,x是输入信号和权重的加权和。
二、神经网络的计算公式神经网络是多个神经元相互连接而成的网络,用于模拟复杂的计算和推理过程。
常见的神经网络计算公式包括:1.前馈神经网络计算公式前馈神经网络是一种最常见的神经网络,其计算公式可以表示为:a^(l+1)=f(W^(l+1)*a^l+b^(l+1))其中,W^(l+1)是第l层和第l+1层之间的权重矩阵,b^(l+1)是偏置项向量,f是激活函数,a^l表示第l层的输出向量,a^(l+1)表示第l+1层的输入向量。
2.反向传播算法反向传播算法用于训练神经网络,其计算公式可以表示为:δ^l=(∂C/∂z^l)⊙f'(z^l)其中,δ^l表示第l层的误差项向量,C表示代价函数,z^l表示第l层的加权输入,f'表示激活函数的导数,⊙表示元素级别的乘法。
3.卷积神经网络计算公式卷积神经网络是一种专门用于处理图像和视频等二维数据的神经网络,其计算公式可以表示为:a^(l+1)=f(W^(l+1)*a^l+b^(l+1))其中,W^(l+1)是卷积核矩阵,b^(l+1)是偏置项向量,f是激活函数,a^l表示第l层的输出特征图,a^(l+1)表示第l+1层的输入特征图。
人工神经网络的算法
人工神经网络(Artificial Neural Network,ANN)是一种仿照生物神经网络原理构建的计算模型, 是指模仿人脑神经元结构,建立一种模糊推理的模型。
它由大量的神经元及其之间的连接构成,模仿人的大脑、神经系统的思维方式,可以处理模糊、多变、复杂的信息。
人工神经网络的基本结构包括神经元、联络和权重三要素。
神经元的工作原理:每个神经元都有很多杆,它们从其它神经元获取输入信号,并加权聚合,然后将聚合后的信号输出给其它神经元。
联络用于连接不同的神经元,而权重则用于每一个联络信号的加权。
人工神经网络的学习阶段是该网络内部的参数按照一定的机制(如误差反向传播算法)进行调整更新,使其输出的结果是一道题给出的解,使其在一定的范围内尽可能贴近正确答案的过程。
学习主要通过调整连接权重来完成,即为神经元连接权重设置有效值,从而使输出介于正确答案之间,从而达到最佳解的目的。
学习的结果可以决定网络的计算结果,也可以决定网络的性能,这就是学习算法的目的。
通常,学习算法的目标是最小化网络的总体损失,通过更新权重和偏置来增加网络的性能。
此外,人工神经网络还可以实现训练和参数压缩。
BP 网络的算法 设网络输入为X ,输入神经元有r 个;隐含层有1s 个神经元,激发函数为1F ;输出层内有2s 个神经元,对应的激活函数为2F 。
输出为Y ,目标矢量为T 。
(1) 信息的正向传递① 隐含层中第i 个神经元的输出为:1,2,1),11(111s i b x w f y rj i j ij i =+=∑= (4.15)② 输出层第k 个神经元的输出为:2,,2,1),212(2211s k b y w f y s i k i ki k =+=∑=(4.16)③ 定义误差函数为:∑=-=212)2(21),(s k k ky t B W E (4.17)(2) 求权值的变化及误差的反向传播① 输出层的权值变化对从第i 个输入到第k 个输出的权值变化为:i kii k k kikk kiki y y f y t w y y Ew E w 112)2(22222ηδηηη='-=∂∂∂∂-=∂∂-=∆ (4.18)式(4.18)中,kk k k k k ki y t e f e f y t 222)2(-='='-=;δ。
同理可得:ki k k kik kkik f y t b y y E b E b δηηηη⋅='⋅-=∂∂⋅∂∂-=∂∂-=∆2)2(22222 (4.19)② 隐含层权值的变化对从第j 个输入到第i 个输出的权值,其变化量为:jij j ki s k k k iji ik kijij x x f w f y t w y y y y E w E w ⋅⋅=⋅'⋅'-=∂∂⋅∂∂⋅∂∂-=∂∂-=∆∑=δηηηη122)2(111221121(4.20)式(4.20)中,∑=='=212,1s k kiki i i ij w e f e δδ同理可得:ij i b ηδ=∆1。
(三)BP 网络的设计和训练 1)BP 网络的设计 设计BP 网络的结构,包括的内容为:①网络的层数;②每层的神经元数;③初始权值的选取;④期望误差的选取。
其设计的网络性能直接影响到评判结果的可靠性。
(1) 网络的层数理论上已证明:具有输入层、偏差和至少一个S 型隐含层加上一个线性输出层的网络,能够逼近任何有理函数。
增加网络的层数可以提高网络性能,减少误差,提高精度,同时使网络结构复杂化,增加训练的时间。
因此要优先考虑增加隐含层的神经元数而不是增加网络层数来提高网络性能。
在采用单层网络时,非线性激发函数的网络不如线性网络的性能。
也就是说,可以用一层解决的问题,应当首先采用感知器或自适应线性网络来解决,不采用非线性网络,因为单层网络不能发挥出非线性激发函数的特长。
对于某一求解问题,必有一个输入层和一个输出层,隐含层数则需要根据问题的复杂性来分析和确定,隐含层数的合理选取是网络取得良好性能的一个关键。
有关研究表明,隐含层数的增加,可以形成更复杂的决策域,使网络解决非线性问题的能力得到加强。
由于网络计算过程实质上是一种映射,这种映射将最初的输入空间映射到存在半线性判别函数的适当空间中。
因此,认为隐含层最多只需要两层,甚至必须是两层的论述缺乏理论依据。
合理的隐含层数应根据实际问题决策的复杂程度和非线性程度相适应,给系统赋予一个自适应算法,根据某一特定的问题进行不同隐含层数的网络训练,合理的隐含层数应该使网络收敛且系统误差较小,图4.8给出了一般意义上的隐含层数对网络性能影响的分析结果。
(2) 隐含层的神经元数采用适当的隐含层神经元非常重要,是网络模型功能实现成功与否的关键。
神经元太少,网络难以处理较复杂的问题;反之,神经元数太多,导致网络训练时间急剧增加,而且过多的神经元还会导致网络训练过度,将训练数据组中没有意义的信息也记忆在网络中,难以建立正确的模型。
但是,神经元数的合理确定主要还是根据需要解决的问题的不同进行反复比较,图4.9给出了在解决同一问题时隐含层神经元数对网络性能的影响的分析结果。
图 4.8 系统误差与网络隐含层数之间的关系分析结果—■—实际分析结果┄●┄趋势分析结果图 4.9 隐含层神经元数对网络性能的影响根据图4.9和训练误差的变化情况,可得出以下结论:1)隐含层的神经元数太少了,网络不能很好的学习,需要训练的次数多,训练精度不高。
2)从理论上讲,隐含层数1s越多,功能越强。
但是,当神经元数太多时,会使循环次数和训练时间增加,同时还会产生其它问题,如图4.9所示,神经元数20s后,网络解决问题的能力开始出现问题,训练时间和循环次数均开始1增加。
3)1s选择的原则是:在解决问题的前提下,再加上1~2个神经元可以加快误差的下降速度。
(3)初始权值的选取由于煤自燃极限参数预测系统是非线性的,初始权值对于网络学习是否达到局部最小、是否能够收敛以及训练时间的长短有很大的关系。
从激发函数的特性分析,初始权值应该取(-1,1)之间的随机数,从而保证神经元的权值都能够在它们的S型激发函数变化最大之处进行调节。
最佳初始权值的选择的数量级是:T S1,其中1S是第一层神经元数。
利用这种方法可以在较少的训练次数下得到满意的训练结果。
(4)学习速率学习速率决定着每一次循环训练中所产生的权值变化量。
大的学习速率可能导致系统的不稳定,但小的学习速率将会导致训练时间较长,收敛速度很慢,但能保证网络的误差不跳出误差表面的低谷而最终趋于最小误差。
所以一般情况下,倾向于选取较小的学习速率以保证系统的稳定性。
在煤自燃极限参数的预测系统中学习速率一般选取在0.01~0.8之间。
(5)期望误差的选取在设计网络的训练过程中,期望误差也应当通过对比训练寻求一个合适的值。
煤自燃极限参数预测系统中的“合适”是相对于隐含层的节点数来确定的,因为较小的期望误差值是要靠增加隐含层的节点以及训练时间来获得的。
2)BP网络训练的步骤BP网络的训练按照图4.10所示的步骤进行网络训练。
3)BP网络训练的计算机实现方法BP网络的训练过程在计算机上实现,需要根据以下的实现方法进行,以提高训练的精度和效率。
1)小的随机数给每一层的权重W和B赋初值:)1,2(]2,2[),1(]1,1[S S rands B W R S rands B W ==式中,rands()为随机数赋值子函数。
同时,定义关键参数,即训练过程所期望的误差最小值err_goal 和网络训练最大的循环次数max_epoch ;确定提高网络训练性能的学习速率lr ,理论上确定区间的范围lr=0.01~0.8,实际网络设计过程中根据计算机的训练而定。
2)计算网络各层输出矢量Y1和Y2以及网络误差E :Y T E B Y W purelin Y B X W sig Y -===)2,1*2(2)1,*1(tan 13)计算各层反传的误差变化D2和D1并计算各层权值的修正值:222222111111),2,1(]2,2[),1,(]1,1[)2,2,1tan(1),2(2dB B B dW W W dB B B dW W W lr D Y learnbp dB dW lr D X learnbp dB dW W D Y delta D E Y deltalin D +=+=+=+=====4)计算权值修正后误差平方和SSE(Sum Square Error):))2),1,*1(tan *2((B B X W sig W purelin T sumsqr SSE -=5)检查SSE 是否小于err_goal ,若是则结束训练,否则继续训练;6)定义函数trainbp()为BP 网络训练的程序功能模块定义相关参数,如显示间隔次数、最大循环次数、目标误差和学习速率后进行函数调用,函数调用后返回训练后的权值、循环次数和最终误差,即:',,(],,,[_max__[F B W trainbp errors epochs B W err epoch fqre disp TP ==式中,''F 为网络的激发函数名称。
写成一般表达式为:,3,3,'2',2,2,'1',1,1(],,3,3,2,2,1,1[B W F B W F B W trainbp errors epochs B W B W B W =4)BP 神经网络模型功能的改善办法在BP 网络训练过程中,最关键的问题是要实现全局最小误差,而不是局部,因此在预测过程中必须完善模型的功能。
5)附加动量法附加动量方法在修正权值时,不仅要考虑在梯度上的作用,而且要分析在误差曲面上变化趋势的影响,并使得网络模型能忽略网络上的微小变化特征。
在没有附加动量的作用下,模型分析结果可能陷入局部极小值。
在反向传播法的基础上在每一个权值的变化上加上一项正比于前一次权值变化量的值。
并根据反向传播法产生新的权值变化。
根据式(4.21)进行方法的完善:)()1()1()()1()1(k b mc mc k b k w mc x mc k w i ii ij j i ij ∆+-=+∆∆+-=+∆ηδηδ(4.21)式中,k 为训练次数,mc 为动量因子。
当动量因子mc=0时,权值的变化只根据梯度下降法产生;当mc=1时,新的权值变化则是设置为最后一次权值的变化,而根据梯度法产生的变化部分则被忽略。
根据此运行方式,增加动量项后,促使权值的调节向着误差曲面底部的平均方向变化,当网络权值进入误差曲面底部的平坦区时,i δ将变小,)()1(k w k w ij ij ∆=+∆,从而防止了0=∆ij w 的出现,使得网络模型训练过程中从误差曲面的局部极小值中跳出。
其判断条件根据下式进行:⎪⎩⎪⎨⎧-<⋅->=其它mc k SSE k SSE k SSE k SSE mc )1()(95.004.1)1()(0 (4.22)6)误差函数的改进在前述已定义误差函数为二次函数:∑-=kk ky t E 2)(21(4.23)根据上式,当1→k y 时,常数→E ,即处于E 的平坦区,从而造成训练“麻痹“现象,必需寻求合适的函数来代替2)(k k y t -的形式,使训练结果达到全局误差最小值。
在上述分析的基础上,提出改进后的误差函数,如式(4.24)所示。
∑---++++=kkk k k k k y t t y t t E ]11l o g )1(2111l o g )1(21[(4.24) 式(4.24)同样满足当k k t y =时,E=0。
但是,当1±→k y 时,方程发散,故能够克服“麻痹“现象。
若采用双曲正切函数来作为激发函数,则:xxx xx ee e ex ee x xf ----+-=+-==2211)tanh()(对)(x f 求一阶导数得:)(11)(h tan )(22x f e e e e x x f xx xx -=⎪⎪⎭⎫⎝⎛+--='='-- 误差函数E 对k y 求一阶偏导数,且有关系式21k ky y -='得: k k k kk k kk k k ky t y y t y y t y y E δ=-=--++-+-=∂∂)]1)(1()1)(1)[(1(212综合考虑常规方法和改进方法的特性后,综合得到误差函数的修正式为:)](1.0)([k k k y t x f -+'=δ (4.25)式(4.25)一方面恢复了)(x f '的影响,另一方面当||x 变大时,仍然能够保持k δ有一定数值,避免了训练“麻痹”现象的发生。