王秋平 趙木來(lái)
(東北電力大學(xué)自動(dòng)化工程學(xué)院,吉林 吉林 132012)
1995年,俄羅斯統(tǒng)計(jì)學(xué)家Vapnik提出了支持向量機(jī)(Support Vector Machine,SVM)理論。該理論建立在統(tǒng)計(jì)機(jī)器學(xué)習(xí)中VC維理論和結(jié)構(gòu)風(fēng)險(xiǎn)最小化原理的基礎(chǔ)上,解決小樣本、非線(xiàn)性和高維度問(wèn)題有獨(dú)特的優(yōu)勢(shì)[1,2]。支持向量機(jī)已在文字識(shí)別[3]、語(yǔ)音識(shí)別[4]及生物特征識(shí)別[5]等多個(gè)工程領(lǐng)域取得了成功應(yīng)用。
眾所周知,在給定樣本情況下,支持向量分類(lèi)機(jī)的性能主要取決于懲罰參數(shù)C和核函數(shù)的選取。目前支持向量機(jī)參數(shù)優(yōu)化的方法主要有網(wǎng)格搜索法、遺傳算法及粒子群優(yōu)化算法等。網(wǎng)格搜索法是運(yùn)用數(shù)學(xué)手段對(duì)參數(shù)允許的取值范圍分段后進(jìn)行遍歷搜索[6],該方法在理論上可以找到最優(yōu)參數(shù)對(duì),但現(xiàn)實(shí)運(yùn)行較為費(fèi)時(shí);遺傳算法通過(guò)模仿自然界選擇與遺傳的機(jī)理完成進(jìn)化,尋找問(wèn)題的最優(yōu)解,具有很強(qiáng)的收斂性和魯棒性[7],但其局部搜索能力差,容易出現(xiàn)早熟現(xiàn)象,算法本身參數(shù)較多,同時(shí)遺傳算法的全局并行性欠佳,基因的繼承性決定了算法每一次迭代不能進(jìn)行整體的更新;粒子群算法也是進(jìn)化算法的一種,從隨機(jī)解出發(fā),通過(guò)迭代找到最優(yōu)解[8],其缺點(diǎn)是易陷入局部極值,且進(jìn)化到后期的精度較差。
與上述參數(shù)優(yōu)化算法對(duì)比,和聲搜索算法具有以下優(yōu)點(diǎn):算法迭代過(guò)程采用十進(jìn)制編碼,無(wú)需轉(zhuǎn)換操作;新和聲的產(chǎn)生需考慮借鑒記憶庫(kù)中現(xiàn)存所有和聲,因此具備更好的全局搜索能力;每次迭代對(duì)解向量中所有變量進(jìn)行操作,多點(diǎn)并行,極大地增加了求解速度。因此,筆者在借鑒和聲思想的基礎(chǔ)上,將和聲搜索算法應(yīng)用于支持向量分類(lèi)機(jī)的參數(shù)優(yōu)化問(wèn)題,同時(shí)對(duì)核電站電動(dòng)隔離閥門(mén)故障分類(lèi)預(yù)測(cè)問(wèn)題進(jìn)行仿真實(shí)驗(yàn)。
假設(shè)m維空間上分布N個(gè)訓(xùn)練樣本數(shù)據(jù)點(diǎn),記這N個(gè)訓(xùn)練點(diǎn)組成的集合為:
T={(xi,yi),i=1,2,…,N}
(1)
其中,xi∈Rm;yi∈Y={-1,1},Y為訓(xùn)練樣本的類(lèi)別標(biāo)簽。
對(duì)于T集合中樣本數(shù)據(jù)的二分類(lèi)問(wèn)題,支持向量機(jī)采用最大間隔法和對(duì)偶理論進(jìn)行求解。訓(xùn)練樣本數(shù)據(jù)非線(xiàn)性可分時(shí),支持向量機(jī)引入核函數(shù)和松弛變量、懲罰參數(shù),得到如下最優(yōu)化對(duì)偶問(wèn)題:
0<αi (2) 其中,αi為拉格朗日乘子;K(xi,xj)為核函數(shù)。 b0=1-ω0x(s),y(s)=1 (3) 其中,ω0為最優(yōu)分類(lèi)超平面的權(quán)值向量;b0為最優(yōu)分類(lèi)超平面的偏置;(x(s),y(s))為支持向量樣本數(shù)據(jù)。最終得到測(cè)試樣本的預(yù)測(cè)標(biāo)簽為: (4) 從以上支持向量分類(lèi)機(jī)基本原理中可以看出,為得到最優(yōu)的支持向量分類(lèi)機(jī)的分類(lèi)結(jié)果,算法中引入的懲罰參數(shù)的取值和核函數(shù)的選取是起決定性作用的。其中,調(diào)節(jié)懲罰參數(shù)C可以得到模型復(fù)雜度和學(xué)習(xí)能力的折中,C值越小代表對(duì)錯(cuò)分的懲罰越小,較小的C值可以增加模型的泛化能力,但易產(chǎn)生欠學(xué)習(xí)問(wèn)題,而取較大的C值則容易產(chǎn)生過(guò)學(xué)習(xí)現(xiàn)象。RBF核函數(shù)是支持向量機(jī)中應(yīng)用性能最好的核函數(shù)[9]。RBF核函數(shù)參數(shù)γ是低維空間訓(xùn)練樣本映射到高維空間后形成超球的半徑,當(dāng)γ較小時(shí),學(xué)習(xí)機(jī)對(duì)訓(xùn)練樣本有很小的錯(cuò)分率,但不能保證對(duì)新樣本的正確分類(lèi),當(dāng)γ較大時(shí),只能得到一個(gè)近似線(xiàn)性函數(shù)的學(xué)習(xí)模型,會(huì)嚴(yán)重降低分類(lèi)精度。 目前的參數(shù)優(yōu)化方法還沒(méi)有統(tǒng)一的理論依據(jù),且典型的優(yōu)化方法也都在一定程度上存在各種缺陷,因此,筆者探索了利用和聲搜索算法優(yōu)化支持向量分類(lèi)機(jī)參數(shù)的新方法。 和聲搜索(Harmony Search,HS)算法是韓國(guó)學(xué)者Geem Z W等在2001年提出的一種新型現(xiàn)代啟發(fā)式優(yōu)化搜索算法。音樂(lè)家在譜曲創(chuàng)作中,通過(guò)自己的經(jīng)驗(yàn)和記憶,嘗試調(diào)整樂(lè)隊(duì)中每一種樂(lè)器的音調(diào),最終得到美學(xué)評(píng)價(jià)下的最好和聲。和聲搜索算法是模擬音樂(lè)家創(chuàng)作演奏音樂(lè)來(lái)設(shè)計(jì)與目標(biāo)函數(shù)對(duì)應(yīng)的解向量的迭代過(guò)程[10,11]。 和聲搜索算法的步驟如下: a. 確定目標(biāo)函數(shù)。初始化和聲搜索算法各參數(shù)值(和聲初始記憶庫(kù)的容量HMS、和聲記憶庫(kù)內(nèi)取值概率HMCR、擾動(dòng)概率PAR、擾動(dòng)帶寬BW和運(yùn)算最大迭代次數(shù)NI)。 b. 初始化和聲記憶庫(kù)。在和聲記憶庫(kù)中隨機(jī)生成HMS個(gè)和聲,并計(jì)算每一個(gè)和聲在設(shè)定的目標(biāo)函數(shù)意義下的適應(yīng)值。 c. 根據(jù)規(guī)則生成一個(gè)新的和聲。 d. 更新和聲記憶庫(kù)。計(jì)算新和聲的適應(yīng)度,如果其適應(yīng)度大于和聲記憶庫(kù)中的最差解,則將新和聲替換至和聲記憶庫(kù)中,否則不進(jìn)行替換。 e. 重復(fù)步驟c和d,直到迭代次數(shù)gn達(dá)到最大值NI,循環(huán)結(jié)束并輸出最優(yōu)解。 步驟c中生成一個(gè)新的和聲的規(guī)則為:生成0~1間的隨機(jī)數(shù)R1。若隨機(jī)數(shù)R1小于和聲記憶庫(kù)內(nèi)取值概率HMCR,則隨機(jī)選擇和聲記憶庫(kù)內(nèi)任意解向量的第一個(gè)變量值賦值給新和聲向量的第一個(gè)元素;若隨機(jī)數(shù)R1不小于和聲記憶庫(kù)內(nèi)取值概率HMCR,則在和聲記憶庫(kù)外變量取值范圍內(nèi)隨機(jī)取值。當(dāng)R1小于HMCR時(shí),即變量新值來(lái)自和聲記憶庫(kù)內(nèi),生成0~1間的隨機(jī)數(shù)R2。若隨機(jī)數(shù)R2小于擾動(dòng)概率PAR,則再生成隨機(jī)數(shù)R3、R4,擾動(dòng)后的變量值為: (5) 其中,Xnew為R1小于HMCR時(shí)取自和聲記憶庫(kù)中的新值。若隨機(jī)數(shù)R2不小于擾動(dòng)概率PAR,則不進(jìn)行擾動(dòng)。 利用和聲搜索算法進(jìn)行支持向量機(jī)參數(shù)優(yōu)化的核心思想為:將支持向量分類(lèi)機(jī)中的懲罰參數(shù)C和核函數(shù)參數(shù)γ比作演奏和聲的兩種樂(lè)器,模仿調(diào)節(jié)每種樂(lè)器音調(diào)達(dá)到優(yōu)美和聲的過(guò)程,設(shè)計(jì)C和γ的迭代操作找到使學(xué)習(xí)模型達(dá)到最好分類(lèi)精度的最佳解向量(bestC,bestγ)。 基本和聲搜索算法優(yōu)化SVM參數(shù)的基本步驟如下: a. 選取支持向量機(jī)測(cè)試集分類(lèi)預(yù)測(cè)精確度作為目標(biāo)函數(shù)。初始化參數(shù)值為HMS=20,HMCR=0.9,PAR=0.2,BW=0.7,NI=200。 b. 隨機(jī)生成HMS=20個(gè)和聲,計(jì)算每一個(gè)和聲的平均分類(lèi)精確度。 c. 按照上文標(biāo)準(zhǔn)和聲搜索算法步驟c中的方法產(chǎn)生一個(gè)新和聲。 d. 更新和聲記憶庫(kù)。 e. 重復(fù)進(jìn)行步驟c和d,迭代至最大次數(shù)NI,循環(huán)結(jié)束并輸出全局最優(yōu)解(bestC,bestγ)。 在標(biāo)準(zhǔn)的和聲搜索算法中,和聲記憶庫(kù)內(nèi)取值概率HMCR、擾動(dòng)概率PAR和擾動(dòng)帶寬BW是控制算法優(yōu)化性能的3個(gè)重要參數(shù)。HMCR是和聲記憶庫(kù)內(nèi)取值概率,較大的HMCR值可以提升算法的局部搜索能力,較小的HMCR值則有利于保持和聲記憶庫(kù)內(nèi)解向量的多樣性,有效預(yù)防早熟現(xiàn)象。類(lèi)似于遺傳算法的變異操作,和聲搜索算法也包括對(duì)解向量的擾動(dòng)微調(diào)過(guò)程,PAR和BW是該過(guò)程的控制參數(shù),它們的值可以直接影響最優(yōu)解向量的收斂速度。PAR取較小值可以增強(qiáng)算法的局部搜索能力,取較大值則有利于和聲搜索算法圍繞和聲記憶庫(kù)調(diào)整搜索區(qū)域,使其搜索范圍逐漸擴(kuò)大到整個(gè)變量空間。BW為解向量中各變量的微調(diào)幅度,BW的取值可以控制局部區(qū)域搜索的精細(xì)度,設(shè)置較大值可以使算法跳出局部極值。 由上可見(jiàn),和聲搜索算法的參數(shù)參與整個(gè)搜索過(guò)程,是算法優(yōu)化性能優(yōu)劣的關(guān)鍵因素。標(biāo)準(zhǔn)的和聲搜索算法各參數(shù)均由實(shí)驗(yàn)者憑借經(jīng)驗(yàn)知識(shí)設(shè)置固定值,在算法進(jìn)行過(guò)程中不具備調(diào)整能力,從而降低了迭代搜索能力,最終影響算法的整體優(yōu)化性能。針對(duì)該缺陷,筆者提出一種具有自適應(yīng)動(dòng)態(tài)調(diào)整功能的PAR和BW參數(shù)改進(jìn)方法。 在和聲搜索算法迭代初期,采用較小的PAR值和較大的BW值可以保證區(qū)域精細(xì)搜索,快速找到局部最優(yōu)解,同時(shí)保持解向量空間的多樣性,預(yù)防陷入局部極值;而在迭代進(jìn)化的中后期,較大的PAR值和較小的BW值則能增強(qiáng)算法全局搜索能力,使搜索的重點(diǎn)集中在解空間性能較高的區(qū)域,同時(shí)較小的擾動(dòng)帶寬不會(huì)破壞近優(yōu)解,從而大幅提高算法的運(yùn)算效率[12,13]。 擾動(dòng)概率PAR伴隨迭代進(jìn)化策略: (6) 式中g(shù)n——迭代次數(shù); PARmax——最大擾動(dòng)概率; PARmin——最小擾動(dòng)概率。 圖1為擾動(dòng)概率PAR隨迭代次數(shù)的變化曲線(xiàn),可以看出,隨著迭代次數(shù)的增加,PAR由最初的最小值沿反正切曲線(xiàn)逐漸增大。當(dāng)?shù)螖?shù)gn趨于NI時(shí),PAR為最大值,且PAR變化逐漸趨于平緩,預(yù)防進(jìn)入迭代后期對(duì)較優(yōu)解向量的擾動(dòng)破壞。 擾動(dòng)帶寬BW伴隨迭代進(jìn)化策略: BW(gn)=BWmin+(BWmax-BWmin)×exp(-gn) (7) 式中BWmax——最大擾動(dòng)帶寬; BWmin——最小擾動(dòng)帶寬。 圖2為擾動(dòng)帶寬BW隨迭代次數(shù)的變化曲線(xiàn),可以看出,隨著迭代次數(shù)的增加,BW由最大值按照指數(shù)曲線(xiàn)逐漸減小。當(dāng)gn趨近于NI時(shí),BW近似等于最小值,且逐漸趨于平緩,可保證在迭代后期對(duì)解空間中性能較好區(qū)域的精細(xì)搜索。 圖1 擾動(dòng)概率PAR隨迭代次數(shù)的變化曲線(xiàn) 圖2 擾動(dòng)帶寬BW隨迭代次數(shù)的變化曲線(xiàn) 與標(biāo)準(zhǔn)和聲搜索算法優(yōu)化SVM參數(shù)過(guò)程類(lèi)似,將SVM學(xué)習(xí)模型的分類(lèi)準(zhǔn)確率作為優(yōu)化過(guò)程的目標(biāo)函數(shù)。同時(shí)設(shè)置自適應(yīng)參數(shù)PAR和BW的最值,將改進(jìn)的擾動(dòng)控制參數(shù)引入優(yōu)化過(guò)程。類(lèi)似于標(biāo)準(zhǔn)和聲搜索算法優(yōu)化SVM參數(shù)步驟,具體修改為:步驟a中定義PARmin=0.05,PARmax=0.3,BWmin=0.1,BWmax=0.8,步驟c中將式(6)、(7)代入標(biāo)準(zhǔn)和聲搜索算法步驟c中,替換固定的擾動(dòng)概率PAR和擾動(dòng)帶寬BW。 電動(dòng)隔離閥門(mén)是核電站運(yùn)行的關(guān)鍵設(shè)備,應(yīng)用量很大且檢修維護(hù)費(fèi)用昂貴。及時(shí)準(zhǔn)確地發(fā)現(xiàn)閥門(mén)故障是核電站安全運(yùn)行的必要條件。針對(duì)閥門(mén)關(guān)閉不嚴(yán)、填料摩擦力過(guò)大和電動(dòng)傳動(dòng)問(wèn)題三大主要故障,筆者應(yīng)用安全級(jí)電動(dòng)隔離閥故障診斷系統(tǒng)[14],提取現(xiàn)場(chǎng)電動(dòng)隔離閥門(mén)運(yùn)行的峰值、峭度、裕度、脈沖、波形、諧波因子、相關(guān)因子、功率譜方差、功率譜重心和功率譜均方十項(xiàng)數(shù)據(jù)指標(biāo)。其中,閥門(mén)正常運(yùn)行工況數(shù)據(jù)20組,三大主要故障工況數(shù)據(jù)各20組,在每種運(yùn)行工況中隨機(jī)選取4組數(shù)據(jù)組成測(cè)試集,其余作為訓(xùn)練集數(shù)據(jù)。分別運(yùn)用標(biāo)準(zhǔn)和聲搜索算法、改進(jìn)和聲搜索算法、網(wǎng)格搜索算法、遺傳算法和粒子群優(yōu)化算法優(yōu)化支持向量分類(lèi)機(jī)參數(shù),利用各自?xún)?yōu)化方法找到的最佳參數(shù)對(duì)(bestC,bestγ)建立預(yù)測(cè)模型,對(duì)閥門(mén)運(yùn)行數(shù)據(jù)進(jìn)行訓(xùn)練和預(yù)測(cè),仿真實(shí)驗(yàn)的運(yùn)行結(jié)果如圖3所示,算法對(duì)比見(jiàn)表1。 圖3 采用不同優(yōu)化方法建立的SVM模型對(duì)核電站電動(dòng)隔離閥門(mén)數(shù)據(jù)分類(lèi)預(yù)測(cè)結(jié)果 優(yōu)化算法測(cè)試集預(yù)測(cè)準(zhǔn)確率%最佳平均分類(lèi)精確度%程序運(yùn)行時(shí)間s標(biāo)準(zhǔn)和聲搜索算法93.7591.2418.4改進(jìn)和聲搜索算法100.0098.5018.8 (續(xù)表1) 由表1可以看出,在對(duì)16組閥門(mén)測(cè)試集數(shù)據(jù)的預(yù)測(cè)中,基于改進(jìn)和聲搜索算法的支持向量機(jī)分類(lèi)準(zhǔn)確率達(dá)到100%,交叉驗(yàn)證意義下的最佳平均分類(lèi)精確度達(dá)到98.50%,其程序運(yùn)行時(shí)間與其他算法相比也有所減少。因此,基于改進(jìn)和聲搜索算法的支持向量分類(lèi)機(jī)相比于其他優(yōu)化方法具有更好的分類(lèi)性能。 支持向量分類(lèi)機(jī)的參數(shù)選擇是影響學(xué)習(xí)模型預(yù)測(cè)精確度和泛化能力的關(guān)鍵因素。筆者將和聲搜索算法應(yīng)用于支持向量分類(lèi)機(jī)參數(shù)優(yōu)化,同時(shí)針對(duì)基本和聲搜索算法參數(shù)相對(duì)固化的缺陷,設(shè)計(jì)了一種伴隨迭代次數(shù)增加而自適應(yīng)動(dòng)態(tài)調(diào)整參數(shù)功能的改進(jìn)方法。并將基于改進(jìn)和聲搜索算法的支持向量分類(lèi)機(jī)應(yīng)用于核電站電動(dòng)隔離閥門(mén)故障分類(lèi)預(yù)測(cè)。仿真實(shí)驗(yàn)結(jié)果顯示:對(duì)比其他優(yōu)化方法下的支持向量機(jī),基于改進(jìn)和聲搜索算法的支持向量分類(lèi)機(jī)具有更好的學(xué)習(xí)能力和預(yù)測(cè)精度。 [1] 丁世飛,齊丙娟,譚紅艷.支持向量機(jī)理論與算法研究綜述[J].電子科技大學(xué)學(xué)報(bào),2011,40(1):2~10. [2] 袁勝發(fā),褚福磊.支持向量機(jī)及其在機(jī)械故障診斷中的應(yīng)用[J].振動(dòng)與沖擊,2007,26(11):29~35. [3] 馬金娜,田大鋼.基于支持向量機(jī)的中文文本自動(dòng)分類(lèi)研究[J].系統(tǒng)工程與電子技術(shù),2007,29(3):475~478. [4] 栗志意,張衛(wèi)強(qiáng),何亮,等.基于核函數(shù)的IVEC-SVM說(shuō)話(huà)人識(shí)別系統(tǒng)研究[J].自動(dòng)化學(xué)報(bào),2014,40(4):780~784. [5] 李曉東,費(fèi)樹(shù)岷,張濤.基于奇異值特征和支持向量機(jī)的人臉識(shí)別[J].東南大學(xué)學(xué)報(bào)(自然科學(xué)版),2008,38(6):981~985. [6] 李清毅,周昊,林阿平,等.基于網(wǎng)格搜索和支持向量機(jī)的灰熔點(diǎn)預(yù)測(cè)[J].浙江大學(xué)學(xué)報(bào)(工學(xué)版),2011,45(12):2181~2187. [7] 郭彤城,慕春棣.并行遺傳算法的新進(jìn)展[J].系統(tǒng)工程理論與實(shí)踐,2002,(2):15~23. [8] 陳民鈾,張聰譽(yù),羅辭勇.自適應(yīng)進(jìn)化多目標(biāo)粒子群優(yōu)化算法[J].控制與決策,2009,24(12):1851~1855. [9] 陳然,孫冬野,秦大同,等.發(fā)動(dòng)機(jī)支持向量機(jī)建模及精度影響因素[J].中南大學(xué)學(xué)報(bào)(自然科學(xué)版),2010,41(4): 1391~1397. [10] Geen Z W, Kim J H, Loganathan G V.A New Heuristic Optimization Algorithm: Harmony Search[J]. Simulation,2001, 76(2): 60~68. [11] 依玉峰,高立群,郭麗.和聲搜索算法在聚類(lèi)分析中的應(yīng)用[J].東北大學(xué)學(xué)報(bào)(自然科學(xué)版),2012,33(1):47~51. [12] Mahdavi M,Fesanghary M,Damangir E.An Improved Harmony Search Algorithm for Solving Optimization Problems[J].Applied Mathematics and Computation,2007,188(2):1567~1579. [13] 金永強(qiáng),蘇懷智,李子陽(yáng).基于和聲搜索的邊坡穩(wěn)定性投影尋蹤聚類(lèi)分析[J].水利學(xué)報(bào),2007,(z1):682~686. [14] 楊國(guó)峰,胡守印,李智慧.安全級(jí)電動(dòng)隔離閥故障診斷系統(tǒng)的研究與設(shè)計(jì)[J].核動(dòng)力工程,2009,30(3):102~106.2 標(biāo)準(zhǔn)和聲搜索算法
3 改進(jìn)的和聲搜索算法
4 核電站電動(dòng)隔離閥門(mén)故障分類(lèi)預(yù)測(cè)仿真實(shí)驗(yàn)
5 結(jié)束語(yǔ)