王子凡,張健飛
(河海大學 力學與材料學院,南京211100)
工程結構的穩定性關系著人民福祉。因此如何及時有效的對結構進行損傷檢測也成了學術界一個熱點課題。如超聲波或射線等傳統損傷檢測技術的探測范圍有局限性,其對于結構內部或者人力、機械難以達到的部位探測效果欠佳。相比于傳統檢測技術,基于結構動態響應的損傷檢測技術則具有很大的優越性,它利用采集到的振動信息來檢測結構損傷,不僅經濟性強,且無需打斷結構的連續使用。結構振動信息包括諸如位移、加速度等的時域信息以及諸如頻率、振型等的頻域信息。目前,學者普遍使用基于頻域信息的結構損傷識別方法,該方法比較損傷前后根據振動響應數據識別出的結構模態參數,通過其差異來識別損傷[1],或是借助神經網絡[2]、模型修正[3]等手段進行損傷識別。使用時域數據進行結構損傷檢測的基本思想則是利用時域分析模型,通過模型提取結構的振動響應在時域上的特征對損傷進行判定[4]。由于這種方法使用測量到的時域數據直接進行識別,無需進行數值轉換,所以其結構響應中與損傷相關的特征不會產生數值誤差具有更強的適應性。
目前,很多深度學習模型已經被應用到基于時域數據的異常檢測之中,2015年,Serkan 等[5]首次將一維卷積神經網絡用于病人特定心電圖(ECG)的分類和檢測,其結果表明卷積神經網絡對于心室異位搏動(VEB)和室上異位搏動(SVEB)的檢測上具有很好的分類性能,其分類準確率分別達到99%以及97.6 %;趙建鵬等[6]利用長短期記憶(Long-short Term Memory,LSTM)循環神經網絡,對旋轉機械的不同故障種類進行了分類判別及預測。結果表明,與支持向量機等傳統時域分析模型相比,LSTM 模型的性能更強。目前對于進行結構損傷檢測的深度學習模型研究較少,2018年,李雪松等[7-8]建立了卷積神經網絡橋梁損傷識別模型,其結果表明卷積神經網絡具有在噪聲和弱激勵環境下良好的識別能力。Lin 等[9]將卷積神經網絡用于簡支梁的損傷檢測,結果表明網絡可以從低電平波形信號中自動提取特征,在有噪聲的數據上表現出較高的識別損傷的準確度。
本文基于LSTM循環神經網絡提出了一種結構損傷檢測方法,利用LSTM 循環神經網絡直接提取某重力壩有限元模型結構加速度時序數據中的特征進行損傷識別;并使用不同噪聲水平的加速度數據對模型進行測試;采用網格搜索算法對LSTM 循環神經網絡超參數進行優化;最后通過懸臂梁振動試驗,生成試驗數據對網絡進行訓練和測試。
深度學習模型作為一種自動提取特征的學習模型,可以通過非線性變換將初始的底層特征表示轉化為高層特征,從而挖掘出更深層次的規律。循環神經網絡(Recurrent Neural Network,RNN)率先將在網絡結構中引入了時序設計,是增加了自身輸出指向輸入的循環連接的人工神經網絡[10],適用于對于時序數據進行建模及序列識別。但是RNN 網絡中存在梯度消失和梯度爆炸的問題[11],導致RNN 不具備良好的長期學習能力,為了解決這個問題,Hochreiter 等[12]在1977年首次提出了長短期記憶(Long-short Term Memory,LSTM)模型。LSTM 模型通過內部一條穩定無損耗的梯度流緩解梯度消失,同時通過復雜的函數計算緩解梯度爆炸。目前,LSTM 循環神經網絡廣泛應用于如語音識別[13]及語言模型[14-16]等的序列識別任務中。
一個基礎的RNN 包含輸入層、隱藏層和輸出層。輸入至輸入層的是一段關于時間t的向量(…,xt-1,xt,xt+1,…),其中xt= (x1,x2,…,xN),通過式(1)和式(2),可以計算出隱藏層h及輸出層y序列:

其中:f為激活函數;b為偏置向量;W表示連接權重(比如Wxh表示輸入層至隱藏層的連接權重);t表示時刻。
式(1)和式(2)表明了RNN 可以有效地處理非線性時間序列,但是,由于存在梯度消失或梯度爆炸的問題[11],RNN無法處理長時間的時間序列,LSTM循環神經網絡使用了記憶細胞來代替一般網絡中的隱藏層單元,有效緩解了梯度消失及爆炸問題,記憶細胞的輸入和輸出都由一些門控單元來控制,這些門控單元控制流向隱藏層單元的信息,保留前一個時間步傳來的真正有用的信息。經過長時間的演化,目前應用最為廣泛的LSTM 循環神經網絡細胞結構如圖1所示。

圖1 LSTM循環神經網絡細胞結構
圖1 中:i、f、c、o、h分別代表輸入門、遺忘門、細胞狀態、輸出門以及隱藏層輸出序列,其計算方法如式(3)至式(7)所示;W和b分別為對應的連接權重矩陣以及偏置;σ和tanh分別為sigmoid與雙曲正切激活函數;t表示時刻。

如前文所述,LSTM內部具有一系列門控運算,這些復雜的運算會占用計算資源,故LSTM 的改進模型之一——門控循環單元(Gated Recurrent Unit,GRU)應運而生[17],它精簡了門控設置,僅使用更新門及重置門兩個門控。更新門控制前一時刻流入本時刻的接納程度,重置門用于控制前一時刻信息流入本時刻的舍棄程度。在實際應用中,GRU 與LSTM有很強的可比性。
考慮到結構振動響應的多維時間序列數據特征,本文構建LSTM循環神經網絡的整體框架如圖2所示。

圖2 基于LSTM循環神經網絡的大壩損傷預測框架
圖中,C與H為LSTM 細胞的狀態和輸出,Y為經由連接權重計算所得到的輸出。首先將經過經典z-score標準化處理的整個時長的加速度時間序列數據分割為樣本序列,每個樣本的序列長度取值為L,則數據分割之后的每個樣本序列數據,即各個測點的加速度值X={X1,X2,···,XL} ,將樣本序列輸入到LSTM 記憶細胞中,經過神經網絡隱藏層的特征提取及傳遞后,通過最后一個LSTM 單元將其輸出至輸出層。輸出層后加入全連接層,用以損傷工況的識別分類。在本文中,全連接層使用激活函數Softmax函數,這個函數的作用就是將每個損傷類別所對應的輸出歸一化,其計算如式(8)所示。

式中:Y={y1,y2,···,yi,···,yn}為神經網絡的全連接層輸出,每個分量對應一種損傷工況。
訓練LSTM循環神經網絡的過程中使用了與反向傳播(Back Propagation,BP)算法類似的基于時間的反向傳播(Back Propagation Through Time,BPTT)算法,首先按照式(3)至式(7)前向計算LSTM細胞的輸出,然后按網絡結構以及時間兩個方向反向計算誤差,使用基于梯度的優化算法更新連接權重矩陣。本文的損失函數選擇用于多分類的交叉熵損失函數,即在Softmax 函數將神經網絡的輸出變成一個概率分布后,通過交叉熵損失函數來計算預測的概率分布和實際的概率分布之間的距離。如式(9)所示。

其中:K為多分類的種類數量,此處為損傷工況數;p為真實概率,也就是如果損傷類別是i,則pi=1,否則為0為經由式(8)所示的Softmax函數計算得來的輸出值,即損傷工況i的預測概率。
本節利用某重力壩的二維有限元模型,在壩底施加橫向及豎向的白噪聲加速度來模擬環境激勵,生成大壩動力響應數據集。采用瑞利阻尼,計算時間步長0.005 s,數據集中加速度信號采樣頻率為200 Hz。由于重力壩上游面的深層水平裂縫較為常見,且具有更大的危害性[18],故本文模型在上游面的不同高程處設置深2 m 的水平裂縫,模擬損傷。下游面在不同高程出設置10個測點,測量大壩的橫向加速度,壩體下游面測點位置和上游面裂縫位置如圖3所示。

圖3 有限元模型及測點和裂縫位置
損傷工況如表1 所示。計算后共生成時長為250 s 的9 組不同損傷位置(含無損傷)的數據集,劃分20%為驗證集,每條數據由10個測點數據以及標簽組成,每組工況共生成5萬條數據,以及時長為20 s的測試集數據。

表1 損傷工況
網絡超參數的選取通常根據經驗選取,為了達到更好的效果,本文采取了網格搜索算法進行參數優選。網格搜索算法是窮舉法的一種,根據參數的個數來確定網格搜索的空間維度,在每個維度上劃分網格,然后遍歷所有的網格交叉點,根據網格交叉點所給出的結果來確定最佳參數。相比于其他的超參數優化方法(比如粒子群算法、隨機搜索算法等),這種方法簡單實用、效率高[19]。LSTM 循環神經網絡的參數優選主要集中在3 個超參數:樣本長度L;前饋網絡層隱藏神經元數量,又稱狀態向量大小Sstate以及控制網絡調參幅度的學習率η,這3 個超參數構成一個三維的搜索空間,通過網格搜索算法來找到相對最優的超參數組合。其搜索過程可以主要分為三步:首先固定相對重要性較低的超參數,比如網絡迭代的次數epochs,在本文中,迭代次數取100。接著預設3 個超參數的取值范圍,學習率的取值范圍是η∈[0.000 1,0.001,0.1],樣本長度分為L∈[200,150,100,50,20],狀態向量大小Sstate∈[16,32,48,64]。最后,設置目標函數為模型測試準確率最高。優化結果如表2至表4所示,結果最大值為1。

表2 η=0.000 1時網格搜索的優化結果

表3 η=0.001時網格搜索的優化結果

表4 η=0.01時網格搜索的優化結果
可以看出,總體而言,相同學習率下及樣本長度下,較大的狀態向量大小更容易獲得較高的準確率;樣本長度在100或是150時,網絡訓練預測的效果相對最好;學習率為0.001 時,所獲得的模型訓練預測效果最好;學習率為0.000 1時,網絡收斂效果較差,這是由于過小的學習率導致損失函數的變化很慢,使得網絡很容易困在局部最小值點。選取前5組最優參數,使其充分迭代500 次,對應的模型準確率如表5所示。最優參數的損失值以及準確率如圖4 所示。在選定了優化參數后,500次迭代模型準確率最高可達到99.5%,損失值最低達到0.094 7,說明LSTM循環神經網絡結構損傷識別效果良好,幾乎能精準識別出每一個樣本的工況狀況。

表5 網格搜索前5的參數組合以及其對應的工況準確率

圖4 最優參數組合下網絡準確率以及損失
為了驗證LSTM循環神經網絡在循環神經網絡中的優勢,將LSTM 循環神經網絡中的隱藏層細胞換為RNN和GRU結構,在相同的參數下迭代100次進行比較,試驗結果如圖5 及表6 所示。可以看出,與其他兩種模型相比,LSTM在工況準確率上較高,有四種工況(工況1、2、3、4)達到了100%識別,其余的工況也都顯示出了較高的準確率,相比GRU提升最高達16.25 %,相比RNN 提升最高達15 %,GRU與LSTM 損失曲線趨勢較為相似,但是LSTM 循環神經網絡的損失最低達到0.14,GRU為0.15,這兩種模型的損失都有繼續下降的趨勢,但是由于選定的優化超參數對于RNN模型來說并不合適,其損失在后期出現了上升。在耗時上,LSTM 循環神經網絡多于另外兩個模型,主要是由于LSTM 涉及的超參數數量更多,網絡結構相對較為復雜。

圖5 相同參數下3種循環神經網絡的準確率和損失對比

表6 3種循環神經網絡的準確率和損失對比
實際工程或試驗中所獲得的數據往往包括噪聲,目前對于測量噪聲的模擬大部分都是基于零均值且為正態分布的假設下進行的[20]。
本處研究中所使用的噪聲也是基于零均值且為正態分布的條件下生成的,生成的噪聲是通過式(10)計算得到[21]。

式中:εcorrect為原始的時域數據,ω為符合正態分布的高斯白噪聲變量,RMSε為原始時域數據的均方根值,p%為噪聲水平,、εn為計算得到的噪聲數據。
選取4 種水平下的噪聲(5 %,10 %,15 %及20 %),將噪聲數據加入原始數據集中進行訓練預測,充分迭代500次,所得到的驗證集及測試集準確率如表7所示。不同噪聲水平下測試集的工況準確率如表8所示。

表7 各噪聲水平下驗證及測試集準確率

表8 各噪聲水平下測試集的工況準確率
從表中可以看出,加入了噪聲數據使得LSTM循環神經網絡預測性能相比于無噪聲數據有略微下降,這是由于加入的噪聲湮滅了一部分數據特征,但是網絡在各種噪聲水平下預測準確率依然保持著較高的水準,體現網絡良好的抗噪魯棒性。
為了進一步驗證方法的準確性,本文在實驗室進行了不同損傷工況下的懸臂梁振動試驗,利用試驗數據進行方法驗證。試驗所選用的懸臂梁長度為1 200 mm,其無損情況下的橫截面尺寸為20 mm×20 mm,損傷采用人工切割縫模擬,其損傷工況如表9所示。試驗采用電動振動臺產生的隨機激勵模擬有限帶寬白噪聲振動,激勵的功率譜密度取0.1(m/s2)2/Hz,激振頻率帶寬為5 Hz~1 000 Hz。懸臂梁從自由端到固定端布置7 個加速度傳感器(測點1,2,3,4,5,6,7)采集懸臂梁水平加速度,其中固定端的測點7 所測量的數據是振動臺臺面水平加速度。測點高度分別為1 200 mm,1 000 mm,800 mm,600 mm,400 mm,200 mm和0 mm,其坐標系取固定點為原點,向上為正。試驗裝置如圖6 所示。懸臂梁加速度采樣頻率為5 000 Hz,共生成時長為1 800 s的5組不同損傷位置(含無損傷)的數據,未重疊采樣,每條數據由7個測點數據以及標簽組成,每組工況共生成790 萬條數據,組合后按照8:1:1 的比例隨機劃分訓練集、驗證集以及測試集。根據第3 節的結果,將樣本長度設置為500,學習率設置為0.001,狀態向量大小設置為64,構建LSTM循環神經網絡。充分迭代200次后其準確率及損失曲線如圖7所示。為了更加直觀地看出預測結果,在每一種工況中隨機選擇了一條沒有參與訓練的工況數據進行測試,其損傷識別結果如表10所示。

圖6 試驗裝置

表9 懸臂梁試驗損傷工況

圖7 試驗數據下網絡準確率及損失

表10 5個樣本的識別結果
由圖7 及表10 可以看出,200 次迭代后驗證集的最高準確率達到了99.92%,測試集準確率達到了99.5%,損失最低為0.002 2,每一種樣本預測的工況的概率與其他工況概率有著明顯的差別,且與實際工況一致。這說明了LSTM循環神經網絡在實際試驗數據下依然能保持較好的損傷識別效果,幾乎可以準確識別每一個樣本的工況。
本文提出了一種基于長短期記憶循環神經網絡(LSTM)的損傷檢測方法,并采用網格搜索算法進行參數的優選,數值試驗結果表明:本文提出的基于LSTM循環神經網絡的結構損傷檢測方法能夠有效地識別結構的損傷,相比于傳統的循環神經網絡以及門控循環神經網絡,其識別準確率相對較優;LSTM 循環神經網絡在訓練時對參數選取比較敏感,基于網格搜索的參數優化方法效果較好,在選定了優化參數后,識別準確率大幅提高;在不同噪聲水平的數據上的數值試驗顯示了本文的網絡在驗證集和測試集上都具有較高的準確率,具有較好的抗噪魯棒性,表明了LSTM 循環神經網絡用于結構損傷檢測的可行性,同時通過試驗室懸臂梁振動試驗也驗證了本文方法具有優良的損傷識別能力。本文目前對基于LSTM循環神經網絡的結構損傷檢測技術只是進行了初步研究,今后需要進一步研究多裂縫損傷識別、混合噪聲抗噪性等問題,需要進一步通過試驗和實際工程對方法進行驗證和改進。