首页范文神经网络前向传播算法十篇神经网络前向传播算法十篇

神经网络前向传播算法十篇

发布时间:2024-04-25 18:01:32

神经网络前向传播算法篇1

关键词:Bp神经网络解析理论

中图分类号:tp391文献标识码:a文章编号:1674-098X(2016)09(a)-0090-03

因为具有非常强的非线性,人们在学习Bp神经网络时,往往会忽略它的动力学机制和数学运算细节,而只关注于调用相关函数,盲目地用于解决一些实际问题。这个问题成为了阻碍神经网络理论发展和应用的关键所在。该文将从基本理论、算法步骤、梯度下降算法的实现、Bp神经网络的解析算例4个方面进行论述。这有助于从事人工智能算法研究或希望应用神经网络算法解决实际问题的初学者,更准确和更全面地理解神经网络理论。

1基本理论

神经网络是一种非常重要的人工智能算法[1]。Bp神经网络是最常用的神经网络算法,是误差反向传播(errorBackpropagation)神经网络的简称,是一种按误差逆传播算法训练的多层前馈网络[2,3]。

Bp算法的基本思想是训练过程由信号的正向传播和反向传播两个过程组成的。当信号正向传播时,输入样本从输入层传入,经隐层逐步处理后,传向输出层。如果在输出层中实际输出值与期望输出值不符,则转入误差的方向传播过程,并依此往复。

误差的反向传播是将误差输出给隐层,再向输入层反传。在整个反传过程中,误差分摊到各层的所有单元,从而得到各层单元的误差信号,并以此作为修正各单元权值的依据。权值不断修正的过程,也就是网络接受学习和训练的过程,当神经网络的输出误差减小到某个可接受的程度,或进行到预先规定好的学习次数时,整个计算过程终止。

2Bp神经网络的算法步骤

(1)神经网络参数的初始化:给各连接权值分别赋一个区间(-1,1)内的随机数,设定误差函数的数学表达式e,给定计算精度和最大学习次数m;

(2)随机选取第k个输入样本及对应的期望输出:

(3)计算隐层各神经元的输入和输出;

(4)计算输出层个神经元的输出(神经网络的总输出);

(5)利用神经网络期望输出和实际输出,计算误差函数对输出层的各神经元输出误差的偏导数

(6)利用神经网络输出值关于隐层到输出层的连接权值的偏导数;

(7)同理,求得网络输出误差关于输入层与隐层权值的偏导数;

(8)利用和来修正两种连接权tki和;

(9)计算全局误差e,并判断网络误差是否满足精度要求。当误差达到预设精度或学习次数大于设定的最大迭代次数,则结束程序;否则,返回第(3)步,选择下一个学习样本及对应的期望输出,进入下一轮学习。

3梯度下降算法的实现

结合梯度下降算法[4]的实现过程,我们以Bp神经网络为例,详细介绍神经网络的原理和实现过程。

对于一个n维值函数而言,若采用梯度下降算法计算其极小值,需要选择一个初始点,如果该点对应的非极小值,则必须对进行修正,并得到。

重复上述过程,在计算得到(x2,y2),直到第n步。当或时,结束循环,并输出(xn,yn)。

极小值点的计算精度由η的取值决定。

4Bp神经网络算法的解析算例

对于Bp神经网络而言,其实现过程与极小值问题的梯度下降算法的本质是一致的,区别之处只在于对初始点坐标的调整^程。在梯度下降算法中,初始点的调整是正向的,即由初始点坐标决定调整方向(该点处的负梯度方向);在Bp神经网络中,初始点(初始权值)的调整是反向的,即由误差函数关于各权变量的导数,对权值进行调整。

再举一个关于Bp神经网络的简单例子,给定神经网络的拓扑结构图如图1所示,其中,输入层具有两个神经元a和B,隐层具有两个神经元C和D;输入样本为a=0.3,B=0.6,初始权值为:aC=0.1,BC=0.8,aD=0.5,BD=0.4,Ce=0.4,De=0.6。

可见,经调整的权值可以用输出的全局误差减小,往复这个迭代过程,我们将得到最佳的权值。

参考文献

[1]李成.神经网络系统理论[m].西安电子科技大学出版社,1990.

[2]戚德虎.Bp神经网络的设计[J].计算机工程与设计,1998,19(2):48-50.

神经网络前向传播算法篇2

关键词:神经网络;工程造价;Vague集贴近度

0引言

对建筑工程造价进行科学有效的测算和控制,会使工程造价的组成比较合理,进而节约工程开销成本。现在,经典的建筑工程造价测算方法主要有下面几种:定额法、类比工程法、回归分析法和模糊数学法[1]。其中,定额法必须对定额成本、定额差异和定额变动差异进行单独核算,任务较重,现实中很难实施;类比工程法是通过类比工程的相似性实现工程造价的测算,该方法估算准确度不够高;回归分析法的估算准确度同样不高,该方法将很多重要因素忽略了;模糊数学法是通过模糊数学的思想对工程造价进行估算,该方法的不足主要是特征隶属度不好准确确定。由于人工神经网络可以自学并进行推理,本文通过人工神经网络和Vague集贴近度理论对住宅楼的工程造价进行估算和控制,可以为建筑工程造价估算提供很好的服务。

1Bp神经网络

Bp神经网络是一种前馈型神经网络,包含三种层次或者多层次,各种层次之间相互连接,同一层次可以自由结合,Bp神经网络的构成见图1。所属模型的神经元数量决定了Bp神经网络的层数,各个层次之间通过相互的权值实现联接[2]。

人工神经元(artificialneuron)模型:

人工神经元是神经网络的基本元素,其原理可以用图2表示。

图中x1~xn是从其他神经元传来的输入信号,wij表示表示从神经元j到神经元i的连接权值,θ表示一个阈值(threshold),或称为偏置(bias)。则神经元i的输出与输入的关系表示为:

Bp神经网络的结构非常简洁,包括正向传播和逆向传播。下面分别对Bp神经网络信息的正向传播和误差信息的反向传播原理进行介绍。

1.1信息的正向传播

式(1)中,n为信息的总个数。

1)输入向量为

多层神经元网络(Bp网络图3)。

Bp(Backpropagation)神经网络,即误差反传误差反向传播算法的学习过程,由信息的正向传播和误差的反向传播两个过程组成。由图3可知,Bp神经网络是一个三层的网络:

输入层(inputLayer):输入层各神经元负责接收来自外界的输入信息,并传递给中间层各神经元;

隐藏层(HiddenLayer):中间层是内部信息处理层,负责信息变换,根据信息变化能力的需求,中间层可以设计为单隐层或者多隐层结构;最后一个隐层传递到输出层各神经元的信息,经进一步处理后,完成一次学习的正向传播处理过程;

输出层(outputLayer):顾名思义,输出层向外界输出信息处理结果。

2建筑工程造价估算模型

2.1Bp神经网络训练建立Bp神经网络模型,对工程特征向量进行归一化处理,可以开始神经网络训练,目标是使网络性能函数极小化,实现非线性映射的目的。本文利用nguyen-widrow方法[5]对权值和阈值的初值进行确定。nguyen-widrow方法具体原理为

上式中,w是数值矩阵,θ是权值矩阵,S、n是节点的个数。rand(S,n)为s行n列的平均自由分布任意矩阵,i(S,n)为s行n列标准矩阵。

2.2Bp神经网络训练调整与测试Bp神经网络训练调整与测试连接强度加权值调整方法,具体公式为:

Bp算法在按步骤经行的收敛过程中,每一步的学习率都将发生变化,而不是固定不变。此时Bp神经网络不应用连接强度加权值的调整方法,同时也不使用误差函数对梯度调整和η调整方法;最终应用相对权重增加量Δwij进行网络调整与测试,权值wij的修正值Δwij,如下所示:

以上的分析表明,运用Bp神经网络进行建筑工程单方造价估算是可行的,然而该方法对建筑工程项目总造价的估算还不够精确。当前建筑工程项目需要考虑的影响因素非常多,虽然可以引入大量的特征因素,然而里面有很多因素都非常模糊化;即使可以对特征因素进行具体说明,提高输入点的数量,这时样本数据会随着增加,此时神经网络将会复杂化,求解效率会降低。所以,本文通过以上运用Bp神经网络对建筑工程项目单方造价的估算,采用Vague集贴近度对Bp神经网络进行改进,对建筑工程总造价进行估算[3]。

2.3加入Vague集贴近度改进Bp神经网络文献[4]采用普通模糊集理论来对工程隶属度进行确定。本文中建筑工程特征因素隶属度是指建筑工程特征值隶属于准备建设的项目特征值的大小程度:

3实例分析

选取2013年西安市某工程项目数据进行实例分析,工程造价指数以2013年为基准,通过加权平均法求解造价年综合指数。通过选择,最后选取了二十个样本,前面十八个样本为训练样本,剩余的两个当作检测样本。神经网络训练数据见表1。

3.1Bp神经网络训练采用Bp神经网络对模型进行构建,对建筑工程特征向量数据处理结束后,可以开展神经网络训练。神经网络训练基本的训练公式为

net,tr=train(net,p,t)

训练公式中net为最终的网络,tr为数值统计,p是输入矩阵,t是输出矩阵。

3.2Bp神经网络与Vague集贴近度预测采用Vague集贴近度的数据,基于Bp神经网络训练样本进行预测,通过训练好的网络对与本文样本数据相类似工程项目的单方造价进行预估,求得单方造价均值为1800元/m2。紧接着可以对建筑工程的总造价进行预估,通过对10项样本进行造价估算预测,采用Bp神经网络和Vague集贴近度相结合的方法进行造价预估,估计误差在±10%范围内(见表2),造价估算结果非常准确。

4结论

本文应用Bp神经网络造价预测和Vague集贴近度理论,从理论和实际应用两方面对建筑工程造价估算进行了研究。文中的方法能更准确地反应工程造价的不确定性,为建筑工程项目造价估算方法研究提供了一种新的视角和方法。

参考文献:

[1]史峰.Bp神经网络在工程量清单中快速估价的应用研究[m].北京航空航天大学出版社,2010.4.

[2]张风文.基于matLaB神经网络的工程实例分析[J].华东交通大学学报,2010,8(3):26-33.

[3]郭一斌,王红革,王翔.基于Vague集贴近度的工程项目投资快速估算方法[J].现代经济信息,2011,12(2):50-55.

神经网络前向传播算法篇3

关键词:室内定位;RSS;Bp神经网络;ieee802.11b

中图分类号:tn911.23文献标识码:a

1引言

目前,室内定位算法主要有以下几种。

1)timeofarrival(toa)

toa定位的基本原理是通过测量节点间电波传播的时间来确定节点的位置。

toa算法要求参加定位的各个基站在时间上实现严格同步。在室内环境中,由于已知点到待测点的距离通常不远,无线电波的传播速度太快,且存在严重的多径干扰,因此无法利用无线电波进行测距。目前,基于toa的室内定位技术通常是利用超声波传播速度较慢的特点(在20摄氏度时超声波的传播速度为343.38m/s),来测量出已知点和待测点间的距离,进而求出待测点的位置[1]。

2)GpSL1Re-radiating

GpS(GlobalpositioningSystem)是70年代初由美国开发的卫星导航定位系统,本质上它也是一个基于toa的定位系统。

GpSL1Re-radiating是将GpS在L1频段上的信号,通过户外天线接收后,增益放大为室内可接收信号,进而基于GpS实现室内定位。

3)Receivedsignalstrength,RSS

RSS定位的基本原理是利用移动装置侦测所接收到的无线电波信号强弱,然后根据经验模型或RSS随距离衰减的模型来推断节点间的距离,进而实现定位[2]。

该技术主要使用无线网络本身的无线电信号来定位,不需额外添加硬件,是一种低功率、廉价的定位技术[3]。

基于信号强度的室内定位方法分为经验模型法和信号衰减模型法。

(1)经验模型法

在经验模型法中,将RSSi数据转换为位置信息的方法主要有判定法和概率法两种。

(2)信号衰减模型法

信号衰减模型法则无需实地测量位置和RSSi,而是依据信号强度和距离的特定关系,结合三角测量法,根据来自三个(或以上)ap的RSSi来计算出待测点的位置。

基于toa的定位模型在开放的室外环境中非常有效,但在室内环境却存在一些问题。使用超声波虽可克服无线电波传输速度快的问题,但需构建专门的超声波系统。GpS也主要是针对户外目标设计的定位系统,应用于室内存在定位精度不高等问题。基于RSS的定位模型中,经验法需进行大量的实地测量,同时无法保护定位用户的隐私;而信号衰减法在室内受nLoS(非视距传播)等因素影响,也使得定位精度较低。

因此,本文提出了一种基于Bp神经网络的室内定位模型并借助matLaB7.0加以实现。采用该方法进行室内定位,不需要wLan以外的其他资源。由于不需要知道定位节点和建筑物的详细特性,用户的隐私将随之得到完全的保护。

2基于Bp神经网络的室内定位模型

Bp神经网络通常是指基于误差反向传播算法(Backpropagation)的多层前向神经网络,目前,该算法已成为应用最为广泛的神经网络学习算法[4]。

Bp神经网络采用的是并行网络结构,包括输入层、隐含层和输出层,经作用函数后,再把隐节点的输出信号传递到输出节点,最后给出输出结果。该算法的学习过程由信息的前向传播和误差的反向传播组成。在前向传播的过程中,输入信息从输入层经隐含层逐层处理,并传向输出层。第一层神经元的状态只影响下一层神经元的状态。如果在输出层得不到期望的输出结果,则转入反向传播,将误差信号(目标值与网络输出之差)沿原来的连接通道返回,通过修改各层神经元权值,使得误差均方最小。神经网络理论已经证明Bp神经网络具有强大的非线性映射能力和泛化功能,任一连续函数或映射均可采用三层网络加以实现。

计算技术与自动化2007年6月第26卷第2期李瑛等:一种基于Bp神经网络的室内定位模型2.1样本数据的采集和处理

输入向量为待测点收到的来自至少三个不同位置ap的RSSi值,输出向量为待测点的坐标值(X,Y)。

样本采集在一个10mX10m的室内场地中进行。使用3个来自SmC公司的ap和1台配置了oRinoCopCCaRD的笔记本电脑。ap及无线网卡符合并工作在ieee802.11b标准下。笔记本电脑所使用的操作系统为RedHatLinux9.0。样本均匀分布在6mx6m的中心区域中。

2.2网络结构的确定

Kolmogorov定理已经证明[5],任意一连续函数可由一个三层Bp网络来实现。虽然研究表明三层以上的Bp网络可以减少隐含层节点数,提高计算效率,但在缺乏理论指导的Bp网络设计中这样做容易使问题趋向复杂化。因此选择三层Bp神经网络,即只有1个隐含层的Bp神经网络。

该网络输入层的节点数由输入向量的维数决定,输入向量的维数是3,所以输入层节点数确定为3个。输出层节点数由输出向量的维数决定,这里输出节点数为2。

隐含层节点数的选择在Bp网络设计中是一个难点,目前还没有理论上的指导。过多的网络节点会增加训练网络的时间,也会使网络的泛化能力减弱,网络的预测能力下降。然而网络节点过少则不能反映后续值与前驱值的相关关系,建模不充分。经反复试验,将隐含层节点数定为30,这样形成了一个3-30-2结构的Bp神经网络,如图1所示。

2.3学习算法的选择

基本Bp算法采用梯度下降法使得误差均方(mse)趋向最小,直至达到误差要求。但在实际应用中,存在收敛速度慢、局部极值等缺点。matlab7.0神经网络工具箱中提供了十多种快速学习算法,一类是采用启发式学习方法,如引入动量因子的traingdm算法、变速率学习算法traingda、“弹性”学习算法trainrp等;另一类采用数值优化方法,如共轭梯度学习算法traincgf等。本研究选择traincgf算法。该算法在不增加算法复杂性的前提下,可以提高收敛速度,并且可沿共扼方向达到全局最小点,较好地解决了经典Bp算法所存在的收敛速度慢和可能出现局部最优解的问题。

2.4Bp神经网络的初始化、训练与仿真

1)建立网络

net==newff(p3,[30,2],{′tansig′,′purelin′},′traincgf′)

newff()为建立Bp神经网络的函数;p3为6维矩阵,表示3维输入向量中每维输入的最小值和最大值之间的范围。[30,2]表示隐层节点数是30,输出层节点数是2,{′tansig′,′purelin′}表示隐含层中的神经元采用tansig转换函数,输出层采用purelin函数,′traincgf′表示选择的学习算法。

2)权重和阈值初始化

net==init(net)

给各连接权重Lw{1,1}、Lw{2,1}及阈值b{1}、b{2}赋予(-1,+1)间的随机值。

3)训练

[net,tr]=train(net,p,t)

p为输入向量,t为目标向量,根据网络学习误差逆传递算法,利用阻尼最小二乘算法迭代,由前一次训练得到的网络权重及阈值训练得到新的网络权重及阈值。

为了使生成的Bp网络对输入向量有一定的容错能力,最好的方法是既使用理想的信号又使用带有噪声的信号对网络进行训练。具体做法是先用理想的输入信号对网络进行训练,直到起平方和误差足够小;然后,使用20组理想信号和带有噪声的信号对网络进行训练。经过上述训练后,网络对无误差的信号也可能会采用对付带有噪声信号的办法,这样会导致很大的代价,因此,需要采用理想的向量对网络再次训练,以保证网络能对理想信号作出最好的反应。

使用函数traincgf对网络进行训练时,当网络平方和误差小于3时停止网络的训练。训练过程中的误差变化情况如图2所示。

根据训练后的网络及输入向量进行仿真输出。

3实验结果及分析

利用训练后的Bp神经网络进行了36次定位,并统计了36次定位的平均误差,结果如图3所示。

与利用信号衰减模型定位相比(如图4所示),利用Bp神经网络定位具有更高的统计精度。

与信号衰减模型相比,虽然Bp神经网络的模型解释直观性略有不足,但却可获得更精确的定位结果。

利用Bp神经网络,虽然可解决传统处理方法所不能处理的非线性映射问题,但在实际应用中,对如何选择和确定一个合适的神经网络结构没有确切的理论指导,只能通过试验―调整―再试验的过程来确定一个合适的网络结构。同时,Bp神经网络的隐含层作用机理和隐含层节点个数的选择是Bp神经网络的难点问题。隐含层的节点个数的选择需反复进行试验,当多次输出结果在一定误差范围内时才可确定。

4结束语

本文提出了一种基于Bp神经网络的室内定位模型,并在基于ieee802.11b标准的wLan环境中对此模型进行了测试。一个基于信号衰减模型的定位算法也在同样的环境中进行了测试。对比结果表明,利用Bp神经网络进行室内定位能取得更好的定位精度。

神经网络前向传播算法篇4

[关键词]人工神经网络湖南人均GDp预测

GDp反应某地区在核算期内生产活动的最终成果及衡量国民经济发展规模、速度、结构、效益的代表性指标,也是制定经济发展战略目标的主要指标。湖南省作为中部的一个省份,通过对“十一五”期间湖南省人均GDp的预测,可以分析全省的劳动量、资本量和技术知识的存量,利用GDp的存量功能,可以获得资源与要素的信息,并据此推算湖南省的经济增长的潜力,从而有利于政府部门制定更合理的经济政策。

一、问题的分析与模型的建立

经济预报是一个复杂的非线性系统,且系统的内部时时刻刻在发生变化,我们希望能够建立一个参数随预测环境的变化而改变的非线性模型,国内外对经济的预测进行了大量的研究,提出了许多预测的方法,其中神经网络被认为是一种较好的非线性预测方法,尤其是Bp神经网络。Bp神经网络结构简单,非线性处理能力却很强大。

1.Bp网络模型

Bp网络是一种单向传播的多层前向网络,其结构如图1

Bp网络是一种具有三层或三层以上的神经网络,包括输入层、中间层(隐层)和输出层。上、下层之间实现联接,而每层神经元之间无联接。当一对学习样本提供给网络后,神经元的激活值,从输入层经各中间层,向输出层传播,在输出层的各神经元获得网络的输入响应。接下来,按照减少目标输出与实际值的误差的方向,从输出层经过各中间层逐层修正各联接权值,最后回到输入层,这种算法称为“误差逆传播算法”,即Bp算法。随着这种误差逆传播修正不断进行,网络对输入模式响应的正确率也不断上升。

图1为常用的三层Bp网络结构,如果输入层、隐含层和输出层的单元个数分别为n、q、m,则该三层网络可表示Bp(n,q,m),利用该网络可实现n维输入向量Xn=(X1,X2…Xn)到m维输出向量Ym=(Y1,Y2…Ym)t的非线性映射。m,n根据具体问题确定,而隐含层单元数q的确定尚无成熟的方法,一般可设定不同的q值,根据训练结果进行选择。网络结构Bp(n,q,m)确定后,网络参数包括输入层第i单元到隐含层第j单元的权重wij(i=1...n,j=1...q),隐层第i单元到输出层第k单元的权重wiko(j=1...q,k=1...m);隐含层第j单元的激活阈值(j=1...q)及输出层第k单元的激活阈值(k=1...m),以上权值和阈值的初值在网络训练之前随机生成;假设共有p个训练样本,输入的第p个训练样本信息首先向前传播到隐含层单元上,经过激活函数f(u)的作用得到隐含层的输出信息:(1)

激活函数f(u)采用s(0,1)型函数,即(2)

隐含层的输出信息传到输出层,可得到最终输入结果为

Bp算法的基本思想是学习过程由信号的正向传播与误差的反向传播两个过程组成。以上过程为网络学习的信息正向传播过程;如果网络输出与期望输出存在误差,则将误差反向传播,误差的反射传播是将输出误差以某种形式通过隐层向输入层逐层反传,并将误差分摊给各层的所有单元,从而获得各层单元的误差信号,以误差信号作为修正各单元权值的依据,可以利用(4)来调节网络权重和阈值。

其中为w(t)次训练,η,α分别为比例系数和动量系数,e为误差平方和反复运用以上两个过程,一直进行到网络输出的误差减少到可接近的程度或进行到预先设定的学习次数为止()。

通常,经过训练的网络还应该进行性能的测试,测试的方面就是选择样本向量,将其提供给网络,检验网络对其分类的正确性,测试样本向量中应包括今后网络应用过程中可能的主要典型模式;样本可以直接测取得到,也可以通过仿真得到,在样本数据较少或者较难得到时,也可以通过对学习样本加上适当的噪声或按照一定的规则插值得到,总之,一个良好的测试样本集中,不应该包括和学习完全相同的模式。

2.Bp神经网络在经济预报模型中的应用

采用神经网络进行经济预测,以湖南省1978~1999年的经济数据作为训练样本,2000年~2004年GDp进行预测仿真试验。

GDp预测指标体系就包含第一产业(x1)、第二产业(x2)、第三产业(x3)。在考虑诸年数据的可比性,在应用神经网络之前,采用如下方法对数据环比处理:

式中,x为指标的环比值;y为指标的原始数据值;w为物价指数,t和t-1分别代表当年度和上年度。采用Bp神经网络进行预测,即用上一年的经济数据作为输入,下一年的GDp作为输出。因此GDp预测模型可以描述为:

y1=f(x1(t-1),x2(t-1),x3(t-1))

设置L―m算法Bp神经网络的计算误差为10-4,最大计算步数为10000,计算结果见图2:

预测的结果见下表

从表中预测的结果,可以看出,模型拟合得到的数据与真实值是比较吻合的,预测的效果比较好,完全能满足实际应用的需要。如果我们对神经网络训练的精度作更高的要求,还可进一步降低预测的误差。

参考文献:

[1]martint.Hagan.神经网络设计.机械工业出版社,2005

[2]王振龙:时间序列分析.中国统计出版社.2003

[3]伍卫国:数值方法和matlab实现与应用.机械工业出版社,2004

神经网络前向传播算法篇5

关键词:Bp算法训练样本小车自动寻径

中图分类号:tp273.3文献标识码:a文章编号:1007-9416(2013)07-0102-02

1引言

随着生产技术的发展和自动化程度的提高,在自动化领域中,许多复杂性操作或对人体有害的工作都由机器自动完成,为了实现这一工作,机器就必须具有智能性。

人工神经网络是由人工神经元(简称神经元)互连组成的网络,以大规模模拟并行处理为主,具有很强的鲁棒性和容错性自学习能力,是一个大规模自适应非线性动力系统;具有集体运算的能力。多层前向神经网络(Bp网络)是神经网络结构形式中应用较多的自学设计方法之一。Bp算法可以通过已知数据训练网络模型,应用于对未知数据的预测[3]。因此能很好的应用于小车自动寻径,使小车具有智能性。

2Bp算法神经网络

Bp神经网络(Back-propagationnetworks)包括三个层次:输入层、隐含层、输出层[2]。

2.1Bp算法流程简述

Bp神经网络的本质是误差反向传输的多层前馈网络,Bp算法的基本思想是,学习过程由信号的正向传播与误差的反向传播两个过程组成。正向传播时,先自行对权重进行初始化,输入样本从输入层传入,经各隐层逐层处理后,传向输出层,如图1为Bp神经网络模型[3],若输出层的实际输出与期望的输出(理想输出)不符,则转入误差的反向传播阶段。

2.2隐层神经元个数的确定

一般情况下,隐层神经元个数是根据网络收敛性能的好坏来确定的,在总结大量网络结构的基础上,在单隐层神经网络中,得出以下经验公式:

其中,为输入层神经元个数,为输出层神经元个数。

3创建Bp神经网络模型

3.1问题描述

随机的绘制一张彩色地图,地图中有各种颜色的建筑和一条贯穿的公路(白色),引入Bp神经网络,使该小车具有一定的智能,可以自动地判断前方是否为公路,进而沿着公路从地图的一端走到另一端。本次实验所用的地图如图2所示(地图及小车由本人按照一定的比例用电脑的画图工具所画):

3.2地图及小车图片的灰度化

由于matlab默认为rgb模式打开图片,故为了更简单的解决问题,必须对图片进行灰度处理,处理之后地图及小车分别为520*1100和20*25维矩阵。

3.3地图及小车图片的二值化

为了Bp网络更好的收敛,需对相应图片进行二值化处理,如图3所示。由于本次实验公路为白色,小车为黑色。故将地图中除公路以外的部分的像素值置为0,公路上的像素值置为255,小车的像素值置为255。

所以,在小车的“眼里”,世界是黑白的。如下图:

3.4小车的视野

小车必须有一定的视野,可以“看到”前方的路况,否则当小车发现情况不妙准备转弯的时候就已经撞到路边了。本次实验取的小车的视野为小车前方和左右方30像素范围,这样小车可以“预感到”自己前方和左右方向上的路况,进而及早调整方向。

3.5训练Bp神经网络

训练样本作为Bp网络的输入数据集,对于网络的训练具有重要的作用[4],本文建立单隐层Bp神经网络,训练样本选取为小车在地图上某个方位的对应位置的差矩阵,共20个样本,其中10个是对的样本(即小车在公路上),10个为错的样本(即小车的车体不完全在路面上)。这样输入的样本矩阵的大小即为小车图片对应的像素矩阵的大小,为20*25,故输入层神经元个数取为500。输出层只有两种情况,在公路上为对,不在公路上为错,故输出层神经元个数为2。

由式(2)可得隐层神经元的个数为42,选取误差精度10-4,初始学习速率0.5,初始权值为(-1,1)区间内随机值。

经过245次训练以后,总体期望误差达到了给定范围,网络训练过程中的误差变化曲线[15]如图4所示。

4实验结果

所有算法均在matLaBR2009a中运行,微机配置为Coreprocessor4000+2.10GHz,内存为2G。

用前面选出的训练样本对Bp神经网络进行训练,训练之后小车即具有了一定的智能,可以识别前方和左右方的路况,实验结果表明,小车可以很好的沿着公路从地图的一侧行驶到另一侧。

5结论

通过对Bp神经网络训练后,小车可以正确地沿着公路地图的一侧行驶到另一侧,说明Bp神经网络可以很好地应用于路径识别和自动驾驶领域。

参考文献

[1]杨国才,王建峰,王玉昆.基于web的远程自学型教学系统的设计与实现[J].计算机应用,2000,20(4):61-63.

[2]安淑芝.数据仓库与数据挖掘[m].北京:清华大学出版社,2005:100-101.

[3]蔡自兴,徐光佑.人工智能及其应用[m].北京:清华大学出版社,2003.

神经网络前向传播算法篇6

本文主要介绍的模型和算法都是数据挖掘中最常见的和应用最广泛的,在计算机科学、统计数学、和人工智能领域的科学家们已经在研究和改进这些算法方面作了大量的工作。

【关键词】

数据挖掘;算法;神经网络

1神经网络的应用

神经网络近来越来越受到人们的关注,因为它为解决大复杂度问题提供了一种相对来说比较有效的简单方法。神经网络可以很容易的解决具有上百个参数的问题。神经网络常用于两类问题;分类和回归。

在结构上,可以把一个神经网络划分为输入层、输出层和隐含层(见图1)。输入层的每个节点对应一个个的预测变量。输出层的节点对应目标变量,可有多个。在输入层和输出层之间是隐含层,隐含层的层数和每层节点的个数决定了神经网络的复杂度。

图1一个神经元网络

除了输入层的节点,神经网络的每个节点都与很多它前面的节点(称为此节点的输入节点)连接在一起,每个连接对应一个权重wxy,此节点的值就是通过它所有输入节点的值与对应连接权重乘积的和作为一个函数的输入而得到,我们把这个函数称为活动函数或挤压函数。如图2中节点4输出到节点6的值可通过如下计算得到:

w14*节点1的值+w24*节点2的值

神经网络的每个节点都可表示成预测变量(节点1,2)的值或值的组合(节点3-6)。注意节点6的值已经不再是节点1,2的线性组合,因为数据在隐含层中传递时使用了活动函数。实际上如果没有活动函数的话,神经元网络就等价于一个线性回归函数,如果此活动函数是某种特定的非线性函数,那神经网络又等价于逻辑回归。

调整节点间连接的权重就是在建立(也称训练)神经网络时要做的工作。最早的也是最基本的权重调整方法是错误回馈法,现在较新的有变化坡度法、类牛顿法、Levenberg-marquardt法、和遗传算法等。

图2带权重wxy的神经元网络

决定神经网络拓扑结构(或体系结构)的是隐含层及其所含节点的个数,以及节点之间的连接方式。要从头开始设计一个神经网络,必须要决定隐含层和节点的数目,活动函数的形式,以及对权重做那些限制等。

2传播式神经网络

在诸多类型的神经网络中,最常用的是前向传播式神经网络,也就是我们前面图示中所描绘的那种。我们下面详细讨论一下,为讨论方便假定只含有一层隐含节点。

可以认为错误回馈式训练法是变化坡度法的简化,其过程如下:

前向传播:数据从输入到输出的过程是一个从前向后的传播过程,后一节点的值通过它前面相连的节点传过来,然后把值按照各个连接权重的大小加权输入活动函数再得到新的值,进一步传播到下一个节点。

回馈:当节点的输出值与我们预期的值不同,也就是发生错误时,神经网络就要“学习”(从错误中学习)。我们可以把节点间连接的权重看成后一节点对前一节点的“信任”程度。学习的方法是采用惩罚的方法,过程如下:如果一节点输出发生错误,那么他看他的错

误是受哪个(些)输入节点的影响而造成的,是不是他最信任的节点(权重最高的节点)陷害了他(使他出错),如果是则要降低对他的信任值(降低权重),惩罚他们,同时升高那些做出正确建议节点的信任值。对那些收到惩罚的节点来说,他也需要用同样的方法来进一步惩罚它前面的节点。就这样把惩罚一步步向前传播直到输入节点为止。

对训练集中的每一条记录都要重复这个步骤,用前向传播得到输出值,如果发生错误,则用回馈法进行学习。当把训练集中的每一条记录都运行过一遍之后,我们称完成一个训练周期。要完成神经网络的训练可能需要很多个训练周期,经常是几百个。训练完成之后得到的神经网络就是在通过训练集发现的模型,描述了训练集中响应变量受预测变量影响的变化规律。

由于神经网络隐含层中的可变参数太多,如果训练时间足够长的话,神经网络很可能把训练集的所有细节信息都“记”下来,而不是建立一个忽略细节只具有规律性的模型,我们称这种情况为训练过度。显然这种“模型”对训练集会有很高的准确率,而一旦离开训练集应用到其他数据,很可能准确度急剧下降。为了防止这种训练过度的情况,我们必须知道在什么时候要停止训练。

图3中的曲线可以帮我们理解为什么利用测试集能防止训练过度的出现。在图中可以看到训练集和测试集的错误率在一开始都随着训练周期的增加不断降低,而测试集的错误率在达到一个谷底后反而上升,我们认为这个开始上升的时刻就是应该停止训练的时刻。

图3神经网络在训练周期

增加时准确度的变化情况

3神经网络的优点

神经元网络和统计方法在本质上有很多区别。神经网络的参数可以比统计方法多很多。如图1中就有13个参数(9个权重和4个限制条件)。由于参数如此之多,参数通过各种各样的组合方式来影响输出结果,以至于很难对一个神经网络表示的模型做出直观的解释。实际上神经网络也正是当做“黑盒”来用的,不用去管“黑盒”里面是什么,只管用就行了。在大部分情况下,这种限制条件是可以接受的。比如银行可能需要一个笔记识别软件,但他没必要知道为什么这些线条组合在一起就是一个人的签名,而另外一个相似的则不是。在很多复杂度很高的问题如化学试验、机器人、金融市场的模拟、和语言图像的识别等领域神经网络都取得了很好的效果。

4在使用神经网络时有几点需要注意

第一,神经网络很难解释,目前还没有能对神经网络做出显而易见的解释的方法学。

第二,神经网络会学习过度,在训练神经网络时一定要恰当的使用一些能严格衡量神经网络的方法,如前面提到的测试集方法和交叉验证法等。这主要是由于神经网络太灵活、可变参数太多,如果给足够的时间,他几乎可以记住任何事情。

第三,除非问题非常简单,训练一个神经网络可能需要相当可观的时间才能完成。当然,一旦神经网络建立好了,在用它做预测时运行还是很快的。

第四,建立神经网络需要做的数据准备工作量很大。一个很有误导性的就是不管用什么数据神经网络都能很好的工作并做出准确的预测。这是不确切的,要想得到准确度高的模型必须认真的进行数据清洗、整理、转换、选择等工作,对任何数据挖掘技术都是这样,神经网络尤其注重这一点。

【参考文献】

熊熊,汪德馨,宋轶民.利用模糊神经网络进行模糊数据挖掘的一种算法[J].系统工程学报,2000,3(1):32-37.

神经网络前向传播算法篇7

关键词:模糊神经网络;短期负荷预测;Bp算法

algorithm

中图分类号:tn711文献标识码:a文章编号:

1引言

短期负荷预测是电力系统管理现代化的重要内容之一,是对发电、输电和电能分配等合理安排的必要前提,对提高电力系统的经济效益和社会效益,保障电力系统的安全经济运行与国民经济的发展具有非常重要的影响。因此,寻求有效的负荷预报方法,提高预测结果的准确度具有重要意义。

本文针对延边电网短期负荷预测问题,考虑到气象因素对负荷的影响,提出了一种具备模糊数据处理能力的模糊理论与擅长拟合非线性映射的神经网络方法结合起来的短期负荷预测方法,首先根据评价函数选取相似日学习样本,然后利用隶属函数对影响负荷的特征因素向量的分量进行模糊处理,采用反向传播算法,对24点每点建立一个预测模型,提高了学习效能。

2模糊理论与人工神经网络方法简介

2.1模糊集合论的概念

客观事物的差异在中介过渡时所呈现的亦此亦彼的现象称为模糊性,它体现了事物变化的连续过程。模糊集合论使用隶属度来描述中介过渡,是以精确的数学语言对模糊性的一种表述。

设论域u={x},u到闭区间〔0,1〕的任一映射ua(x)∶u〔0,1〕,xua(x)确定了u的一个模糊子集,简称模糊集,记作a,该映射称为a的隶属函数。ua(x)的大小反映了x对模糊集a的隶属程度,简称为隶属度。实数集合上常用的隶属函数为F分布,主要有矩形分布,梯形分布,抛物形分布等,在实际应用中可根据对象特点加以选择。

2.2人工神经网络和反向传播算法的原理

神经网络是由处理单元组成的一种并行、分布式信息处理结构,处理单元之间由单向信道相互连接。人工神经元是神经网络的基本计算单元,模拟了人脑中神经元的基本特征,一般是多输入/单输出的非线性单元,可以有一定的内部状态和阈值。

反向传播(errorBackpropagation-Bp)算法是多层感知器的一种有效学习算法,它的模型为前向多层网络,如图1所示。

网络不仅有输入层节点、输出层节点,而且有隐含层节点,经过作用函数后,再把隐节点的输出信息传播到输出节点,最后给出结果。节点的作用函数通常选取s型函数,如这个算法的学习过程由正向传播和反向传播组成。在正向传播过程中,输入信号从输入层经隐含层逐层处理,并传向输出层,每一层神经元的状态只影响下一层神经元的状态。如果在输出层不能得到期望的输出,则转向反向传播,将误差信号沿原来的连接通道返回,通过修改各层神经元的权值,使得误差信号最小。

Bp算法可描述为:

a.权值和阈值初始化:随机地给全部权值和神经元的阈值赋以较小的初始值;

b.给定输入xk和目标输出yk;

其中为第l层第j个神经元到第l+1层的第i个神经元的权系数,η为增益项,δ(l)ik为第l层i节点的k模式的误差项,且有

若i为输出节点,则

e.达到误差精度要求则输出结果,否则回到3。

3预测方法

3.1Bp网络学习样本的选择

根据差异评价函数选择一批比较相似的负荷日,选择方法如下:

a.首先将影响因素向量的各分量数值化,这些因素包括日类型,工作日取1,双休日取2;光照,晴天取1,少云取2,多云取3,阴天取4,下雨取5;雨量,无雨取0,小雨取1,中雨取2,大雨取3,暴雨取4;最高温度、最低温度、平均温度等可取实际值。

b.建立评价函数

其中是α-β的范数,α为已知日的影响因素向量,β为预测日的影响因素向量(预测值),δ为设定的偏离值,要根据不同地区的实际情况由经验决定。凡是满足该评价函数的已知日均可加入学习样本。

3.2预测方法

为了提高Bp网络的学习速度和预测精度,对网络输出的实际负荷值进行规一化处理,同时使用隶属度函数对输入网络的影响因素向量进行模糊化处理,使得输入向量的不同分量如工作日、光照、雨量、温度等都转换为模糊量。

日类型的隶属度函数采用半矩形分布,形式如下。

对工作日的隶属度函数为:

温度的隶属度函数分别如下。

对低温的隶属度函数采用偏小型梯形分布:

对中温的隶属度函数采用中间型梯形分布:

对高温的隶属度函数采用偏大型梯形分布:

将最高温度th代入以上3个公式,可分别求出对于低温、中温、高温3个状态的隶属度。对于最低温度t1、平均温度tα,可采用同样方法求出它们的3个状态隶属度。

影响因素向量的其它分量如光照、雨量等的隶属度函数与温度相似,根据当地实际情况选择建立相应的分布函数,从而求出光照的5个状态隶属度以及雨量的5个状态隶属度。

另外,为了降低求解规模,对1d的24点负荷每点建立1个预测模型,第i点的输入输出函数为:

其中Lji是指第j个学习样本第i点负荷的实际值,Ljimin是学习样本中第i点负荷的最小值,Ljimax是学习样本中第i点负荷的最大值,经过规一化处理后,

fi是指第i点的输入输出函数,α′j1,…α′jl是第j个样本影响因素的隶属度向量,包括2个代表日类型的隶属度,3个代表最高温度的隶属度,3个代表最低温度的隶属度,3个代表平均温度的隶属度,5个代表光照的隶属度,5个代表雨量的隶属度。当学习完成后,将预测日当天影响因素的隶属度向量代入(10)式,则可得第i点的负荷预测值。

3.3一些注意事项

a.伪数据的处理

因为神经网络所用的负荷数据来自电力部门的SCaDa系统,由于各种原因会造成一定数量的异常数据。考虑到负荷前后小时的自然变化,如果出现超常规值,必须将其剔除,代之以正常比例范围内的估计值。

b.待选的相似日范围

因为随着时间的推移,系统负荷结构会发生缓慢的变化,当已知日和预测日相隔较远时,即使它们的天气情况等因素很相似,预测精度也不会高,因而取前3个星期的已知日作为待选范围,同时还可以缩短程序选取样本所花费的时间。

4计算实例分析与结论

4.1实例计算

对延边电网2012年5月5日24点的负荷进行预测,所得结果如表一。

表一:

预测的平均绝对百分误差为1.77%,最大预测误差为3.1%,最小误差为0.8%,误差超过3%的预测点有2个,小于2%的点有15个,预测效果良好。

4.2结论

准确进行短期负荷预测是电力行业所企盼的,本人提出一种模糊神经网络预测方法,利用模糊技术和神经网络各自的特长,充分发挥了ann处理非线性问题的能力,具有训练速度快,学习精度高,数值稳定等优点,算例也表明这是一种行之有效的短期日负荷预测方法。

参考文献

【1】刘晨晖,“电力系统负荷预报理论与方法”哈尔滨工业大学出版社1987

神经网络前向传播算法篇8

关键词:人工神经网络反向传播算法故障诊断

1引言

随着经济的发展,空调系统得到了越来越广泛的应用,空调设备已成为重要的生活必备品之一。这就要求空调系统可靠性高且功能齐全,而且在故障诊断维修服务方面达到一定的水平。国内目前的大部分空调系统中无故障诊断系统,当空调系统出现故障后,维保人员往往不能及时、准确地了解系统出现故障的原因及相关信息,空调系统无法得到及时修复,这种情况急需得到改善。

2关于故障诊断技术

故障诊断FD(faultdiagnosis)是一种了解和掌握设备在使用过程中的技术,确定其整体或局部是否正常,早期发现故障及其原因并能预报故障发展趋势的技术。在诊断过程中,必须利用被诊断对象表现出来的各种有用信息,经过适当地处理和分析,做出正确的诊断结论。在制冷暖通空调领域,1987年在彦启森教授的建议下,才开始了故障诊断专家系统在制冷暖通空调领域的研究应用[1]。

3人工神经网络用于空调系统故障诊断的基本原理

人工神经网络(artificialneuralnetwork.简称ann)正是在人类对其大脑神经网络认识理解的基础上人工构造的能够实现某种功能的神经网络。它是理论化的人脑神经网络的数学模型,是基于模仿大脑神经网络结构和功能而建立的一种信息处理系统。它实际上是由大量简单元件相互连接而成的复杂网络,具有高度的非线性,能够进行复杂的逻辑操作和非线性关系实现的系统。

典型的神经网络结构如图1所示。

在众多的人工神经网络模型中,最常用的是Bp(Backpropagation)模型,即利用误差反向传播算法求解的多层前向神经网络模型[2]。Bp网络在故障诊断、模式识别、图像识别、管理系统等方面都得到了广泛的应用。本文讨论利用神经网络中的Bp模型进行空调系统的故障诊断。

首先需要进行知识的获取。由专家提供关于各种空调系统故障现象(征兆集)及相应的故障原因(故障集)实例作为学习样本。将数据分为两部分,一部分用于训练网络,另一部分用于测试。将训练网络的数据按一定顺序编码,分别赋给网络输入、输出节点,通过神经网络学习算法对样本进行学习,经过网络内部自适应算法不断修正权值,直到达到所要求的学习精度为止。此时在大量神经元之间联结权值上就分布着专家知识和经验。训练完毕后,再将测试网络的数据从初始状态出发,向前推理,将显示出的故障结果与实际的测试数据结果相比较,如果误差很小,说明网络的权值建立正确;如果误差较大,说明网络的权值建立有误,需要重新进行网络的训练。

将训练样本训练完毕后,即可进行空调系统的故障诊断。只要实际输入模式接近于某一个训练时的学习样本的输入模式,则可产生出接近学习样本的输出结果,也就是所谓的自联想功能。同时,由于网络计算上的大量并行性,当机器运行状况改变,出现网络学习未考虑的情况时,系统亦能给出正确分类结果。同时将新数据并入网络,实现系统的自适应。一般来说,学习的故障实例样本越多,诊断结果的准确率越高。

4Bp学习算法

Bp算法因其简单、易行、计算量小、并行性强等优点,是目前神经网络训练采用最多也是最成熟的训练算法之一。Bp算法的实质是求解误差函数的最小值问题,由于它采用非线性规划中的梯度下降法(GradientDescent),按误差函数的负梯度方向修正权值[3]。其主要思路是如果求出训练网络的指标函数误差:

一般的Bp算法称为标准误差逆传播算法,也就是对应每一次输入都校正一次权值。这种算法不是全局误差意义上的梯度下降计算。对各个神经元的输出求偏导数,那么就可以算出误差对所有连接权值的偏导数,从而可以利用梯度下降法来修改各个连接权值。真正的全局误差意义上的梯度下降算法是在全部训练模式都学习完后才校正连接权和阈值。其计算流程如图2所示:

5故障诊断实例5.1空调系统故障诊断的Bp网络建立

空调系统故障模式及故障机制分析[4]如表1所示

表1空调系统故障模式及故障机制分析表示

符号

表示

符号

房间温度均偏高

1.冷冻机产冷量不足

2.喷水堵塞

3.通过空气处理设备的风量过大,热交换不良

4.回风量大于送风量

5.送风量不足(可能空气过滤气堵塞)

6.表冷器结霜,造成堵塞

相对湿度均偏低

7.室外空气未经加湿处理

系统实测风量大于设计风量

8.系统的实际阻力小于设计阻力

9.设计时选用风机容量偏大

房间气流速度超过允许流速

10.送风口速度过大

神经网络前向传播算法篇9

关键词:火灾探测模糊神经网络智能matlab

根据燃烧对象,火灾分为a,B,C,D四种。a类火灾为固体可燃物引发的火灾,亦是最常见的燃烧对象;B类火灾为液体可燃物火灾;C类火灾为气体可燃物火灾;D类火灾为可燃金属火灾。火灾发生后蔓延速度极快,燃烧产生大量Co2,Co1等大量气体及烟雾,并伴随光、热,损失将不可估计。对待火灾,我们应采取“防消结合,预防为主”。火灾探测技术的应用便担任着前锋的作用,有效的提高探测器的灵敏度成为一个重大课题。本为将采用智能型报警系统,做早期发现和通报火灾,研究模糊神经网络的应用。

1.火灾探测系统

探测器是自定报警系统中的最重要部分。随着火灾的发生,火灾初期可燃物燃烧产生大量烟雾(S)和Co2,Co1等大量气体(G),火灾达到全火焰时温度(t)急剧上升,并伴随着光(L)和热(H)。因此在图书馆设感温探测器,感烟探测器,气体探测器及感光探测器。由于感烟探测器动作较早,可探测到70%以上的火灾,因此使用较为普遍。

2.模糊神经网络的结构设计

2.1模糊神经网络的应用

模糊神经网络(Fuzzyneuralnetwork,简称Fnn)是全部或部分采用模糊神经元所构成的一种可处理模糊信息的神经网络系统,也是现代热门研究是技术,是模糊控制与神经网络控制的有机结合,博采众长,以长补拙[1]。其特点是利用模糊逻辑较强的结构性知识表达能力和神经网络强大的自学能力与定量数据的直接处理能力,在温度、烟雾、气体、光等信号处理上,提高火灾探测的准确度、加快火情识别速度,使火灾报警信号处理更具逻辑性、可靠性,直接指导消防控制室的操作和应用,在火灾报警系统中发挥良好的作用。

2.2模糊控制规则设计[2-3]

模糊控制规则可根据火灾发生可能性大小分为不可能即np,可能性小即pS,一定发生即pB三种。隐层的温度隶属度生成函数采用三角函数:

(x-a)/(b-a)a

μ(x)=

(x-c)/(b-c)b

图1隶属度函数

2.3神经网络模型

本文给出一个3层前馈网络结构,如图2所示。设输入信号为s:烟雾;g:Co2气体;t:温度;l:光;输入信号为第一层,含3个神经元;第二层为模糊层,设为9个节点,第三层为输出层,有3个节点,表示无火、火小和火灾发生。

图2Bp前馈网络模型

3.算法及matlab网络仿真

3.1算法

本文采用反向传播算法,学习训练过程由正向信号传输和反向误差传播组成。当正向传输的实际输出与期望输出不符合时,转入误差反向传播。

输出误差逐层反向传播到隐层再到输入层。误差分给各层所有节点单元,获得各层单元的误差信号,且将该信号作为修正各单元权值的根据。通过不断的调整权值,训练到误差符合要求为止。

因此可知,设输入向量为X;隐层输出向量为Y;输出层输出向量为o;期望输出向量为t;输出层至隐层的权值矩阵为V;隐层至输入层权值为w。隐层,输出层的转换函数分别采用双曲正切S型函数tansig和S型对数函数logsig。

定义网络的输出误差函数为均方误差函数

e=1/2(t-o)2.

将输出误差函数展开到隐层,在展开到输入层,并通过调节权值和阈值改变误差e,从而减小误差。即:

对于输出层,设Y,δ0为输出层的误差信号,则输出层的权值调整V=η(δ0Yt)t;

对于输入层,设X,δy为隐含层的误差信号,则隐含层的权值调整为w=η(δyXt)t,η为学习率,在0~1间取值,这里取值0.1。

具体算法步骤:①初始化,对所有权值赋予任意小量,并对阈值设定初值;②给定训练数据集,即提供向量X和期望输出Y;③计算实际输出y;④调整权值,按误差方向传播方向,从输出接点返回到隐层修正权值;⑤返回第②步重复计算,直至误差满足要求为止[4]。

3.2matlab网络仿真

模糊规则层设9个节点,输出层有3个节点。用新浪天气给出的郑州市2012年8月1日到8月4日的天气,归一化处理:温度/100℃,加上天气特征值(0代表晴天,0.5代表阴天,1代表雨天),有4组数据。并将8月4日天气数据作为导师信号。打开matlab的编辑,输入newff()创建前向Bp网络,使用神经元上的传递函数tansig()及tansig(),建立一个训练函数使用梯度下降法的训练函数trainlm()的Bp网络[5]。误差训练下降曲线如图3:

4.结语

在1000次训练后,输出的均方误差非常小,mSe=1.04678e-013/0,此时的网络输出应该是非常精确的。这说明将模糊神经网络理论应用在火灾报警系统中,有效地提高系统精度和减少误报率,并且充分发挥了它的自学习、自适应能力,使系统的灵敏度提高,同时又提高了系统的智能化程度。

参考文献:

神经网络前向传播算法篇10

关键词:神经网络心理障碍专家系统

中图分类号:G64文献标识码:a文章编号:1007-9416(2012)02-0174-02

人工神经网络技术的兴起为知识获取开辟了一条新途径。它通过模拟人脑的神经网络结构形式,建立各种网络模型,进行信息处理达到解决问题的目的。如Bp网络模型就能通过大量的训练例子,经过学习获取知识[1]。

目前高校在大学生心理健康教育领域只是通过学校的心理辅导老师或医院的心理学专家给予咨询指导,但是由于经验水平不一,层次不同,达不到预期的效果。而利用神经网络专家系统能够进行复杂的模式识别和完成规则复杂、无法预先确定化的任务。文章试图借助神经网络专家系统全面综合国内外心理学专家的经验,全方面检测大学生心理状况并及时给出诊断方案。

1、人工神经网络的基本思想

人工神经网络(artificialneuralnetworks,简记作ann),是对人类大脑系统的一阶特性的一种描述[1]。简单地讲,它是一个数学模型,可以用电子线路来实现,也可以用计算机程序来模拟,是人工智能研究的一种方法[1]。人工神经网络的功能特性由其连接的拓扑结构和突触连接强度,即连接权值决定。神经网络全体连接权值的可用一个矩阵w表示,它的整体反映了神经网络对于所解决问题的知识存储。神经网络能够通过对样本的学习训练,不断改变网络的连接权值以及拓扑结构以使网络的输出不断地接近期望的输出。这一过程称为神经网络的学习或训练,其本质是可变权值的动态调整。神经网络的学习方式是决定神经网络信息处理性能的第三大要素,因此有关学习的研究在神经网络研究中具有重要地位。改变权值的规则称为学习规则或学习算法,在单个处理单元集体进行权值调整时,网络就呈现出“智能”特性,其中有意义的信息就分布地存储在调节后的权值矩阵中。

2、Bp神经网络模型的原理和结构

Bp(Backpropagation)神经网络是由Rumelhart和mcCelland为首的科学家小组提出,是一种按误差逆传播算法训练的多层前馈网络,是目前应用最广泛的神经网络模型之一[3]。Bp网络能学习和存贮大量的输入-输出模式映射关系,而无需事前揭示描述这种映射关系的数学方程。它的学习规则是使用最速下降法,通过反向传播来不断调整网络的权值和阈值,使网络的误差平方和最小。Bp神经网络模型拓扑结构包括输入层(input)、隐层(hidelayer)和输出层(outputlayer)(如图1所示)。

Fig1BpneuralnetworkStructure

Bp网络的原理是把一个输入矢量经过隐层变换成输出矢量,实现从输入空间到输出空间的映射。由权重实现正向映射,利用当前权重作用下网络的输出与希望实现的映射要求的期望输出进行比较来学习的。但要深入了解我们就先要了解一下Bp网络学习算法――反传学习算法(即Bp算法)。对于输入信号,要先向前传播到隐层节点,经作用函数后,再把隐节点的输出信号传播到输出节点,最后给出输出结果。节点的作用的激励函数通常选取S型函数,如,式中Q为调整激励函数形式的Sigmoid参数。该算法的学习过程由正向传播和反向传播组成。正向传播时,传播方向为输入层隐层输出层,每层神经元的状态只影响下一层神经元。若在输出层得不到期望的输出,则转向误差信号的反向传播流程,将误差信号沿原来的连接通道返回,通过修改各层神经元的权值,使得误差信号最小。通过这两个过程的交替进行,在权向量空间执行误差函数梯度下降策略,动态迭代搜索一组权向量,使网络误差函数达到最小值,从而完成信息提取和记忆过程。Bp模型把一组样本的i/o问题变为一个非线性优化问题,它使用的是优化中最普通的梯度下降法。

3、大学生心理障碍诊断专家系统

有关研究和统计结果表明,大学生在心理上的确存在着一系列的不良反应和适应障碍,有的甚至到了极为严重的程度,因心理疾病而休学、退学甚至伤人、自杀的比率近几年呈上升趋势。心理疾病主要是由心理因素造成的。对此,我们设计此诊断专家系统,使大学生可以及时了解自己心理健康状态,为大学生心理健康成长提供有力帮助[4]。

鉴于篇幅原因,以从五个特征识别大学生常见心理疾病为例,说明模型服务的开发过程。输入的五个特征包括:行为举止、情绪状态、饮食睡眠、性格特征、躯体疾病,选择大学生常见的四种心理疾病作为训练,构造心理疾病识别神经网络。在实际中的心理疾病的特征要复杂庞大的多,且各个特征间也多有重叠交互,在此仅提供选取五个鲜明共性,构造神经网络识别训练集,如表1所示。

该样本设计成如图2所示的神经网络。网络输入层的神经元个数为5个,输出层的神经元个数为4个,隐层的神经元个数为5个。

Fig.2neuralnetworkofpsychologicalbarrierdistinguishing

进行神经元网络计算,需要把文字概念转换为数值。为了便于数据的判别,用六维向量值表示各个特征,其中前三位表示类别,后三位表示特征,则共可以容纳26=64种特征。表1的内容经过文字到数值的转换后的结果见表2。

经过改进的Bp网络后加入的动量项初始值为0.6,网络学习速率为0.43。网络训练的循环次数规定为5000,训练误差期望为0.000001。

通过该神经网络模型来完成大学生心理障碍专家诊断系统。对该神经网络进行训练后,输入四组数据见表3:

下表为量化后的实例表4:

表4量化后的数据表

table4afterthequantitativedatatable

运行客户端程序,得到结果报表。所得到报表包含以下内容:

(1)完成文字到数值转换后的输入参数;

(2)神经网络的计算输出值;

(3)根据输出数值得到的结论。得到以下推理结果如图3所示:

Fig.3ResultofcollegestudentpsychologicalbarrierexpertSystem

从计算结果中可以看出神经网络的容错效果很好,对第二例,对焦虑症缺省缺乏自信、孤独内向条件时,输出结果是焦虑症(0.9122);对第三例,输入神经衰弱和焦虑症的共同信息时,神经网络输出既靠近神经衰弱(0.8761),又靠近焦虑症(0.8429),输出结论:该症状是介于神经衰弱症和焦虑症的中间种类,不能被明确识别,神经网络需要进一步训练、学习。

4、结语

神经网络来源于研究者对真实神经元网络运算能力的模拟,在发展过程中,逐渐显示出学习、记忆、联想等强大的功能,因此神经网络被广泛的应用到很多领域。通过对神经网络在大学生心理障碍诊断中的应用研究,实现了简单的模式识别,达到了预期诊断效果。目前该系统只是对生物神经系统的某种特定性能的简单模拟,如果进行足够的训练和学习,理论上该系统能够进行复杂的模式识别和完成规则复杂、无法预先确定化的任务。

参考文献

[1]韩力群.人工神经网络教程[m].北京:北京邮电大学出版社,2006:23-27.

[2]冯定.神经网络专家系统[m].北京:科学出版社,2006:57-61.

[3]高隽.人工神经网络原理及仿真实例(第二版)[m].北京:机械工业出版社,2007:10-11.

[4]陈青萍.现代临床心理学[m].北京:中国社会科学出版社,2004:124-130.

[5]李维,张诗忠.心理病理卷(中文版)[m].上海:上海教育出版社,2004:74-76.