駱劍彬,劉越生,姜紹飛, 麻勝蘭
(1. 福州大學土木工程學院,福建 福州 350108; 2. 福建華航建設集團有限公司,福建 福州 350001; 3. 福建工程學院土木工程學院,福建 福州 350118)
隨著社會經(jīng)濟的發(fā)展與科技進步,越來越多的大型工程結構安裝了結構健康監(jiān)測系統(tǒng)[1]. 為了對這些結構健康監(jiān)測系統(tǒng)產(chǎn)生的海量數(shù)據(jù)進行實時損傷識別,國內(nèi)外學者做出了很多研究,但實際應用還不是很理想[2]. 傳統(tǒng)的全局損傷識別方法,特別是基于振動的損傷識別方法,一般地可以分為參數(shù)(基于模態(tài))方法和非參數(shù)方法(基于信號). 在參數(shù)方法中,系統(tǒng)辨識算法通過對模態(tài)參數(shù)變化的辨識來識別結構損傷; 另一方面,非參數(shù)方法采用統(tǒng)計方法直接通過測量信號識別結構損傷[3]. 近年來,國內(nèi)外學者廣泛使用由特征提取和特征分類組成的機器學習方法發(fā)展了一系列的損傷識別技術. 該技術主要包括在基于參數(shù)方法的特征分類技術,如多層人工神經(jīng)網(wǎng)絡[3]、概率神經(jīng)網(wǎng)絡[4]、模糊神經(jīng)網(wǎng)絡[5]和支持向量機[6]等,以及基于非參數(shù)方法的特征提取技術,如統(tǒng)計方法、主成分分析、小波變換、希-黃變換、自回歸模型和貝葉斯模型等[7-11]. 在進行該方法的特征提取時,一般只保留少數(shù)的特征信息,其他大量的信息被擯棄,直接導致結構損傷識別率低. 同時,特征提取準確性制約著損傷識別率,如果特征的準確性難以保證,尤其在有噪聲干擾的情況下,監(jiān)測數(shù)據(jù)的特征提取將會受到很大的影響. 此外,如果特征提取的數(shù)據(jù)太多會導致計算十分耗時,阻礙這些技術在實時健康監(jiān)測方面的應用. 因此,若能夠將特征提取和分類器緊密融合為一體,自適應提取特征,同時將多監(jiān)測節(jié)點的海量數(shù)據(jù)進行融合識別,將極大程度的提升該問題的穩(wěn)定性.
大數(shù)據(jù)挖掘、深度學習等AI技術的發(fā)展及其在損傷檢測中的應用,為上述難題的解決提供了思路. 作為AI中應用比較廣泛的卷積神經(jīng)網(wǎng)絡已經(jīng)在光學圖像的目標識別、檢測及基于振動的結構損傷識別方面有廣泛的應用,并用于建筑、路面、橋梁的病害檢測中[12-14]. 如Abdeljaber等[12]最早將卷積網(wǎng)絡應用于基于振動的結構損傷識別中,采用一維卷積網(wǎng)絡直接利用加速度時域信號判斷當前位置的損傷狀況; Xu等[13]提出改進快速區(qū)域卷積神經(jīng)網(wǎng)絡,用于對地震后多層鋼筋混凝土柱的損傷識別和定位; 何浩祥等[14]將結構響應信號進行小波包濾波和重構,提出基于卷積神經(jīng)網(wǎng)絡的橋梁損傷識別方法; Choe等[15]使用長短期記憶和門控循環(huán)單元神經(jīng)網(wǎng)絡對浮動式海上風力渦輪機葉片進行結構損壞檢測. 這些開拓性的工作有力地促進了深度學習在損傷識別方面的應用. 但是深度學習模型的隱含層數(shù)和參數(shù)過多,從零開始訓練深度神經(jīng)網(wǎng)絡模型需要大量數(shù)據(jù)、高計算成本和時間成本. 而實際損傷識別案例中損傷數(shù)據(jù)較少,難以訓練出有效的深度學習模型. 趙燁[16]在數(shù)據(jù)集數(shù)據(jù)較少的情況下進行兩次遷移學習,提高了卷積神經(jīng)網(wǎng)絡的葉片損傷識別精度; Lin等[17]開發(fā)深度遷移學習方法企圖數(shù)值跨域結構損傷檢測問題; 劉肖等[18]通過TL方法將源模型的權重和參數(shù)轉移到目標模型上,提升模型損傷識別精度. 這些工作表明對網(wǎng)絡模型進行遷移學習,可以減小實際網(wǎng)絡模型訓練所需的樣本數(shù)量,提高模型識別精度.
本研究提出一種基于多通道一維卷積神經(jīng)網(wǎng)絡(convolutional neural network, CNN)和遷移學習的新穎、快速結構損傷識別方法. 首先根據(jù)損傷特征向量特點,對不同安裝位置的原始加速度信號進行分幀處理; 其次考慮多傳感器數(shù)據(jù)融合要求,將包含損傷特征的分幀數(shù)據(jù)作為卷積神經(jīng)網(wǎng)絡的輸入數(shù)據(jù),充分利用卷積神經(jīng)網(wǎng)絡的自動特征提取能力對分幀數(shù)據(jù)進行分類,實現(xiàn)損傷識別; 然后分別采用不同通道和噪聲水平下的加速度數(shù)據(jù)對15層框架數(shù)值模型進行損傷識別; 最后在此基礎上,將該方法進行遷移學習,移植到試驗模型上,對一個7層框架試驗模型進行損傷識別,驗證該方法在結構損傷識別、定位方面的可行性和準確性.
圖1 算法整體流程圖Fig.1 Flow chart of the overall algorithm
以卷積神經(jīng)網(wǎng)絡為代表的深度學習模型,利用優(yōu)良的損傷特征向量進行訓練和建模顯著提高了損傷識別的能力[14]. 為此本文首先針對數(shù)值模型的加速度數(shù)據(jù)進行預處理,生成帶損傷標簽的加速幀作為訓練數(shù)據(jù); 其次針對訓練數(shù)據(jù)設計深度卷積神經(jīng)網(wǎng)絡模型CNN并訓練CNN; 然后使用經(jīng)預處理生成的待測試加速度幀測試CNN. 接著對網(wǎng)絡的輸出進行判斷,獲得數(shù)值模型的評估結果. 最后通過遷移學習,將卷積神經(jīng)網(wǎng)絡模型移植到框架試驗模型,評估框架試驗模型的損傷識別結果. 算法整體流程如圖1所示.
因此,本文網(wǎng)絡結構的卷積層可以表示為:
(1)
式中:l為層數(shù);k為卷積核;Mj為輸入層的感受野;b為偏置.
在池化層中,池化操作的作用是使用某一位置相鄰輸出的總體統(tǒng)計特征來代替該位置的輸出.池化分為最大池化、平均池化、L2范數(shù)和基于中心的加權平均.池化層可以表示為:
(2)
式中:down()為池化函數(shù);β為權重系數(shù).
卷積神經(jīng)網(wǎng)絡作為多層深度網(wǎng)絡,層數(shù)、網(wǎng)絡結構參數(shù)的選擇并不固定,一般應用上選擇對經(jīng)典的卷積神經(jīng)網(wǎng)絡模型如LeNet、AlexNet、VGG和GoogleNet等進行改進. 本研究針對框架模型問題的具體特點,基于LeNet網(wǎng)絡模型重新設計網(wǎng)絡的通道數(shù)、卷積核數(shù)、維數(shù)和結構. 1) 卷積通道. 增加多通道的加速度數(shù)據(jù)進行融合. 2) 卷積核. 卷積核的大小影響局部特征的提出,并影響網(wǎng)絡的收斂速度. 卷積核太大,提取的特征無法表達,卷積核太小,無法提取局部特征. 3) 池化步長. 使用重疊的最大化池,讓步長比池化核尺寸小,提升特征的豐富性. 4) 特征維數(shù). 特征維數(shù)影響網(wǎng)絡收斂和收斂速度,并對最終結果有影響. 太高的特征維數(shù)產(chǎn)生冗余,過低則無法表達特征[20].
基于上述分析,結合損傷類型數(shù)量和加速度數(shù)據(jù)通道數(shù)量,通過實驗對網(wǎng)絡結構參數(shù)進行驗證. 最終確定采用的卷積神經(jīng)網(wǎng)絡結構共分6層,包括2個卷積層,2個下采樣層,2個全連接層,網(wǎng)絡結構如圖2所示,參數(shù)如表1所示. 表1中:k為卷積核;s為步長。所用的激活函數(shù)為ReLu函數(shù),學習率0.005. 池化層為有重疊的最大池化.
圖2 網(wǎng)絡結構示意圖Fig.2 Diagram of the networks architecture
表1 網(wǎng)絡結構參數(shù)表
考慮深度學習模型隱含層數(shù)和參數(shù)較多,從零開始訓練需要大量標簽數(shù)據(jù)、相當大的計算成本和時間成本,而實際框架結構模型的損傷數(shù)據(jù)較少,應用少量數(shù)據(jù)很難訓練出有效的深度模型. 遷移學習能消除深度學習模型的局限,很大程度上推動了深度模型訓練的進程,降低了對數(shù)據(jù)量的要求. 因此,本文通過數(shù)值模型生成的結構響應數(shù)據(jù),對CNN進行預訓練,然后通過遷移學習將預訓練模型的網(wǎng)絡結構、模型參數(shù)及超參數(shù)據(jù)轉移到框架結構模型上,從而實現(xiàn)對框架結構的損傷識別.
在遷移學習過程中,首先保持模型卷積層的結構不變,再向卷積層載入數(shù)值模型訓練好的權重與參數(shù); 其次設計適用于框架結構模型上的全連接層; 然后用新設計的全連接層代替原本的全連接層,并與先前的卷積層組成新的卷積網(wǎng)絡模型; 最后用框架結構模型采集到的結構響應數(shù)據(jù)訓練新模型.
圖3 15層框架結構簡化模型Fig.3 15-story frame structure simplified model
本研究以一個15層剪切型線性框架結構數(shù)值模型為例,驗證該方法,簡化模型如圖3所示. 假設模型各層質量為m1=m2=…=m14=3.78 kg,m15=3.31 kg,層間剛度值為k1=k2=…=k15=375 kN·m-1,前兩階阻尼比ζ1和ζ2均為2%. 損傷模式通過降低各層的剛度來模擬:分別為兩種大小損傷(小損傷指剛度下降4.1%,大損傷指剛度下降16.7%)程度和4種損傷位置,見表2. 隨機激勵F作用在結構的頂層,采樣頻率取1 024 Hz,每個損傷模式采樣時間取256 s,每層采集加速度信號,每個信號包含nT個樣本. 然后使用Matlab代碼用于劃分幀,幀長度ns取128個樣本,總共獲得12 282(2 048×6)個帶損傷標簽的幀. 這些幀的50%用于訓練,其他幀用于測試. 迭代次數(shù)取400或者訓練誤差達到1%立即停止.
表2 損傷程度和位置
2.2.1不同加速度通道卷積網(wǎng)絡識別結果
15層剪切型線性框架結構數(shù)值模型在各損傷模式下進行識別,獲得15組加速度數(shù)據(jù). 在沒有加入噪聲的情況下,本文分別使用單通道、雙通道、三通道及十五通道傳感器信號進行測試,分別測得對6種損傷模式分類識別結果,如表3所示. 由表3可知,在加速度信號沒有加入噪聲時,單通道傳感器信號對于損傷模式基本沒有辦法識別; 隨著通道數(shù)的增多,識別率不斷提高; 四通道(1, 13, 14, 15)的識別率已經(jīng)達到90.64%,接近于十五通道的識別率; 十五通道的識別率能夠達到99.84%; 但有些通道識別率低,主要原因是通道的傳感器對損傷不敏感.
表3 不同傳感器通道的卷積神經(jīng)網(wǎng)絡識別精度
2.2.2不同噪聲水平下識別結果
考慮到測量噪聲的影響,對各層加速度信號加上一個隨機序列,即
(3)
表4 不同噪聲水平下識別結果
由表4可知,15通道卷積神經(jīng)網(wǎng)絡在無噪聲時識別精度達到99.84%,15%噪聲時識別精度還有99.40%,甚至50%噪聲時識別精度還能達到90.09%,說明該方法具有非常好的抗噪能力.
在配置為2個Intel E5-260 v2 2.10 GHz的處理器和64 G內(nèi)存的服務器上進行實驗,并安裝了Ubuntun操作系統(tǒng). 常見的深度學習框架有TensorFlow、Keras、PyTorch、Caffe、Deeplearning4j等,本研究使用深度學習框架Deeplearn4j對網(wǎng)絡進行構建和優(yōu)化,并使用Matlab軟件建立數(shù)值模型并生成數(shù)據(jù)集. 采集6種損傷模式十五通道的加速度信號各256 s,信號劃分為2 048幀,每幀有128個樣本,其中1 024幀用于訓練,其余1 024幀用于測試,在訓練過程中進行400次迭代. 測試結果表明,卷積神經(jīng)網(wǎng)絡訓練需要87 min,經(jīng)過訓練后用于識別1 s的加速度信號只需要3.9 ms.
試驗框架模型為一個7層、2跨×1的鋼框架縮尺模型,該模型平面尺寸為0.4 m×0.2 m,高1.412 5 m. 框架構件采用熱軋300W級鋼材(fy=300 MPa). 梁、柱尺寸規(guī)格分別為25 mm×25 mm×3 mm和25 mm×4.6 mm,截面面積分別為264和115 mm2,慣性矩分別為2.17×10-8和2.03×10-10m4,楊氏模量為206 GPa,體密度為7 850 kg·m-3. 在模型頂層跨處進行激振,每層記錄加速度響應,結構損傷通過切割柱子來模擬,通過在柱子上下端切割4個7.5 mm×2.5 mm大小的缺口來模擬小損傷; 通過將柱子從中間完全切斷來模擬大損傷. 根據(jù)不同損傷程度和損傷位置,設置無損傷工況和三種損傷工況進行損傷模式識別,如表5所示. 試驗過程中采樣頻率設置為5 000 Hz,獲取每層共7個通道的加速度信號. 隨機激勵F作用在結構的頂層,每個工況截取5 s,共25 000個采樣數(shù)據(jù),劃分成194幀,每幀128個樣本,總共獲得776(194×4)個帶損傷標簽的幀. 這些幀的80%用于訓練,其他幀用于測試. 迭代次數(shù)取260或者訓練誤差達到1%立即停止.
表5 試驗工況的損傷模式
按照節(jié)1.3所述,載入節(jié)2數(shù)值模型網(wǎng)絡結構的訓練好的權重與參數(shù),按照表6三種損傷和無損傷狀態(tài)類型設計全連接層,并與先前的卷積層組成新的卷積網(wǎng)絡模型. 最后用框架模型采集到的加速度響應數(shù)據(jù)訓練新模型,對損傷樣本數(shù)據(jù)進行了識別研究,識別結果如表6所示.
表6 卷積神經(jīng)網(wǎng)絡識別結果
由表6可知,遷移學習后的七通道卷積神經(jīng)網(wǎng)絡在小數(shù)據(jù)量的識別率會比大數(shù)據(jù)量的識別率差,特別是樣本模式2,有5個樣本錯誤識別為模式1或3,但總識別率也能達到77.0%.
1) 采用不同通道的加速度數(shù)據(jù)對15層框架數(shù)值模型進行損傷識別,通道數(shù)越多,識別效果越好,十五通道共同識別結果達到為99.84%. 加入15%噪聲后十五通道識別精度還有99.40%,甚至加入50%噪聲后識別精度還能達到90.09%,表明該方法具有較好的抗噪性. 網(wǎng)絡模型用于識別1 s的加速度信號只需要3.9 ms,表明該方法具有突出的計算效率.
2) 將該卷積神經(jīng)網(wǎng)絡模型遷移學習到7層框架試驗模型上,縮短了訓練時間. 由于實測數(shù)據(jù)量較少,遷移學習后卷積神經(jīng)網(wǎng)絡在小數(shù)據(jù)量的識別率會比大數(shù)據(jù)量的識別率差,但總識別率也能達到77.0%.
3) 卷積神經(jīng)網(wǎng)絡的遷移學習對結構損傷識別具有較好的應用前景.