聶立新, 張天俠, 趙 波
(1.東北大學機械工程與自動化學院 沈陽,110819) (2.河南理工大學機械與動力工程學院 焦作,454000)
支持向量機[1](support vector machine,簡稱SVM)是一種基于統計學的VC維理論和結構風險最小化原理的小樣本學習方法,在模式分類上具有良好的泛化性能。支持向量機的理論基礎已經較為完善,但在具體應用中,必須慎重處理如何選擇核函數和控制參數的問題。常用的核函數有多項式核函數、徑向基核函數以及多層感知器核函數等三種[2],針對不同的數據集,核函數的表現也不盡相同。以支持向量機的交叉驗證正分率為目標函數,使用常用的優化方法均可搜索到支持向量機控制參數的較優值,但未必是全局最優解。
筆者提出了一種用并行定向變異粒子群優化算法去優選雙尺度徑向基核支持向量機的控制參數的方法,用標準數據集驗證了該方法的效果,并應用于發動機的故障診斷。
核方法[3]是解決非線性模式識別問題的有效途徑,它利用較為簡單的核函數運算,既避免了在特征空間的復雜內積運算,又避免了特征空間(學習機器)本身的設計。設原空間數據集S=,其中:xi屬于輸入空間X?Rn;yi屬于輸出空間Y?Rm。通過一個非線性映射

將原空間輸入數據映射到新的特征空間F={Φ(x)|x∈X},其中:F?Rn。該映射將原空間數據集轉化為特征空間的數據集

核方法利用上述映射將原空間非線性可分的問題轉化為特征空間線性可分或近似線性可分的問題,并且可分性的優劣取決于核函數的選取是否合適。目前,核函數選取的研究主要有3個方面。
1)構造特定的單核函數。文獻[4]則將小波核函數用于支持向量機的決策和分類,對于某具體問題,總有一種核函數對其有良好的表達能力。
3)多尺度核方法。該方法是多核合成方法的特例,所采用的原始核km(x,z)均為同一核函數,但核參數各不相同。這種方法靈活性很強,能夠提供更完備的尺度選擇。多尺度核方法的關鍵是找到一組具有多尺度表達能力的核函數,并且核函數組合能夠最大限度地區分不同類別的樣本。常用的多尺度核函數有徑向基核函數和小波核函數等。
支持向量機是一種典型的核學習方法,有力地推動了核方法的應用,其求解模型為

其中:C≥0為懲罰參數,起平衡區間距離最大化和分類誤差最小化的作用。
式(4)可轉化為以下對偶問題

(s.t.yTα=0;0≤αi≤C;i=1,2,…,l)其中:e=[1,1,…,1]T;Q為l×l半正定矩陣,其中Qi,j=yiyjK(xi,xj),K(xi,xj)=φ(xi)Tφ(xj)為核函數。
理論上,支持向量機只能解決“非此即彼”的二分類問題。工程應用中的多分類問題,可以通過多個二分類支持向量機的組合判決來實現[4]。
在確定多分類支持向量機的組合方式以及核函數后,懲罰參數C以及核函數的核參數的選取是否合理成為支持向量機分類性能優劣的決定因素。最常用的算法性能的評價標準是K-折交叉驗證(K-fold cross-validation,簡稱K-CV)[6],以懲罰參數C以及核函數的核參數為決策變量,交叉驗證正分率為目標函數的優化模型經求解后得到最優參數,從而形成有較高魯棒性的支持向量機分類器。上述優化模型通常具有多個局部最優解,一般的優化算法極易陷入局部最優,喪失了搜索到全局最優解的機會。對于上述多峰目標函數優化問題,群智能優化較常規優化算法有更大優勢。
張同波:從十年九虧的軍工企業到現在總產能為800萬t的鋼鐵制品綜合加工上市企業,新興鑄管走過了一段艱難的歷程。新興鑄管股份有限公司的前身是2672工廠,這是20世紀70年代為了解決鐵道兵鋼材短缺經中央軍委批準興建的,隸屬于鐵道兵,鐵道兵撤編后劃歸總后勤部。1996年,隨著我國國有企業轉制,工廠改制為新興鑄管(集團)有限責任公司,也就是現在新興際華集團的前身。1997年6月,由集團公司獨家發起募集設立新興鑄管股份有限公司,其股票在深交所上市。
粒子群優化(particle swarm optimization,簡稱PSO)算法是Kennedy等[7]提出的一種基于群智能的優化算法,其速度更新和位置更新公式為

其中:xij和vij分別為粒子i第j維的位置和速度;pbestij為第i個粒子第j維的歷史最優位置;gbestj為群體第j維歷史最優位置;c1,c2分別為粒子自身加速系數和群體加速系數,均為非負實數;r1,r2~U[0 ,1 ] ;ω 稱為慣性權重;t為粒子的經歷時間或迭代次數。
盡管與傳統的基于梯度法的優化方法相比,PSO算法能夠有良好的表現,但其也有一個致命缺陷,即在迭代過程中極易出現早熟收斂,導致其陷入局部最優[8]。為抑制早熟收斂,文獻[9]提出了遺傳算法與粒子群算法相融合的GAPSO混合算法。文獻[10]提出了一種在最優解周圍的區域內進行混沌搜索的混沌PSO算法,取得了較好的效果。但現有的改進算法通常同時對所有優化決策變量進行擾動變異,存在文獻[8]所述的“進2退1”(two steps forward,one step back)現象。
徑向基核函數可以表示為

其中:γ∈[2-15,215]為核參數。
當γ較大時,可以分辨劇烈變化的樣本;當γ較小時,可對平緩變化的樣本進行分類[3]。根據上文所述的合成核方法和多尺度核方法,文中擬采用如下核函數

可以證明,式(8)所示核函數滿足 Mercer條件要求,可以用于核方法運算。該核函數主動將核參數區間分為兩部分,通過調整權參數α大小去平衡兩個尺度的子核函數的效能。
在支持向量機的具體應用中,參與訓練和測試的數據集通常是不均衡的,如在設備的故障診斷中,正常數據一般要比故障數據多一些。在數據不均衡場合,為每類數據設置不同懲罰參數C,有可能使支持向量機模型有更強的分類能力[11]。設數據有c類,則不平衡支持向量機模型表達如下

筆者采用一種并行定向擾動的混合粒子群優化(hybrid particle swarm optimization based on parallel directional turbulence,簡稱 HPSO-PDT)算法[12]。其算法核心及特點是當算法出現早熟收斂時,群體中產生變異的每個粒子僅發生單坐標方向擾動,從而避免了“進2退1”現象的出現,避免了優化決策變量之間的干擾。若優化目標為最小化問題,則HPSO-PDT的算法流程見圖1。

圖1 HPSO-PDT算法的流程圖Fig.1 Flow chart of HPSO-PDT algorithm
HPSO-PDT算法由標準PSO算法迭代、序列二次規劃(sequential quadratic programming,簡稱SQP)算法局部搜索和粒子單決策變量擾動變異三部分構成。標準PSO算法使粒子在按規則運動過程中不斷更新個體和群體最優值;SQP算法具有優秀的局部搜索能力,能夠快速地到達當前所在區域的“谷底”;粒子的并行定向變異可使每個參與變異的粒子分別沿選定的單個坐標方向(即單優化決策變量)進行搜索,繼承了現有的群體最優位置信息。
取支持向量機模型性能的評價函數為10-折交叉驗證(即K=10)正分率,并將其作為PSO算法的適應度函數,即優化目標函數,便可通過PSO算法得到使交叉驗證正分率最高(或錯分率最低)的決策變量,即徑向基核函數參數γ1,γ2、雙核權參數α以及各數據類別的懲罰參數Ck。
為驗證上述方法性能,取臺灣大學林智仁所列的UCI數據庫中的Iris,Wine和Glass 3個標準數據集進行測試。上述標準數據集的屬性見表1,每個數據集均隨機地劃分成訓練集和測試集,并且按類近似平均分配。

表1 數據集屬性及劃分Tab.1 Properties and partition of data sets
訓練集數據用于訓練支持向量機,以便計算10-折交叉驗證正分率,測試集用于驗證訓練得到的SVM的性能。粒子群優化算法的慣性權重ω、加速系數c1,c2以及粒子群規模ps、最大迭代次數tmax見表2。
為比較標準PSO和HPSO-PDT兩種優化算法的優劣,以及評價徑向基核SVM、雙尺度徑向基核SVM以及雙尺度徑向基核加多類懲罰參數SVM 3種支持向量機模型的分類效果,現采用表3列出的6種方法進行比較。支持向量機平均正分率的每個數據是按同一方法進行10次獨立重復試驗所得的數據的均值和標準差。

表2 粒子群優化算法的控制參數Tab.2 Controlling parameters of PSO algorithm
從表3的數據可以看出:
1)HPSO-PDT算法在多數情況下,能夠比標準PSO算法得到更高的交叉驗證正分率,HPSOPDT算法優于標準PSO算法;
2)與徑向基核支持向量機相比,雙尺度核支持向量機能夠取得更高的交叉驗證正分率,且測試集的正分率也有明顯提高;
3)按類懲罰的不平衡數據支持向量機模型由于其控制參數數量的增加,標準PSO算法的優化效果欠穩定,Iris和Wine數據集的交叉驗證正分率低于單懲罰參數的標準支持向量機,但采用HPSOPDT算法后效果有較大提高。
總之,從試驗數據的比對可以看出:HPSOPDT算法能夠取得比標準PSO算法更好的優化效果;雙尺度徑向基核支持向量機比單徑向基核支持向量機有更高的適應性和魯棒性;按類懲罰不平衡數據支持向量機在某些特定場合能夠獲得更好的評價性能。

表3 粒子群優化算法優化支持向量機的平均正分率Tab.3 Average correct classification rates of SVMs optimized by PSO algorithms %
為辨別發動機正常工作狀態S1以及排氣門開裂S2、活塞環斷裂S3、失火故障S4和水泵穴蝕S5等4種故障狀態,分別測量了上述各狀態的發動機機油溫度Toil、催化器溫度Tc、輸出軸扭矩Ts、曲柄軸箱壓力P和主軸轉速Ns等5種信號共300組數據。根據文中所述方法,將采集到的數據隨機均勻分割成訓練集和測試集兩部分(各150組),訓練集數據歸一化后用于粒子群優化支持向量機的訓練,測試集數據用于驗證粒子群優化支持向量機模型的效果。故障診斷的流程如圖2所示。

圖2 發動機故障診斷流程Fig.2 Flow chart of engine fault diagnosis
表4列出了訓練集歸一化后的部分數據。為保證試驗的可靠性,發動機故障診斷中,每種方案均進行10次獨立重復試驗,并根據試驗值計算測試結果(測試集正分率)的均值、標準差、最大值和最小值等4個統計量,具體數據見表5。

表4 發動機狀態歸一化數據Tab.4 Normalization data of engine status
從表5中的測試結果可看出,雙尺度徑向基核支持向量機的測試結果與單徑向基核支持向量機相比有明顯提高,同時,其標準差有較大減小,說明雙尺度徑向基核SVM具有更高的穩定性。按類懲罰的不平衡SVM方法與單懲罰參數SVM相比,分類效果略有提高,但差別不大。HPSO-PDT算法優化SVM比標準PSO算法優化SVM的效果有較大提高,能夠更加逼近全局最優解。通過核函數構造以及優化算法的改進,故障診斷的正確率提高了6.49%。最終,可以選取HPSO-PDT算法優化雙尺度徑向基核支持向量機模型用于故障診斷,支持向量機單懲罰參數或按類懲罰均可,但按類懲罰會有更好的性能。

表5 發動機故障診斷正分率Tab.5 Correct classification rates of engine fault diagnosis%
筆者建立了主動劃分核參數區間的雙尺度徑向基核支持向量機,考慮了類間數據不平衡對支持向量機的影響,用并行定向變異的混合粒子群優化算法優選支持向量機的控制參數,用標準數據集驗證了其性能,在發動機故障診斷中取得了良好的應用。
[1] Vapnik V N.The nature of statistical learning theory[M].2nd.Berlin:Springer-Verlag,1999:138-170.
[2] 申秀敏,左曙光,韓樂,等.基于支持向量機的車內噪聲聲品質預測[J].振動、測試與診斷,2011,31(1):55-58.
Shen Xiumin,Zuo Shuguang,Han Le,et al.Interior vehicle noise quality prediction using support vector machines[J].Journal of Vibration,Measurement &Diagnosis,2011,31(1):55-58.(in Chinese)
[3] 汪洪橋,孫富春,蔡艷寧,等.多核學習方法[J].自動化學報,2010,36(8):1037-1050.
Wang Hongqiao,Sun Fuchun,Cai Yanning,et al.On multiple kernel learning methods[J].Acta Automatica Sinica,2010,36(8):1037-1050.(in Chinese)
[4] 董紹江,湯寶平,宋濤.改進投票策略的Morlet小波核支持向量機及應用[J].振動、測試與診斷,2011,31(3):314-317.
Dong Shaojiang,Tang Baoping,Song Tao.Morlet wavelet kernel SVM improved by voting strategy and its application[J].Journal of Vibration,Measurement& Diagnosis,2011,31(3):314-317.(in Chinese)
[5] Smits G F,Jordaan E M.Improved SVM regression using mixtures of kernels[C]∥ Proceedings of the 2002International Joint Conference on Neural Networks.Honolulu:IEEE,2002:2785-2790.
[6] 鄧乃揚,田英杰.支持向量機-理論、算法與拓展[M].北京:科學出版社,2009:134-155.
[7] Kennedy J,Eberhart R C.Particle swarm optimization[C]∥IEEE International Conference on Neural Networks.Piscataway:IEEE,1995:1942-1948.
[8] Van Den B.An analysis of particle swarm optimizers[D].South Africa:University of Pretoria,2002.
[9] Nie Ru,Yue Jianhua.A GA and particle swarm optimization based hybrid algorithm [C]∥ Proceeding of IEEE Congress on Evolutionary Computation 2008.Hongkong:IEEE,2008:1047-1050.
[10]劉玲,鐘偉民,錢鋒.改進的混沌粒子群優化算法[J].華東理工大學學報:自然科學版,2010,36(2):267-272.
Liu Ling,Zhong Weimin,Qian Feng.An improved chaos-particle swarm optimization algorithm[J].Journal of East China University of Science and Technology:Natural Science Edition,2010,36(2):267-272.(in Chinese)
[11]Chang C C,Lin C J.LIBSVM :a library for support vector machines[EB/OL].[2014-01-10].http:∥www.csie.ntu.edu.tw/~cjlin/libsvm .
[12]聶立新,張天俠,郭立新.并行定向擾動的混合粒子群優化算法[J].計算機應用研究,2013,30(6):1633-1635.
Nie Lixin,Zhang Tianxia,Guo Lixin.Hybrid particle swarm optimization algorithm based on parallel directional turbulence[J].Application Research of Computers,2013,30(6):1633-1635.(in Chinese)