杨昌松,邱 劲,韦 俊,胡中天,王玉立,晏 俊,吴宏杰,2,3
(1.苏州科技大学 电子与信息工程学院 江苏 苏州 215009;2.苏州科技大学 苏州智慧城市研究院 江苏 苏州 215009;3.苏州大学 江苏省大数据智能工程实验室、江苏省计算机信息处理重点实验室 江苏 苏州 215009;4.苏州科技大学 土木工程学院江苏 苏州 215011)
随着我国城市现代化水平不断开展,既有建筑的安全问题成为城市建设一大课题。建筑安全是城市稳定发展、人民幸福满意度的重要保障,如何预防既有建筑出现安全性问题也越来越受到政府的重视[1]。危房等级评估是当前既有建筑安全管理的重要手段之一。传统的既有建筑的危房等级评估采用人为评估的方式,近些年来随着机器学习方法不断进步,采用机器学习方法不仅能自动的对危房等级进行评估,避免了人为出现的异常情况,而且可以批量快速的对危房等级进行评估。旧房由于各种安全问题的长期积累成为危房,即存在长期依赖问题。危房会发生局部结构沉降和水平偏移,为避免造成人身安全事故和财产损失,一般需要对危房进行等级评估[2]。危房等级数据分类[3]如表1所列,其中,危房等级一级表示安全,可以居住;危房等级二级表示基本安全,可以居住;危房等级三级表示危险,不可居住;危房等级四级表示高危,不可居住。
表1 危房等级分类表
近些年来国内外学者对建筑物的仿真预测展开了深入研究,Xiao Li等人在文献[4]中提出了一种基于多点测量的最小二乘支持向量机对建筑位移实现监测与预测,通过更好地利用最小二乘损失函数中的等式约束,提高了数据处理效率。代洪伟在文献[5]中,通过BIM技术降低成本风险,加强建筑质量安全管理,从而提升协同管理能力。Yozo Fujino在文献[6]中通过对日本桥梁和建筑结构检测案例研究中总结出经验教训及反馈意见。但是以上方法都未很好解决长期依赖问题。
LSTM是Sepp Hochreiter和Jürgen Schmidhuber于1997年提出的一种特殊RNN,它不但解决了长序列训练过程中的梯度消失和爆炸问题,而且在解决一些工程应用的非线性问题上也有良好的适用性。由于危房等级评估存在长期依赖问题,所以采用LSTM模型。LSTM主要包含三个连续循环结构[7],每个循环结构有两个输出,其中一个即为单元状态,LSTM网络结构由输入门、遗忘门、输出门和单元状态这四个部分组成。
因为长短期记忆神经网络在预测过程中会存在信息衰减问题,所以加入了注意力机制用于缓解预测模型中的信息衰减。除此之外采用Adagrad梯度下降算法[8]对LSTM网络结构层中的权重参数进行修正,以达到提高模型预测精度的目的。最后,将AD-AB-LSTM模型在危房监测数据集上做独立测试得到了不错的效果,说明此模型的预测效果良好。
监测设施部署地址为江苏省无锡市锡山区东北塘街道东北塘社区,该地常年处于施工地段,加上房屋年代久远,成为危房的可能性大大提高。该工程占地总面积约为400 m2,覆盖十余户人家,监测概况主要如下:
(1)本工程结合物联网技术与云服务平台,A1采用HS726T-M数字型双轴倾角传感器,ISO9001:2015标准;A2~A7采用压差式静力水准仪,RS485输出,标准Modbus-RTU协议,综合精度0.05%~0.1%FS。
(2)工程围绕危房,依靠导液管、导气管与485双绞线相连,围绕周长约100 m,为预防冬季温度低,导致液体结冰,导液管中液体采用防冻液以达到精准监测目的。
(3)为准确反映危房局部结构沉降变化情况,对危房围设监测点进行监测,点位采用长螺丝固定于四周,监测点分布图如图1所示。
如图1所示,A1为危房水平位移监测点,A2-A7点为危房局部沉降监测点,将处理后的监测数据作为LSTM的输入样本,构建数据集[9],选取其中70%的样本数据作为训练样本,30%的样本数据作为预测样本。
图1 危房结构监测点分布图
其中,i∈[2,7],Ai*为最终记录至数据库的监测值,即数据集样本值;Ai为i号静力水准仪的本次监测值;A10为i号静力水准仪的基准监测值;A20为2号静力水准仪的基准监测值。
长短期记忆人工神经网络主要实现过程如下:
将监测数据作为输入,输出的结果记为x,这里的x分别与4个权重矩阵(w(f),w(i),w(j),w(o))进行矩阵点乘操作,分别得到4个需要的结果矩阵(f,i,j,o)。其中,4个w就是LSTM细胞的核心权重,训练LSTM的目的就是训练这四个权重w。对4个结果矩阵分别进行s(sigmod)操作(即(s(f),s(i),s(j),s(o))。接下来就是计算新的输出c*,
再计算新的输出h,
结果如上步骤,一次cell就计算完毕了,可以得到c*和新h*,再将本次得到的h作为本次的输出,将得到的c和h作为下次cell操作的输入。
选取无锡市危房监测工程结构位移监测点A1-A7,从2020年10月1日到2021年3月16日的沉降监测数据为依据,将时间序列作为输入样本影响因素,输出层单元个数为1,进行LSTM训练[10]。表2为LSTM的输入、输出层设计[11]。其中,A*in(0<i<8)为号监测设备n条监测位移值;A*in+1为经过神经网络训练后得到的A*in+1号监测设备的预测位移值。
表2 网络输入、输出层设计
研究发现,注意力机制能够有效缓解序列预测模型中的信息衰减[12]。注意力机制使得神经网络不仅仅依靠上下文向量,还可以在每一个时间步上考虑所有输出向量,通过权重分配,加权求和得到LSTM在当前时间步最关注的信息。
注意力机制关注的是目标序列中某一时间片上的值xtk与依赖序列xts-te=[xts,…,xte]的相关性,而相关性则是由一组权值表示。 可知目标值xk与依赖序列xts-te中的所有元素都具有相同的维度dx。将xk与xts-te映射到参数空间后:
其中,WQ是dx×dq维的查询参数矩阵;WK是dx×dk维的关键参数矩阵;WV是dx×dv维的价值参数矩阵,其中dq=dk。由于WQ、WK、WV这三个矩阵的作用类似于全连接神经网络中的权重矩阵,因此参数需要通过反向传播算法来更新[13]。目标值与参数矩阵QUERY相乘可以使得目标值从dx维度的xtk映射为dq维度的Q;xts-te矩阵映射为元素维度为dk的K矩阵和元素维度为dv的V矩阵与上原理相同。K与V都是对依赖序列的另一种表达,两者之间的区别在于:K是用来衡量目标值与依赖序列的相关性,即用来求解权值,V是用于计算权值与依赖序列的加权和,即用来求解注意力机制的输出。
依赖序列与目标值之间的关系为
其中,softmax(即soft)是深度学习中常用的softmax激活函数,将数据归一化(0,1)区间,即
Adagrad算法在对不同参数分量进行拆分的同时分配不同的学习率,这就是学习率适应参数变化[14-15],它可以快速且精准的识别出数据中极具预测价值但容易被忽视的特征。Adagrad算法的更新公式如下
AD-AB-LSTM模型[16-17]具体步骤如下:(1)通过Adagrad找到合适的参数达到最小化LSTM目标函数误差的目的[18-20];(2)通过上层LSTM输出结果至下层LSTM[21];(3)将步骤(2)中输出结果输入进Attention层,通过对其分配不同的权重,加权求和得出新的输出向量;(4)通过全连接层转换输出结果,根据输出计算RE,将RE输出。其结构如图2所示。
图2 AD-AB-LSTM模型结构
AD-AB-LSTM算法模型的伪代码如下:
数据集采集自无锡东北塘社区自2020年10月1日至2021年3月16日A1至A7点位,时间间隔为30分。所有监测数据皆是以A2为基准点得出的。然后,选取每个点位时间段的前70%的样本数据作为训练样本,后30%的样本数据作为预测样本。
实验将AD-AB-LSTM模型与RNN模型、LSTM模型、SVM模型作比较。
实验程序通过RNN模型、LSTM模型、SVM模型以及AD-AB-LSTM模型对危房局部结构沉降数据已经水平偏移数据进行了预测。结果显示AD-AB-LSTM模型预测结果最好。
预测结果评估标准RE公式如下:
其中,RE越接近于0,表示模型预测精度更加准确,即预测效果更好。只有当危房等级都限定在二级内,才达到安全标准,允许居住。
(1)危房等级间接预测法
表4为三种方法仿真比较结果,其中A1数据为危房局部结构水平偏移,A2,A3,…,A7数据为危房局部结构沉降。将未标注分类的数据输入进算法,得出预测结果后通过计算求出危房对应等级。由表4可知,ADAB-LSTM模型预测更加准确,精度更佳。其中,RNN模型预测平均RE=1.138 6,LSTM模型预测平均RE=0.209 4,SVM模型预测平均RE=0.332 4,AD-AB-LSTM模型预测平均RE=0.056 5。可知AD-AB-LSTM模型预测精度比RNN模型预测精度、LSTM模型预测精度及SVM模型预测精度分别提高了1.082 1、0.152 9及0.275 9。究其原因,还是注意力机制能够有效缓解预测模型中的信息衰减以及梯度下降自适应调节学习率。
表4 AD-AB-LSTM模型与RNN模型、LSTM模型和SVM模型仿真结构比较
(2)危房等级直接预测法
在监测数据的基础上,参照危房等级分类表采用了4分类标注的方法对初始数据做了处理,将标注的结果按照如上方法输入到预测模型中。 由表5可知,在预测精度并不明显的结果中,SVM、LSTM与AD-ABLSTM模型的预测结果相差不大。RNN模型的预测结果存在部分差异,原因在于RNN模型训练时前部序列信息在传递到后部时,信息的权重下降,导致了前部重要信息丢失,准确度下降,而AD-AB-LSTM模型则很好的解决了这一问题。结合实验结果可分析出,AD-AB-LSTM模型预测更加准确,精度更佳,而实验所依赖的工程实例危房等级为一级,达到安全标准,可居住。
表5 AD-AB-LSTM模型与RNN模型、LSTM模型和SVM模型仿真结构比较
针对危房局部结构沉降预测不精确的问题,通过基于梯度下降注意力长短期记忆人工神经网络对危房等级评估,在LSTM中加入注意力机制以及随机梯度下降算法,大大缓解序列预测模型中的信息衰减,使得LSTM模型的性能得到大幅提高。输入特征考虑到时间影响,所以按照时间顺序输入,使得预测结果更接近实际值。
提出的AD-AB-LSTM模型运用在危房等级预测实例中,预测值和实际采集数据偏差在可接受范围内,实际危房等级预测起到了良好的实际效果,采用的预测方法也为以后的工作提供了新思路。此外,所采用的基于注意力长短期记忆人工神经网络的优化算法是Adagrad优化算法,该优化算法存在些许缺陷,下一步的研究改进方向是选取更优的梯度下降算法,优化LSTM的模型结构,降低相应预测模型的误差率。