神经网络前向传播算法范文

时间:2023-10-30 17:30:39

导语:如何才能写好一篇神经网络前向传播算法,这就需要搜集整理更多的资料和文献,欢迎阅读由公务员之家整理的十篇范文,供你借鉴。

神经网络前向传播算法

篇1

【关键词】 图像识别技术 神经网络识别

模式识别研究的目的是用机器来模拟人的各种识别能力―比如说模拟人的视觉与听觉能力,因此图像识别的目的是对文字、图像、图片、景物等模式信息加以处理和识别,以解决计算机与外部环境直接通信这一问题。可以说,图像识别的研究目标是为机器配置视觉“器官”,让机器具有视觉能力,以便直接接受外界的各种视觉信息。

一、图像识别系统

一个图像识别系统可分为四个主要部分:被识图像、图像信息获取、图像预处理、图像特征提取、分类判决。

二、图像识别方法

图像识别的方法很多,可概括为统计(或决策理论)模式识别方法、句法(或结构)模式识别方法、模糊模式识别方法以及神经网络识别方法。重点介绍神经网络识别方法。

2.1神经网络识别方法

2.1.1人工神经网络的组成

人工神经网络(简称ANN)是由大量处理单元经广泛互连而组成的人工网络,用来模拟脑神经系统的结构和功能。而这些处理单元我们把它称作人工神经元。

2.1.2人工神经网络的输出

2.1.3人工神经网络的结构

人工神经网络中,各神经元的不同连接方式就构成了网络的不同连接模型。常见的连接模型有:前向网络、从输入层到输出层有反馈的网络、层内有互联的网络及互联网络。

2.1.4 学习算法

1)感知器模型及其算法

算法思想:首先把连接权和阈值初始化为较小的非零随机数,然后把有n个连接权值的输入送入网络中,经加权运算处理后,得到一个输出,如果输出与所期望的有较大的差别,就对连接权值参数按照某种算法进行自动调整,经过多次反复,直到所得到的输出与所期望的输出间的差别满足要求为止。

2)反向传播模型及其算法

反向传播模型也称B-P模型,是一种用于前向多层的反向传播学习算法。

算法思想是:B-P算法的学习目的是对网络的连接权值进行调整,使得调整后的网络对任一输入都能得到所期望的输出。学习过程包括正向传播和反向传播。正向传播用于对前向网络进行计算,即对某一输入信息,经过网络计算后求出它的输出结果;反向传播用于逐层传递误差,修改神经元之间的连接权值,使网络最终得到的输出能够达到期望的误差要求。

B-P算法的学习过程如下:

第一步:选择一组训练样例,每一个样例由输入信息和期望的输出结果两部分组成;第二步:从训练样例集中取出一样例,把输入信息输入到网络中;第三步:分别计算经神经元处理后的各层节点的输出;第四步:计算网络的实际输出和期望输出的误差;第五步:从输出层反向计算到第一个隐层,并按照某种原则(能使误差向减小方向发展),调整网络中各神经元的权值;第六步:对训练样例集中的每一个样例重复一到五的步骤,直到误差达到要求时为止。

3)Hopfield模型及其学习算法

它是一种反馈型的神经网络,在反馈网络中,网络的输出要反复地作为输入再送入网络中,使得网络具有了动态性,因此网络的状态在不断的改变之中。

算法思想是:

(a) 设置互连权值

其中xis是s类样例的第i个分量,它可以为1或0,样例类别数为m,节点数为n。

(b) 未知类别样本初始化。 Yi(0)=Xi 0≤i≤n-1

其中Yi(t)为节点I在t时刻的输出,当t=0时,Yi(0)就是节点I的初始值,Xi为输入样本的第I个分量。

(c) 迭代直到收敛

篇2

关键词:神经网络;BP算法;网络模型

中图分类号:TP183

1 BP网络的定义

误差反向传播算法(Error Back Propagation,EBP,简称BP)在于利用输出层的误差来估计输出层的直接前导层的误差,再用这个误差估计更前一层的误差。如此下去,就获得了所有其他各层的误差估计。这样就形成了将输出表现出的误差沿着与输入信号传送相反的方向逐级向网络的输入端传递的过程。因此,人们就又将此算法称为向后传播算法,简称BP算法。使用BP算法进行学习的多层前向网络称为BP网络。虽然这种误差估计本身的精度会随着误差本身的“向后传播”而不断降低,但它还是给多层网络的训练提供了十分有效的办法。所以,多年来该算法受到了广泛的关注。BP网络应用广泛,学习采用最小均方差,由输入层、若干隐层和输出层构成,它是一种典型的前馈网络。

图1 三层神经网络模型

常用的BP网络是三层前向网络(如图1所示),即:输入层、中间层和输出层。它的学习分为以下几个过程:由每个神经元网络的输入节点经中间层向输出层的一个正向传播,若网络的实际输出与期望输出有误差,将这个误差经输出层到中间层再传给输入层调整权值再学习的一个逆传播。通过不断的学习,最后的输出要在误差范围之内。

2 BP算法的基本思想

BP算法的基本思想归结如下:BP网络对于输入信号,通过输入层传播到隐含层,经过激励函数的作用,再将隐含层的输出作为输出层的输入传播到输出层,最后输出结果。对于每一个输入样本,神经网络的实际输出与目标输出不可能完全一样,两者之间必然会有一定的误差,定义均方差为:

3 BP算法的学习过程及两种改进算法的思想

学习是人工神经网络最重要的一个特点,学习的目的在于能对任何一个样本的输入通过调整相关参数输出期望的结果。学习的方法可以从以下几步阐述:第一步,向神经网络模型输入一系列样本,每一个样本都有包含输入和期待的输出两部分,把采集到的样本向神经网络输入后,先由第一个隐层进行相关计算然后逐层向下一层传递,直到传至输出层。第二步,将输出的结果与期望输出的结果做比较,如果误差不能满足要求,就按原来的路径逐层返回,神经网络的自学习能力这时候就要发挥作用了,它要根据误差的结果对权值、阀值做适当修改,再从第一个隐层开始重复的计算传递,直到输出的结果满足要求。

本文论述的算法都是以三层网络结构出发进行讨论的。

BP算法的改进主要集中在两个方面:其一是避免陷入局部极小值,一旦陷入要想办法逃出;其二是改进迭代算法,加快收敛速度,较常用的方法是共轭梯度法、Levenberg-Marquardt法等。

BP网络学习过程收敛速度慢的因素有两方面:(1)学习率s和势态因子α在训练中值不变。BP网络实际就是优化计算中的梯度下降法,利用输出的误差作为对权值、阀值调整的参考,目的是确保最终的输出误差最小。考虑到算法的收敛性,学习率s必须小于某一固定上界。BP网络中的学习率s和惯性因子α在训练过程中为一固定值。这一限制决定了BP网络的收敛速度不可能很快。(2)学习过程中出现“假饱和”。实际输出和期望输出的误差产生以后,通过调整网络训练的权值,不断学习后这种误差应该越来越小,如果多次学习后误差没有减小,经过一段时间后,误差才下降,称这种现象为学习过程中的“假饱和”。在BP网络中,初始权值、阈值一般是在一个范围内人为确定的。若作为网络输入的神经元的个数与阈值差别较大,考虑到神经元具有饱和非线性特征,那么神经元的实际输出只有两种结果:极大值或极小值。当输出层接收到的神经元的总输入进入到饱和区,且实际输出与目标输出相互矛盾,就是“假饱和”。这时对权值作大的修改才行,而实际上,由于此时导数值趋近于零,导数权值修改量很小。导致学习速度下降。对中间层的神经元也是一样。学习一旦进入“假饱和”状态,很难退出这种“假饱和”状态,可能需要一定的时间,有时可能会陷入僵局,要重新开始网络训练。

传统的BP算法主要的优点是简单、易于实现。但是BP算法有两个不可克服的缺陷:(1)BP算法很可能陷入局部极小值;(2)收敛速度慢。

像热导气体分析仪这类的仪器经常会用于一些恶劣而又危险的环境中,且要求其测量周期短暂,所以系统需要较强的抗震荡学习网络。基于热导传感器测量的主要因素,提出一种新的BP网络学习算法,对学习因子进行模糊自适应调节,这样系统能够快速、准确地将干扰因素与热导传感器的原始测量值进行拟合,有效减小测量误差。这种模糊自适应算法思想一样可用于发电机匝间短路故障的在线检测。

4 结束语

通过以上对BP算法的学习与分析总结如下:(1)传统的BP算法采用最小均方差的学习方式,是使用最广泛的网络,可用于语言综合、语言识别、自适应控制等,它是一种典型的前馈网络,优点是简单、易于实现,缺点是可能陷入局部极小值、收敛速度慢。(2)BP算法的改进主要集中在两个方面:其一是避免陷入局部极小值,一旦陷入要想办法逃出;其二是改进迭代算法,加快收敛速度。(3)多层前馈神经网络学习过程中,对学习因子进行模糊自适应调节,自动调节步长、势态因子、可以明显地提高收敛速度和误差精度。在一些特殊领域的应用取得较好的效果。从目前已有的研究成果来看,设计的模糊自适应算法有良好的研究方向。

参考文献:

[1]黄丽.BP神经网络算法改进及应用研究[D].重庆师范大学图书馆,2007.

[2]刘彩红.BP神经网络学习算法的研究[D].重庆师范大学图书馆,2006.

[3]王建梅,覃文忠.基于L-M算法的BP神经网络分类器[J].武汉大学学报,2005(10):928-931.

篇3

关键词:Matlab;BP神经网络;预测

中图分类号:TP183文献标识码:A文章编号:1009-3044(2008)19-30124-02

Based on Matlab BP Neural Network Application

YANG Bao-hua

(Institute of Information and Computer, Anhui Agricultural University, Hefei 230036, China)

Abstract: BP learning algorithm is a one-way transmission of multi-layer to the network, Matlab toolbox is based on the theory of artificial neural network, based on Matlab toolbox, with watermelon-heavy forecasts, BP neural network forecast the feasibility of re-watermelon is verified, and fast convergence, small error, should be promoted in the forecast crop growth.

Key words: Matlab; BP Neural Networks; Forecast

1 引言

人工神经网络是人工构造的模拟人脑功能而构建的一种网络,BP神经网络是结构较简单、应用最广泛的一种模型,BP神经网络是Rumelhart等在1986年提出的。它是一种单向传播的多层前向网络,一般具有三层或三层以上的神经网络,包括输入层、中间层(隐层)和输出层[1],其模型见图1所示。

图1 BP网络模型

Matlab中的神经网络工具箱是以人工神经网络理论为基础,利用Matlab语言构造出许多典型神经网络的传递函数、网络权值修正规则和网络训练方法。网络的设计者可根据自己的需要调用工具箱中有关神经网络的设计与训练的程序,免去了繁琐的编程过程。

红籽瓜(Red-seed Watermelon)种子即瓜子富含有蛋白质、脂肪、钙、磷及多种维生素,含油率达55%左右,营养颇为丰富,经过精细加工,味道鲜美,市场十分畅销[4]。为了提高瓜子的产量,需要关注很多因素,这些因素的改变会影响瓜子的产量,所以确定哪些因素能预测产量,如何预测是本文研究的内容。本文利用红籽西瓜的测量数据,以单果重,种子数,千粒重,种子重作为输入因子,仁重为输出因子,选择合适的隐层,构建影响红籽西瓜种仁重量的BP网络模型,运用Matlab软件进行预测。

2 BP神经网络设计的基本方法

Matlab的NNbox提供了建立神经网络的专用函数newff()[5]。用newff函数来确定网络层数、每层中的神经元数和传递函数,其语法为:

net=newff(PR,[S1,S2,…,SN],{TF1,TF2,…,TFN},BTF,BLF,PF)

式中:PR表示由每个输入向量的最大最小值构成的R×2矩阵;Si表示第i层网络的神经元个数;TF表示第i层网络的传递函数,缺省为tansig,可选用的传递函数有tansig,logsig或purelin;BTF表示字符串变量,为网络的训练函数名,可在如下函数中选择:traingd、traingdm、traingdx、trainbfg、trainlm等,缺省为trainlm;BLF表示字符串变量,为网络的学习函数名,缺省为learngdm;BF表示字符串变量,为网络的性能函数,缺省为均方差“mse”。

2.1 网络层数

BP网络可以包含不同的隐层,但理论上已经证明,在不限制隐层节点数的情况下,两层(只有一个隐层)的BP网络可以实现任意非线性映射。

2.2 输入层节点数

输入层起缓冲存储器的作用,它接受外部的输入数据,因此其节点数取决于输入矢量的维数。

2.3 输出层节点数

输出层节点数取决于两个方面,输出数据类型和表示该类型所需的数据大小。在设计输人层和输出层时,应该尽可能的减小系统规模,使系统的学习时间和复杂性减小。

2.4 隐层节点数

一个具有无限隐层节点的两层BP网络可以实现任意从输入到输出的非线性映射。但对于有限个输入模式到输出模式的映射,并不需要无限个隐层节点,这就涉及到如何选择隐层节点数的问题,至今为止,尚未找到一个很好的解析式,隐层节点数往往根据前人设计所得的经验和自己进行试验来确定。一般认为,隐层节点数与求解问题的要求、输入输出单元数多少都有直接的关系。另外,隐层节点数太多会导致学习时间过长;而隐层节点数太少,容错性差,识别未经学习的样本能力低,所以必须综合多方面的因素进行设计。

隐层节点数的初始值可先由以下两个公式中的其中之一来确定[2,3]。

1=■+a (1)

或 1=■(2)

式中,m、n分别为输入结点数目与输出结点数目,a为1~10之间的常数。

2.5 数据归一化

因为原始数据幅值大小不一,有时候还相差比较悬殊。如果直接投人使用,测量值大的波动就垄断了神经网络的学习过程,使其不能反映小的测量值的变化。所以,在网络训练之前,输人数据和目标矢量都要经过归一化处理。

根据公式可将数据“归一化”,即限定在[0,1]区间内。归一化公式为:

■ (3)

也可以使用归一化函数Premnmx,及反归一化函数Postmnmx。

3 BP学习算法及实例

3.1 BP学习算法

1) 初始化网络及学习参数;

2) 从训练样本集合中取一个样本,并作为输入向量送入网络;

3) 正向传播过程,对给定的输入样本,通过网络计算得到输出样本,并把得到的输出样本与期望的样本比较,如有误差超出限定范围,则执行第4步;否则返回第2步,输入下一个样本;

4) 反向传播过程,即从输出层反向计算到第一隐层,修正各神经元的连接权值,使用误差减小。

3.2 实例

为了提高瓜籽产量,需要关注很多因素,滤去相关度过低的因子,根据经验确定输入因子为单果重,种子数,千粒重,种子重,输出因子为仁重。现以表1所示的2000~2002年测量数据作为训练样本进行训练,对2003年的数据进行预测。输出层结点代表仁重量,神经网络的预测模型采用4-4-1,即输入层4个神经元,根据公式(2)计算隐层神经元数确定为4,1个输出神经元。设定最大的迭代次数为500次,系统全局误差小于0.001。传递函数为tansig,训练函数为trainlm。

根据经典的BP算法,采用Matlab编程,样本训练结果见图2,2003的数据作为预测样本,预测结果如下:

TRAINLM, Epoch 0/500, MSE 0.316381/0.001, Gradient 2.8461/1e-010

TRAINLM, Epoch 4/500, MSE 0.00056622/0.001, Gradient 0.0830661/1e-010

TRAINLM, Performance goal met.

SSE = 0.0102

y = 0.269 0.267 0.27 0.269 0.2679 0.2679

表1 红籽西瓜数量性状表

瓜籽仁重实际值为0.265,0.282,0.264,0.269,0.265,0.287,误差为0.0102,当样本较少时可以接受的误差范围内。并且收敛速度快。

图2训练函数为trainlm的训练结果

采用traingd函数进行训练,则5000次仍未达到要求的目标误差0.001,说明该函数训练的收敛速度很慢。见图3所示。所以训练函数的选择也非常关键。

图3 训练函数为traingd的训练结果

4 结论

用Matlab编编写的基于BP网络的仁重预测程序,计算结果表明,误差较小,预测值与实测值吻合较好,所建立的模型具有较好的实用性,说明单果重,种子数,千粒重,种子重的数据影响瓜子的产量,同时验证BP算法可以用于瓜仁产量的预测。

目前所进行的预测试验中数据的样本较少,且生长动态变化,今后拟建立一个动态预测系统,为红籽瓜品种培育、提高产量提供新的方法,值得在预测作物生长中推广。

参考文献:

[1] 飞思科技产品研发中心.神经网络理论与Matlab 7实现[M].北京:电子工业出版社.2006:100-105.

[2] 徐庐生.微机神经网络[M].北京:中国医药科技出版社,1995.

[3] 高大启.有教师的线性基本函数前向三层神经网络结构研究[J].计算机学报,1998,21(1):80-85.

[4] 钦州农业信息网:.

篇4

[关键词] 前馈神经网络 Levenberg-Marquardt算法 BP算法

前馈神经网络BP学习算法在理论上具有逼近任意非线性连续映射的能力,在非线性系统的建模及控制领域里有着广泛的应用。然而BP 算法存在一些不足, 主要是收敛速度很慢; 往往收敛于局部极小点; 数值稳定性差, 学习率、动量项系数和初始权值等参数难以调整,非线性神经网络学习算法Levenberg-Marquardt可以有效地克服BP算法所存在的这些缺陷。

一、前馈神经网络

前馈神经网络由输入层、隐层和输出层组成。令u=[u1,u2,Λ,um]T,y=[y1,y2,Λ,yn]T络的输入、输出向量, 令X=[x1,x2,Λ,xN]T为网络的权及阈值的全体所组成的向量。给定P组输入输出训练样本定义网络的误差指标函数为:

(1)

(2)

然后就可以按照各种学习算法开始对X进行训练, 得到最优Xopt, 使得

二、Levenberg-Marquardt神经网络算法

1.给定初始点X(0), 精度,σ,k=0。

2.对i=1,2,…,M求fi(X(k)),得向量

对i=1,2,…,M求得Jacobi矩阵

3.解线性方程组求出搜索梯度方向h(k)。

4.直线搜索,其中λk满足

5.若则得到解Xopt,转向7(停止计算); 否则转向6。

6.F(X(k+1))<F(X(k)),则令,k=k+1, 转向2; 否则=*ξ,转向3。

7.停止计算

在实际操作中,是一个试探性的参数,对于给定的,如果求得的h(k)能使误差函数Ep(X)降低,则被因子ξ除;若误差函数Ep(X)增加,则乘以因子ξ。在仿真中,选取初始值=0.01,ξ=10。在采用Levenberg-Marquardt算法时,为使收敛速度更快,需要增加学习率因子α,取α为0.4。Levenberg-Marquardt算法的计算复杂度为为网络权值数目,如果网络中权值的数目很大。则计算量和存储量都非常大。因此,当每次迭代效率显著提高时,其整体性能可以大为改善,特别是在精度要求高的时候。

三、结论

前馈神经网络中,BP 算法存在收敛速度很慢,收敛于局部极小点等缺陷,而Gauss-Newton的改进算法Levenberg-Marquardt算法能有效克服BP 算法的缺陷。

参考文献:

[1]徐嗣鑫 戴友元:前向神经网络的一种快速学习算法及其应用.控制与决策, 1993, 8(4): 284~ 288

篇5

关键词:神经网络;计算机;智能信息;应用

中图分类号:TP183

文献标识码:A

文章编号:16723198(2009)20028602

1神经网络的定义

一般情况下,人工神经元网络是作为信息处理单元来模仿大脑,执行特定的任务或完成感兴趣的功能。关于它的定义有很多种,而下面的HechtNielsen给出的神经网络定义最具有代表意义: 神经网络是一种并行的分布式信息处理结构,它通过称为连接的单向信号通路将一些处理单元互连而成。每一个处理单元都有一个单输出到所期望的连接。每一个处理单元传送相同的信号――处理单元输出信号。处理单元的输出信号可以是任一种所要求的数学类型。在每一个处理单元中执行的信息处理在它必须完全是局部的限制下可以被任意定义,即它必须只依赖于处理单元所接受的输入激励信号的当前值和处理单元本身所存储记忆的值。

2神经网络的基本属性

(1)非线性: 人脑的思维是非线性的,故人工神经网络模拟人的思维也应是非线性的。

(2)非局域性: 非局域性是人的神经系统的一个特性,人的整体行为是非局域性的最明显体现。神经网络以大量的神经元连接模拟人脑的非局域性,它的分布存储是非局域性的一种表现。

(3)非定常性: 神经网络是模拟人脑思维运动的动力学系统,它应按不同时刻的外界刺激对自己的功能进行修改,故而它是一个时变的系统。

(4)非凸性:神经网络的非凸性即是指它有多个极值,也即系统具有不只一个的较稳定的平衡状态。这种属性会使系统的演化多样化。

3神经网络模型的分类

(1)按照网络的结构区分,则有前向网络和反馈网络。

(2)按照学习方式区分,则有教师学习和无教师学习网络。

(3)按照网络性能区分,则有连续型和离散性网络,随机型和确定型网络。

(4)按照突触性质区分,则有一阶线性关联网络和高阶非线性关联网络。

(5)按对生物神经系统的层次模拟区分,则有神经元层次模型,组合式模型,网络层次模型,神经系统层次模型和智能型模型。

通常人们较多地考虑神经网络的互连结构。一段而言,神经网络有分层网络、层内连接的分层网络、反馈连接的分层网络、互连网络等4种互连结构。在人们提出的几十种神经网络模型中,人们较多用的是Hopfield网络、BP网络、Kohonen网络和AR双自适应共振理论网络。

Hopfield网络是最典型的反馈网络模型,它是目前人们研究得最多的模型之一。Hopfield网络是由相同的神经元构成的单层,并且不具学习功能的自联想网络。它需要对称连接。这个网络习以完成制约优化和联想记忆等功能。

BP网络是误差反向传播(Back Propagation)网络。它是一种多层前向网络,采用最小均方差学习方式。这是一种最广泛应用的网络。它可用于语言综合,识别和自适应控制等用途。BP网络需有教师训练。

Kohonen网络是典型的自组织神经网络,这种网络也称为自组织特征映射网络SOM。它的输入层是单层单维神经元;而输出层是二维的神经元,神经元之间存在以“墨西哥帽”形式进行侧向交互的作用。因而,在输出层中,神经元之间有近扬远抑的反馈特性,从而使Kohonen网络可以作为模式特征的检测器。

ART网络也是一种自组织网络模型。这是一种无教师学习网络。它能够较好地协调适应性,稳定性和复杂性的要求。在ART网络中,通常需要两个功能互补的子系统相互作用.这两个子系统称注意子系统和取向子系统。ART网络主要用于模式识别,它不足之处是在于对转换、失真和规模变化较敏感。

4误差反向传播的前馈网络(BP网络)

学习是神经网络一种最重要也最令人注目的特点。自从40年代Hebb提出的学习规则以来,人们相继提出了各种各样的学习算法。其中以在1986年Rumelhart等提出的误差反向传播法,即BP(error BackPropagation)法影响最为广泛。直到今天,BP算法仍然是最重要、应用最多的有效算法。

(1)神经网络的学习机理和机构:在神经网络中,对外部环境提供的模式样本进行学习训练,并能存储这种模式,则称为感知器,感知器采用有教师信号进行学习。感知器的学习是神经网络最典型的学习。这种学习系统分成三个部分:输入部,训练部和输出部。

输入部接收外来的输入样本X,由训练部进行网络的权值W调整,然后由输出部输出结果。在这个过程中,期望的输出信号可以作为教师信号输入,由该教师信号与实际输出进行比较,产生的误差去控制修改权值W。

(2)神经网络学习的梯度算法:从感知器的学习算法可知,学习的目的是在于修改网络中的权值,使到网络对于所输入的模式样本能正确分类。当学习结束时,也即神经网络能正确分类时,显然权值就反映了同类输人模式样本的共同特征。换句话讲,权值就是存储了的输人模式。由于权值是分散存在的,故神经网络自然而然就有分布存储的特点。

感知器学习算法相当简单,当函数不是线性可分时求不出结果,而且不能推广到一般前馈网络中,为此出现了另一种算法-梯度算法((LMS)。梯度算法把神经元的激发函数改为可微分函数,例如非对称Sigmoid函数为f (x) = l/(1 + e-x ),或对称Sigmoid函数f (x) = (1 - e-x )/ (1 + e-x ) 梯度法比原来感知器的学习算法进了一大步。

(3)反向传播学习的BP算法:感知机学习算法是一种单层网络的学习算法。在多层网络中,它只能改变最后权值。因此,感知机学习算法不能用于多层神经网络的学习。1986年,Rumelhart提出了反向传播学习算法,即BP算法。这种算法可以对网络中各层的权值进行修正,故适用于多层网络的学习。

它含有输人层、输出层以及处于输入输出层之间单层或多层的中间层,即隐含层。隐含层虽然和外界不连接,但是,它们的状态则影响输入输出之间的关系。这也是说,改变隐含层的权值,可以改变整个多层神经网络的性能。

篇6

关键词:BP网络 旋转触探仪 神经网络预测 训练函数

中图分类号:TP751 文献标识码:A 文章编号:1674-098X(2014)12(c)-0004-02

随着计算机技术的快速发展,人工神经网络在数学p物理p工程p岩土等行业得到广泛应用。Matlab软件提供了神经网络的工具箱,提供了多种神经网络库函数,为数值计算提供了计算平台。岩土工程问题的复杂多变性,在运用神经网络分析和预测时,其结果往往受各种因素的影响,关键还是网络结构的构建和训练函数的选取。因此,应该对网络的训练函数的选取进行深入研究。

该文在大量的旋转触探试验的基础上,结合土的物理性质指标含水量、干密度,土的强度参数粘聚力和内摩擦角,以及埋深情况,建立土的旋转触探模型,建立BP神经网络,采用不同的训练函数对网络进行训练。

1 BP神经网络

BP网络是一种单向传播的多层前向网络,具有三层或三层以上的神经网络,包括输入层、中间层(隐层)和输出层。在人工神经网络的实际应用中,BP网络广泛应用于函数逼近、模式识别/分类、数据压缩等,人工神经网络模型采用BP网络或它的变化形式,它是前馈网络的核心部分,体现了人工神经网络最精华的部分。BP算法的基本思想[1]是,学习过程由信号的正向传播与误差的反向传播两个过程组成。正向传播时,输入样本从输入层传入,经各隐层逐层处理后,传向输出层。若输出层的实际输出与期望的输出不符,则转入误差的反向传播阶段。误差反传是将输出误差以某种形式通过隐层向输入层逐层反传,并将误差分摊给各层的所有单元,从而获得各层单元的误差信号,此误差信号即作为修正各单元权值的依据。这种信号正向传播与误差反向传播的各层权值调整过程,是周而复始地进行的。权值不断调整的过程,也是网络的学习训练过程。此过程一直进行到网络输出的误差减少到可以接受的程度,或进行到预先设定的学习次数为止。

2 BP神经网络的训练函数

BP神经网络中的训练算法函数是根据BP网络格式的输入、期望输出,由函数newff 建立网络对象,对生成的BP 网络进行计算,修正权值和阈值,最终达到BP网络的设计性能,从而完成网络的训练和预测。BP 神经网络几种主要的训练函数及其特点分述如下[2]。

(1)traingda、trainrp函数和trainlm函数。

traingda函数是最基本的自适应学习步长函数,其最大优点可以根据误差容限的性能要求调节函数,弥补标准BP算法中的步长选择不当问题。trainrp函数可以消除偏导数的大小权值带来的影响,只考虑导数符号引来的权更新方向,忽略导数大小带来的影响。trainlm函数。该函数学习速度较快,但占用内存很大,从理论上来说适用于中等规模的网络。

(2)共轭梯度算法:traincgf函数、traincgp函数、traincgb 函数、trainscg函数。

共轭梯度算法是介于最速下降法与牛顿法之间的一个方法,其利用一阶导数信息,但克服了最速下降法收敛慢的缺点,又避免了牛顿法需要存储和计算Hesse矩阵并求逆的缺点。上述四种共轭梯度算法前三种收敛速度比梯度下降快很多,其需要线性搜索,对于不同的问题会产生不同的收敛速度。而第四种不需要线性搜索,其需要较多的迭代次数,但是每次迭代所需计算量很小。

(3)Newton算法:trainbfg函数、trainoss函数。

trainbfg 算法的迭代次数较少,由于每步迭代都要Hessian矩阵,其每次迭代计算量和存储量都很大,适合小型网络。Trainoss为一步割线算法。它是介于共轭梯度法和拟牛顿算法的方法,其需要的存储和计算量都比trainbfg要小,比共轭梯度法略大。

上述各算法由于采用的训练函数不同,其计算速度、收敛速度及其迭代次数不尽相同,并且对内存要求依研究对象的复杂程度、训练集大小、网络的大小及误差容限的要求等存在差异。在运用BP网络解决相关工程性问题时,需要选择合理的训练函数。

3 网络训练函数的选取

该文着重研究BP神经网络的训练函数的选择,所用数据样本均来自于实践中用新型微机控制旋转触探仪采集到的数据,经过归一化处理建立了网络的样本数据库,根据训练函数的特点选择其隐含层数为2。文选择非线性函数为Sigmoid,输出层的传递函数为Purelin,可以用来模拟任何的函数(必须连续有界)。

采用不同的训练函数对网络的性能也有影响,比如收敛速度等等,下面采用不同的训练函数(trainbr、traingd、traingdm、traingdx、traincgf、trainlm、trainb)对网络进行训练,并观察其结果,如表1所示。

对比可知,trainlm训练函数的收敛效果较好,trainbr、trainlm训练函数得到的绝对误差相对较小,其它训练函数的收敛性能较差。trainbr训练样本的绝对误差比trainlm训练函数的绝对误差小,且分布比较均匀,但是trainbr训练函数的收敛精度却相对较差,这可能是出现局部最优化的问题,通过测试样本的进一步分析如表2所示,trainbr训练以后的网络对于预测样本的预测精度较低,偏差较大,进一步验证了该训练函数在训练过程中训练收敛精度相对较差,并出现局部最优化[3]。

综合考虑,可以看到trainlm训练函数具有训练速度快且预测精度高的特点,所以本文中选用trainlm作为训练函数。

4 结论

该文以Matlab神经网络的作为工具,基于触探模型作为研究对象,对不同的训练函数进行了仿真比较,结果表明采用不同的训练函数其存在明显的差异。综合考虑干密度误差,含水量误差,干密度误差(样本顺序),含水量误差(样本顺序)以及迭代次数和性能误差等因素,选用trainlm作为训练函数,trainlm函数由于其训练速度较快且计算精度较高而显现出一定的优势。

参考文献

[1] 葛哲学,孙志强.神经网络理论与MATLAB R2007实现[M].电子工业出版社,2007.

篇7

关键词:卷积神经网络 现场可编程门阵列 并行结构

中图分类号:TP183 文献标识码:A 文章编号:1007-9416(2015)12-0000-00

1 引言

卷积神经网络(Convolutional Neural Network, CNN)具有良好的处理能力、自学能力及容错能力,可以用来处理复杂的环境信息,例如,背景情况不明,推理规则不明,样品存有一定程度的缺陷或畸变的情况。所以,卷积神经网络被广泛应用于目标检测、物体识别和语音分析等方面[1]。现场可编程门阵列(Field Programmable Gate Array, FPGA),作为可编程使用的信号处理器件,其具有高集成度、运行高速、可靠性高及采用并行结构的特点,易于配合CNN处理数据。

2 国内外研究现状

2.1 神经网络的模型结构

根据研究角度、数据传递方式、数据处理模式、学习方法等的不同,多种神经网络模型被构建出来。目前主要有四种模型被广泛应用中[2][3]:

(1)前馈型神经网络。此类神经元网络是由触突将神经原进行连接的,所以网络群体由全部神经元构成,可实现记忆、思维和学习。此种类型的网络是有监督学习的神经网络。(2)递归型神经网络。此种神经网络又称为反馈网络,以多个神经元互相连接,组织成一个互连的神经网络,使得电流和信号能够通过正向和反向进行流通。(3)随机型神经网络。此种神经网络的运行规律是随机的,通过有监督学习方法进行网络训练。(4)自组织竞争型神经网络。此种神经网络通过无监督的学习方法进行网络训练,一般具有两层网络结构,输入层和竞争层。两层间的各神经元实现双向全连接。

2.2 神经网络的学习方法

神经网络的学习方法用来解决调整网络权重的问题,是指完成输入特征向量映射到输出变量之间的算法,可以归纳为三类[4-7]:

(1)有监督的学习。在学习开始前,向神经网络提供若干已知输入向量和相应目标变量构成的样本训练集,通过给定输入值与输出期望值和实际网络输出值之间的差来调整神经元之间的连接权重。(2)无监督的学习。此种学习方法只需要向神经网络提供输入,不需要期望输出值,神经网络能自适应连接权重,无需外界的指导信息。(3)强化学习。此种算法不需要给出明确的期望输出,而是采用评价机制来评价给定输入所对应的神经网络输出的质量因数。外界环境对输出结果仅给出评价结果,通过强化授奖动作来改善系统性能。此种学习方法是有监督学习的特例。

2.3 卷积神经网络的结构

卷积神经网络为识别二维或三维信号而设计的一个多层次的感知器,其基本结构包括两种特殊的神经元层,一为卷积层,每个神经元的输入与前一层的局部相连,并提取该局部的特征[8];二是池化层,用来求局部敏感性与二次特征提取的计算层[8]。作为部分连接的网络,最底层是卷积层(特征提取层),上层是池化层,可以继续叠加卷积、池化或者是全连接层。

3 FPGA实现神经网络的并行体系结构

(1)卷积神经网络的计算架构。卷积神经网络可以使用“主机”与“FPGA”相结合的体系模型,主机用来控制计算的开始和结束,并在神经网络前向传播计算过程中,提供输入图像等数据。主机与FPGA之间的通信可以通过标准接口,在主机进行任务分配的过程中可以对FPGA上的卷积神经网络进行硬件加速。当卷积神经网络开始启动计算,通过标准接口接收到主机传输的图像时,FPGA开始进行计算,并且使用FPGA中的存储器来存储卷积核权值。FPGA将会先完成卷积神经网络前向传播过程的计算,然后将其最后一层计算得到的结果输出给主机。(2)卷积神经网络并行体系架构。一、单输出并行结构:每次计算一个输出图像,其中会将多个输入图像和多个卷积核基本计算单元同时进行卷积运算,然后将全部卷积运算的结果与偏置值进行累加,再将结果输入非线性函数和自抽样子层进行计算。二、多输出并行结构:若卷积神经网络的计算单元中含有多个单输出的并行结构,那么输入数据可同时传送到多个单输出计算单元的输入端,从而组成多个单输出计算单元组成的并行结构。在卷积神经网络的并行计算结构中,每个卷积核计算单元在进行卷积操作时都要进行乘加运算,所以,有必要将单个的卷积运算拆分实现并行化,并且可以尝试将同一层内的多个卷积运算进行并行化。

4 结语

本文对卷积神经网络进行了介绍,总结了国内外的研究现状,结合卷积神经网络运算的特点与FPGA的快速计算单元数量及功能方面的优势,尝试阐述了在FPGA映射过程的卷积神经网络的并行体系结构。

参考文献

[1] Fan J,Xu W,Wu Y,et al. Human tracking using convolutional neural networks[J].IEEE Transactions on Neural Networks,2010(10):1610-1623.

[2] 杨治明,王晓蓉,彭军.BP神经网络在图像分割中的应用.计算机科学[J].2007(03):234-236.

[3] Simon Haykin . Neural networks ,a comprehensive foundation[M].second edition,Prentice Hall,1998.

[4] Herta J , et al.Introduction to Theory of Neural Compution[M].Sant Fee Complexity Science Series,1991.156.

[5] 戴奎.神经网络实现技术[M].长沙:国防科技大学出版社,1998.

[6] 焦李成.神经网络系统理论[M].西安:西安电子科技大学出版社,1996.

篇8

摘要:工程造价估算是招标投标中的重要一环,探寻一套快速、简捷、实用的工程造价估算方法已经成为建筑行业的迫切需要。为了建设工程造价估算技术的发展及文联面临的问题,提出在建设工程造价估算技术系统中应用人工神经网络技术来提高估算精确度,并且给出系统的设计模型。

关键词:人工神经网络;工程造价;造价估算

人工神经网络(ArtificialNeuralNetworks,简写为ANNs)也简称为神经网络(NNs)或称作连接模型(ConnectionistModel),它是一种模范动物神经网络行为特征,进行分布式并行信息处理的算法数学模型。这种网络依靠系统的复杂程度,通过调整内部大量节点之间相互连接的关系,从而达到处理信息的目的。人工神经网络具有自学习和自适应的能力,可以通过预先提供的一批相互对应的输入-输出数据,分析掌握两者之间潜在的规律,最终根据这些规律,用新的输入数据来推算输出结果,这种学习分析的过程被称为“训练”。

一、神经网络的建立

虽然人们还并不完全清楚生物神经网络是如何进行工作的,但还是幻想能否构造一些“人工神经元”,然后将这些神经元以某种特定的方式连接起来,模拟“人脑”的某些功能。

在1943年,心理学家W. McCulloch和数学家W. Pitts合作,从数理逻辑的角度,提出了神经元和神经网络最早的数学模型(MP模型),是神经网络研究的开端,更为后面的研究发展奠定了基础。经历了半个多世纪,神经网络度过了萌芽期、第一次期、反思低潮期、第二次期、再认识与应用研究期五个阶段。目前,神经网络已成为涉及多种学科和领域的一门新兴的前沿交叉学科。

神经元分为分层网络和相互连接型网络。所谓分层网络,就是一个网络模型中的所有神经元按功能分层,一般分为输入层、中间层(隐含层)、输出层,各层按顺序连接,隔层之间均采用的是全互连接,但对于同一单元间,不互相连接。分层网络可细分为简单前向网络、反馈前向网络和层内互相连接的网络。人工神经网络结构是一种多层的网络结构,一个典型的前向网络。

某个神经元 j 的输入―输出关系为

其中,θj为阀值,ωji为连接权,f(•)为变换函数,也称活化函数(activation function)

对于人工神经网络模型,我们只可能在某种程度上去描述我们所了解的情况。同样,人工神经网络也只可能是在某种程度上对真实的神经网络的一种模拟和逼近。

二、在工程造价中的运用

成都市工程造价计价模式后选取了基础类型、结构类型、工期、层数、建址、层高、内装修、门窗、单位造价等10个影响工程造价和工程量的特征作为模型的输入。考虑到各个工程中门和窗数量差别很大为提高估算的精度我们把门数量和窗数量作为输入,其数量在工程施工图纸上很容易查得,不需作复杂的计算。对于其他文字性表达的工程特征需转变成数字后作为网络的输入。

很明显的看出,测试样本总体误差率比较小,平均误差为283%,基本满足估算要求,随着工程资料的不断积累,选取有代表性的数据作为样本,误差将不断缩小。

意义:

通过这次研究,我们了解了人工神经网络的基本原理,即通过误差反向传播建立多层前馈网络的学习收敛过程,该过程主要包括三个层次,即输入层、隐含层和输出层。在训练中通过计算输出值与期望值之间的误差,来求解输出层单元的一般化误差,再将误差进行反向传播,求出隐含层。并了解了基于人工神经网络之上的建设项目的投资估算模型,了解了平滑指数法、类比系数法、模糊数学估算法的基本原理与其自身的优势与不足,也让我们更深刻地认识到,人工神经网络,作为90年代逐渐被运用的人工智能技术之一,能像一个经验深厚的造价师,根据工程类型、特征及其相关情况,结合数据和经验,准确的估算出其造价。我们也通过计算验证了模型的可行性。对于我们从事建筑造价的大学生来说,是一次难能可贵的研究机会,能够较深层次的了解行业中的专业知识。随着中国改革开放和市场经济的不断深入,中国建筑企业在面临很好的机遇的同时,也面临着严峻的考验。现在的市场竞争机制已表现得越来越明显,他要求我们提高效率,尽快拿出自己招投标方案,但是传统的预算方法以及现行的计算软件都必须花费较长的时间才能计算出结果,而且计算的结果准确度还不是很高。怎样解决这个问题,成了建筑界的热门话题。同时作为建设方的业主,他们同样对快速预算很感兴趣。因为确定工程造价是建设工作中十分重要的一环,在不同阶段有着不同的方法。如建设前期的工程造价估算、初步设计阶段编制概算、施工图设计阶段编制预算,特别是建设前的估算是我们工作的重点,因为它是我们进行成本控制的起点。对于建设单位而言,它们不仅能在进行设计招标之前大致确定该工程的造价,而且还能在工程施工招标前定出合理的标底。可见快速预算有其很现实的发展研究背景。近几年许多学者都在这方面努力探索,并取得了很好成果。 神经网络和模糊数学的快速发展应用为工程快速预算提供了很好的思路。我们通过查阅资料了解了模糊数学和神经网络的结合原理,认识了基于模糊神经网络和工程预算原理的工程快速估价的模型,并通过住宅建筑估价模型的建立,说明模型的实现方法且验证其实用性。这次研究对于行业经验不足的我们十分宝贵,我们通过书籍等资料更加全方位的了解了我们未来所讲从事的行业的知识,为我们以后的工作做了良好的铺垫,积累了宝贵财富,我们将在了解这些专业知识之后熟练地运用,以更好地促进行业的发展。(西华大学;四川;成都;610039)

参考文献:

① 汪应洛、杨耀红,工程项目管理中的人工神经网络方法及其应用[J].中国工程科学.2004,6(7):26-33.

② 袁曾仁,人工背景:神经网络及其应用[M]清华大学出版社,1991

篇9

关键词:BP神经网络、图像分割、特征提取

Abstract: the image recognition process including the image preprocessing, feature extraction, image understanding and analysis. Which BP artificial neural network in the image segmentation using better; In the feature extraction phase BP neural network is also very good find application, and obtain the better feature extraction results; In the image understanding and the analysis phase using neural network classifier design, can get accurate classification results.

Keywords: BP neural network, image segmentation, feature extraction

中图分类号:TP183 文献标识码:A文章编号:

引言

BP人工神经网络算法是现今应用较为广泛的多层前向反馈式神经网络算法,BP人工神经网络有较好的容错能力、鲁棒性、并行协同处理能力和自适应能力,受到了国内外众多领域学者的关注。由于神经网络高效率的集体计算能力和较强的鲁棒性,它在图像分割方面的应用已经很广泛,Jain和Karu采用了多通道滤波与前向神经网络相结合的方法实现图像纹理分割算法。神经网络算法在特征提取阶段,压缩特征数量,以提高分类速度和精度。在图像识别领域中神经网络作为分类器的研究也得到了很大的进展,尤其是其学习能力和容错性对于模式识别是非常有利的,在一定程度上提高了训练速度和识别率。Le Cun等人提出了多层特征选择(Multilayer Selection Procedure)方法用于字符识别,每一层神经网络处理较低层次的特征,获取该层特征信息并传给上一层。

BP神经网络的基本原理

人工神经网络的研究起源于对生物神经系统的研究,它将若干处理单元(即神经元)通过一定的互连模型连结成一个网络,这个网络通过一定的机制可以模仿人的神经系统的动作过程,以达到识别分类的目的。人工神经网络区别于其他识别方法的最大特点是它对待识别的对象不要求有太多的分析与了解,具有一定的智能化处理的特点。神经网络的学习过程实际上就是不断地调整权值和阈值的过程。根据有无训练样本的指导可以将神经网络的学习方式分为两种:监督学习方式和非监督学习方式,也称为有导师指导学习方式和无导师指导学习方式。监督学习方式,是在给定固定的输入输出样本集的情况下,由网络根据一定的学习规则进行训练学习,每一次学习完成后,通过对比实际的输出和期望的输出,以此决定网络是否需要再学习,如果还没有达到期望的误差,则将实际误差反馈到网络,进行权值和阈值的调整,使实际的误差随着学习的反复进行而逐步减小,直至达到所要求的性能指标为止。非监督学习方式,是在没有外界的指导下进行的学习方式,在学习过程中,调整网络的权重不受外来教师的影响,但在网络内部会对其性能进行自适应调节。

BP神经网络分类器的设计

BP神经网络是基于误差反向传播算法(Back Propagation Algorithm,BPA)的多层前向神经网络,由输入层、输出层、一个或多个隐含层所组成。BP神经网络结构确定之后,通过对输出和输入样本集进行训练,反复修正网络的权值和阈值,达到学习训练的期望误差,以使网络能够实现给定的输入输出映射关系。BP人工神经网络的学习过程分为两个阶段,第一阶段是输入己知的学习样本数据,给定网络的结构和初始连接权值和阈值,从输入层逐层向后计算各神经元的输出;第二阶段是对权值和阈值进行修改,即根据网络误差从最后一层向前反馈计算各层权值和阈值的增减量,来逐层修正各层权值和阈值。以上正反两个阶段反复交替,直到网络收敛。具体实现步骤如下:

(1) 网络的初始化:首先对输入的学习训练样本进行归一化处理,对权值矩阵W和阈值向量赋初值,将网络计数器和训练次数计数器置为1,网络误差置为0。

(2) 输入训练样本,计算输入层,隐含层以及输出层的实际输出。

(3) 计算网络输出误差。将实际的输出和期望的输出值进行对比,采用均方根误差指标作为网络的误差性能函数。

(4) 若误差还没达到期望标准,则根据误差信号,逐层调整权值矩阵和阈值向量。

(5) 若最终调整之后的网络输出达到了误差范围之内,则进行下一组训练样本继续训练网络。

(6) 若全部的训练样本训练完毕,并且达到了期望的误差,则训练结束,输出最终的网络联接权值和阈值。

BP神经网络可以逼近任意连续函数,具有很强的非线性映射能力,而且BP神经网络中间层数、各层神经元数及网络学习速率等参数均可以根据具体情况设定,灵活性较强,所以BP神经网络在许多领域中广泛应用。一般来说,神经网络方法应同传统的人工智能方法相联系的。神经网络本身结构及性能上的特点使其对问题的处理更富有弹性,更加稳健。神经网络的基本特点是采用自下而上的设计思路,使其容易确定具体的目标分割或识别算法,在增加了不确定因素的同时也产生了网络最优化的问题,这就是所谓的伪状态(pseudo-trap)。尽管在实践中并非所有的伪状态对应完全失败的结果,但是毕竟这不符合对之完美的或者说合理的期望。人工智能则一般采用自上而下的方法,偏重于逻辑推理建立系统模型。因此将神经网络同人工智能结合起来,相当于赋予神经网络高层指导的知识及逻辑推理的能力,具有潜在的优势。

输入层中间层 输出层

图1 BP人工神经网络结构

BP神经网络的训练

4.1 BP神经网络的设计

BP神经网络的设计主要包括两方面内容:一是神经网络结构的确定,特别是隐含层层数及隐含层单元数目的确定;二是高精度收敛问题,隐含层和隐含层单元数过多,将导致训练时间过长并出现过度拟和的问题,隐含层单元数过少又导致网络收敛速度慢甚至不收敛,达不到误差精度要求。在确定隐含层层数以及隐含层单元数目时,没有一个严格的理论依据指导,需要根据特定的问题,结合经验公式确定大致范围来进行逐步试算比较得到。

4.2 数据预处理

为了加快网络的训练速度,通常在网络训练前进行神经网络输入和输出数据预处理,即将每组数据都归一化变为[-1,1]之间的数值的处理过程。

4.3 神经网络的训练

%当前输入层权值和阈值

inputWeights=net.IW{1,1}

inputbias=net.b{1}

%当前网络层权值和阈值

layerWeights=net.LW{2,1}

layerbias=net.b{2}

%设置训练参数

net.trainParam.show = 1000;%限时训练迭代过程

net.trainParam.lr = 0.1; %学习率,缺省为0.01

net.trainParam.epochs = 100000; %最大训练次数,缺省为100

net.trainParam.goal = 0.001; %训练要求精度,缺省为0

[net,tr]=train(net,P,T);%调用 TRAINGDM 算法训练 BP 网络

A = sim(net,P) %对 BP 网络进行仿真

E = T - A;%计算仿真误差

MSE=mse(E)

结束语

BP网络因为具有较强的学习性、自适应型和容错性,在很多领域均已经大量运用。本文将BP人工神经网络运用于图像的识别,探索人工神经网络在图像识别领域中的重要的现实意义。研究表明,BP人工神经网络应用于图像识别在一定程度上提高了识别的效率和准确率。但是,BP神经网络算法还存在以下几点不足之处:(1)权的调整方法存在局限性,容易陷入局部最优;(2)网络的结构需要提前指定或者在训练过程中不断的修正;(3)过分依赖学习样本,由于学习样本是有限的或者学习样本质量不高,那么会导致训练达不到效果;(4)对于规模较大的模式映射问题,存在收敛速度慢、容易陷入局部极小点、判断不准确等缺陷。总之,如何解决以上问题,如何进一步提高识别精度,扩大识别范围,使之更具有更好的工程实用性,是有待进一步研究的内容。

参考文献:

[1] WE Blanz,S L Gish.A Connectionist Classifier Architecture Applied to Image Segmentation.Proc.10th ICPR,1990,272-277.

[2] Y Le Cun,L D Jackel,B Boser,J S Denker,H P Graf,I Guyon,D Henderson,R E Howard,and W Hubbard,Handwriten Digit Recognition:Applications of Neural Network Chips and Automatic Learning,IEEE Comm.Magazine.Nov.1989.

[3] A K Jain and K Karu,Automatic Filter Design for Texture Discrimination,Proc.12th Int’l Conf.NeuralNetworks,Orlando,Oct.1994,454-458.

[4] 边肇其,张学工.模式识别(第二版)[M].清华大学出版社,北京.1999,12.

[5] 陈书海,傅录祥.实用数字图像处理[M].科学出版社,北京.2005.

[6] 万来毅,陈建勋.基于BP神经网络的图像识别研究[J].武汉科技大学学报(自然科学版).2006,6.

[7] 丛爽.面向MATLAB工具箱的神经网络理论与应用(第2版)[M].北京:中国科学技术出版社,2003.

[8] 王娟,慈林林等.特征方法综述[J].计算机工程与科学.2005.27(12).68-71.

[9] 贾花萍.基于神经网络的特征选择与提取方法研究[J].网络安全.2008,7.33-35.

[10] 龚声荣,刘纯平等编著.数字图像处理与分析[M].清华大学出版社,北京.2006.7.

篇10

伴随着人民生活水平的提高,汽车已经成为了人民生活中重要组成部分。但是伴随着的汽车自身某些故障的产生,使得汽车故障的研究成为了人们研究的重点,文献[1]指出计算机和信息化技术的广泛运用到汽车中,其中传感器逐步应用到汽车控制中,它能够对汽车信息进行感知,采集,转换和处理。将感知的信息转换其他需要的信息输出。汽车传感器是汽车电子控制的关键部件,也是汽车电子技术的核心部分。文献[2-3]提出一种基于数据驱动的多模型传感器故障软闭环容错控制方法,并对非线性系统中卡死、恒增益、恒偏差等常见传感器故障进行了研究。文献[4]指出目前传感器控制主要是分布是针对衡秤体下方,通过传感器输出来完成故障传感器输出信号,但容易偏离中心,影响估计精度。文献[5]指出数字称重传感器可以实现不间断工作,能够在短时间内获得故障信号,但缺点是价格昂贵。文献[6]提出基于结构振动响应特性利用改进的模态滤波方法对阵列式传感器系统进行故障诊断。

本文主要BP神经网络的基础上引入静态模糊控制,对汽车传感器控制的故障进行有效、准确的分类。并针对汽车传感器的故障准确的进行诊断和恢复,从而可以有效的来保证汽车传感器的正常的运作。

1.汽车传感器控制故障模型矩阵

汽车传感器的输出信号主要是电压信号,当汽车传感器与(传感器与发动机控制装置)之间的接线发生断路的时候,电压信号就会超出正常范围从而引起故障。通常设定汽车传感器器的输出信号电压的正常范围为,如果实际输入ECU信号电压大于或小于,则认为该信号不可靠,表示传感器有故障。只有传感器信号持续一定时间后,才会判断为有故障。假设车辆传感器网络中传感器节点个数为,每个节点在数据采集过程进行次采样,单节点数据长度为。单个节点采集数据作为矩阵的列,则网络数据可表示为

为便于表述,将各节点数据以此衔接,网络数据可写为向量形式

(1)

其中,。

网络数据的测量过程可由如下的矩阵向量形式表示:

其中,,测量矩阵。(2)

2.改进的BP神经网络在汽车传感器诊断

2.1汽车静态模糊函数构建

汽车传感器网络故障具有一定的随机性,是一种典型的非线性结构,而静态模糊函数可以很好找到传感器故障中的死亡节点。静态模糊基函数构造如下:

(3)

通过将汽车节点传感器能量(设定为)输入公式(3)中,得到相应的改进节点能量如下:

(4)

在公式(6)中,其中表示传感器节点的个数。为固定参数,通过在模糊函数中构造静态函数如下:

(5)

在公式5)中,为模糊变量,表示参考参考模糊变量集。其中设定为0-1之间的实数,表示的可能性是;该准则设定的含义是当达到的时候,的可能性则是。设定用mamdani蕴涵表示,通过采用mamdani来进行推理得出。使用公式(8)对进行自学习得到,其中的精度远大于。

(6)

将公式(4),(5)和(6)进行三者结合,得到针对汽车传感器的静态控制节点的自学习能力函数,从而能够快速的对汽车传感器节点能量损失进行判断。

2.2BP神经网络

BP神经网络是一种单向传递的网络,通常是由输入层,隐含层,输出层组成。它将信号进行前向传递和反向传播。其中反向传播时权值按Delta学习规则进行调整。在前向传递中依次按式(9)计算各层的输入输出直到输出层。当输出层得不到期望的输出则进行反向传播,根据期望与实际输出之间的误差调整权值和阈值。权值的调整公式见式(10)。

(7)

在公式(1)中为第层节点的激活值,为阈值,为输入信号,为第节点与第节点的连接权系数,为节点的输出值。

(8)

在公式(8)中,为神经网络期望输出与实际输出的误差。

2.3本文算法的描述

本文首先通过自学习中的静态模糊函数来确定汽车传感器故障的支撑集,然后通过BP神经网络算法来针对传感器的故障进行快速分类,从而缩短检测时间,提高检测效率。通过求解以为自变量的目标函数的极小值

:(9)

其中对。正则化参数、分别对变换系数和生成矩阵的稀疏度进行加权。为便于表述,不妨假设,稀疏度量使用1范数。

3.试验仿真与分析

本文选取本公司下属的汽车修理厂中的汽车故障100组数据,每组分为为50组数据,前30组用于训练,余下20组用于测试。然后通过静态模糊函数来分类进行故障样本,同时设计1个BP神经网络分类器,以此来验证静态模糊函数自学习的作用。两组BP神经网络分类器诊断结果比较如表1所示。选取冲击传感器故障下的三组数据如表2所示,BP神经网络分类器的实际输出数据如表3所示。

从表1-3中发现利用改进的BP网络算法对汽车传感器故障样本数据进行处理后,神经网络的输入层从20个减少为8个,训练次数大幅度减少为100次显然CPU的耗时明显缩短。并且基本保持故障识别率不变。通过采用静态模糊函数保证识别率的同时,简化了BP神经网络的结构,提高了诊断速度,是实现增加BP神经网络对故障样本分类实时性的行之有效的方法。

4.结束语

本文提出了基于BP网络神经中引入静态模糊控制的方法对故障进行快速分类,首先对故障样本的输入数据运用静态模糊函数进行数据收集,再对神经网络的输出结果进行数据数据分类。同时具体的实验数据表明本文的算法在保证故障准确率的同时简化了神经网络结构,提高了故障诊断速度。

参考文献:

[1]赵炯等.基于传感器融合技术的电动汽车自动驾驶系统的开发[J].制造业自动化,2013.35(5):43-46

[2]李炜,张婧瑜.多模型传感器故障软闭环容错控制研究[J].计算机应用研究,2015,32(2):447-450

[3]王千等.K-means聚类算法研究综述[J].电子设计工程,2012,20(7):40-43

[4]BLISSD,STICKELC,BENTZJW.Loadcelldiagnosticsandfailurepredictionweighingapparatusandprocess[P].UunitedStatePatent:728638,2000

[5]PENGXF.Applicationofdigitalloadcells[J].IndustrialMeasurement,2008,(01):62-63

[6]JIANMINGL,YonggonL,SCOTTDS,etal.Selforganizingradialbasisfunctionnetworkforreal-timeapproximationofcontinuous-timedynamicalsystems[J].IEEETrans.NeuralNetworks,2008,19(3):460-474