高創新 | 超強軸承故障診斷模型!
?前言
本文基于凱斯西儲大學(CWRU)軸承數據,進行快速傅里葉變換(FFT)和變分模態分解VMD的數據預處理,最后通過Python實現基于VGGSENet-BiGRUGlobalAttention的時空特征融合模型對故障數據的分類。
1 模型整體結構
預處理:一維故障信號分別經過FFT變換、VMD分解處理,然后把變換分解后的結果進行堆疊。
分支一:通過基于通道注意力機制(SENet)的改進VGG模型網絡,來自適應地調整通道特征的權重,使模型能夠自動學習到不同通道的重要性,提取了軸承故障信號中與故障相關的重要空間特征;
分支二:預處理后的數據同時通過基于GlobalAttention優化的BiGRU網絡,GlobalAttention是一種用于加強模型對輸入序列不同部分的關注程度的機制。在 BiGRU 模型中,全局注意力機制可以幫助模型更好地聚焦于輸入序列中最相關的部分,從而提高模型的性能和泛化能力。在每個時間步,全局注意力機制計算一個權重向量,表示模型對輸入序列各個部分的關注程度,然后將這些權重應用于 BiGRU 輸出的特征表示,通過對所有位置的特征進行加權,使模型能夠更有針對性地關注重要的時域特征, 提高了模型對軸承故障信號時域特征的感知能力;
特征融合:然后兩個分支提取的空間特征和全局時域特征通過堆疊融合,使模型能夠更好地融合不同層次的特征表示,提高模型性能和泛化能力。
2 軸承故障數據的預處理
2.1 導入數據
參考之前的文章,進行故障10分類的預處理,凱斯西儲大學軸承數據10分類數據集:
train_set、val_set、test_set 均為按照7:2:1劃分訓練集、驗證集、測試集,最后保存數據
2.2 故障FFT變換可視化
2.3 故障VMD分解可視化
2.4 故障數據的特征預處理數據集制作
3 基于FFT-VMD+VGGSENet-BiGRUGlobalAttention的軸承故障診斷分類
3.1 定義VGGSENet-BiGRUGlobalAttention分類網絡模型
3.2 設置參數,訓練模型
50個epoch,準確率100%,用FFT-VMD+VGGSENet-BiGRUGlobalAttention網絡分類效果顯著,快速傅里葉變換(FFT)和變分模態分解(VMD)可以有效地挖掘信號中的多尺度特征,VGGSENet-BiGRUGlobalAttention創新模型能夠充分提取軸承故障信號的空間和時序特征,收斂速度快,性能優越,精度高,能夠從故障信號頻域、時域特征中屬于提取出對模型識別重要的特征,效果明顯,創新度高!
注意調整參數:
- 可以適當調整VGG層數和隱藏層的維度,微調學習率;
- 調整BiGRU層數和注意力維度數,增加更多的 epoch (注意防止過擬合)
- 可以改變一維信號堆疊的形狀(設置合適的長度和維度)
3.3 模型評估
準確率、精確率、召回率、F1 Score
點擊下載:原文完整數據、Python代碼https://mbd.pub/o/bread/ZZ2blZ9p
本文轉載自?? 建模先鋒??,作者:小蝸愛建模
