一種基于廣義多核支持向量機的模擬電路故障診斷方法
【技術領域】
[0001] 本發明屬于機器學習及電子電路工程領域,涉及一種基于廣義多核支持向量機的 模擬電路故障診斷方法。
【背景技術】
[0002] 模擬電路廣泛地應用于家用電器、工業生產線、汽車以及航空航天等設備中,模擬 電路的故障將會引起設備的性能下降、功能失靈、反應遲緩以及其他電子故障。正確地識別 模擬電路的故障有助于電路的及時維護,因此對模擬電路進行故障診斷,是十分必要的。
[0003] 針對模擬電路的故障診斷,已有研究工作采用人工神經網絡(Artificial Neural Network,ANN)方法,然而ANN方法具有結構一般較難確定、算法收斂速度慢,并極易導致過 擬合問題。支持向量機(support vector machine,SVM)建立在統計學習理論的VC維理論和 結構風險最小原理基礎上,可較好解決分類中的小樣本問題和非線性問題,核函數的設定 是SVM算法的關鍵,一般由用單核學習的方法,該方法操作簡單,但易于忽略輸入樣本中的 有用信息,難以達到最優泛化能力。廣義多核學習方法(generalized multiple kernel learning,GMKL)方法線性組合U范式和L2范式去約束核函數,實驗表明,廣義多核支持向量 機(generalized multiple kernel learning- support vector machine,GMKL_SVM)在分 類方面效率高于單核學習的SV1LGMKL-SVM中正則化參數和折衷參數是重要的參數,通常其 正則化參數通過網格搜索方法獲得,而折衷參數則直接設置為0.5,該獲取方式不利于 GMKL-SVM算法發揮其分類性能。
【發明內容】
[0004] 本發明的目的是提供一種基于廣義多核支持向量機的模擬電路故障診斷方法,該 方法首先提取模擬電路的時域響應信號,經小波分析后獲取小波系數能量特征參量,作為 樣本數據。應用折衷參數和正則化參數由PS0算法優化的GMKL-SVM故障診斷模型對不同的 故障類別進行區分。
[0005] 本發明的目的是通過如下技術方案予以實現的: 一種基于廣義多核支持向量機(generalized multiple kernel learning- support vector machine,GMKL-SVM)的模擬電路故障診斷方法,包括以下步驟: (1) 采集模擬電路的時域響應信號,采集到的時域響應信號為所述模擬電路的輸出電 壓信號; (2) 對采集的電壓信號進行小波變換,計算小波系數的能量作為特征參量,所有特征參 量的集合即為樣本數據; (3) 基于樣本數據,應用粒子群算法(particle swarm optimization,PS0)優化廣義多 核支持向量機的正則化參數和折衷參數,構建基于廣義多核支持向量機(GMKL-SVM)的故障 診斷模型; (4) 以建立的基于廣義多核支持向量機的故障診斷模型作為分類器,對模擬電路的故 障進行診斷。
[0006] 進一步,所述步驟(1)中,被測模擬電路只有一個輸入端和一個輸出端,輸入端采 用脈沖激勵,輸出端采樣電壓信號。
[0007] 進一步,所述步驟(2)中,對采樣的電壓信號進行Haar小波變換。
[0008] 進一步,所述步驟(3)中,基于GMKL-SVM的故障診斷模型采用多核學習方法(GMKL 就是generalized multiple kernel learning,就是廣義多核學習,其中學習二字在翻譯 的時候一般省略),多核學習方法將多個核函數進行凸組合,多核包括如下: (a)為每個單獨特征和整體特征,應用以2_3,2_2,···,26這10個數值為寬度的高斯核。 [0009] (b)為每個單獨特征和整體特征,應用以1,2,3數值為階的多項式核。
[0010]進一步,所述步驟(3)中,應用粒子群算法(particle swarm optimization,PSO) 優化廣義多核支持向量機的正則化參數和折衷參數的具體步驟為: (3.1) 初始化PS0算法參數,包括位置、速度、尋優范圍和迭代次數,其中將正則化參數 和折衷參數映射為粒子的二維位置; (3.2) 計算每一個粒子的適應度,根據適應度得出每一個粒子的個體最優位置和粒子 群的全局最優位置; (3.3) 對每一個粒子進行速度與位置的更新; (3.4) 重復(3.2)和(3.3)直至迭代結束,輸出結果。
[0011] 進一步,所述步驟(3)中,基于GMKL-SVM的故障診斷模型構建的步驟為: (3. a)確定核函數類型:
為多項式核函數建立 多核,其中I為當前輸入數據,A為建立模型所用的樣本數據,為高斯核函數的寬度因 子,S為多項式核函數的階次; (3.b)應用PS0算法優化選擇廣義多核支持向量機的正則化參數和折衷參數; (3.c)以樣本數據A為訓練數據集,將步驟(3.b)中正則化參數和折衷參數用于下列約 束核函數系數的最小化優化函數:
其中jVeft-野,? 是權重,N是訓練數據的數量;C是折衷參數,z是正 則化參數,b為偏置值,R是決策函數f的經驗風險,s = 0%. - 是核函數的系數,m= 1,…,M,M是核函數的數量; (3.d)對廣義多核支持向量機(GMKL-SVM)進行訓練,獲得GMKL-SVM的參數w、b和 則決策函數f則可表示為
其中40是映射函數,用于將原數據點映射至一個Hilbert空間;
;決策函數的獲得即為基于GMKL-SVM的故障診斷模型的建立。
[0012] 進一步,所述步驟(4)中,對模擬電路的故障進行診斷時,所得到的診斷結果是指 診斷正確率。
[0013] 本發明具有如下優點: (1)首次提出將GMKL-SVM引入模擬電路的故障診斷,廣義多核支持向量機的分類性能 優于其他的分類算法,相比常用的基于單核學習的SVM,GMKL-SVM具有更高的分類精度。 [0014] (2)提出應用PS0算法優化GMKL-SVM的正則化參數和折衷參數,應用粒子群算法優 化廣義多核支持向量機參數的方法亦優于傳統獲取參數的方法,基于該方法優化后的 GMKL-SVM具有比傳統GMKL-SVM具有更高的性能,在用于故障診斷時,可以獲得更高的診斷 正確率,可高效地檢測出模擬電路的元件故障。
【附圖說明】
[0015] 圖1為本發明基于廣義多核支持向量機的模擬電路故障診斷方法的流程圖; 圖2為兩級四運放低通濾波器電路圖。
【具體實施方式】
[0016] 下面結合附圖和實施例對本發明進一步說明。
[0017] 參照圖1,本發明由4個步驟構成,步驟1獲取被測模擬電路的時域響應信號。步驟2 為對獲取的故障響應信號(即步驟1中獲取的時域響應信號)進行小波變換,計算小波系數 的能量作為特征參量,所有特征參量的集合即為樣本數據。本實施例中具體為執行6層Harr 小波變換,獲取6維的小波系數能量作為特征參量。步驟3為應用PS0算法優化GMKL-SVM的參 數,建立基于GMKL-SVM的故障診斷模型。步驟4為輸出測試數據的診斷結果。
[0018] 步驟1中,獲取時域響應信號,被測模擬電路只有一個輸入端和一個輸出端,輸入 端通過脈沖激勵,輸出端采樣電壓信號。
[0019] 步驟2中,小波系數能量的計算方法如下: 信號f (X)的多分辨率分析中,設|Vk}kEZ是正交的多分辨率分析,{Wk}kEZ是相應分解的 小波空間,其中f (X)在vk上的正交投影表示為
其中分別表示f (X)在Vk+i和Wk+i上的投影,k和i為離散化參數,典+^和 ^,分別為在2k+1分辨率下的尺度函數和小波函數,4?和*Cl·分別是f (X)在2k+1分辨率 下的尺度系數和小波系數,ck+1和也+1分別為f (X)在2k+1分辨率下的逼近部分和細節部分, 即信號f (X)的低頻分量和高頻分量,Z表示實數。
[0020] 則小波系數的能量為:
其中η是小波系數的長度。
[0021 ] 步驟3中,GMKL-SVM故障模型采用多核學習方法(GMKL就是generalized multiple kernel learning,就是廣義多核學習,其中學習二字在翻譯的時候一般省略),多核學習方 法將多個核函數進行凸組合,多核包括如下: (a)為每個單獨特征和整體特征,應用以2_3,2_2,···,26這10個數值為寬度的高斯核函 數。
[0022] (b)為每個單獨特征和整體特征,應用以1,2,3數值為階的多項式核函數。
[0023] 所述步驟(3)中,應用粒子群算法(particle swarm optimization,PSO)優化廣義 多核支持向量機的正則化參數和折衷參數的具體步驟為: (3.1) 初始化PS0算法參數,包括位置、速度、尋優范圍和迭代次數,其中將正則化參數 和折衷參數映射為粒子的二維位置; (3.2) 計算每一個粒子的適應度,根據適應度得出每一個粒子的個體最優位置和粒子 群的全局最優位置; (3.3) 對每一個粒子進行速度與位置的更新; (3.4) 重復(3.2)和(3.3)直至迭代結束,輸出結果