神经网络的反向传播范例6篇

前言:中文期刊网精心挑选了神经网络的反向传播范文供你参考和学习,希望我们的参考范文能激发你的文章创作灵感,欢迎阅读。

神经网络的反向传播

神经网络的反向传播范文1

关键词: Matlab; 串联BP; 多函数拟合; 自定义网络

中图分类号: TN911?34 文献标识码: A 文章编号: 1004?373X(2013)22?0014?03

0 引 言

BP(Back Propagation)神经网络是1986年由Rumelhart和McCelland提出的,它是一种误差按反向传播的多层前馈网络,是目前应用最广泛的神经网络模型之一。BP神经网络具有非常强的非线性映射能力,能以任意精度逼近任意连续函数,因此在人工智能的许多领域都得到了广泛的应用,如函数逼近、模式识别、分类和数据压缩等领域[1?2]。由于目前一个神经网络只能同时对一个函数进行拟合,针对此本文提出了一直串联BP网络同时实现两个函数的拟合。

1 BP网络结构与学习算法

BP神经网络是目前应用最广泛的拓扑结构。BP模型是一种多层前向网络,这里采用的是三层BP神经网络模型,它由输入层、隐层和输出层组成,其结构如图1所示,分别为:

(1)输入层节点,其输出等于[xi]([i]=1,2,…,n),将控制变量值传输到隐含层;

(2)隐层节点[j],其输入[hj],输出[oj] 分别为:

[hj=i=1nwjxi-θj=i=1n+1wjxi]

[oj=f(hj)]

(3)输出节点[k],其输入[hk],输出[ok] 分别为:

[hk=j=1m+1wjkoj]

[ok=f(hk)]

式中:[k]=1,2,…,[l];[f]为传输函数。

BP算法分两步进行,即正向传播和反向传播[3]。

(1)正向传播

输入的样本从输入层经过隐单元逐层进行处理,通过所有的隐层之后,在传向输出层。在逐层处理的过程中,每一层神经元的状态只对下一层神经元的状态产生影响。在输出层把现行输出和期望输出进行比较,如果现行输出不等于期望输出,则进入反向传播过程。

(2)反向传播

反向传播时,把误差信号按原来正向传播的通路反向传回,并对每个隐层的各个神经元的权系数进行修改,以望误差信号趋向最小[4]。

2 BP网络的串联模型

神经网络串联即由两个或两个以上的神经网络串联所组成的新型网络模型,用于串联的各神经网络称为子神经网络。神经网络串联模型中的各子神经网络首尾相连,如图2所示。

假设总的神经网络由k个子神经网络串联而成,即第一个神经网络的输出作为第二个神经网络的输入,第二个神经网络的输出做为第三个神经网络的输入,以此类推下去。每一个子神经网络均由同类型的神经网络构成,在本文中,每一个子网络都采用最常用的BP神经网络,其子网络的构建都遵循现有的BP网络的构建形式,其基本的子网络结构采用三层模式,一个输入层,一个隐含层和一个输出层[5?6]。

通过Matlab神经网络工具箱的自定义的方法来实现两个子BP网络的串联。

部分程序如下所示:

net=network;

net.numinputs=2;

net.numlayers=6;

net.biasConnect=[1;1;1;1;1;1];

net.inputConnect=[1 0;0 0;0 0;0 1;0 0;0 0];

net.layerConnect=[ 0 0 0 0 0 0;1 0 0 0 0 0 ;0 1 0 0 0 0;

0 0 1 0 0 0 ;0 0 0 1 0 0;0 0 0 0 1 0];

net.outputConnect=[ 0 0 1 0 0 1];

网络的拓扑结构如图3所示,其中每个子网络的隐含层节点为20个,传递函数为tansig,输出层采用线性函数[7]。

3 实验测试与分析

运用本串联BP网络在Matlab 2011的环境中同时对两个目标函数进行拟合。其目标函数为:

目标函数1:

[y=sin x]

目标函数2:

[y=x(1-16x2)e-x]

训练样本输入的设置:输入样本p={p1’,p1’}其中p1=[-1:0.05:1],目标向量T={t1’;t2’},其中t1= sin(3*pi*p1),t2= p1.*(1-1/6*p1.^2).*exp(-p1)。并加入噪声t3=sin(3*pi*p1)+0.15*randn(size(p1));t4=t2+0.15*randn(size(p1));T={[t3]’;[t4]’};对其进行训练仿真[8?10]。

网络的输出y包含了两个待拟合函数的拟合后的数据通过下面操作:

y1=cell2mat(y);

y2=y1’;

a=y2(1:1:41);

b=y2(42:1:82);

得到各自的拟合数据。

仿真结果如图4~图6所示。

由图4、图5仿真拟合曲线与待拟合函数曲线的比较可以看出此串联网络在通过加噪声的训练样本训练后能够很好的对两个待拟合函数进行拟合。由图6知在经过342次训练后其误差达到了0.000 978。可见,通过此串联BP神经网络准确地拟合了待拟合函数曲线。

4 结 语

通过以上叙述可以看出本文设计的串联神经网络能够和好地对函数曲线进行拟合,为同时实现多函数曲线的拟合提供了新的方法。

参考文献

[1] 张雨浓,蔡炳煌.人工神经网络研究进展及过程[M].北京:电子工业出版社,2010.

[2] 蒋正金,汪晓东,端木春江.采用BP神经网络拟合光纤位移传感器特性曲线[J].微型机与应用,2012,31(4):67?69.

[3] 郭军.BP神经网络算法研究[D].武汉:华中科技大学,2005.

[4] 贾丽会,张修如.BP算法分析与改进[J].计算机技术与发展,2006,16(10):102?107.

[5] 刘华,高大启.RBF_LBF 串联神经网络的分类应用及其学习算法[J].计算机应用,2004,24(10):100?104.

[6] 邓秋香.神经网络串并联学习算法在B超图像识别中的应用[D].武汉:武汉理工大学,2008.

[7] 张德丰.Matlab神经网络应用设计[M].北京:机械工业出版社,2012.

[8] 陈小宇,乔翠兰,汪瑞祥,等.基于BP算法神经网络的物理实验曲线拟合[J].物理实验,2002,22(9):10?13.

[9] 李洁.BP网络的算法及在Matlab上的程序仿真[J].西安航空技术高等专科学校学报,2009,27(1):42?43.

神经网络的反向传播范文2

(①昆明理工大学国土资源与工程学院,昆明 650093;②黄河勘测规划设计有限公司,郑州 450003)

(①Faculty of Land Resource Engineering,Kunming University of science and Technology,Kunming 650093,China;

②The Yellow River Survey Planning and Design Co.,Ltd.,Zhengzhou 450003,China)

摘要: 随着神经网络理论的深入研究,神经网络已在图像的分类中起到非常重要的地位。本文章使用IDL语言来实现神经网络在权值调整过程算法优化,并在ENVI上集成,已达到神经网络分类速度快,且精度可靠的目的。

Abstract: With the deep research in the theory of neural network, neural network has played a very important role in the classification of the image. This article uses the IDL language to implement the algorithm to optimize the weights of neural network to the adjustment process, and on the ENVI integration, has reached the neural network classification speed, precision and reliable.

关键词 : 神经网络;图像分类;ENVI;IDL;集成;精度

Key words: neural network;image classification;ENVI;IDL;integration;precision

中图分类号:P237 文献标识码:A

文章编号:1006-4311(2015)06-0234-02

0 引言

ENVI是一套功能强大的遥感图像处理软件,在ENVI上进行遥感图像分类中有很多方法,如神经网络、最大似然、最小距离、 ISODATA算法、决策树和面向对象等分类方法,神经网络在分类时比其它分类所花费时间要长,且速度很慢,因为从算法机理可知神经网络在权值调整时是迭代收敛的过程,其分类过程自然很慢。针对此问题,决定使用IDL语言来编程优化算法。

1 IDL的语言环境

IDL(Interactive Data Language)是美国RSI公司推出的面向矩阵的第四代计算机语言,它语法简单,自带大量的功能函数,使用很少的代码就能实现其它语言很难实现的功能。IDL是进行数据分析、可视化及跨平台应用开发的最佳选择,利用IDL可以快速地进行科学数据读写、图像处理、集成数学统计、信号分析、数值计算和三维图像建模等。IDL集可视、交互分析、大型商业开发为一体,为您提供了最完善、最灵活最有效的开发环境。

IDL的开发应用已经深入到了人类日常生活的方方面面,给人类对未知领域的探索与发现提供了强有力的工具,推动了人类向前发展。对IDL的语言环境熟悉之后,紧接着就开始针对目前存在的基于神经网络的遥感图像分类问题进行改进,并结合ENVI软件,使用IDL语言设计出改进后的优化算法。

2 ENVI中基于神经网络分类的剖析

ENVI中采用的神经网络属于BP网络,含有输入层、输出层以及处于输入输出层之间的隐含层,如果进行非线性分类,输入的区域并非线性分类或需要两个超平面才能区分类别时候,隐层数设置为大于或等于一。隐含层的状态影响输入与输出之间的关系,改变隐含层的权系数,可以改变整个多层神经网络的性能。

ENVI中采用的BP神经网络通过误差函数的最小化过程来完成输入到输出的映射。为了完成最小化过程,这种BP反向传播算法分正向传播和反向传播两步进行。在正向传播中,输入的样本从输入层经过隐单元一层一层进行处理,通过所有的隐含层之后,则传向输出层;在逐层处理的过程中,每一层神经元的状态只对下一层神经元的状态产生影响;在输出层把现行输出和期望输出进行比较,如果现行输出不等于期望输出,则进入反向传播过程。在反向传播过程中,反向传播把误差信号按原来正向传播的通路反向传回,反复修改(这是个迭代的过程)各节点的权重和阈值,逐渐减小误差,直到达到预先设定的要求。当误差小于某一相当小的正数或迭代误差不再减少时,完成BP网络的训练、输入与输出的映射的确定。

我们的落脚点是在BP网络的反向传播过程中网络各节点权值的迭代调整,但是该网络在此方面存在缺陷,就是迭代时间长,尤其对处理大数据,需要花费很长时间才能达到收敛。针对BP网络中学习算法收敛速度慢的缺点,运用数学中埃特金加速收敛算法,对传统的BP算法进行改进,然后使用IDL语言进行汇编,最后在ENVI上进行功能的扩展,已达到适用的生产目的。

3 编写迭代函数

为了能在ENVI菜单上调用埃特金迭代收敛函数,需要在ENVI菜单中创建一个新的菜单项,并定义一个此用户函数。这个用户函数可以通过在ENVI菜单中选择这个新的菜单项来进行调用。具体工程如下:

①在现有的ENVI菜单基础上创建新的功能菜单,首先用文本编辑器打开envi.men文件,添加如下部分:

PRO MY_PROCESS_DEFINE_BUTTONS, buttonInfo

COMPILE_OPT IDL2

ENVI_DEFINE_MENU_BUTTON, buttonInfo, VALUE = ‘New Function’, $

/MENU, REF_VALUE = ‘Supervised’, REF_INDEX = 0, $

POSITION = ‘last’

ENVI_DEFINE_MENU_BUTTON, buttonInfo, VALUE = ‘Function1’, $

UVALUE = ‘Function 1’, EVENT_PRO = ‘my_process_event’, $

REF_VALUE = ‘New Function’

END

如果ENVI已经打开,需要关闭并重新启动ENVI,然后在ENVI主菜单上,会看到Classification菜单下的Supervised的子菜单内增加了新的菜单“New Function”。

②编写迭代函数。在运行ENVI的IDL开发环境中,迭代功能函数的部分代码如下:

ENVI_NEURAL_NET_DOIT

FUNCTION bm_func,X,[X0,X1……Xn]

nx=Xn,

t = FINDGEN(nx-X)

… … … … …

4 实验过程与精度评定

本实验主要运用ENVI4.8版本图像处理软件进行图像分类,使用的数据是网上下载的经过数据预处理后的Landsat5 TM研究区影像。调用迭代函数开始进行基于神经网络的遥感图像分类,其分类时间所反映的进度条如图1所示,以及最终的迭代均方根训练函数如图2所示。

在神经网络分类结束后,所花费时间很短,分类速度很快,具体的分类结果图如图3所示。对调用迭代函数的神经网络分类结果进行精度分析,使用混淆矩阵,具体报表如图4所示。从混淆矩阵报表可知,总体分类精度为94.2374%,其Kappa系数为0.9272,分类效果很好,精度很高,满足要求。

5 结束语

ENVI上调用迭代函数的神经网络总体上比原来的神经网络分类要优越,其鲜明的特色就是分类速度快,精度也高。这大大提速原有的神经网络分类速度,尤其在处理大数据优越明显。但是ENVI上仍存在神经网络分类单一化现象,怎样使其减少人为的干预,使其更智能化是今后的研究趋势。

参考文献:

[1]董彦卿.IDL程序设计—数据可视化与ENVI二次开发[M].北京:高等教育出版社,2012.

神经网络的反向传播范文3

关键词:BP神经网络;计算机实验室管理;评价指标分析

中图分类号:TP183 文献标识码:A 文章编号:1674-7712 (2013) 04-0088-01

一、BP神经网络

从本质上讲,BP神经网络算法是以网络误差平方和为目标函数,运用梯度法求目标函数达到最小值的算法。纠错原则是BP算法最为基本的一个原理,将网络输出的误差进行反向传播,运用梯度下降法,对网络的连接权值进行调整和修改,使其误差最小。在学习过程中,BP算法可以划分为两个阶段,一是前向计算,一是误差反向传播。在这里我们主要通过具体的来分析,假设一个两层的 BP神经网络,其输入为p,输入神经元有r个,隐含层内神经元有s1个,激活函数为F1,输出层内有神经元s2个,对应的激活函数为F2,输出为A,目标矢量为T,那么信息在进行正向传递时,具体的情况如下:

二、模型设计

其次是模型设计。BP神经网络的建立,在确定了相关指标体系以后,就需要将确定相关的结点数,如输入结点数、隐含结点数、输出结点数、每一层的结点数等,在起初建立时,需要根据初始网络参数,适当地调整网络结构,通过网络训练,使得整个学习过程更加稳定,与此同时,对于指定的误差进行调整,并且规定最大值,并且利用相关的测试数据来进行BP神经网络的优化处理,确定其达到设计的准确性与规范性,那么一个BP神经网络模型就建立起来了。第三是模型确立。对于模型的确立主要体现在三个方面,这里作简单分析,一是输入输出神经元个数确立,通常情况下,实验室管理指标主要有13个二级指标和4个一级指标,其中,这13个指标就是输入神经元的个数,同时将输出的神经元作业评价的结果,由于评价的结果只有一个,那么输出神经元的个数也只有1个。二是隐含神经元个数确立。

三、仿真分析

根据以上分析我们知道,BP神经网络算法是以网络误差平方和为目标函数,运用梯度法求目标函数达到最小值的算法。为此,对于仿真分析,需要根据纠错原则,确定网络输出的误差的反向传播,并且结合梯度下降法,优化网络的连接权值,调整和修改误差值,通过Matlab软件编程,构造BP神经网络,确定指标体系后,确定相关的结点数,设置权值,nntool中input的value设置,根据初始网络参数,调整网络结构,并指定的误差进行调整,利用相关的测试数据来进行BP神经网络的优化处理,确定其达到设计的准确性与规范性。

四、总结

总而言之,BP神经网络评价模型的建立,不仅可以促进实验室管理的规范化,而且有利于提高实验室日常管理水平,因此,要对其模型建立进行具体分析,优化其结构和和功能,最大限度发挥其价值和作用。

参考文献:

[1]李俊青,陈鹤年,严丽丽,季文天.基于BP神经网络的计算机实验室管理评价指标[J].实验室研究与探索,2011(04):71-73.

神经网络的反向传播范文4

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

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

1.火灾探测系统

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

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

2.1 模糊神经网络的应用

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

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

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

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

μ(x) =

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

图1 隶属度函数

2.3神经网络模型

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

图2 BP前馈网络模型

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.2 Matlab 网络仿真

模糊规则层设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,此时的网络输出应该是非常精确的。这说明将模糊神经网络理论应用在火灾报警系统中,有效地提高系统精度和减少误报率,并且充分发挥了它的自学习、自适应能力,使系统的灵敏度提高,同时又提高了系统的智能化程度。

参考文献:

神经网络的反向传播范文5

关键词:颅内压;遗传算法;人工神经网络;脑血流动力学参数

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

文章编号:1004-373X(2010)04-170-02

Intracranial Pressure Monitoring Based on Genetic Algorithm and Artificial Neural Network

LU Lirong,ZHOU Jinyang,NIU Xiaodong

(Changzhi Medical College,Changzhi,046000,China)

Abstract:A novel intracranial pressure monitoring based on genetic algorithm and artificial neural networks after analyzing the advantages and disadvantages of the intracranial pressure detection method at present.Building a model by using back propagation neural network and optimizing by using genetic algorithm can restrain the disadvantages that the speed of the back propagation algorithm is slowly and the back propagation algorithm is easy to fall into local extremum.The needed intracranial pressure can be gained by measuring 4~6 cerebral hemodynamic parameters and inputting to this intracranial pressure prediction model.

Keywords:intracranial pressure;genetic algorithm;artificial neural network;cerebral hemodynamic parameter

0 引 言

颅内压(Intracranial Hypertension,ICH)增重时将导致脑疝,并可能危及生命[1]。颅内压的检测是颅脑疾病处理的重要前提,它可以帮助医生判断患者颅脑损伤程度并采取降压措施[2]。目前临床采用的成熟的监测颅内压技术均为有创方法,例如,腰椎穿刺,脑室内检测等。虽可较准确地反映颅内压水平,但存在以下弊端:操作繁杂、并发症较多;不适宜长期监测;仅可获得颅内压值,不能从颅内压动力学内在机制的角度,分析ICH为何种关键因素所致[3]。近年来,国内外已开展了多项无创性颅内压监测技术的基础与应用研究。以建立数学模型的方法,无创监测颅内压为其中一项活跃的研究。

人工神经网络[4](Artificial Neural Networks,ANNs)是对人脑神经网络在结构、功能及某些基本特性理论的抽象、简化和模拟,而构成的一种信息处理系统,适合解决各类拟合、预测等复杂问题。误差反向传播(Back Propagation,BP)神经网络是目前应用最广泛也是发展最成熟的一种神经网络模型。尽管在实际工作中网络得到了大量应用,但它也存在一些严重的问题:由于训练采用简单的梯度下降法进行优化训练,算法效率低下,且易陷入局部极值,造成训练失败[5,6]。

遗传算法[7](Genetic Algorithm,GA)是模拟生物在自然环境中的遗传和进化过程而形成的一种全局搜索算法。具有更好的鲁棒性。

在此针对BP神经网络的缺点,将GA与BP算法相结合,建立各相关参数与颅内压关系的数学模型,实现最优化的颅内压监控预测模型。

1 神经网络建模

大量的研究表明,颅内压值与平均动脉压、大脑中动脉血流速度、阻力指数等脑血流动力学参数有较好的定量关系[3]。即:设颅内压值为y,脑血流动力学参数平均动脉压、大脑中动脉血流速度、阻力指数等的值分别为x1,x2,x3…,则有:

y=f(x1,x2,x3)(1)

人工神经网络理论已经证明,三层BP神经网络可以逼近任何函数[8,9]。因此可以利用BP神经网络来建立颅内压模型从而可以最优化地逼近式(1)这个函数。

图1为利用BP反向传播神经网络建立颅内压模型[10]。平均动脉压、大脑中动脉血流速度、脉动指数、阻力指数等脑血流动力学参数作为输入层,隐含层的神经元个数由实验反复确定,直到网络输出的颅内压值与实验所得的颅内压值之间的误差在所允许的范围,此颅内压模型确定。

图1 BP神经网络建立颅内压模型

2 遗传算法优化

BP神经网络算法虽然具有简单和可塑性强的优点,但是收敛速度慢,且常受局部极小点的困扰,不利于网络的优化。而GA可以克服此缺点。因此用GA来对此模型进行优化。流程图如图2所示。

图2 GA优化流程图

具体步骤为:

(1) 初始化:随机产生N组在不同实数区间内取值的初始网络权值。

(2) 预训练:用 BP算法对N组初始权值分别进行预训练。

(3) 判断是否满足精度要求:若经过预训练后N组权值中至少已有一组满足精度要求,则算法结束;否则转入步骤(4)。

(4) 生成新权值:分别依据经过预训练的上述N组权值所对应的上下限确定取值区间,在区间内随机生成r×N组新的权值,连同经过预训练的N组权值一起,构成完整的基因群体,生成共(r+1)×N组权值。

(5) 遗传操作:对这(r+1)×N组权值进行选择、交叉、变异等遗传操作。

(6) 判断算法是否结束:如果经过步骤(5)的操作已经至少得到一组满足精度要求的权值,则算法结束;否则从经过遗传操作的这(r+1)×N组中选出N组较好的,恢复到步骤(2)。

3 结 语

在此利用遗传算法和人工神经网络建立颅内压的预测模型。通过测量4~6个脑血流动力学参数,输入进此模型,即可得到所需颅内压值。通过建立此模型,为相关临床医学专业医师无创、实时、准确监测颅内压提供了一种新方法。

参 考 文 献

[1]郭玉璞.脑血管病的病理学[M].北京:科学出版社,1993.

[2]刘常春,曹佃国,姜安宝,等.一种新的无创检测颅内压的数学模型[J].山东大学学报:工学版,2004,34(6):62-65.

[3]曾高,焦风,李运海,等.用数学模型实现无创颅内压监测的现状与应用前景[J].中国脑血管病杂志,2007(9):418-420.

[4]高隽.人工神经网络原理及仿真实例[M].北京:机械工业出版社,2005.

[5]姜谙男,赵德孝,孙豁然,等.进化神经网络在矿山入选品位优化中的应用[J].矿业研究与开发,2004,24(4):44-46.

[6]何翔,李守巨,刘迎曦,等.基于遗传神经网络的坝基岩体渗透系数识别[J].岩体力学与工程学报,2004,23(5):751-757.

[7]周明,孙树栋.遗传算法原理及应用[M].北京:国防工业出版社,1999.

[8]Homik K,Stinchcombe M,White H.Mulilayer Feedforward Networks are Universal Approximators[J].Neural Networks,1989,2(5):359-366.

神经网络的反向传播范文6

关键词:神经网络、BP算法、工程快速估价

引言

现在经济的快速发展,建筑市场的管理机制逐步完善,大中型工程复杂,施工周期长,对施工方柱子投标阶段及时准确的做出项目的最终成本成为工程造价管理中重要内容,本文中应用神经网络原理,通过编写MATLAB程序,针对多层现浇框架混凝土写字楼,通过调整计算权值,计算反向传播误差,输出计算结果和绘制误差曲线误差,将误差控制在10%以内,从而对2011年进行预测。

1基于神经网络预测原理

1.1正向建模[3]

正向建模是指训练一个神经网络表达系统正向动态的过程,这一过程建立的神经网络模型称为正向模型。正向模型的结构如图4-1所示,其中神经网络与待辨识上网系统并联,两者的输出误差用做网络的训练信号。显然这是一个典型的有教师学习问题,实际系统作为教师,向神经网络提供算法所需的期望输出。当系统是被控对象或传统控制器时,神经网络多采用多层前向网络的形式,可直接选用BP网络或其它的各种变形。当系统为性能评价器时,则可选取再励学习算法,这时网络既可以采用具有全局逼近能力的网络,如多层感知器,也可采用具有局部逼近能力的网络,如小脑模型关节控制器(CMAC)等。

1.2BP神经网络结构

BP神经网络是一种具有三层或三层以上神经元的神经网络,包括输入层、中间层和输出层,上下层之间实现全连接,而每层神经元之间无连接。当一对学习样本提供给网络后,神经元的激活值从输入层经各中间层向输出层传播,在输出层的各神经元获得网络的输入响应。接下来,按照减少目标输出与实际输出之间误差的方向,从输出层反向经过各中间层回到输入层,从而逐层修正各种连接权值,即“误差反向传播算法”,即BP算法。

2基于BP神经网络的工程快速估价方法

2.1BP网络结构

房屋建筑的任何一个特征都会影响到总的预算,论文中选取了写字楼类建筑物为例进行研究,选定现浇钢筋混凝土框架结构多层写字楼,基础类型、楼面工程、墙体工程、门窗形式、房间组合、层数、外墙装饰共计七个对工程造价起主要影响作用的因素,将这些因素作为神经网络的输入向量,建立神经网络模型,首先进行网络训练,这时的BP网络共计三层,其中输入层含有7个变量,中间层采取常用经验公式得到15个,输出为1个变量即为写字楼的米造价。

2.2数据归一化处理

程序调用数据之前,为保证所有的数据均落在[0,1]之间,首先需要进行归一化处理,论文的程序中采取的归一化处理方式是使每一影响因素中同时处理这一因素中的最大值或偏大于最大值,处理后的数据调入程序后,更方便计算,同时使得误差更小。

2.3BP网络程序实现

论文中的数据是搜集到的已建现浇混凝土框架结构写字楼工程的工程造价数据,选取30组作为测试样本,其中的20组作为预测样本,通过进行误差的求解和绘制误差曲线得出结果,过程见图2-1

function main()

SSE1=0;

DelthadW1Ex=0;

DelthadW2Ex=0;

SamNum=30;

TestSamNum=20;

HiddenUnitNum=15;

InDim=7;

OutDim=1;

%显示计算结果

i

W1=W1Ex(:,1:InDim)

B1=W1Ex(:,InDim+1)

W2

B2=W2Ex(:,1+HiddenUnitNum)

相对误差a:

a =

0.1080 0.0902 -0.0148 -0.0227 0.0327 0.0198 0.0096 0.1182 0.0164 0.0857 -0.0221 0.0794 -0.0368 0.0260 0.0306 0.0338 0.0562 0.0467 0.0736 0.0638

误差曲线:

3结论

应用BP算法,通过编写MATLAB程序,如果搜集得到的历史数据真实,通过调整权值,能够将误差控制在10%,能够很好的解决工程快速估价问题。

参考文献:

[1] 段晓牧. 基于RBF神经网络的非确定性工程投资估算新方法的研究.[D]