郭松,陸金平,鄒瑜
(江西應(yīng)用技術(shù)職業(yè)學(xué)院,江西 贛州 341000)
改進(jìn)BP神經(jīng)網(wǎng)絡(luò)模型在隧道變形分析中的應(yīng)用
郭松*,陸金平,鄒瑜
(江西應(yīng)用技術(shù)職業(yè)學(xué)院,江西 贛州 341000)
針對(duì)傳統(tǒng)的BP神經(jīng)網(wǎng)絡(luò)模型在數(shù)據(jù)擬合方面存在網(wǎng)絡(luò)收斂速度慢,預(yù)測(cè)精度不高的缺點(diǎn),提出一種改進(jìn)的BP神經(jīng)網(wǎng)絡(luò)模型的方法。利用改進(jìn)后的模型對(duì)某一地鐵隧道變形監(jiān)測(cè)數(shù)據(jù)進(jìn)行分析和預(yù)報(bào),并結(jié)合MATLAB軟件編寫(xiě)的數(shù)據(jù)處理程序?qū)崿F(xiàn)改進(jìn)前后兩種模型對(duì)同一數(shù)據(jù)處理結(jié)果的對(duì)比分析,驗(yàn)證改進(jìn)后模型的有效性和可靠性。
變形監(jiān)測(cè);神經(jīng)網(wǎng)絡(luò);BP神經(jīng)網(wǎng)絡(luò);MATLAB
人工神經(jīng)網(wǎng)絡(luò)(Artificial Neural Network,即ANN)的快速發(fā)展使其開(kāi)始在各個(gè)領(lǐng)域得到廣泛應(yīng)用,其主要特點(diǎn)是:信息不儲(chǔ)存在確定的單元中,而是分散儲(chǔ)存在整個(gè)系統(tǒng)中;同時(shí),它具有較好的魯棒性和容錯(cuò)性,能夠?qū)Σ煌暾臉颖緮?shù)據(jù)和圖形做出判斷;能夠?qū)θ我獾姆蔷€(xiàn)性系統(tǒng)進(jìn)行逼近;具有學(xué)習(xí)和自適應(yīng)等功能,對(duì)復(fù)雜多變的系統(tǒng)動(dòng)態(tài)特性有很強(qiáng)的適應(yīng)性。正是以上這些優(yōu)點(diǎn),使得人工神經(jīng)網(wǎng)絡(luò)在變形監(jiān)測(cè)的數(shù)據(jù)處理分析中能夠得到較好的應(yīng)用。
本文以ANN模型中的BP神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)模型為切入點(diǎn),闡述了改進(jìn)后的BP神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)模型的確定。同時(shí),對(duì)比BP神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)模型與改進(jìn)后的模型,并結(jié)合工程實(shí)例驗(yàn)證該改進(jìn)方法的合理性。
2.1 建模機(jī)理
BP神經(jīng)網(wǎng)絡(luò)的學(xué)習(xí)算法為誤差反向傳播算法,即BP算法,它的學(xué)習(xí)訓(xùn)練過(guò)程主要包括四個(gè)階段。
(1)第一階段為順序傳播過(guò)程,即網(wǎng)絡(luò)樣本數(shù)據(jù)由輸入層經(jīng)過(guò)隱含層的信息處理和信息變換,再將隱含層的輸出結(jié)果傳遞給輸出層的過(guò)程;
(2)第二階段為反向播過(guò)程,即對(duì)比網(wǎng)絡(luò)的輸出結(jié)果與期望值之差,然后按照減小誤差的方向,再由輸出層傳遞給隱含層,隱含層依據(jù)誤差的大小進(jìn)行調(diào)整和修正它們之間的連接權(quán)值,最后返回到輸入層的過(guò)程;
(3)第三階段為記憶訓(xùn)練過(guò)程,即重復(fù)第一和第二階段的過(guò)程;
(4)第四階段為網(wǎng)絡(luò)的收斂過(guò)程,即網(wǎng)絡(luò)的誤差趨向極小值發(fā)展的過(guò)程。
①初始化。在[-1,+1]的區(qū)間內(nèi)隨機(jī)選取各連接權(quán)值和閾值;
②隨機(jī)選取樣本數(shù)據(jù)對(duì)(Xk,Yk)代表網(wǎng)絡(luò)的輸入向量;
③計(jì)算輸入層的輸出。由于輸入層本身不進(jìn)行數(shù)據(jù)處理,因此輸入層的輸出向量仍然為輸入的樣本數(shù)據(jù);
④根據(jù)式(1)和式(2)對(duì)輸入的樣本數(shù)據(jù)進(jìn)行處理,從而得到隱含層各個(gè)神經(jīng)元的凈輸入和輸出;
(1)
(2)
⑤根據(jù)式(3)和式(4)對(duì)輸出層各個(gè)神經(jīng)元的凈輸入和實(shí)際輸出進(jìn)行計(jì)算;
(3)
(4)
(5)
(6)
⑧按照式(7)和式(8)對(duì)連接權(quán)值V和閾值γ進(jìn)行修正,其中α為學(xué)習(xí)速率,0<α<1;
(7)
(8)
⑨按照式(9)和式(10)對(duì)輸出層的連接權(quán)值W和閾值θ進(jìn)行修正,其中β為學(xué)習(xí)速率,0<β<1;
(9)
(10)
⑩隨機(jī)選取另一個(gè)樣本數(shù)據(jù)對(duì)再作為輸入向量,直到所有樣本數(shù)據(jù)對(duì)訓(xùn)練完畢為止;
2.2 模型的不足
經(jīng)過(guò)長(zhǎng)期的理論和實(shí)踐,對(duì)BP神經(jīng)網(wǎng)絡(luò)算法的缺點(diǎn)進(jìn)行總結(jié)概括,主要有以下幾點(diǎn)缺點(diǎn):
(1)學(xué)習(xí)算法的收斂速度慢。BP神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)訓(xùn)練過(guò)程是樣本數(shù)據(jù)一次次地反復(fù)處理過(guò)程,只有當(dāng)全局誤差小于要求精度時(shí),學(xué)習(xí)訓(xùn)練才會(huì)結(jié)束,因此,學(xué)習(xí)訓(xùn)練的過(guò)程比較漫長(zhǎng),導(dǎo)致網(wǎng)絡(luò)的收斂速度緩慢;
(2)存在局部極小點(diǎn);
(3)選取合適的隱含層節(jié)點(diǎn)個(gè)數(shù)時(shí)缺乏具體的理論指導(dǎo);
(4)對(duì)于新的樣本數(shù)據(jù)要重新進(jìn)行訓(xùn)練學(xué)習(xí)。
3.1 增加動(dòng)量項(xiàng)的BP算法
傳統(tǒng)的BP神經(jīng)網(wǎng)絡(luò)算法在對(duì)連接權(quán)值進(jìn)行調(diào)整時(shí),由于沒(méi)有考慮到前一次調(diào)整時(shí)的誤差梯度方向,而只考慮本次的誤差梯度下降方向,就導(dǎo)致了網(wǎng)絡(luò)收斂速度緩慢。為了提高網(wǎng)絡(luò)的收斂速度,就必須考慮前一次調(diào)整時(shí)的誤差梯度方向,然后把前一次調(diào)整量按一定的比例加在本次調(diào)整中,即動(dòng)量項(xiàng)。接權(quán)值調(diào)整公式如下:
(11)
式中,μ△wij(n-1)表示動(dòng)量項(xiàng),n表示學(xué)習(xí)次數(shù),μ表示動(dòng)量系數(shù),0<μ<1,η表示學(xué)習(xí)率。
當(dāng)在調(diào)整連接權(quán)值時(shí)附加動(dòng)量項(xiàng),就會(huì)使調(diào)整方向向一個(gè)方向發(fā)展,即是兩次調(diào)整的方向相反,仍然可以提高網(wǎng)絡(luò)的收斂速度。
3.2 自適應(yīng)調(diào)整學(xué)習(xí)率的優(yōu)化算法
在BP神經(jīng)網(wǎng)絡(luò)的整個(gè)訓(xùn)練學(xué)習(xí)過(guò)程中,學(xué)習(xí)速率對(duì)BP網(wǎng)絡(luò)學(xué)習(xí)算法有相當(dāng)大的影響。當(dāng)學(xué)習(xí)速率偏大時(shí),就會(huì)造成學(xué)習(xí)的過(guò)程振蕩且網(wǎng)絡(luò)不收斂;當(dāng)學(xué)習(xí)速率偏小時(shí),則造成網(wǎng)絡(luò)的收斂速度變慢并且網(wǎng)絡(luò)的學(xué)習(xí)訓(xùn)練時(shí)間過(guò)長(zhǎng)。因此,選擇一個(gè)合適的學(xué)習(xí)速率,可以有效提升BP神經(jīng)網(wǎng)絡(luò)的學(xué)習(xí)訓(xùn)練時(shí)間和網(wǎng)絡(luò)收斂速度。但在具體實(shí)際例子中,找到一個(gè)合適的學(xué)習(xí)速率相對(duì)比較困難。所以想要找到一個(gè)合適的學(xué)習(xí)速率,需要不斷調(diào)整學(xué)習(xí)速率,對(duì)比網(wǎng)絡(luò)的學(xué)習(xí)訓(xùn)練時(shí)間和網(wǎng)絡(luò)收斂速度是否滿(mǎn)足要求。由于各網(wǎng)絡(luò)參數(shù)的調(diào)整都受到統(tǒng)一的學(xué)習(xí)率影響,這使得在學(xué)習(xí)訓(xùn)練過(guò)程中避免了出現(xiàn)局部極小點(diǎn)。
具體的自適應(yīng)調(diào)整學(xué)習(xí)率的過(guò)程可以簡(jiǎn)單概述為:先假設(shè)一個(gè)最初的學(xué)習(xí)率,對(duì)網(wǎng)絡(luò)進(jìn)行訓(xùn)練學(xué)習(xí),當(dāng)誤差變大時(shí),就會(huì)出現(xiàn)網(wǎng)絡(luò)局部極小點(diǎn),則需要在學(xué)習(xí)率上乘以一個(gè)小于1的常數(shù)l,繼續(xù)進(jìn)行訓(xùn)練學(xué)習(xí);相反,則需要在學(xué)習(xí)率上乘以一個(gè)大于1的常數(shù)g,然后繼續(xù)訓(xùn)練。對(duì)于常數(shù)g和l的選取,g一般應(yīng)略大于1,約為1.05;l與g相比,應(yīng)小于1,約在0.95左右。g和l之間具有緊密的聯(lián)系,但必須依據(jù)具體的實(shí)際情況選取不同的g和l。
利用BP神經(jīng)網(wǎng)絡(luò)對(duì)某段地鐵變形監(jiān)測(cè)數(shù)據(jù)進(jìn)行處理,即對(duì)SGC01-01監(jiān)測(cè)點(diǎn)的數(shù)據(jù)進(jìn)行訓(xùn)練學(xué)習(xí)和預(yù)測(cè)。樣本數(shù)據(jù)如表1所示。
監(jiān)測(cè)點(diǎn)樣本數(shù)據(jù) 表1
續(xù)表1
對(duì)表1中前30組數(shù)據(jù)利用BP神經(jīng)網(wǎng)絡(luò)模型進(jìn)行學(xué)習(xí)訓(xùn)練,通過(guò)MATLAB編寫(xiě)的BP神經(jīng)網(wǎng)絡(luò)程序,實(shí)現(xiàn)結(jié)果如表2所示。
訓(xùn)練樣本數(shù)據(jù) 表2
圖1 訓(xùn)練樣本的誤差收斂
利用已經(jīng)訓(xùn)練好的BP神經(jīng)網(wǎng)絡(luò)模型,對(duì)31~35樣本數(shù)據(jù)對(duì)進(jìn)行訓(xùn)練預(yù)測(cè),預(yù)測(cè)結(jié)果如表3所示。
預(yù)測(cè)結(jié)果 表3
應(yīng)用附加動(dòng)量法和自適應(yīng)調(diào)整學(xué)習(xí)率的方法來(lái)對(duì)BP神經(jīng)網(wǎng)絡(luò)算法進(jìn)行改進(jìn),利用這些改進(jìn)方法再次對(duì)BP神經(jīng)網(wǎng)絡(luò)模型進(jìn)行訓(xùn)練,訓(xùn)練結(jié)果如表4所示。
BP神經(jīng)網(wǎng)絡(luò)優(yōu)化模型預(yù)測(cè)結(jié)果 表4
續(xù)表4
圖2 BP神經(jīng)網(wǎng)絡(luò)優(yōu)化模型收斂圖
利用訓(xùn)練好的優(yōu)化的BP神經(jīng)網(wǎng)絡(luò)模型同樣對(duì)31期~35期數(shù)據(jù)進(jìn)行訓(xùn)練預(yù)測(cè),預(yù)測(cè)結(jié)果如表5所示。
BP神經(jīng)網(wǎng)絡(luò)優(yōu)化模型預(yù)測(cè)結(jié)果 表5
對(duì)兩種模型的誤差結(jié)果做對(duì)比,結(jié)果如圖3所示。
通過(guò)利用BP神經(jīng)網(wǎng)絡(luò)模型在實(shí)例中的應(yīng)用可以看出,BP神經(jīng)網(wǎng)絡(luò)具有非線(xiàn)性映射能力、泛化能力等優(yōu)點(diǎn),由于數(shù)據(jù)經(jīng)過(guò)平差計(jì)算,不含有較大誤差,所以BP神經(jīng)網(wǎng)絡(luò)的容錯(cuò)性?xún)?yōu)點(diǎn)不能很好的體現(xiàn)。
圖3 誤差結(jié)果對(duì)比圖
通過(guò)對(duì)比圖2和圖3可以看出,經(jīng)過(guò)優(yōu)化的BP神經(jīng)網(wǎng)絡(luò)模型的網(wǎng)絡(luò)收斂速度明顯加快;再通過(guò)圖3可以看出,優(yōu)化的BP神經(jīng)網(wǎng)絡(luò)模型的誤差要比BP神經(jīng)網(wǎng)絡(luò)模型的誤差穩(wěn)定且基本偏小。因此改進(jìn)的BP神經(jīng)網(wǎng)絡(luò)模型算法能夠得到較好的應(yīng)用。
綜上,對(duì)比BP神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)模型與改進(jìn)后的BP神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)模型的預(yù)測(cè)結(jié)果,改進(jìn)后的BP神經(jīng)網(wǎng)絡(luò)模型的網(wǎng)絡(luò)收斂速度明顯快于BP神經(jīng)網(wǎng)絡(luò)模型,預(yù)測(cè)精度要高于BP神經(jīng)網(wǎng)絡(luò)模型的預(yù)測(cè)精度。同時(shí),在數(shù)據(jù)擬合方面,具有良好的逼近能力,能夠有效提升網(wǎng)絡(luò)的收斂速度,避免陷入局部極小點(diǎn),可以進(jìn)行多期數(shù)據(jù)的預(yù)測(cè),能夠達(dá)到預(yù)期的效果。
[1] 黃聲享,尹輝,蔣征. 變形監(jiān)測(cè)數(shù)據(jù)處理(第2版)[M]. 武漢:武漢大學(xué)出版社,2012.
[2] 馬銳. 人工神經(jīng)網(wǎng)絡(luò)原理[M]. 北京:機(jī)械出版社,2010.
[3] 王玉雯,陳穎輝,師庭飛. 改進(jìn)的BP網(wǎng)絡(luò)在深基坑變形預(yù)報(bào)中的應(yīng)用[J]. 科學(xué)技術(shù)與工程,2010,18(15):3791~3794.
[4] 劉紹堂,潘國(guó)榮. 基于激光掃描的隧道變形監(jiān)測(cè)的誤差來(lái)源及變形分析[J]. 鐵道工程學(xué)報(bào),2013(5):69~74.
[5] 洛成風(fēng). 遺傳算法優(yōu)化的BP神經(jīng)網(wǎng)絡(luò)城市不透水層百分比估算[J]. 測(cè)繪科學(xué),2011,36(1):48~50.
[6] 劉冠蘭. 地鐵隧道變形監(jiān)測(cè)關(guān)鍵技術(shù)與分析預(yù)報(bào)方法研究[D]. 武漢:武漢大學(xué),2013.
[7] 劉丹丹. 灰色模型分析法在高層建筑物變形監(jiān)測(cè)預(yù)測(cè)中的應(yīng)用[J]. 測(cè)繪與空間地理信息,2014,(37)2:203~205.
[8] 嚴(yán)容. 基于小波去噪的BP神經(jīng)網(wǎng)絡(luò)在變形預(yù)測(cè)中的應(yīng)用[D]. 北京:中國(guó)地質(zhì)大學(xué),2014.
[9] J R Hull. A Neural Network Algorithm using wavelets and Auto Regressive Inputs for System Identification of the 1997[J].IEEE International Conference on Networks,1997,2(4):724~727.
[10] Zhang Qinghua,Albert Benveniste. Wavelet networks[J]. IEEET rans on Neural Networks,1992,3(6):889~898.
[11] 周品. MATLAB神經(jīng)網(wǎng)絡(luò)設(shè)計(jì)與應(yīng)用[M]. 北京:清華大學(xué)出版社,2013.
Application of Improved BP Neural Network Model in Tunnel Deformation Analysis
Guo Song,Lu Jinping,Zou Yu
(Jiangxi College of Applied Technology,Ganzhou 341000,China)
In order to overcome the low forecast accuracy and slow convergence of traditional BP neural network model in data fitting,proposed an improved BP neural network method. Using improved model to analysis and forecast a subway tunnel deformation monitoring data,Combined with MATLAB data handler program to achieve comparison of the two models of the same before and after the data processing results,Verify the effectiveness and reliability of the improved model.
deformation monitoring;neural network;BP neural network;MATLAB
1672-8262(2017)01-137-05
P258,TU196
B
2016—07—04 作者簡(jiǎn)介:郭松(1990—),男,助教,主要從事工程測(cè)量技術(shù)的教學(xué)與科研工作。 基金項(xiàng)目:江西省教育廳教改立項(xiàng)課題(JXJG-15-52-10)