網(wǎng)站做關(guān)鍵詞排名有必要嗎企業(yè)郵箱入口
本期采用2023年瞪羚優(yōu)化算法優(yōu)化VMD,并結(jié)合Transformer-SVM實(shí)現(xiàn)軸承診斷,算是一個(gè)小創(chuàng)新方法了。需要水論文的童鞋盡快!
瞪羚優(yōu)化算法之前推薦過(guò),該成果于2023年發(fā)表在計(jì)算機(jī)領(lǐng)域三區(qū)SCI期刊“Neural Computing and Applications”上。GOA方法具有出色的魯棒性和效率,目前被引258次。
本期軸承診斷思路如下:
①對(duì)官方下載的西儲(chǔ)大學(xué)數(shù)據(jù)進(jìn)行處理,劃分10種故障類型;
②對(duì)第一步處理得到的數(shù)據(jù)進(jìn)行特征提取,主要是采用GOA算法優(yōu)化VMD的兩個(gè)參數(shù)(模態(tài)分量和懲罰因子),并將優(yōu)化后的最佳值回帶提取10種狀態(tài)的特征向量;
③采用Transformer模型對(duì)提取的特征進(jìn)行學(xué)習(xí),并采用SVM分類器替代傳統(tǒng)的softmax分類器,進(jìn)一步提升模型分類能力。
內(nèi)容詳解
一、數(shù)據(jù)處理
對(duì)官方下載的西儲(chǔ)大學(xué)數(shù)據(jù)進(jìn)行處理,步驟如下:
-
一共加載10種數(shù)據(jù),然后取每個(gè)數(shù)據(jù)的DE_time(%DE是驅(qū)動(dòng)端數(shù)據(jù) FE是風(fēng)扇端數(shù)據(jù) BA是加速度數(shù)據(jù) 選擇其中一個(gè)就行)
-
設(shè)置滑動(dòng)窗口w,每個(gè)數(shù)據(jù)的故障樣本點(diǎn)個(gè)數(shù)s,每個(gè)故障類型的樣本量m
-
將所有的數(shù)據(jù)滑窗完畢之后,綜合到一個(gè)data變量中
-
有關(guān)西儲(chǔ)大學(xué)數(shù)據(jù)的處理之前有文章也講過(guò),大家可以看這篇文章:西儲(chǔ)大學(xué)軸承診斷數(shù)據(jù)處理,matlab免費(fèi)代碼獲取
最后得到的數(shù)據(jù)是一個(gè)1000*2048的矩陣,其中1000是樣本量,2048是特征。1000又等于100*10,10是指10種故障狀態(tài),100是指每種狀態(tài)有100個(gè)樣本。在代碼中是data_total_1797.mat
二、特征提取
對(duì)第一步數(shù)據(jù)處理得到的數(shù)據(jù)進(jìn)行特征提取:
選取五種適應(yīng)度函數(shù)進(jìn)行優(yōu)化,這里大家可以自行決定選哪一個(gè)!以此確定VMD的最佳k和α參數(shù)。五種適應(yīng)度函數(shù)分別是:最小包絡(luò)熵,最小樣本熵,最小信息熵,最小排列熵,排列熵/互信息熵,代碼中可以一鍵切換。至于應(yīng)該選擇哪種作為自己的適應(yīng)度函數(shù),大家可以看這篇文章。VMD為什么需要進(jìn)行參數(shù)優(yōu)化,最小包絡(luò)熵/樣本熵/排列熵/信息熵,適應(yīng)度函數(shù)到底該選哪個(gè)
關(guān)于特征提取的具體原理,也在這篇文章進(jìn)行過(guò)詳細(xì)介紹,大家可以跳轉(zhuǎn)閱讀。簡(jiǎn)單來(lái)說(shuō),就是利用包絡(luò)熵最小的準(zhǔn)則把每個(gè)樣本的最佳IMF分量提取出來(lái),然后對(duì)其9個(gè)指標(biāo)進(jìn)行計(jì)算,分別是:均值,方差,峰值,峭度,有效值,峰值因子,脈沖因子,波形因子,裕度因子。然后用這9個(gè)指標(biāo)構(gòu)建每個(gè)樣本的特征向量。
本篇文章采用了2023年一個(gè)高被引算法--瞪羚優(yōu)化器(GOA),對(duì)VMD參數(shù)進(jìn)行了優(yōu)化,找到了每個(gè)故障類型的最佳IMF分量,并利用包絡(luò)熵最小的準(zhǔn)則,提取出了最佳的IMF分量。每個(gè)狀態(tài)的優(yōu)化曲線圖我也畫出來(lái)了:
運(yùn)行程序后會(huì)在命令行窗口打印尋優(yōu)過(guò)程如下:
正在對(duì)第1個(gè)故障類型的數(shù)據(jù)進(jìn)行VMD優(yōu)化……請(qǐng)耐心等待!
第1個(gè)故障類型數(shù)據(jù)的最佳VMD參數(shù)是:2041 9最佳IMF分量是:IMF6
正在對(duì)第2個(gè)故障類型的數(shù)據(jù)進(jìn)行VMD優(yōu)化……請(qǐng)耐心等待!
第2個(gè)故障類型數(shù)據(jù)的最佳VMD參數(shù)是:626 3最佳IMF分量是:IMF2
正在對(duì)第3個(gè)故障類型的數(shù)據(jù)進(jìn)行VMD優(yōu)化……請(qǐng)耐心等待!
第3個(gè)故障類型數(shù)據(jù)的最佳VMD參數(shù)是:114 9最佳IMF分量是:IMF3
正在對(duì)第4個(gè)故障類型的數(shù)據(jù)進(jìn)行VMD優(yōu)化……請(qǐng)耐心等待!
第4個(gè)故障類型數(shù)據(jù)的最佳VMD參數(shù)是:192 3最佳IMF分量是:IMF3
正在對(duì)第5個(gè)故障類型的數(shù)據(jù)進(jìn)行VMD優(yōu)化……請(qǐng)耐心等待!
第5個(gè)故障類型數(shù)據(jù)的最佳VMD參數(shù)是:427 5最佳IMF分量是:IMF3
正在對(duì)第6個(gè)故障類型的數(shù)據(jù)進(jìn)行VMD優(yōu)化……請(qǐng)耐心等待!
第6個(gè)故障類型數(shù)據(jù)的最佳VMD參數(shù)是:242 10最佳IMF分量是:IMF10
正在對(duì)第7個(gè)故障類型的數(shù)據(jù)進(jìn)行VMD優(yōu)化……請(qǐng)耐心等待!
第7個(gè)故障類型數(shù)據(jù)的最佳VMD參數(shù)是:256 10最佳IMF分量是:IMF6
正在對(duì)第8個(gè)故障類型的數(shù)據(jù)進(jìn)行VMD優(yōu)化……請(qǐng)耐心等待!
第8個(gè)故障類型數(shù)據(jù)的最佳VMD參數(shù)是:510 8最佳IMF分量是:IMF8
正在對(duì)第9個(gè)故障類型的數(shù)據(jù)進(jìn)行VMD優(yōu)化……請(qǐng)耐心等待!
第9個(gè)故障類型數(shù)據(jù)的最佳VMD參數(shù)是:218 3最佳IMF分量是:IMF3
正在對(duì)第10個(gè)故障類型的數(shù)據(jù)進(jìn)行VMD優(yōu)化……請(qǐng)耐心等待!
第10個(gè)故障類型數(shù)據(jù)的最佳VMD參數(shù)是:820 4最佳IMF分量是:IMF4
三,采用Transformer-SVM模型實(shí)現(xiàn)故障分類
Transformer 作為一種創(chuàng)新的神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu),深受歡迎。采用 Transformer 編碼器對(duì)數(shù)據(jù)特征間的復(fù)雜關(guān)系以及時(shí)間序列中的長(zhǎng)短期依賴關(guān)系進(jìn)行挖掘,并在模型最后的分類階段,將傳統(tǒng)的softmax分類器替換為SVM分類器,進(jìn)一步提升模型的分類準(zhǔn)確率!
本文所選SVM是從官網(wǎng)下載的libsvm-3.3版本,已編譯好,大家可以直接運(yùn)行。
將第二步提取的特征劃分訓(xùn)練集與測(cè)試集后(3:1),送入Transformer-SVM模型進(jìn)行訓(xùn)練,結(jié)果如下:
結(jié)果展示
同時(shí)還繪制了Transformer模型識(shí)別前后的樣本分布圖,采用tsne降維后繪制二維平面圖如下:
代碼目錄:
最后一個(gè)壓縮包是有關(guān)VMD畫圖的程序。考慮到大家可能會(huì)用到VMD的相關(guān)作圖,包絡(luò)譜,頻譜圖等,作者在這里也一并附在代碼中了。這部分大家需要自行更改數(shù)據(jù)!也就是作者比較火的文章之一,這里邊提到的所有代碼:VMD分解,matlab代碼,包絡(luò)線,包絡(luò)譜,中心頻率,峭度值,能量熵,樣本熵,模糊熵,排列熵,多尺度排列熵,西儲(chǔ)大學(xué)數(shù)據(jù)集為例
代碼獲取
點(diǎn)擊下方卡片獲取。
已將此代碼添加至故障診斷全家桶中