張 博
(北京市煤氣熱力工程設(shè)計(jì)院有限公司, 北京 100000)
工程建設(shè)中建筑物發(fā)生形變是不可避免的,但超過了工程規(guī)范的范圍,便會造成安全隱患。因此,工程建設(shè)中對建筑物變形必須進(jìn)行嚴(yán)格監(jiān)測,及時(shí)、準(zhǔn)確地反饋建筑物形變動態(tài),在預(yù)報(bào)工程險(xiǎn)情方面起著至關(guān)重要作用[1-2]。沉降變形是一個(gè)隨時(shí)間序列高度動態(tài)的非線性變化過程,而人工神經(jīng)網(wǎng)絡(luò)模型可以近似逼近任意的連續(xù)函數(shù),在變形分析與預(yù)測預(yù)報(bào)應(yīng)用效果上優(yōu)于傳統(tǒng)的數(shù)據(jù)處理方法[3-5]。
為提高沉降變形數(shù)據(jù)的穩(wěn)定性和準(zhǔn)確性,需對數(shù)據(jù)信號進(jìn)行降噪處理。小波變換具有多分辨性和去相關(guān)性的特點(diǎn),使其在降噪濾波方面具有很好優(yōu)勢[6-7]。本文將結(jié)合小波去噪和BP(Back Propagation)神經(jīng)網(wǎng)絡(luò)實(shí)現(xiàn)變形監(jiān)測數(shù)據(jù)分析和預(yù)測,并對預(yù)測結(jié)果進(jìn)行精度分析。
小波分析是一種被譽(yù)為數(shù)學(xué)顯微鏡的信號處理技術(shù),結(jié)合了傅里葉變換的優(yōu)點(diǎn)[7]。根據(jù)真實(shí)信號明顯區(qū)別于噪聲所對應(yīng)的小波系數(shù)幅值,小波分析對其可以進(jìn)行有效地分離,從而實(shí)現(xiàn)了去噪的目的。小波去噪的方法主要分為三類:小波變換極大值法、小波系數(shù)相關(guān)性法以及小波變換閾值法三種[8]。本文采用經(jīng)典的小波變換閾值法,主要步驟有三步。
(1)小波分解:計(jì)算含噪聲信號的小波變換,選擇合適的小波分解層數(shù),將數(shù)據(jù)進(jìn)行小波分解,得到相應(yīng)的小波分解系數(shù)。
(2)高頻系數(shù)進(jìn)行閾值量化:選擇合適的閾值函數(shù),將分解得到的高頻系數(shù)進(jìn)行閾值量化,得到估計(jì)小波系數(shù)。
(3)通過小波逆變換信號重構(gòu):利用重構(gòu)算法進(jìn)行小波重構(gòu),得到去噪后數(shù)據(jù)。
人工神經(jīng)網(wǎng)絡(luò)(Artificial Neural Networks, ANN)是應(yīng)用在數(shù)據(jù)分析時(shí),模擬人腦信息傳遞的方式,建立不同的模型,由大量神經(jīng)元相互連接而形成的網(wǎng)絡(luò)系統(tǒng),是具有一定復(fù)雜性的非線性動力學(xué)習(xí)系統(tǒng)[9]。BP神經(jīng)網(wǎng)絡(luò)由Rumelhart和McCelland在1986年提出的,以誤差值逆向傳播修正權(quán)值的多次有限的迭代算法,達(dá)到訓(xùn)練標(biāo)準(zhǔn)的多層前饋神經(jīng)網(wǎng)絡(luò),是ANN應(yīng)用最廣泛的一種[10]。
如圖1所示,BP神經(jīng)網(wǎng)絡(luò)由輸入層、隱含層和輸出層構(gòu)成,BP神經(jīng)網(wǎng)絡(luò)的基本思想是利用梯度下降法快速分配誤差,以達(dá)到網(wǎng)絡(luò)的輸出值與期望輸出值的差值滿足精度需求。
圖1中,X=(x1,x2,…,xi,…,xn)T為輸入量;Y=(y1,y2,…,yj,…,yp)T為隱含層;O=(o1,o2,…,ok,…,oq)T為輸出層;wij是輸入層的第i個(gè)節(jié)點(diǎn)到隱含層的第j個(gè)神經(jīng)元之間的權(quán)值;vjk是隱藏層的第j個(gè)節(jié)點(diǎn)到輸出層的第k個(gè)神經(jīng)元之間的權(quán)值。

圖1 BP神經(jīng)網(wǎng)絡(luò)模型圖
BP神經(jīng)網(wǎng)絡(luò)的算法分為2個(gè)過程:信號的前向傳播和誤差的反向傳播階段。
(1)信號的前向傳播:樣本數(shù)據(jù)經(jīng)輸入層按不同的權(quán)重傳遞到隱含層,由激活函數(shù)計(jì)算輸出值,上層的輸出值作為下層的輸入值,以此計(jì)算類推,直到輸出層;
(2)誤差的反向傳播:根據(jù)網(wǎng)絡(luò)輸出值與期望值的誤差建立損失函數(shù),求解誤差梯度,修正每層的權(quán)重值。再按前向傳播解算實(shí)際輸出值,直到輸出值及期望值滿足停止準(zhǔn)則,迭代計(jì)算終止,網(wǎng)絡(luò)訓(xùn)練完成。
BP神經(jīng)網(wǎng)絡(luò)屬于有導(dǎo)師學(xué)習(xí)的訓(xùn)練模式,以3層的BP神經(jīng)網(wǎng)絡(luò)模型為例,輸入量為X=(x1,x2,…xi,…xn)T,隱含層為Y=(y1,y2,…,yj,…,yp)T,輸出層為O=(o1,o2,…ok,…oq)T,BP神經(jīng)網(wǎng)絡(luò)具體的訓(xùn)練過程如下:
(1)數(shù)據(jù)歸一化
(1)
式中,X′為歸一化后的數(shù)據(jù);Rmax、Rmin為控制歸一化后數(shù)據(jù)范圍的參數(shù),當(dāng)激活函數(shù)采用S形函數(shù)[函數(shù)值域?yàn)?0,1)]時(shí),需將數(shù)據(jù)歸一化得到[0,1]區(qū)間,此時(shí)Rmax取值為1,Rmin取值為0。
(2)構(gòu)建網(wǎng)絡(luò)結(jié)構(gòu)
獲取總量為N的樣本,首先將樣本集合分為訓(xùn)練數(shù)據(jù)和測試數(shù)據(jù),取訓(xùn)練數(shù)據(jù)中連續(xù)的n個(gè)樣本數(shù)據(jù)X作為輸入樣本組,以下一個(gè)樣本數(shù)據(jù)作為輸出層的期望值,故獲得N-n組樣本對。
隱含層神經(jīng)元節(jié)點(diǎn)數(shù)p以經(jīng)驗(yàn)公式與實(shí)際試驗(yàn)相結(jié)合的方式確定,主要采取以下公式計(jì)算出取值的大致范圍:
(2)
p2=2n+1
(3)
(4)
式中,n為輸入層神經(jīng)元個(gè)數(shù);q為輸出層神經(jīng)元個(gè)數(shù);隱含層神經(jīng)元節(jié)點(diǎn)數(shù)取值為p1,p2,p3所構(gòu)成的數(shù)值區(qū)間。
故構(gòu)建的網(wǎng)絡(luò)模型結(jié)構(gòu)為:輸入層神經(jīng)元個(gè)數(shù)為n;隱含層神經(jīng)元個(gè)數(shù)為p;輸出層神經(jīng)元個(gè)數(shù)為q。
(3)訓(xùn)練參數(shù)設(shè)置
初始權(quán)值設(shè)置過大容易導(dǎo)致網(wǎng)絡(luò)訓(xùn)練過程中飽和,影響訓(xùn)練精度,一般情況下設(shè)置為小值,后續(xù)由學(xué)習(xí)過程進(jìn)行迭代修正[3]。另外還有最大訓(xùn)練次數(shù)、訓(xùn)練精度指標(biāo),可按工程精度需求設(shè)置。
(4)前向傳播過程
樣本數(shù)據(jù)經(jīng)輸入層按不同的權(quán)重傳遞到隱含層,由激活函數(shù)計(jì)算輸出值:
(5)
則輸出層的輸出值為:
(6)
(5)誤差的反向傳播
利用網(wǎng)絡(luò)輸出值與期望值差的平方和建立損失函數(shù),又稱為網(wǎng)絡(luò)誤差函數(shù):
(7)

(8)
(9)
式中,η為學(xué)習(xí)效率,ek和ej表示期望輸出和實(shí)際輸出的差值。
(6)迭代結(jié)束判定
循環(huán)(4)~(6)步,直到滿足精度要求或訓(xùn)練次數(shù)達(dá)到最大訓(xùn)練次數(shù),循環(huán)終止即網(wǎng)絡(luò)模型訓(xùn)練完成。BP神經(jīng)網(wǎng)絡(luò)流程如圖2所示。

圖2 BP神經(jīng)網(wǎng)絡(luò)流程圖
以某建筑基坑開挖過程的觀測點(diǎn)為實(shí)例,對該觀測點(diǎn)進(jìn)行了47期的觀測,累計(jì)沉降量數(shù)據(jù)如表1所示。

表1 觀測點(diǎn)累計(jì)沉降量數(shù)據(jù)表
采用小波去噪算法將原始數(shù)據(jù)進(jìn)行預(yù)處理,去噪效果對比如圖3所示。在實(shí)際測量數(shù)據(jù)中,由于測量誤差或記錄失誤等原因造成數(shù)據(jù)出現(xiàn)異常值(見圖3中虛線標(biāo)記處),若采用原始數(shù)據(jù)進(jìn)行訓(xùn)練網(wǎng)絡(luò)模型,則難以達(dá)到預(yù)期精度[7],經(jīng)小波去噪后的數(shù)據(jù)消除了異常值的影響,并將該數(shù)據(jù)作為后續(xù)的網(wǎng)絡(luò)訓(xùn)練樣本數(shù)據(jù)。根據(jù)公式(1)對樣本數(shù)據(jù)進(jìn)行歸一化處理。

圖3 小波去噪對比效果圖
3.2.1網(wǎng)絡(luò)層數(shù)
BP神經(jīng)網(wǎng)絡(luò)可以含有多個(gè)隱含層,隱含層個(gè)數(shù)的增加會提高一定的精度,但網(wǎng)絡(luò)復(fù)雜度、訓(xùn)練時(shí)間也會增加。一般情況下工程應(yīng)用中隱含層數(shù)不會超過2層,一個(gè)隱含層的BP網(wǎng)絡(luò)可以逼近任意連續(xù)函數(shù)[11-12],故本文采用一個(gè)隱含層。
3.2.2輸入層、輸出層神經(jīng)元數(shù)設(shè)置
將1~40期數(shù)據(jù)作為網(wǎng)絡(luò)訓(xùn)練數(shù)據(jù),41~47期為測試數(shù)據(jù);沉降數(shù)據(jù)具有明顯的時(shí)間序列特征,在網(wǎng)絡(luò)運(yùn)行中采用滑動窗口的方式迭代前進(jìn),將每4期數(shù)據(jù)作為樣本輸入組,以下一期數(shù)據(jù)作為輸出的目標(biāo)數(shù)據(jù),依次迭代,直至訓(xùn)練或預(yù)測完成終止,網(wǎng)絡(luò)模型中輸入輸出模式如表2所示。

表2 BP神經(jīng)網(wǎng)絡(luò)的訓(xùn)練過程輸入輸出模式
3.2.3隱含層的神經(jīng)元數(shù)
輸入層神經(jīng)元個(gè)數(shù)為4,輸出層神經(jīng)元個(gè)數(shù)為1,則由經(jīng)驗(yàn)公式(2)~(4)解算取值范圍,隱含層神經(jīng)元數(shù)設(shè)置為8,主要參數(shù)設(shè)置見表3。

表3 訓(xùn)練參數(shù)表
針對小波去噪對神經(jīng)網(wǎng)絡(luò)訓(xùn)練效果及預(yù)測效果的影響問題,實(shí)驗(yàn)采用了經(jīng)小波去噪和未經(jīng)小波去噪的2種數(shù)據(jù)作為訓(xùn)練數(shù)據(jù),進(jìn)行了訓(xùn)練效果和預(yù)測結(jié)果的對比及精度分析。訓(xùn)練階段的擬合趨勢對比圖如圖4所示,預(yù)測結(jié)果對比圖如圖5~6所示,精度分析如表4所示。

圖4 訓(xùn)練結(jié)果對比圖

圖5 預(yù)測結(jié)果對比圖

圖6 預(yù)測誤差對比圖

表4 預(yù)測結(jié)果精度分析表
由圖4分析可知,無去噪的BP神經(jīng)網(wǎng)絡(luò)擬合數(shù)據(jù)波動性較大,相比之下基于小波去噪的BP神經(jīng)網(wǎng)絡(luò)的擬合程度更高。由圖5~6及表4分析可知,兩種方法的預(yù)測精度都在0.2 mm以內(nèi),經(jīng)小波去噪后的BP神經(jīng)網(wǎng)絡(luò)預(yù)測精度有了顯著的提升,預(yù)測精度維持在0.01 mm以內(nèi),精度提升了86.55%。
本文通過實(shí)例數(shù)據(jù)進(jìn)行實(shí)驗(yàn),對比了BP神經(jīng)網(wǎng)絡(luò)和基于小波去噪的神經(jīng)網(wǎng)絡(luò)模型,并對觀測點(diǎn)進(jìn)行了預(yù)測。經(jīng)實(shí)驗(yàn)對比分析可知,2種方法都可以獲得具有一定的訓(xùn)練模型和預(yù)測精度,但小波去噪可以過濾測量數(shù)據(jù)中的異常值,提高觀測數(shù)據(jù)的穩(wěn)定性,結(jié)合小波去噪的BP神經(jīng)網(wǎng)絡(luò)訓(xùn)練精度更高,預(yù)測精度達(dá)到0.01 mm以內(nèi),相比無去噪的BP神經(jīng)網(wǎng)絡(luò)精度提升了86.55%,結(jié)果表明了基于小波去噪的BP神經(jīng)網(wǎng)絡(luò)優(yōu)越性。