韓 霞, 趙 軍, 西熱娜依·白克力,郭天太,孔 明
(1.中國計量大學(xué) 計量測試工程學(xué)院,浙江 杭州 310018;2.哈密市質(zhì)量與計量檢測所,新疆 哈密 839000)
支持向量機(support vector machine,SVM)通過最小化泛化誤差并最大化訓(xùn)練集兩分類之間的幾何邊距來構(gòu)建分類模型,保證能夠獲得全局最優(yōu)解[1],是一種監(jiān)督學(xué)習(xí)方法。
選擇合適的核函數(shù)對于改善SVM分類性能具有重要意義。韓華等人采用網(wǎng)格搜索的方法尋找最優(yōu)核參數(shù),并用十折交叉驗證方法評價參數(shù)的有效性,但要求具有一定的經(jīng)驗性[2]。Li S J和Wu H等人為了提高分類準(zhǔn)確度,使用遺傳算法來優(yōu)化SVM模型參數(shù)[3]。Aydin I等人則采用多目標(biāo)人工免疫算法對SVM的模型參數(shù)進行了優(yōu)化[4]。然而上述方法都不適用于非線性分類問題。
粒子群優(yōu)化(particle swarm optimization,PSO)算法是一種基于群體智能的演化算法[5]。與其他算法相比,PSO算法中間迭代步驟簡單,對解空間的搜索能力強,收斂速度快,因此,可用于SVM模型參數(shù)尋優(yōu)。李松等人通過腦機接口(brain computer interface,BCI)數(shù)據(jù)集測試了遺傳算法尋優(yōu)、PSO尋優(yōu)等5種SVM參數(shù)尋優(yōu)算法,結(jié)果顯示利用PSO進行參數(shù)優(yōu)化后的模型具有較高的分類正確率[6]。
本文利用PSO算法,對影響非線性SVM分類性能的2個參數(shù),懲罰參數(shù)及其核參數(shù),進行優(yōu)化,并將優(yōu)化后的算法用于減速機齒輪故障診斷分類中。
SVM學(xué)習(xí)和泛化能力強,在分析處理小樣本、非線性和局部極小等問題時表現(xiàn)出強大的優(yōu)越性[7]。
SVM的模型原理描述如下:用(xi,yi),1≤i≤N,表示一組含有N個采樣數(shù)據(jù)的樣本,每個樣本必須符合條件xi∈Rd。yi為相應(yīng)的樣本xi所屬的類,則yi∈{-1,1}。d為輸入數(shù)據(jù)的維度。分類超平面可以被推導(dǎo)為
w·xi+b=0,1≤i≤N
(1)
w·xi+b=±1
(2)
依據(jù)式(2),對每一個樣本點均有
yi(w·xi+b)≥1
(3)
問題即變成找到最優(yōu)的w和b。由SVM學(xué)習(xí)產(chǎn)生的最優(yōu)超平面,含有距離支持向量的最大距離,分離超平面的邊距為2/‖w‖ 。為找到最優(yōu)超平面,則最小化‖w‖。用1/2 ‖w‖2來代替‖w‖,則識別分類問題歸結(jié)為一個二次規(guī)劃問題。
對于非線性問題,引進非負的松弛變量ξi,有
(4)
式中C為懲罰參數(shù),用于平衡邊距最大化和誤差最小化2個因素。上述問題可使用拉格朗日乘子法求解,分類決策函數(shù)變成
(5)
式中αi為拉格朗日乘子。
K(xi,xj)=φ(xi)·φ(xj)為核函數(shù)可通過另外一個映射函數(shù)φ(x)得到。二次規(guī)劃求解器可以用于求解αi,則有w和b為
(6)
(7)
式中NSV為支持向量的數(shù)目;x為輸入的未知樣本。
本文采用常用的高斯徑向核函數(shù)[8]
(8)
模型的分類性能主要由核參數(shù)σ和誤差懲罰參數(shù)C兩個參數(shù)決定[9]。
采用K折交叉驗證法(K—CV):將訓(xùn)練樣本隨機分為k組,每組含有相同數(shù)目且無交集的訓(xùn)練樣本,將其中k-1組作為訓(xùn)練集來訓(xùn)練SVM,用剩下的一組樣本作為測試集測試訓(xùn)練所得分類器模型的正確率。重復(fù)操作k次之后,最終取這k次預(yù)測得到的分類正確率的平均值作為該模型的分類正確率。本文選用3折交叉驗證法。
本文提出利用PSO算法[10~12]對SVM齒輪故障分類模型進行參數(shù)優(yōu)化,其懲罰參數(shù)C和高斯核參數(shù)σ的選取不再依靠人為經(jīng)驗或者是任意選取,而是基于PSO算法的迭代優(yōu)化選取,對于不同的核函數(shù)或者訓(xùn)練樣本集,計算并匹配不同最佳參數(shù)(C,σ)。
為驗證PSO-SVM算法在實測實驗中的分類性能,搭建了減速機齒輪診斷實驗臺。采用型號為RV50的減速機,減速比7.5。減速機直接與驅(qū)動電機相連,驅(qū)動電機將動力傳到減速機,帶動減速機產(chǎn)生振動。加速度信號經(jīng)傳感器由研華PCI-1714UL型四通道同步采集卡采集傳輸至電腦端,輸入SVM。圖1為實驗搭建的減速機實驗臺,用螺紋栓將傳感器固定在減速機表面中心的螺紋孔,該螺紋孔位于齒輪嚙合正上方,加速度傳感器固定在此處測量能較好地測得振動信號(圖1中圓圈所示)。
圖1 減速機實驗臺
減速機的蝸輪和蝸桿硬度相差較大,相對于蝸桿,蝸輪出現(xiàn)故障的概率要大得多,所以本次實驗的故障設(shè)置在蝸輪齒輪上。設(shè)置的故障分別為齒輪磕碰、齒輪磨損,2種故障與正常齒輪共構(gòu)成3種類別,通過分類器進行分類。正常齒輪獲取正常齒輪減速機的振動信號,作為標(biāo)準(zhǔn)樣本庫;故障樣本庫包含2個已知齒輪故障減速機的振動信號,故障類型分別為齒輪的磕碰故障及磨損故障。由于在實際情況中,采集的振動信號并非理想的線性信號,因此,本文選用了非線性SVM,并利用啟發(fā)式智能算法對核函數(shù)及模型參數(shù)進行調(diào)整,以達到良好的分類效果。
利用PCB356A33加速度傳感器測得振動信號計算21項常用時域統(tǒng)計指標(biāo),以此作為支持向量機的輸入。
測點位置選擇在圖1所示減速機上方圓圈處。該測點位置處于減速機齒輪嚙合的正上方,可較好地接收故障信號的傳遞,所含齒輪故障信息較多。在驅(qū)動電機轉(zhuǎn)速為1 500 r/min的情況下測量齒輪的振動數(shù)據(jù)。初始采樣頻率為fs=80 kHz,數(shù)據(jù)長度為1 048 576,通過降采樣操作后采樣頻率為fs=20 kHz,數(shù)據(jù)長度為262 144。將所測數(shù)據(jù)按每組2 048個分成128組,組成SVM訓(xùn)練集。從128個輸入中隨機抽取32個作為測試集輸入,檢測SVM的分類性能。
按照數(shù)據(jù)的類型,將樣本數(shù)據(jù)分為3類,即有量綱指標(biāo)數(shù)據(jù)集、無量綱指標(biāo)數(shù)據(jù)集及綜合的21項指標(biāo)數(shù)據(jù)集,分別用3類數(shù)據(jù)集對SVM進行訓(xùn)練和測試,并比較所得3個模型分類的正確率。
表1所示為2種算法對比下的21項指標(biāo),可以看出,PSO-SVM正確率為93.8%,其分類效果優(yōu)于SVM分類效果,預(yù)測結(jié)果具有較高正確率,表明采用 PSO算法能夠獲得全局最優(yōu)解。
表1 21項指標(biāo)下2種算法對比
利用PSO對SVM進行參數(shù)優(yōu)化時,選用不同特征向量指標(biāo)作為輸入的的分類結(jié)果如表2。其中,CV 正確率表示在3折交叉驗證方法下SVM模型的最高分類正確率。可知,利用樣本數(shù)據(jù)集的3類不同特征向量指標(biāo)訓(xùn)練模型時,得到的參數(shù)的最優(yōu)值明顯不同,分類效果也不盡相同,但均能達到93 %以上。
表2 PSO算法關(guān)于不同特征指標(biāo)的分析結(jié)果
以有量綱特征向量指標(biāo)為例,由圖2中有量綱特征向量指標(biāo)下的PSO算法適應(yīng)度曲線,可以看出,通過約300次的迭代,最佳適應(yīng)度達到87 %,平均適應(yīng)度約為75 %。
圖2 有量綱指標(biāo)下迭代優(yōu)化的適應(yīng)度曲線
圖3為有量綱特征向量指標(biāo)下的測試集樣本分類,有量綱特征項向量指標(biāo)組成測試集,作為PSO-SVM的輸入。通過對比測試集實際分類可以算出模型預(yù)測準(zhǔn)確率,由圖可見測試樣本中分類錯誤的點只有9個,測試集分類的正確率達到了92.7 %。
圖3 有量綱指標(biāo)下優(yōu)化模型的測試分類
由以上可知,分別將3類特征向量,作為SVM訓(xùn)練集,可得到不同的模型,其模型參數(shù)C和σ有明顯差異,分類效果也不相同。
以本文實驗平臺減速機所測得的數(shù)據(jù)為例,在驅(qū)動電機轉(zhuǎn)速在300~1 500 r/min的情況下,對減速機振動加速度數(shù)據(jù)進行訓(xùn)練和測試。表3為特定轉(zhuǎn)速情況下,2種模型的相關(guān)參數(shù)和測試集分類結(jié)果??芍琍SO-SVM得出的正確率(90.6 %)明顯高于未進行參數(shù)優(yōu)化而得出的正確率(78.13 %)。
表3 轉(zhuǎn)速600 r/min時2種算法對比
表4為驅(qū)動電機在不同轉(zhuǎn)速下帶動減速機振動,其振動數(shù)據(jù)通過PSO算法得到的SVM分類結(jié)果。由表格可以看出,轉(zhuǎn)速越高,PSO-SVM的分類正確率越高。這是因為轉(zhuǎn)速高的情況下振動能量較大,各項指標(biāo)相對變化幅度較大,從而分類效果較理想。
將PSO應(yīng)用到SVM參數(shù)優(yōu)化中,使PSO-SVM齒輪故障分類系統(tǒng)具有良好的自學(xué)習(xí)、自適應(yīng)能力,能更精確地找到最優(yōu)解,分類正確率得到提高。粒子群算法對多目標(biāo)問題解空間具有強大的搜索能力。
參考文獻:
[1] Vapink V N.The nature of statistical learning theory[M].New York:Spring Verlag,1995:21-22.
[2] 韓 華,谷 波,康 嘉.基于遺傳算法和支持矢量機參數(shù)優(yōu)化的制冷機組故障檢測與診斷研究[J].機械工程學(xué)報,2011,47(16):120-121.
[3] Li S J,Wu H.An effective feature selection method for hyperspectral image classification based on genetic algorithm and support vector machine[J].Knowledge-Based System,2011,24(1):40-48.
[4] Aydin I,Karakose M,Akin E.A multi-objective artificial immune algorithm for parameter optimization in support vector ma-chine[J].Applied Soft Computing,2009,11 (1):120-129.
[5] Kennedy J,Eberhart R.Particle swarm optimization[C]∥IEEE International Conference on Neural Networks,San Diego:IEEE,1995:1942-1948.
[6] 李 松,伏云發(fā),陳 健,等.五種SVM 參數(shù)尋優(yōu)識別運動想象腦電比較研究[J].傳感器與微系統(tǒng),2017,36(4):42-46.
[7] 何學(xué)文,趙海鳴.支持向量機及其在機械故障診斷中的應(yīng)用[J].中南大學(xué)學(xué)報:自然科學(xué)版,2005,36(1):97-101.
[8] 奉國和.SVM分類核函數(shù)及參數(shù)選擇比較[J].計算機工程與應(yīng)用,2011,47(3):123-124,128.
[9] 都 衡,潘宏俠.基于信息熵和GA-SVM的自動機故障診斷[J].機械設(shè)計與研究,2013,29(5):128-129.
[10] 王 凱,侯著榮,王聰麗.基于交叉驗證SVM的網(wǎng)絡(luò)入侵檢測[J].測試技術(shù)學(xué)報, 2010,24 (5):420-421.
[11] Kennedy J,Eberhart R C.Particle swarm optimization[C]∥Proceedings of IEEE International Conference on Neural Networks,Piscataway,1995:1942-1948.
[12] 翟彥蓉,黃 歡,張 申,等.改進粒子群優(yōu)化算法在TDOA定位中的應(yīng)用[J].傳感器與微系統(tǒng),2013,32(4):145-148,152.