?

基于門控循環單元神經網絡的箱型梁結構裂紋損傷檢測方法

2022-09-06 08:43駱擷冬馬棟梁張松林王德禹
中國艦船研究 2022年4期
關鍵詞:裂紋加速度噪聲

駱擷冬,馬棟梁,張松林,王德禹

上海交通大學 海洋工程國家重點實驗室,上海 200240

0 引 言

船舶在生產和服役的過程中會受到例如焊接、疲勞等多種因素的影響而產生裂紋[1-2],并且在海洋復雜的載荷作用下,裂紋還會擴展,最終使結構斷裂,從而引發災難性的事故。

為了及時發現船體結構損傷,避免安全隱患,學者們提出了多種損傷檢測方法,其中結構健康監測技術(structural health monitoring,SHM)可以實現結構安全的實時在線檢測。Lindemann 等[3]設計了一種基于概率方法的船體監測系統,完成了對船舶結構監測技術的初步探索。大連新船重工在國內首次設計出了船體應力監測系統,并安裝應用到了300 000 t 級VLCC 上[4]。賈連徽等[5]基于船體結構應力實時監測系統,結合整船有限元分析和海況信息,給出了應力監測點的選取方法,并根據監測點的受力特點給出了傳感器的布置方法。但隨著計算機科學的發展,對船舶結構損傷智能化檢測的要求越來越高,傳統監測方法的性能已難以滿足工程界的需求。

機器學習(machine learning,ML)已被成功應用于計算機視覺、自然語言處理等多個領域,具有非常強大的學習能力,因此許多學者嘗試將機器學習應用到結構損傷檢測領域,用以提高結構損傷檢測能力。Zubaydi 等[6]使用多層感知機(multi-layer perceptron,MLP)檢測加筋板的裂紋損傷,并將通過有限元法得到的加筋板振動響應自相關函數以及其一階導數作為輸入,較為有效地識別了損傷的位置和范圍。Mehrjoo 等[7]將固有頻率和模態振型作為輸入,提出了一種基于MLP的損傷檢測方法。Palomino 等[8]采用概率神經網絡和模糊聚類分析來識別裂紋的位置,證明了該方法的可行性。雖然傳統的機器學習與神經網絡在損傷檢測方面取得了一定的研究成果,但仍存在諸多不足,如收斂速度慢、檢測精度低,且性能過于依賴輸入特征,對噪聲的敏感性較高等[9]。

近年來,深度學習(deep learning,DL)憑借其優秀的學習能力得到了許多研究者的關注,并被應用到了船體結構損傷檢測領域。在眾多深度學習模型中,循環神經網絡(recurrent neural network,RNN)可以處理時間序列,并且有“記憶”的功能,因此在結構的實時損傷檢測方面扮演著重要角色。長短期記憶(long short-term memory,LSTM)神經網絡是一種改進的循環神經網絡,其解決了可能出現的梯度消失和梯度爆炸問題[10],能夠更為有效地處理長期、復雜的時間序列。Zou 等[11]利用集合經驗模態分解預處理原始振動信號,得到了將故障特征信號輸入到LSTM 中來診斷滾動軸承的故障情況,但該方法是通過人工來提取損傷特征信號,難以保證信息的完整性,且還依賴于特征提取的方式。Ma 等[12]提出了一種基于卷積神經網絡(convolutional neural network,CNN)的加筋板裂紋損傷檢測方法,張松林等[13]使用LSTM建立了矩形板裂紋損傷檢測模型,但他們均未對訓練集以外的損傷情況進行近似檢測研究。

LSTM 模型有許多變體,其中以Cho 等[14]提出的門控循環單元(gated recurrent unit,GRU)最為著名。GRU 改變了LSTM 的神經元結構,其不僅保留了LSTM 神經網絡的長期記憶能力,還讓其自身的內部結構更簡單,這對特征不是特別復雜的數據來說有著更好的收斂性。Zhao 等[15]首先在時間序列數據中提取了局部特征,隨后通過雙向GRU 神經網絡預測了機器的狀態,并在齒輪箱、軸承等故障檢測中驗證了算法的有效性。薛陽等[16]提出了一種結合CNN 和GRU 的超短期風電預測模型,其將氣象數據作為輸入,根據風速和風力的發電功率特性,實現了更高精度的風電預測。

目前,已有部分研究者基于GRU 神經網絡,針對軸承、齒輪等機械結構的損傷檢測進行研究,但少有學者將其應用到船舶結構上。船舶本身結構雖然復雜,但其本質上還是一種箱型梁結構[17]。本文擬以某箱型梁結構為研究對象,提出一種基于GRU 神經網絡的裂紋損傷檢測方法。由于對結構進行損傷檢測時加速度信號能夠反映整體和局部的健康狀況,因此將選取加速度響應作為輸入,通過GRU 神經網絡提取損傷特征并進行分類,從而實現對箱型梁裂紋損傷的實時檢測。

1 GRU 神經網絡

GRU 的結構如圖1 所示。圖中,t為時刻,xt為當前時刻的輸入,ht-1,ht分別為上一時刻和當前時刻的輸出,最終,形成一個具有“記憶”功能的“細胞”。細胞內有2 個門控單元,分別是更新門(update gate)和重置門(reset gate),二者共同作用,控制GRU 的更新和儲存記憶。兩個激活函數分別表示如下:

圖1 GRU 結構Fig. 1 Structure of GRU

為了實現記憶功能,2 個門控單元的輸入都是上一時刻的輸出ht-1和當前時刻的輸入xt。其中,更新門ut控制上一時刻輸出的信息流入到當前時刻的數量。

式中:Wu為權重矩陣;bu為偏置項。當ut=0時,輸入全部流入當前時刻;當ut=1時,則全部被丟棄。

重置門rt控制上一時刻輸出的信息被遺忘的數量以及當前時刻輸入的信息被添加的數量。

這里,rt越小,忽略的ht-1越多。而后,再通過激活函數tanh,形成由重置門控制的當前時刻的候選輸入為

最終,由兩部分相加得到當前時刻的輸出ht為

式(6)中,前一部分是通過1 減去更新門ut來控制上一時刻的輸出ht-1,另一部分則是通過更新門ut來控制當前時刻的候選輸入。

對裂紋損傷的檢測除了需要通過大量的GRU 神經元提取損傷數據的特征,還需要對所有特征通過標簽進行分類。本文采用的分類函數為Softmax 函數,又稱歸一化指數函數。

Softmax 函數是將向量f(x)中的每個元素變換為向量P中的對應元素P[i],并且是以概率的形式展現出來。P[i]越大,則實際裂紋標簽為i的概率越高,最終將P中最大元素P[k]的標簽k認定為預測的裂紋標簽。

通過Softmax 函數得到預測的裂紋標簽后,還需要根據預測標簽與實際標簽的誤差來得到損失值,并利用損失值的大小來證明神經網絡模型的魯棒性。本文使用的損失函數為交叉熵損失函數(cross entropy loss)。

式中:q為板裂紋的實際標簽值;f(x)為神經網絡模型的實際輸出。

綜上,GRU 模型是以得到最小的損失函數值為目標進行訓練,最終獲得對數據的預測結果。

2 箱型梁裂紋損傷檢測分析

2.1 有限元模型

GRU 神經網絡的訓練需要大量數據,Law 等[18]通過試驗證明了采用有限元方法計算結構加速度響應的準確性與可靠性,因此,本文將采用Python語言對ABAQUS 軟件進行二次開發,建立箱型梁結構的有限元模型并計算加速度響應。

本文研究的箱型梁模型長L= 2 160 mm,寬度和深度為B=D= 1 200 mm,厚度t1= 5 mm,模型如圖2(a)所示。同時,在頂板與底板上分別設2 根均布加強筋,在兩側板上分別設置3 根均布加強筋,加強筋的高度h= 100 mm,厚度t2= 5 mm。采用有限元計算得到的模型前8 階固有頻率分別為79.10 ,87.22,87.66,95.57,96.05,104.07,112.43,115.96 Hz??紤]到箱型梁動態分析中的阻尼效應,本文采用瑞利阻尼(C= αM+ βK,其中M,K分別為結構的質量矩陣和剛度矩陣,C為結構的阻尼矩陣, α, β分別為結構的質量比例阻尼系數和剛度比例阻尼系數)進行模擬[19]。最終選取的材料參數如表1 所示。

表1 箱型梁材料參數Table 1 The material parameters of the box girder

本文所采用模型的邊界條件為,將圖2(b)所示端面1,2 的所有節點分別與各自端面的形心A,B 進行剛性耦合,并對其中的端面1 放開沿z方向的位移與繞x方向的轉角,對端面2 放開繞x方向的轉角,2 個端面其他方向的位移與轉角則均予以約束。有限元模型的網格尺寸為20 mm × 20 mm,網格單元類型為S4R。

圖2 數學模型Fig. 2 Mathematical model

實際船舶的受載情況復雜且隨機,難以獲取。高斯白噪聲是一個均值為0 的平穩遍歷隨機過程,其任意兩個值在統計上都是獨立的,同時,其功率譜密度是恒定的,可以激發結構的多重模態[20]。因此,本文采用高斯白噪聲模擬結構遭受的激勵,并施加于箱型梁頂板上。本文所采用的高斯白噪聲激勵為面外均布載荷,載荷均值為0,標準差為0.01 MPa,對應于一個低程度的載荷水平。載荷的采樣頻率為10 000 Hz,按對應時間點施加于板上,共施加4 s。由于本文主要關注模型的前8 階固有頻率,因此,采用截止頻率為256 Hz的巴特沃斯濾波器(Butterworth filter)對上述載荷進行濾波。

在船舶裂紋中,貫穿裂紋為主要的裂紋形式,可能由疲勞、焊接缺陷等多種因素產生,因此,本文將對發生于頂板和底板的沿板長方向的單裂紋損傷進行研究。對頂板和底板,分別設置了5 個裂紋位置和3 個裂紋長度:每塊板上的5 種裂紋位置等距分布;3 個裂紋長度L1分別為120,240,360 mm??紤]到模擬的是實際裂紋,同時便于網格劃分,因此采用菱形裂紋,其最大寬度為0.1 mm。頂板裂紋的位置和形狀如圖2(c)所示,底板裂紋的位置和形狀與頂板相同。由于加速度響應在裂紋附近位置處變化更明顯,因此在頂板和底板上分別設置了11 個加速度采集點,將采集到的結構加速度響應作為神經網絡的輸入數據。當采集點與裂紋位置重合時,采集裂紋中心位置上側節點的加速度響應。頂板的11 個加速度采集點如圖2(d)所示,底板的采集點與頂板相同。

2.2 原始數據處理

考慮到結構在初始振動階段會受到自由振動的影響,因此針對無裂紋的箱型梁的自由振動進行分析,通過在頂板上施加均布瞬時激勵,得到其頂板中心位置在0~2 s 時間范圍內的加速度曲線如圖3 所示。由圖可以看出,箱型梁在初始階段存在明顯的自由振動,并以較快的速度衰減,可以認為1 s 后自由振動基本消失。因此,本文將僅采集1~4 s 內的加速度數據??紤]到采樣定理,為保證信號信息不丟失,采樣頻率需大于等于2 倍的信號頻率(即2.1 節所述的256 Hz 截止頻率),因此,本文設置的加速度采集點的采樣頻率為512 Hz,最終,每個采集點得到的數據長度為1 536。

圖3 無損箱型梁自由振動曲線Fig. 3 Free vibration curves of an intact box girder

由于采用有限元計算所得原始加速度數據存在量級不統一的問題,為便于GRU 神經網絡能夠更加高效地學習到數據的特征,提高精度,可對采集到的數據進行高斯歸一化處理[20]。高斯歸一化可以將原始數據變換成均值為0、標準差為1、服從標準正態分布的數據集:

式中:xi為原始數據;μ和σ0分別為原始數據的均值和標準差;為變換后得到的歸一化數據。

由于載荷的施加位置為頂板,由圖3 可見,頂板和底板處的加速度響應大小有一定的差距,因此,將頂板和底板的加速度數據分別進行了高斯歸一化處理。此外,考慮到在實際的裂紋損傷檢測工作中,由于受外部環境、采集設備等多種因素的影響,噪聲的影響不可避免,因此對處理后的數據增加了均值為0、標準差為0.3 的高斯白噪聲,并針對無噪聲和有噪聲的數據訓練結果進行了對比分析。

2.3 數據集的生成

本文的數據處理和數據集的生成流程如圖4所示。

圖4 數據處理與數據集生成流程Fig. 4 Data processing and data set generation

首先,通過對有限元模型進行多次計算,得到足夠多的原始數據。本文針對單裂紋損傷進行研究,研究的工況共31 個(10 個裂紋位置 × 3 個裂紋長度 + 1 個無損工況),隨后對每個有裂紋模型分別計算30 次,無損工況計算100 次,最終得到1 000 組原始數據。對于每一次計算,為保證樣本的有效性和隨機性,施加于結構上的都是隨機生成的高斯白噪聲激勵,兩兩之間各不相同。

由于GRU 神經網絡的運行需要的數據集包括訓練集、驗證集和測試集,同時為保證各數據集的獨立性,在數據處理的最初階段,先將原始數據中的有損工況、無損工況分別按7:1:2 的比例分為訓練集、驗證集和測試集,然后分別按2.2 節所述方法對原始數據進行處理,消除自由振動的影響并進行高斯歸一化,隨后再采用數據擴充的方法對樣本數據進行擴充,最終得到完整的數據集。

本文通過數據裁剪的方法進行數據擴充,數據裁剪方法可分為非隨機裁剪和隨機裁剪2 類。其中非隨機裁剪指將高斯歸一化后的1~4 s 時間范圍內長度為1 536 的數據平均分成三等分;隨機裁剪則是從高斯歸一化后的數據集中隨機選取若干樣本,然后再從每個樣本上隨機裁剪一段長度為512 的數據。將由這2 種方法得到的樣本匯總為完整數據集,數據集中的樣本總數被擴充至14 520 個,其中訓練集、驗證集、測試集的樣本數分別為10 164,1 452 和2 904 個。每個樣本的數據形狀為1×512×22,樣本數據尺寸的第1 個維度表示數據的高度;第2 個維度表示數據的長度,對應的采樣頻率512 Hz;第3 個維度表示數據深度,本文通過數據采集點數來表示數據深度,對應22 個加速度采集點。

2.4 GRU 神經網絡結構及參數設置

本文通過GRU 神經網絡對箱型梁進行裂紋損傷檢測。該神經網絡共有1 層輸入層,3 層隱藏層,1 層輸出層,其結構如圖5 所示。圖中:a為輸入的損傷數據,即箱型梁測點的加速度響應,其數據結構為b×t×d,其中b為批處理大小,即每次迭代的樣本數量,t為時間步,即輸入數據的時間長度,d為每個時間步輸入向量的特征維度;h為GRU 層提取的損傷特征,用于確定裂紋的位置和長度;P[i]為最終的輸出數據,即損傷在各標簽下的概率。

圖5 GRU 神經網絡模型結構Fig. 5 The structure of the GRU neural network model

隱藏層包含2 層GRU 神經網絡層和1 層全連接層,其中GRU 神經網絡層用于從輸入數據中提取損傷特征,全連接層則對提取到的損傷特征進行處理并輸入到Softmax 函數中進行分類。同時,為避免模型出現過擬合現象,本文在GRU 層間加入了Dropout 算法,可以讓模型按照一定的概率舍棄部分神經元,避免依賴數據的局部特征進行輸出[21]。

在本文中,輸入數據a代表一批加速度數據,ai代表這批加速度數據按照時間步展開后各時刻的加速度數據。輸入數據首先輸入到前一層GRU 神經元進行計算,并將前一層GRU 神經元的輸出作為后一層的輸入,可以認為模型在每一時刻同時學習到的是22 個不同采集點的加速度數據,連續學習了512 個時間步。然后,將最后一層GRU 神經元最后時刻的輸出作為全連接層的輸入,并通過Softmax 函數進行分類,輸出模型預測的裂紋標簽。

神經網絡需要設置合適的超參數,GRU 神經網絡的超參數主要包括學習率、模型訓練次數、批處理大小、輸入層維度、隱藏層特征維度、循環層數、輸出層維度、舍棄概率等。其中,學習率指神經網絡模型學習數據特征的速度,這決定了目標函數能否以及如何收斂至局部最小值;訓練次數(epoch)指使用訓練集的全部數據對模型進行完整訓練的次數;批處理大小、隱藏層特征維度已在本節開頭進行論述;輸入層維度指樣本的數據深度,對應22 個加速度采集點;循環層數指本文采用的2 層GRU 層;輸出層維度取決于研究的內容,如裂紋位置、裂紋長度等;舍棄概率指Dropout 算法按該概率舍棄的部分神經元。

經過多次測試,本文GRU 神經網絡使用的超參數值如表2 所示。此外,為幫助模型更好地收斂而得到最優解,本文還在GRU 神經網絡中加入了Adam 優化算法,并以指數衰減的形式更新了模型的學習率:

式中:LR為 當前訓練批次的學習率;LR0為初始訓練批次的學習率,如表2 所示,為0.01; λ為衰減常數,本文選取為0.95。

表2 GRU 模型超參數Table 2 The hyperparameters of the GRU model

2.5 模型性能驗證

為了驗證GRU 神經網絡模型的性能,本文采用基于小波包變換的多層感知機神經網絡(WPTMLP)[22]進行了對比。本文所采用WPT-MLP 方法的小波包基函數為Daubechies wavelet 2(Db2),分解層數為4 層,將22 個采集點的加速度響應中的損傷特征提取出來,并將1×(22×512)的加速度數據提取為1×(22×16)的特征樣本。然后,再由多層感知機(MLP)訓練得到裂紋損傷預測結果,該MLP 的結構和前文所提GRU 的結構相同,并采用同樣的數據集、全連接層、優化函數、分類函數及損失函數等。

3 裂紋損傷預測結果

本文采用GRU 和WPT-MLP 這2 種方法,將分別針對裂紋的位置和長度進行研究,同時,還需針對每個樣本分別設置一個標簽,標簽數量與輸出層維度相等。此外,還分別將裂紋的位置和長度不在訓練集中的情況用于測試,以驗證GRU 模型對裂紋損傷的近似預測能力。

3.1 裂紋位置預測

針對裂紋的位置進行研究時,輸出層維度為11,標簽“0”代表無損工況,“1~5”代表圖2(c)中頂板的5 個裂紋位置,“6~10”代表底板對應的5 個裂紋位置。經過對神經網絡模型的訓練、驗證與測試,最終對裂紋位置的預測結果如表3 所示。從中可以看出,GRU 方法在無噪聲情況下對裂紋位置的預測精度達100%,在有噪聲的情況下其精度為97.14%,均遠高于WPT-MLP 方法的94.63%(無噪聲)和76.45%(有噪聲)??梢奊RU方法具有更優的裂紋位置檢測性能,且對噪聲的敏感性較低。

表3 裂紋位置預測精度Table 3 The prediction accuracy of crack location

同時,為了更直觀地分析神經網絡模型對每一個裂紋位置的預測情況,本文采用混淆矩陣彩色刻度展示了有噪聲情況的結果?;煜仃囍械脑卦较蛑鲗蔷€集中,說明預測的效果越好。對裂紋具體位置預測結果的混淆矩陣如表4 和表5 所示,其中的行和列分別表示裂紋的預測位置和實際位置。從中可以看出,相比WPT-MLP方法,GRU 方法對各個位置的預測更準確,僅對無損狀況的預測精度較低,約為91%。

表4 有噪聲情況下GRU 方法對裂紋具體位置預測的混淆矩陣Table 4 Confusion matrix of crack location prediction using GRU method with noise

表5 有噪聲情況下WPT-MLP 方法對裂紋具體位置預測的混淆矩陣Table 5 Confusion matrix of crack location prediction using WPT-MLP method with noise

3.2 裂紋長度預測

對裂紋長度進行研究時,輸出層維度為4,標簽“0”代表無損工況,“1~3”分別代表裂紋長度為120,240,360 mm。最終,對位置的預測結果如表6 所示。由表可見,GRU 方法在無噪聲情況下對長度的預測精度達96.38%,在有噪聲情況下精度為88.67%,可見采用GRU 方法的定長精度明顯優于WPT-MLP 方法,可以有效提取裂紋長度損傷特征。

表6 裂紋長度預測精度Table 6 The prediction accuracy of crack length

對裂紋長度的預測結果混淆矩陣如表7 和表8所示。從中可以看出,WPT-MLP 方法對損傷長度的預測不夠理想,遠不及GRU 方法,且難以預測出無損狀況;GRU 方法對各個損傷長度的預測比較準確,但對無損狀況的預測精度較低。同時,GRU 方法預測錯誤的情況主要集中在無損和120 mm 長度裂紋的相互識別上,可見無損與低損傷狀態的特征具有一定的相似性。

表8 有噪聲情況下WPT-MLP 方法對裂紋長度預測的混淆矩陣Table 8 Confusion matrix of crack length prediction using WPT-MLP method with noise

3.3 裂紋近似預測

上文已驗證GRU 模型對損傷的位置和長度這2 個維度均具有較高的預測精度,本節將在已完成的長度預測的基礎上,驗證模型對位置的近似預測能力,即針對裂紋位置不在訓練集測點(3.1 節所述10 個位置)時,進行無噪聲和有噪聲這2 種情況下的近似預測。

假設已通過長度預測得到裂紋長度為360 mm,隨后進行裂紋位置的近似預測。選取裂紋中心在底板6 號和7 號中間的5 個等距位置A~E 上,如圖6 所示,然后分別將其有限元計算結果數據經過2.2 節所述處理后作為GRU 模型的測試集。同時,由于已確定裂紋長度,因此訓練集和驗證集中可以只保留無損工況和標簽“0~10”每個位置長度為360 mm 的計算結果。

圖6 裂紋位置近似預測測點Fig. 6 Measuring point for approximate prediction of crack location

由于選取的測點A~D 位于6,7 號位置中間,因此,本文關注模型將測點加速度響應數據識別為 6,7 號的概率。最終的測試結果如圖7 所示,由圖可見,GRU 模型可以以較高的精度將訓練集以外的位置近似預測到與其最接近的訓練集測點,且距離訓練集測點越近,預測的準確率越高。針對有噪聲的情況,當測點距離訓練集位置60 mm 時,近似預測的精度可以超過90%。同時還發現,在噪聲的掩蓋下,模型的近似預測能力有所下降,且降幅隨關注點距訓練集測點距離的增大而增大??梢圆扇√岣哂柧毤瘻y點密度的手段來降低噪聲的影響。

圖7 裂紋近似預測結果Fig. 7 Results of approximate prediction of crack

4 結 論

本文提出了一種基于GRU 神經網絡的箱型梁結構裂紋損傷檢測新方法,其可以同時檢測箱型梁不同位置處的裂紋位置和長度。首先,通過Python 語言對ABAQUS 進行二次開發,建立結構有限元模型并計算得到的加速度響應;然后通過數據擴充得到GRU 模型的輸入數據集,對裂紋位置、長度進行研究并與WPT-MLP 方法進行對比;最后,對模型的近似預測能力予以驗證。文章主要得到如下結論:

1) GRU 方法的裂紋損傷特征提取能力強,可以較準確地預測裂紋位置及長度,并具有良好的抗噪聲能力,其各方面的性能均優于WPT-MLP方法。

2) 低損傷樣本(120 mm 長度裂紋)和無損樣本的損傷特征具有一定的相似性。

3) 對于訓練集之外的其他位置,采用GRU方法也可以較準確地將其識別到最接近的位置,具有較強的近似預測能力。

本文的研究證明了GRU 神經網絡在包含多個板的箱型梁結構裂紋損傷檢測工作中的適用性,為未來將深度學習應用于實際船舶的損傷檢測工作中提供了新的思路。未來,可以在本文研究的基礎上繼續拓展裂紋種類,拓展檢測維度,繼續提升GRU 神經網絡的性能。

猜你喜歡
裂紋加速度噪聲
風機增速齒輪含初始裂紋擴展特性及壽命分析
“白噪聲”助眠,是科學還是忽悠?
“鱉”不住了!從26元/斤飆至38元/斤,2022年甲魚能否再跑出“加速度”?
有了裂紋的玻璃
有了裂紋的玻璃
基于聲類比的仿生圓柱殼流噪聲特性研究
心生裂紋
創新,動能轉換的“加速度”
要減少暴露在噪聲中嗎?
向心加速度公式推導
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合