论文部分内容阅读
【摘 要】 BP神经网络是一种基于模型训练误差梯度降低的具有较强非线性映射能力的模型,它模拟了人脑神经网络的工作原理,对一系列的输入信息进行处理和传递最终得到期望的输出成果。在大坝中,其变形主要受到水位高度、温度、气压等因素的影响,这些影响因素可综合反映为大坝变形随时间而变化的规律,我们利用BP神经网络建立变形影响因子与大坝变形量之间的映射关系,从而实现对大坝变形的预测分析。
【关键词】 BP神经网络;大坝变形预测;模型精度;网络训练
一、BP神经网络模型的原理
BP神经网络是一种基于误差逆向传播从而修正网络参数的模型,网络训练的过程就是一个不断学习样本数据中输入量和输出量之间关系的过程。该过程主要分为两个步骤,第一个步骤是输入信息的正向传播过程,该过程中样本输入量沿着网络经输入层、隐含层传输至输出层,得到输出层的输出量,并将该输出量与期望输出值进行比较;第二个步骤是模型误差的逆向传播过程,该过程中模型误差经输出层、隐含层传递至输入层,因此修正输出层阈值、隐含层至输出层连接权值、隐含层阈值、输入层至隐含层连接权值。
重复以上过程直到网络训练误差达到预先规定的极小值或者训练次数达到要求,即完成BP神经网络模型的训练过程。模型训练完成后,即表示建立了样本数据中的输入和输出的对应关系,给定相应的输入值,即可通过BP神经网络模型计算得到对应的预测输出信息。
二、大坝变形预测中BP神经网络模型的结构及训练过程
2.1网络结构
BP神经网络由输入层、隐含层以及输出层构成,其中隐含层可以为多层,据研究,一个三层BP神经网络可模拟表示任一连续函数,因此本文中隐含层设置为一层。BP神经网络模型结构见图1。
输入层节点的个数由输入因子的个数决定,输入信息经归一化处理后直接进入输入层。在大坝变形预测中,输入信息主要为累计时间。因此可将输入层设置为三个节点。中间层的节点个数需要根据经验公式确定,经验公式可参考式(1)。输出层的个数由输出信息的个数决定,在本文中,输出信息为大坝变形值,因此将输出层设置为一个节点。
图1 BP神经网络结构示意图
(1)
2.2网络训练
BP神经网络的结构设置完成后,由于网络中各层的连接权值的初始值是随机生成的0~1之间的极小数,此时网络并不具备样本数据中输入和输出的对应关系。因此需要用样本数据取训练网络,不断调整权值,直到网络学习完成样本输入和输出之间的映射关系。网络训练的一般过程如下:
(1)样本归一化。由于样本中的输入和输出量之间具有单位和量级上的区别,因此不能直接用于网络的训练。首先应当对样本数据进行归一化,从而消除数据不同单位和不同量级的影响。样本数据归一化方法较多,可以将数据归一化至(0,1)区间,也可归一化至(-1,1)区间,具体根据网络中的激活函数而选择归一化方法。本文采用归一化至(-1,1)区间的方法,公式如下:
(2)
式中,分别为归一化前样本中最大和最小值,分别为归一化前后的样本值。
(2)网络参数初始化。网络中的参数包括有输入层至中间层的连接权值,中间层各节点的阈值,中间层至输出层的连接权值,输出层各节点的阈值。随机赋予各网络参数(-1,1)之间的随机数。本文中各节点激活函数均采用S型反正切函数,公式如下:
(3)
(3)将输入信号沿着输入层传递至中间层,根据两层之间的权值与中间层阈值计算中间层的输出值。
(4)继续将输入信号沿着中间层传递至输出层,根据两层之间的权值与输出层阈值计算输出层的输出值。
(5)将上一步得到的输出层的输出值与样本数据中的期望输出值进行比较,计算出输出层的一般化误差。
(6)将一般化误差沿着输出层反向传递至中间层,计算中间层一般化误差。
(7)网络参数调整。根据(5)、(6)两步得到的中间层和输出层一般化误差进行网络参数修正。输出层:,;中间层:,。
(8)此时已完成样本数据集中单个样本的训练,选择样本数据集中的下一个单个样本重复(3)~(7)的训练过程,直到样本数据集中每个样本均完成训练。计算网络全局误差。
(9)重复(3)~(8)步骤,直到网络全局误差小于预先设定的极小值,或者网络训练次数达到预先设定的最大训练次数。
三、实例分析
2009年2月至11月对某大坝某监测点位移情况进行了十期监测,得到了大坝随时间的变形规律。监测数据如表1。
表1 某大坝变形监测点实测数据
监测时间 期次 位移实测值/mm
2009-2 1 1.22
2009-3 2 1.81
2009-4 3 1.88
2009-5 4 2.21
2009-6 5 2.41
2009-7 6 3.20
2009-8 7 2.58
2009-9 8 1.62
2009-10 9 1.52
2009-11 10 1.88
现采用前五期数据作为BP神经网络的训练样本,6~10期数据用于检验BP神经网络的预测效果。BP神经网络模型本身不具备数据误差的检核功能,因此在进行预测之前,需要对实测数据进行处理,确保数据的可靠性。
采用标题2中的训练方法进行BP神经网络训练,得到的训练误差曲线图如下:
图2 BP神经网络训练误差曲线
从图2中可以看出,BP神经网络具有收敛速度快,全局误差小的特点。本次训练中,训练次数为1741次时便达到训练目标,并且从图中可以看出BP神经网络具有较好的训练效果。为了进一步检验BP神经网络的预测质量,现在利用训练好的BP神经网络对6~10期数据进行预测,并与实测数据进行对比分析,预测数据见表2。
表2 BP预测值与实测值对比
监测时间 期次 位移实测值/mm BP预测值/mm 预测误差/mm
2009-7 6 3.20 3.34 0.14
2009-8 7 2.58 2.88 0.30
2009-9 8 1.62 1.90 0.28
2009-10 9 1.52 1.55 0.03
2009-11 10 1.88 1.61 -0.27
图3 模型预测误差效果图
从以上图表中可以看出,BP神经网络预测值与实测值吻合情况较好,之间的误差均在1mm以内,表明BP神经网络具有良好的预测效果。
四、结束语
BP神经网络是一种较好的预测模型,它并不需要预先知道样本数据的映射规律也可进行训练。同时BP神经网络具有收敛速度快,预测准确的特点,因此可在大坝变形预测中进行应用。但同时BP神经网络也具有学习速度慢,容易陷入局部极小值的问题,因此探讨BP神经网络模型的改进和优化也是一个十分热门的话题,此处可待进一步研究。
参考文献:
[1]沈卓君.基于改进神经网络的大坝安全监控模型[J].安徽农业科学.2008(12)
[2]翁静君,华锡生.改进的BP神经网络在大坝安全监控中的应用[J].水电自动化与大坝监测.2006(04)
[3]吴秀娟,李征航.基于BP网络的大坝变形分析与预报[J].测绘信息与工程.2009(05)
[4]张华丽,商健林.基于神经网络的大坝变形模型分析[J].公路交通科技(应用技术版).2010(10)
[5]缪新颖,褚金奎,杜小文.LM-BP神经网络在大坝变形预测中的应用[J].计算机工程与应用.2011(01)
[6]刘健,蔡建军,程森.基于遗传神经网络的大坝变形预测模型研究[J].山东大学学报(工学版).2006(02)
【关键词】 BP神经网络;大坝变形预测;模型精度;网络训练
一、BP神经网络模型的原理
BP神经网络是一种基于误差逆向传播从而修正网络参数的模型,网络训练的过程就是一个不断学习样本数据中输入量和输出量之间关系的过程。该过程主要分为两个步骤,第一个步骤是输入信息的正向传播过程,该过程中样本输入量沿着网络经输入层、隐含层传输至输出层,得到输出层的输出量,并将该输出量与期望输出值进行比较;第二个步骤是模型误差的逆向传播过程,该过程中模型误差经输出层、隐含层传递至输入层,因此修正输出层阈值、隐含层至输出层连接权值、隐含层阈值、输入层至隐含层连接权值。
重复以上过程直到网络训练误差达到预先规定的极小值或者训练次数达到要求,即完成BP神经网络模型的训练过程。模型训练完成后,即表示建立了样本数据中的输入和输出的对应关系,给定相应的输入值,即可通过BP神经网络模型计算得到对应的预测输出信息。
二、大坝变形预测中BP神经网络模型的结构及训练过程
2.1网络结构
BP神经网络由输入层、隐含层以及输出层构成,其中隐含层可以为多层,据研究,一个三层BP神经网络可模拟表示任一连续函数,因此本文中隐含层设置为一层。BP神经网络模型结构见图1。
输入层节点的个数由输入因子的个数决定,输入信息经归一化处理后直接进入输入层。在大坝变形预测中,输入信息主要为累计时间。因此可将输入层设置为三个节点。中间层的节点个数需要根据经验公式确定,经验公式可参考式(1)。输出层的个数由输出信息的个数决定,在本文中,输出信息为大坝变形值,因此将输出层设置为一个节点。
图1 BP神经网络结构示意图
(1)
2.2网络训练
BP神经网络的结构设置完成后,由于网络中各层的连接权值的初始值是随机生成的0~1之间的极小数,此时网络并不具备样本数据中输入和输出的对应关系。因此需要用样本数据取训练网络,不断调整权值,直到网络学习完成样本输入和输出之间的映射关系。网络训练的一般过程如下:
(1)样本归一化。由于样本中的输入和输出量之间具有单位和量级上的区别,因此不能直接用于网络的训练。首先应当对样本数据进行归一化,从而消除数据不同单位和不同量级的影响。样本数据归一化方法较多,可以将数据归一化至(0,1)区间,也可归一化至(-1,1)区间,具体根据网络中的激活函数而选择归一化方法。本文采用归一化至(-1,1)区间的方法,公式如下:
(2)
式中,分别为归一化前样本中最大和最小值,分别为归一化前后的样本值。
(2)网络参数初始化。网络中的参数包括有输入层至中间层的连接权值,中间层各节点的阈值,中间层至输出层的连接权值,输出层各节点的阈值。随机赋予各网络参数(-1,1)之间的随机数。本文中各节点激活函数均采用S型反正切函数,公式如下:
(3)
(3)将输入信号沿着输入层传递至中间层,根据两层之间的权值与中间层阈值计算中间层的输出值。
(4)继续将输入信号沿着中间层传递至输出层,根据两层之间的权值与输出层阈值计算输出层的输出值。
(5)将上一步得到的输出层的输出值与样本数据中的期望输出值进行比较,计算出输出层的一般化误差。
(6)将一般化误差沿着输出层反向传递至中间层,计算中间层一般化误差。
(7)网络参数调整。根据(5)、(6)两步得到的中间层和输出层一般化误差进行网络参数修正。输出层:,;中间层:,。
(8)此时已完成样本数据集中单个样本的训练,选择样本数据集中的下一个单个样本重复(3)~(7)的训练过程,直到样本数据集中每个样本均完成训练。计算网络全局误差。
(9)重复(3)~(8)步骤,直到网络全局误差小于预先设定的极小值,或者网络训练次数达到预先设定的最大训练次数。
三、实例分析
2009年2月至11月对某大坝某监测点位移情况进行了十期监测,得到了大坝随时间的变形规律。监测数据如表1。
表1 某大坝变形监测点实测数据
监测时间 期次 位移实测值/mm
2009-2 1 1.22
2009-3 2 1.81
2009-4 3 1.88
2009-5 4 2.21
2009-6 5 2.41
2009-7 6 3.20
2009-8 7 2.58
2009-9 8 1.62
2009-10 9 1.52
2009-11 10 1.88
现采用前五期数据作为BP神经网络的训练样本,6~10期数据用于检验BP神经网络的预测效果。BP神经网络模型本身不具备数据误差的检核功能,因此在进行预测之前,需要对实测数据进行处理,确保数据的可靠性。
采用标题2中的训练方法进行BP神经网络训练,得到的训练误差曲线图如下:
图2 BP神经网络训练误差曲线
从图2中可以看出,BP神经网络具有收敛速度快,全局误差小的特点。本次训练中,训练次数为1741次时便达到训练目标,并且从图中可以看出BP神经网络具有较好的训练效果。为了进一步检验BP神经网络的预测质量,现在利用训练好的BP神经网络对6~10期数据进行预测,并与实测数据进行对比分析,预测数据见表2。
表2 BP预测值与实测值对比
监测时间 期次 位移实测值/mm BP预测值/mm 预测误差/mm
2009-7 6 3.20 3.34 0.14
2009-8 7 2.58 2.88 0.30
2009-9 8 1.62 1.90 0.28
2009-10 9 1.52 1.55 0.03
2009-11 10 1.88 1.61 -0.27
图3 模型预测误差效果图
从以上图表中可以看出,BP神经网络预测值与实测值吻合情况较好,之间的误差均在1mm以内,表明BP神经网络具有良好的预测效果。
四、结束语
BP神经网络是一种较好的预测模型,它并不需要预先知道样本数据的映射规律也可进行训练。同时BP神经网络具有收敛速度快,预测准确的特点,因此可在大坝变形预测中进行应用。但同时BP神经网络也具有学习速度慢,容易陷入局部极小值的问题,因此探讨BP神经网络模型的改进和优化也是一个十分热门的话题,此处可待进一步研究。
参考文献:
[1]沈卓君.基于改进神经网络的大坝安全监控模型[J].安徽农业科学.2008(12)
[2]翁静君,华锡生.改进的BP神经网络在大坝安全监控中的应用[J].水电自动化与大坝监测.2006(04)
[3]吴秀娟,李征航.基于BP网络的大坝变形分析与预报[J].测绘信息与工程.2009(05)
[4]张华丽,商健林.基于神经网络的大坝变形模型分析[J].公路交通科技(应用技术版).2010(10)
[5]缪新颖,褚金奎,杜小文.LM-BP神经网络在大坝变形预测中的应用[J].计算机工程与应用.2011(01)
[6]刘健,蔡建军,程森.基于遗传神经网络的大坝变形预测模型研究[J].山东大学学报(工学版).2006(02)