李波,柳華橋,戴鑫,賈志強(qiáng)
(天津市測繪院,天津 300381)
標(biāo)準(zhǔn)BP神經(jīng)網(wǎng)絡(luò)算法和附加動(dòng)量法在沉降監(jiān)測中的應(yīng)用研究
李波1?,柳華橋2,戴鑫3,賈志強(qiáng)4
(天津市測繪院,天津 300381)
在沉降監(jiān)測工程實(shí)踐中,由于采用的預(yù)測方法和項(xiàng)目沉降趨勢的不同,預(yù)測結(jié)果的精度會(huì)有差異。而隨著應(yīng)用的不斷深入,對現(xiàn)有算法進(jìn)行改進(jìn)以發(fā)揮算法的優(yōu)勢,成為目前預(yù)測算法研究的主流。在本文的研究中,編程實(shí)現(xiàn)了標(biāo)準(zhǔn)BP神經(jīng)網(wǎng)絡(luò)算法和附加動(dòng)量法。通過研究學(xué)習(xí)率對標(biāo)準(zhǔn)BP神經(jīng)網(wǎng)絡(luò)算法的影響,確定學(xué)習(xí)率的大小。然后,研究了動(dòng)量項(xiàng)對附加動(dòng)量法收斂速度的影響,確定了動(dòng)量項(xiàng)的取值。最后,對兩種算法的穩(wěn)定性和算法的效率以及預(yù)測精度等方面進(jìn)行比較,探究兩種算法的特點(diǎn)。
沉降監(jiān)測;BP神經(jīng)網(wǎng)絡(luò);附加動(dòng)量法
人工神經(jīng)網(wǎng)絡(luò)是目前在變形監(jiān)測領(lǐng)域廣泛使用的預(yù)測方法。這種算法的優(yōu)點(diǎn)是,對于復(fù)雜的非線性系統(tǒng),能進(jìn)行很好逼近,獲得較高的擬合精度和預(yù)測精度。人工神經(jīng)網(wǎng)絡(luò)中使用最多的是BP神經(jīng)網(wǎng)絡(luò)。因?yàn)锽P神經(jīng)網(wǎng)絡(luò)對變形的內(nèi)部機(jī)制沒有要求,可以在不清楚變形機(jī)制的情況下進(jìn)行變形預(yù)測,使得這種方法得到了大量的研究和應(yīng)用。
BP神經(jīng)網(wǎng)絡(luò)也有很多缺點(diǎn),主要表現(xiàn)在:誤差下降過程中,容易陷入局部極小值;誤差收斂速度慢,耗時(shí)較長;發(fā)現(xiàn)變形機(jī)制的泛化能力一般;構(gòu)建BP神經(jīng)網(wǎng)絡(luò)沒有統(tǒng)一的原則[1]。本文在實(shí)現(xiàn)標(biāo)準(zhǔn)BP神經(jīng)網(wǎng)絡(luò)和附加動(dòng)量的BP神經(jīng)網(wǎng)絡(luò)算法的基礎(chǔ)上,對兩種算法的穩(wěn)定性和算法的效率以及對樣本數(shù)據(jù)的預(yù)測精度等方面進(jìn)行比較,得出有指導(dǎo)意義的結(jié)論,指導(dǎo)工程實(shí)踐。
2.1人工神經(jīng)網(wǎng)絡(luò)算法簡介
人工神經(jīng)網(wǎng)絡(luò)算法模仿大腦神經(jīng)元對刺激的應(yīng)激機(jī)制,一般由3層組成:輸入層、隱層、輸出層。輸入信號(hào)由輸入層向隱層傳輸,經(jīng)過隱層激活函數(shù)的作用,輸出到輸出層,再次經(jīng)過激活函數(shù)的作用,得出網(wǎng)絡(luò)的輸出。通過正向?qū)W習(xí)獲得的誤差,利用梯度下降法進(jìn)行反向傳播,調(diào)整神經(jīng)元之間的權(quán)值和閾值,使得輸出的誤差項(xiàng)達(dá)到要求,如圖1所示。
圖1 BP神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)示意圖
2.2標(biāo)準(zhǔn)BP神經(jīng)網(wǎng)絡(luò)算法
設(shè)輸入層的輸入信號(hào)個(gè)數(shù)有M個(gè),隱層有I個(gè)節(jié)點(diǎn),輸出層有P個(gè)節(jié)點(diǎn)。輸入層的輸入用XM表示,輸入層和隱層之間的權(quán)值用WMI表示,隱層和輸出層之間的權(quán)值用WIP表示。輸出層的輸出用YP表示。在樣本的學(xué)習(xí)過程中,各層的輸入和輸出由下式計(jì)算:
那么,輸出層第p個(gè)神經(jīng)元的學(xué)習(xí)誤差為:
2.3 附加動(dòng)量的BP神經(jīng)網(wǎng)絡(luò)
所謂附加動(dòng)量法是將權(quán)值調(diào)整量加上部分的上次權(quán)值調(diào)整量,作為一個(gè)整體,當(dāng)作這次學(xué)習(xí)的權(quán)值調(diào)整量,這也是附加動(dòng)量法和標(biāo)準(zhǔn)BP算法的區(qū)別所在。權(quán)值調(diào)整的公式如下所示:
在上式中,MC表示加入的動(dòng)量系數(shù),N為訓(xùn)練的次數(shù)。
由上式可知,MC=0時(shí),本次學(xué)習(xí)的權(quán)值調(diào)整量是按照梯度下降法確定。當(dāng)網(wǎng)絡(luò)的訓(xùn)練權(quán)值接近誤差曲面的局部極小值時(shí),局部梯度值變得很小。加入動(dòng)量項(xiàng)可以避免陷入局部極小值的可能。
3.1數(shù)據(jù)準(zhǔn)備和網(wǎng)絡(luò)結(jié)構(gòu)設(shè)計(jì)
本文的樣本數(shù)據(jù)采用天津市某高架橋橋墩沉降監(jiān)測數(shù)據(jù),通過傳統(tǒng)水準(zhǔn)測量的方法獲得,樣本共有24期。前20期為訓(xùn)練樣本,后4期為預(yù)測樣本。本文采用的樣本數(shù)據(jù)如表1所示:
樣本數(shù)據(jù) 表1
根據(jù)沉降數(shù)據(jù)的特征,將BP神經(jīng)網(wǎng)絡(luò)輸入層和輸出層的神經(jīng)元數(shù)量均設(shè)置為1個(gè),分別對應(yīng)觀測期數(shù)和沉降值。
由上述隱層節(jié)點(diǎn)數(shù)量的經(jīng)驗(yàn)公式,將本文的隱層設(shè)計(jì)為單層,隱層節(jié)點(diǎn)數(shù)為4個(gè)。
3.2學(xué)習(xí)率對標(biāo)準(zhǔn)BP算法收斂速度的影響
權(quán)值的調(diào)整量是學(xué)習(xí)率和局部梯度的內(nèi)積,因此學(xué)習(xí)率的大小直接影響權(quán)值調(diào)整量的多少。作者選取了5組學(xué)習(xí)率,分別是:0.10、0.25、0.40、0.55、0.70、0.85。針對每個(gè)學(xué)習(xí)率取值,刨除陷入局部極小值的情況,記錄20次成功計(jì)算的迭代次數(shù)。實(shí)驗(yàn)結(jié)果如圖2所示:
從圖2可以得出,對于本文中所采取的數(shù)據(jù)而言,學(xué)習(xí)率較小時(shí),迭代次數(shù)較多;隨著學(xué)習(xí)率的增加,迭代次數(shù)減少。學(xué)習(xí)率取0.55時(shí),迭代次數(shù)已經(jīng)基本接近最小值。而當(dāng)學(xué)習(xí)率取0.7以及0.85時(shí),迭代次數(shù)并沒有顯著增加。但是當(dāng)學(xué)習(xí)率取0.7以及0.85時(shí), BP神經(jīng)網(wǎng)絡(luò)的陷入局部極小值以及發(fā)生震蕩的次數(shù)明顯增加。因此,對于本文中的樣本數(shù)據(jù),在后面的計(jì)算中,作者采用的學(xué)習(xí)率為0.55。
3.3算法的收斂速度比較
在本節(jié)中,作者采用算法的計(jì)算耗時(shí)作為評價(jià)算法收斂速度的指標(biāo)。根據(jù)前面實(shí)驗(yàn)結(jié)果,學(xué)習(xí)率選取為0.55。根據(jù)樣本數(shù)據(jù)計(jì)算時(shí)的收斂情況,動(dòng)量系數(shù)取0.05。通過程序中內(nèi)置的計(jì)時(shí)模塊,輸出每次計(jì)算的耗時(shí),時(shí)間均四舍五入后取整到秒。使用的計(jì)算機(jī)為Dell M4800,處理器為i7-4810MQ,頻率為2.80 GHZ,內(nèi)存為8 G。作者分別進(jìn)行了20次實(shí)驗(yàn),計(jì)算結(jié)果如表2所示:
兩種算法的耗時(shí)(單位/s) 表2
將表2以折線圖的形式表示,如圖3所示:
從圖3可以看出,標(biāo)準(zhǔn)BP算法比附加動(dòng)量算法的收斂速度快。但是在程序的實(shí)際計(jì)算過程中,標(biāo)準(zhǔn)BP算法陷入局部極小值的可能性很大,影響了算法的實(shí)用性。附加動(dòng)量法相比標(biāo)準(zhǔn)BP算法,雖然收斂速度慢,但是避免了陷入局部極小值的情況,算法實(shí)用性更強(qiáng)。
圖3 兩種算法的收斂速度比較
3.4算法的穩(wěn)定性比較
算法的穩(wěn)定性是對每次計(jì)算耗時(shí)差異的量化指標(biāo)。若算法每次計(jì)算的耗時(shí)差異較大,則這種算法的穩(wěn)定性不高。否則,算法的穩(wěn)定性就高。
在本節(jié)中,算法的穩(wěn)定性使用下式計(jì)算:
上式中,N為計(jì)算的次數(shù),XI是每次計(jì)算的耗時(shí),為20次計(jì)算的平均耗時(shí)。根據(jù)表2中的實(shí)驗(yàn)數(shù)據(jù),計(jì)算兩種算法的穩(wěn)定性。結(jié)果如表3所示:
兩種算法的穩(wěn)定性 表3
由表3可知,標(biāo)準(zhǔn)BP神經(jīng)網(wǎng)絡(luò)算法每次計(jì)算的耗時(shí)差異較小,算法穩(wěn)定性較強(qiáng)。而附加動(dòng)量法穩(wěn)定性較差。但是,附加動(dòng)量法避免了陷入局部極小的可能。
3.5算法的預(yù)測精度比較
利用本文采用的訓(xùn)練樣本數(shù)據(jù)對預(yù)測樣本數(shù)據(jù)進(jìn)行預(yù)測。利用預(yù)測樣本的殘差的平方和來評價(jià)算法的預(yù)測精度。實(shí)驗(yàn)結(jié)果如表4所示:
兩種算法的預(yù)測精度比較 表4
根據(jù)表格中的統(tǒng)計(jì)數(shù)據(jù),用折線圖的形式表達(dá),如圖4所示:
圖4 兩種算法的預(yù)測精度比較
表4中的預(yù)測值均取20次實(shí)驗(yàn)的結(jié)果得平均值。我們可以看出,標(biāo)準(zhǔn)BP算法預(yù)測值殘差的平方和為0.25 mm2,附加動(dòng)量法為0.06 mm2,附加動(dòng)量法的預(yù)測精度優(yōu)于標(biāo)準(zhǔn)BP算法。因此,對于本文采用的樣本數(shù)據(jù)而言,附加動(dòng)量法的預(yù)測精度更好一些。
(1)對于本文采用的樣本數(shù)據(jù)而言,學(xué)習(xí)率較小時(shí),BP神經(jīng)網(wǎng)絡(luò)的迭代次數(shù)較多;隨著學(xué)習(xí)率的增加,迭代次數(shù)減少。學(xué)習(xí)率取0.55時(shí),迭代次數(shù)已經(jīng)基本接近最小值。而當(dāng)學(xué)習(xí)率取0.7以及0.85時(shí),迭代次數(shù)并沒有顯著增加。但是當(dāng)學(xué)習(xí)率取0.7以及0.85時(shí),BP神經(jīng)網(wǎng)絡(luò)的陷入局部極小值以及發(fā)生震蕩的次數(shù)明顯增加。
(2)標(biāo)準(zhǔn)BP算法比附加動(dòng)量算法的收斂速度快。但算法陷入局部極小值的可能性很大,影響了算法的實(shí)用性。附加動(dòng)量的BP算法收斂速度慢,但是避免了陷入局部極小值的情況。
(3)標(biāo)準(zhǔn)BP算法每次計(jì)算的耗時(shí)差異較小,算法穩(wěn)定性較強(qiáng)。而附加動(dòng)量法穩(wěn)定性較差,但避免了陷入局部極小的可能。
(4)對于本文采用的訓(xùn)練樣本而言,附加動(dòng)量法的預(yù)測精度優(yōu)于標(biāo)準(zhǔn)BP算法。
[1] Berman O,Krass D,Drezner Z,The Gradual Covering Decay Location Problem on a Network[J].European Journal of Operational Research,2003,151(3):474~480.
[2] 高穎,張雙杰,王麗娟等.對改進(jìn)的自適應(yīng)BP算法中參數(shù)研究[J].合肥工業(yè)大學(xué)學(xué)報(bào)·自然科學(xué)版,2006,29(3):281~299.
[3] 黃世震,林淑玲.基于GSA-BP神經(jīng)網(wǎng)絡(luò)的壓力傳感器溫度補(bǔ)償[J].電子器件,2013,36(5):680~684.
[4] 候福均,吳祈宗.基于遺傳算法和模擬退火算法優(yōu)化神經(jīng)網(wǎng)絡(luò)的鐵路營業(yè)里程預(yù)測[J].北京理工大學(xué)學(xué)報(bào), 2004,24(3):247~250.
[5] Ding Shifei,Su Chunyang.An Optimizing BP Neural Network Algorithm Based on Genetic Algorithm[J].Spring, 011,36:153~162.
[6] 王英,曹軍,孫麗萍.基于SAGA優(yōu)化BP神經(jīng)網(wǎng)絡(luò)的木材含水率預(yù)測[J].控制理論與應(yīng)用,2013,32(1):4~13.
[7] 董鵬,羅朝暉,伍潔等.BP神經(jīng)網(wǎng)絡(luò)的遺傳模擬退火算法動(dòng)態(tài)選址仿真[J].火力與指揮控制,2012,37(12):27~30.
Research on Application of Standard BP Neural Network Algorithm and Back-propagation With Momentum in the Practice of Engineering Settlement Monitoring
Li Bo1,Liu Huaqiao2,Dai Xin3,Jia Zhiqiang4
(Tianjin Institude of Surveying and Mapping,Tianjin 300381,China)
In the practice of engineering settlement monitoring,according to the difference of forecast methods and characteristics of the settlement trend,the accuracy of the prediction results will be different.With the deepening application,improving available algorithms to make the advantages of each algorithm a difference,has become the mainstream of research.In this paper,author implemented the standard BP neural network algorithm and back-propagation with momentum.By researching the effect of different learning rates for the standard BP neural network algorithm to determine the size of the learning rate.Then,author studied the effect of momentum on convergence speed of back-propagation with momentum,to determine the value of momentum.Finally,comparing the stability and efficiency of algorithms and forecast accuracy to explore the characteristics of the two algorithms.
settlement monitoring;BP neural network;back-propagation with momentum
1672-8262(2016)01-145-04
P258
B
?2015—12—07
李波(1989—),男,碩士,助理工程師,主要從事工程測量等技術(shù)工作。