基于改进的BP神经网络算法在基坑形变监测中的应用研究

2021-02-15 07:53徐玉玲王伟丽
经纬天地 2021年6期
关键词:动量基坑神经网络

徐玉玲 王伟丽

(1.江西省自然资源政策调查评估中心,江西 南昌 330000;2.自然资源部第一航测遥感院,陕西 西安 710000)

0.引言

形变是指变形体在各种荷载作用下,其形状、大小及位置在时间域和空间域的变化[1]。当基坑、桥梁、高层建筑物等形变体所承受的应力超过一定范围时,可能会造成灾难性的后果,从而给国家和人民造成不可挽回的损失。随着社会的发展,近年来人口逐渐向城镇集中,越来越多的人选择在城市生活和工作,因此城市的人口密度也在逐年增加。为了缓解住房、交通等带来的压力,缓解城市土地资源紧缺的难题,城市综合体开发趋向于立体化和多元化,对地下空间的开发力度在逐年增加,比如大型商业综合体的地下商场、地铁、高层超高层建筑的地下车库等,从而出现了大量的基坑工程。这类基坑工程毗邻人类活动区,而此类基坑施工周期短、开挖深度大、安全风险高,一旦出现问题,影响范围广。近年来,由于监测不及时和监测手段的不完善,出现了多起基坑坍塌事故,造成了一定的人员伤亡和严重的经济损失。针对此类深大基坑,通常需要及时进行安全监测,将观测的变形数据进行统计分析和变形预测,以研究变形发生的原因、变形特质及三维特征点随时间与空间的变化规律与变化趋势,对基坑的及时防护和相关行业决策具有重大意义。

近年来,学者们为研究和预测形变付出了大量的心血,打下了丰富的基础,总结出广泛的研究方法,其中适用范围比较广泛的有灰色模型分析法、时间序列分析方法、回归分析法、人工神经网络方法,预测的精度和可靠性也在不断地提高。人工神经网络具有无限接近非线性关系的能力,同时具备并行分布、高度鲁棒性和容错能力,因此可以学习或自适应未知的系统,同时能够处理所有的定量或定性知识。根据以上特性,目前其广泛应用于预测。尤其是随着大数据的应用,其在预测领域发挥着越来越重要的作用。其中,BP(Back Propagation)网络算法因其结构简洁、操作灵活等优势,更加广泛地应用于神经网络模型预测中[2]。

采用BP神经网络改进算法生成的形变预测模型更加符合实际形变过程。本文指出该模型的预测结果略优于传统神经网络模型的预报结果,这对于安全运营和经济发展具有深远的意义。

1.原理概述

1.1 BP神经网络原理

普遍使用的BP神经网络是由多层结构组成的,一般在三层以上,各个层之间没有反馈信息传递,属于前向量网络。

首先建立学习模式,将学习模式传递给BP神经网络,激活的神经元传递值首先通过输入层,然后经过隐含层,再从隐含层到达输出层。在输出层的时候,获得各自的传递误差值,得出误差减小的方向,然后将误差通过输出层传递到隐含层,最后再回到输入层。传递的过程中在每层按照设计好的训练迭代,随时修正连接权值。此过程一直重复进行,直到误差降低到一定的值域,到达收敛范围,则BP神经网络的学习训练流程结束[3]。

神经元模型中左侧为输入层,可包含n个处理单元,中间部分为隐含层,含有p个处理单元。生物神经元和神经元模型对比(如图1所示):

图1 生物神经元和神经元模型对比图

输入层和隐含层之间为全连接关系,其函数如式(1)所示:

隐含层的各处理单元构成了输入向量由输入层各处理单元的输出列向量,如式(2)所示:

其中,隐含层各个处理单元的阈值为θj,j=1,2,…,p,可以得出隐含层各个处理单元接收的输入加权和函数如式(3)所示:

转移函数决定了各隐含层处理单元的输出值。其中,Sigmod函数通常被用来作为BP神经网络的转移函数。其函数如式(4)所示:

可以得出隐含层的各处理单元的输出函数如式(5)所示:

1.2 存在的问题

BP神经网络具有非常优秀的非线性的映射能力,但是在收敛速度、收敛极值、理论指导方面还是存在一些问题:首先,新建好学习模式之后,在学习的过程中,有时候需要上千次的迭代才能达到收敛值域,速度比较慢;其次,在训练的过程中,容易将局部极小值和全局极小值混淆,造成提取的结果并非全局极小值,而是局部极小值;最后,BP神经网络的学习训练,具有黑盒属性,学习模型的建立缺乏成熟系统的理论依据和原理支撑,主要是根据研究者的实际训练经验。

1.3 BP神经网络算法的改进

研究人员针对BP神经网络在收敛速度、收敛极值等方面存在的问题做了很多的科研工作,如,限幅BP算法、积累误差校正法、增加动量项的BP算法、学习速率自适应调整算法等。本文在此主要介绍增加动量项的BP算法:

BP神经网络模型算法迭代次数多,收敛速度慢,主要是因为在连接权值的时候,没有调整和记录上一次的误差梯度,只调整当前误差的梯度下降方向,这样会使模型在训练的时候容易导致训练结果不稳定,从而增加收敛时间。为了提高收敛速度来节省收敛时间,研究人员在训练的时候,按照一定的比例加入了动量项[4],即每一次训练之后的调整量值。其调整后的函数如式(6)所示:

式(6)中,ηΔWü(n-1)代表动量项;η(n)为动量系数,其中,0<η<1;n是学习次数。

式(6)中,为了使连接权值的调整随着训练过程进行而逐渐沿平均方向变化[5],将动量项系数设置为随着训练和学习的过程逐渐改变的变量。这样在训练学习的时候,可以调整训练的误差传递方向,对骤然起伏的数据起到阻尼作用,减少震荡趋势。

2.工程实例

某工程为在建超高层住宅和周围商业综合体及地下车库基坑。该地块地势由东南向西北逐渐变高,基坑南北宽约63m,东西长约98m,基坑深度约10m。监测点布设(如图2所示),该基坑的观测周期为6~26个月。地层有黏土、砂土和人工填土。以基坑基准点J2和J1构成的方向为纵坐标(X)方向,与其垂直的方向为横坐标(Y)方向建立独立坐标系,对布设点位采用水平位移观测和垂直位移观测。已知点坐标值(如表1所示):

图2 基坑监测点位布设示意图

表1 基准点三维坐标 单位:m

2.1 水平位移监测

以基准点J1和J2为已知点,此次形变监测采用的是徕卡TS30高精密全站仪,对基坑的水平位移点和三维监测点采用闭合导线测量的方式进行布测,然后通过内业计算出各点位的平面坐标。

2.2 垂直位移监测

基准点J2为已知高程点,对垂直位移点和三维检测点以二等水准测量的标准,测设闭合水准路线,然后通过内业解算,获得测设点位的高程。

2.3 实验详情

此次实验,只选取该工程中垂直位移的观测数据作为实验数据,进行BP神经网络模型的学习训练和预测。将第一个观测周期的数据作为此次实验数据的基础值,将各观测周期的值与基础数据做较差,得到累积变化量。然后在观测周期之内,随机选取基坑竖向位移观测点上的累计变化量、观测时间和观测点地层作为实验数据。本文设计的BP神经网络中,输入层为测量时间、荷载和地层,输出层为总的沉降量。在进行数据的BP神经网络预测时,将结构施工期和建筑装修期的总的沉降量作为一种输出形式,在这里不作详细地区分。

2.4 建立相应的BP网络

本文BP神经网络算法是基于Matlab环境下进行开发[5],其采用函数mNewBP建立算法模型,以tansig函数和purelin函数为神经单元的传递函数,反传递函数设置为traingdm函数,(带动量的批处理梯度下降法)。重要函数和重要程序逻辑解释说明如下:

P=[01,01,01,01,01,01,01,02,02,02,02,02,02,03,03;13,08,12,10,11,12,14,10,23,26,25,25,24,08,08;16,26,20,20,25,20,18,14,27,28,28,28,28,09,13];%P为输入矢量,值代表每一个编号的土质情况,测量时间和荷载的层高

T=[21.206,13.290,25.866,21.531,22.800,8.187,19.713,12.587,33.538,18.942,21.688,28.514,27.413,6.515,7.420];%T为目标矢量,值代表每一个观测点位的沉降量

mTranFun1=′tansig′; %传递函数tansig

mTranFun2=′purelin′; %传递函数purelin

mIn_TranFun2=′purelin′; %反传递函数traingdm

BPNets=mNewBP(Min_Max(P),[3,1],{mTranFun1,mTranFun2},mIn_TranFun2);

%传入传递函数和反传递函数,创建BP神经网络

Minput_Wts=BPNets.IW{1,1};

%为BP神经网络指定当前输入层权值

minput_Bias=BPNets.b{1};

%为BP神经网络指定当前输入层阈值

mlayer_Wts=BPNets.LW{2,1};

%指定当前输出层权值

mlayer_Bias=BPNets.b{2};

%指定当前输出层阈值

2.5 BP神经网络参数设置

定义好函数和运行逻辑之后,对BP神经网络进行网络训练,训练中将函数的迭代次数、学习率、最大训练次数、训练精度等作为参数,可根据经验值进行调整。训练函数和训练重要逻辑过程解释说明如下:

[PN,minp,maxp,]=Premnmx(P);

%将数据归一化处理

BPNets.trainParam.show=500;

%控制在训练的时候显示迭代过程

BPNets.trainParam.epochs=10000;

%设置BP神经网络训练次数的最大值

BPNets.trainParam.max_fail=600;

%设置BP神经网络训练最大失败次数

BPNets.trainParam.min_grad=1e-10;

%设置BP神经网络训练最小梯度要求

BPNets.trainParam.lr=0.05;

%设置BP神经网络训练网络的学习率

BPNets.trainParam.goal=0.003;

夜到深处,林志依然坐在餐桌前,见紫云回来了。她穿着一件崭新的白色连衣裙,把湿衣服往盆中一扔。林志不敢多问,忙着去洗衣服,却被紫云喊住:“那件事想好了吗?”

%设置BP神经网络训练达到的精度

定义输入层,笔者在这里将神经网络的训练数据进行了分类训练,以地层不同分为三类,其中不同的地层也作为输入层。将黏土层、砂土层和人工填土的输入数据分别命名为阿拉伯数字1、2和3。首先将黏土层的数据进行了网络训练。训练结束后,我们已经有了BP神经网络模型,然后就可以进行数据预测。

2.6 BP神经网络训练和测试

2.6.1 归一化处理

数据预处理过程中对训练样本数据采用线性变换的形式进行归一化处理,该线性变换不会改变原始数据的数值排序,但可以增强数据表现、加快梯度下降进而提升收敛速度。

2.6.2 网络训练和测试

对训练好以后的网络进行仿真。所用样本数据包括输入和输出数据,通过归一化处理之后进行数据预测,预测之后,对最后的仿真结果要用反归一化函数进行反归一化处理,这时的输出数据才是所需要的预测结果。其中重要函数和逻辑解释说明如下:

Y=sim(BPNets,P);

%BPNets是经过训练的BP函数模型;P是准备网络预测的输入函数名。

%训练BP神经网络模型

A=sim(BPNets,P);

%采用sim函数对BP网络进行预测

E=T-A;

%计算仿真误差

MSE=mse(E);

%获取均方差

Y=sim(BPNets,x);

%进行最终测试

2.7 结论

本文在这里对同一组数据分别进行了无动量项的BP神经网络算法训练预测和增加动量项的BP神经网络散发训练预测。在实际应用中发现:

2.7.1 效率方面

无动量项的BP神经网络训练设置,整个训练过程的用时为1′43″;增加动量项的BP神经网络训练算法后,结果显示所用时间只有6″,通过比对可以得出:采用增加动量项的BP神经网络算法可以有效地降低迭代次数,加快神经网络的收敛速度。

2.7.2 精度方面

本文采用的数据(如表2所示)。我们可以看出,无动量项的算法精度和增加动量项的算法精度相当,这在数据监测中的误差完全可以接受,并且两次监测的数据都能够符合限差要求。

表2 无动量项BP算法与增加动量项BP算法在基坑形变监测中的比较 单位:mm

2.7.3 实际预测

采用增加动量项的BP神经网络对三组前期函数训练时参与的值和几组未参加训练的值进行预测。可以得到以下的数据(如表3所示):

表3 增加动量项的BP算法预测数据与部分实测数据对比单位:mm

3.结束语

本文将改进的BP神经网络应用于形变监测方面,以某在建超高层住宅和周围商业综合体及地下车库基坑的随机观测点为例进行训练和预测,得出采用增加动量项的BP算法,在处理复杂数据的时候,时间上明显有了提高,加快了网络的收敛速度;在精度上,没有损失,都符合限差的要求。通过工程实例进行预测对比,比对结果可以看出,增加动量项的BP算法可以很好地预测建筑物的沉降,在时间上有明显的提升,在预测精度上没有损失。所以增加动量项的BP算法在形变监测上具有比较好的应用前景,如,建筑物的形变监测、大坝的形变监测等。随着社会的发展,大型综合体的建设越来越普遍,形变监测的难度却越来越大,本文改进的BP神经网络算法还需要进一步的改进和优化,以适应更加复杂的建筑物形变的预测。

猜你喜欢
动量基坑神经网络
微型钢管桩在基坑支护工程中的应用
全套管全回转咬合桩在基坑支护中的技术应用
基坑开挖及加固方法研究
应用动量守恒定律解题之秘诀
原子物理与动量、能量的结合
动量相关知识的理解和应用
神经网络抑制无线通信干扰探究
基坑开挖对邻近已开挖基坑的影响分析
基于神经网络的拉矫机控制模型建立
复数神经网络在基于WiFi的室内LBS应用