基于BP神經(jīng)網(wǎng)絡(luò)的電路最優(yōu)測試集的生成設(shè)計
1 引言
人工神經(jīng)網(wǎng)絡(luò)是基于模仿生物大腦的結(jié)構(gòu)和功能而構(gòu)成的一種信息處理系統(tǒng)。國際著名 的神經(jīng)網(wǎng)絡(luò)專家Hecht Nielsen 給神經(jīng)網(wǎng)絡(luò)的定義是:“神經(jīng)網(wǎng)絡(luò)是一個以有向圖為拓?fù)浣Y(jié)構(gòu)的動態(tài)系統(tǒng),它通過對連續(xù)或斷續(xù)式的輸入作狀態(tài)響應(yīng)而進(jìn)行信息處理”。神經(jīng)網(wǎng)絡(luò)系統(tǒng)[1,2] 是由大量的、同時也是很簡單的處理單元(或稱神經(jīng)元),通過廣泛地互相連接而形成的復(fù)雜網(wǎng)絡(luò)系統(tǒng)。神經(jīng)網(wǎng)絡(luò)具有的超高維性、強非線性等動力學(xué)特性,使其具有原則上容錯、結(jié)構(gòu)拓?fù)漪敯簟⒙?lián)想、推測、記憶、自適應(yīng)、自學(xué)習(xí)、并行和處理復(fù)雜模式等功能,帶來了提 供更佳診斷性能的潛在可能性。
目前神經(jīng)網(wǎng)絡(luò)應(yīng)用在模擬電路上主要是神經(jīng)網(wǎng)絡(luò)故障字典法。把模擬電路的故障診斷看成是一個分類問題,利用神經(jīng)網(wǎng)絡(luò)的分類功能來診斷故障。在測前把神經(jīng)網(wǎng)絡(luò)訓(xùn)練成一部故障字典,字典的信息蘊含在網(wǎng)絡(luò)的連接權(quán)值中,只要輸入電路的測量特征,就可以從其輸出 查出故障。目前用于模擬電路故障診斷的神經(jīng)網(wǎng)絡(luò)主要有BP 神經(jīng)網(wǎng)絡(luò)和SOM 神經(jīng)網(wǎng)絡(luò)兩 種類型。BP 是一種多層網(wǎng)絡(luò)誤差反向傳播網(wǎng)絡(luò),SOM 神經(jīng)網(wǎng)絡(luò)一種自組織特征映射神經(jīng)網(wǎng)絡(luò)(Self-organizing Feature Map)。本文采用標(biāo)準(zhǔn)BP 神經(jīng)網(wǎng)絡(luò)來實現(xiàn)對最優(yōu)測試集的生成。
2 基于神經(jīng)網(wǎng)絡(luò)的最優(yōu)測試集的生成實現(xiàn)設(shè)計
BP 神經(jīng)網(wǎng)絡(luò)對最優(yōu)測試集的生成事先沒有標(biāo)準(zhǔn)的樣本,只有設(shè)定的約束條件,對目標(biāo) 問題的求解是一個反復(fù)比較選擇、自我建立并不斷更新其樣本庫的過程。
?。?)神經(jīng)元激活函數(shù)
激活函數(shù)又稱傳遞函數(shù)。對于模擬電路故障診斷,神經(jīng)元激活函數(shù)可以采用對稱的 sigmoid 函數(shù)y(x)=1/(1+e-x)-0.5,也可以采用非對稱的sigmoid 函數(shù)y(x)=1/(1+e-x)。
?。?)輸入層
輸入層從電路拓?fù)浣Y(jié)構(gòu)接受各種狀態(tài)信息提取。神經(jīng)網(wǎng)絡(luò)的輸入節(jié)點數(shù)應(yīng)與輸入特征的 維數(shù)相同,輸入節(jié)點與電路的節(jié)點數(shù)一一對應(yīng)。
?。?)輸出層
輸出層輸出診斷結(jié)果。輸出結(jié)點數(shù)與預(yù)期節(jié)點選擇數(shù)目相同,每個輸出結(jié)點與目標(biāo)一一對應(yīng)。當(dāng)神經(jīng)網(wǎng)絡(luò)用于選擇時,若所有輸出結(jié)點的輸出值均非空,則認(rèn)為本次生成最多數(shù)目 的節(jié)點;若有幾個輸出結(jié)點的輸出值為0,則認(rèn)為生成了較少的測試節(jié)點。
?。?)隱層數(shù)
BP 網(wǎng)絡(luò)的輸入結(jié)點數(shù)和輸出結(jié)點數(shù)是由實際問題本身決定的。隱層用于對信息進(jìn)行處理和轉(zhuǎn)化。網(wǎng)絡(luò)結(jié)構(gòu)設(shè)計的難點和重點在于隱層結(jié)構(gòu)的設(shè)計,具體是指隱層數(shù)目和各隱層的神經(jīng)元數(shù)目。確定隱層的結(jié)構(gòu)很大程度上決定著網(wǎng)絡(luò)質(zhì)量。隱層用于對信息進(jìn)行處理和轉(zhuǎn)化。 隱層的層數(shù)取決于問題的特點。Funahashi 證明了對于任何在閉區(qū)間內(nèi)的一個連續(xù)函數(shù)都可 以用單隱層BP 網(wǎng)絡(luò)逼近,因而一個三層BP 網(wǎng)絡(luò)可以完成任意的n 維到m 維的映射,說明了單隱層的可行性[4],但并不確定是最合理的。本文采用最常用的單隱層BP 網(wǎng)絡(luò)構(gòu)造神經(jīng) 網(wǎng)絡(luò)。
?。?)隱結(jié)點數(shù)
隱層結(jié)點數(shù)的選擇非常重要,隱節(jié)點數(shù)與問題的復(fù)雜程度有關(guān),不存在一個理想的解析 式。隱結(jié)點的數(shù)目與問題的要求、輸入、輸出數(shù)目有關(guān)。隱結(jié)點數(shù)目太多會導(dǎo)致學(xué)習(xí)時間過 長,誤差不一定最佳,數(shù)目太少則可能會使網(wǎng)絡(luò)訓(xùn)練不出來,網(wǎng)絡(luò)的學(xué)習(xí)和聯(lián)想能力降低。
除了一些參考選擇公式外,還可以先放入足夠多的隱結(jié)點,通過學(xué)習(xí)將作用甚微的隱結(jié)點逐 步剔除直到不可收縮為止;或者反向添加至合理數(shù)目為止。 神經(jīng)網(wǎng)絡(luò)故障診斷系統(tǒng)的訓(xùn)練方法如下:
(1)權(quán)初值確定
系統(tǒng)是非線性的,不合適的權(quán)初始值會使學(xué)習(xí)過程陷入局部最優(yōu),甚至不收斂。權(quán)一般取隨機(jī)數(shù),而且權(quán)值要小,這樣可使初始權(quán)要在輸入累加時使每個神經(jīng)元的狀態(tài)值盡可能接近于零,保證每個神經(jīng)元都在它們的傳輸函數(shù)導(dǎo)數(shù)最大的地方進(jìn)行,這樣就不至于一開始就落在誤差平坦區(qū)上。本文的神經(jīng)網(wǎng)絡(luò)故障診斷系統(tǒng)中,網(wǎng)絡(luò)初始值均取在閉區(qū)間[-0.1,0.1] 內(nèi)均勻分布的隨機(jī)數(shù)。
(2)樣本輸入方式
批處理方式存在局部最優(yōu),在線輸入方式容易引起權(quán)值調(diào)節(jié)的振蕩現(xiàn)象。避免振蕩往往 根據(jù)樣本集的特點進(jìn)行多次嘗試,局部最優(yōu)可以通過修改網(wǎng)絡(luò)輸出誤差來緩解。本文樣本輸 入采用批處理方式。
(3)誤差函數(shù)的選擇 神經(jīng)網(wǎng)絡(luò)訓(xùn)練容易出現(xiàn)局部最優(yōu),因此本文設(shè)計網(wǎng)絡(luò)不要求輸出誤差很小,通過適當(dāng)增 加訓(xùn)練時間來提高準(zhǔn)確度。
3 BP 網(wǎng)絡(luò)在最優(yōu)測試集上的應(yīng)用
?。?)分析電路,構(gòu)造網(wǎng)絡(luò)結(jié)構(gòu) 對電路中的各節(jié)點支路進(jìn)行分析,建立改進(jìn)的關(guān)聯(lián)矩陣。取得用于選擇的測試向量。根 據(jù)測試向量維數(shù)和目標(biāo)要求數(shù)來選擇網(wǎng)絡(luò)各層的結(jié)點數(shù)。
?。?)輸入特征向量抽取 取電路節(jié)點對支路的關(guān)聯(lián)信息作為神經(jīng)網(wǎng)絡(luò)的輸入特征。由于各節(jié)點的關(guān)聯(lián)信息相差可 能會比較大,神經(jīng)網(wǎng)絡(luò)輸入特征的各分量量限也不同。
其中xi 是輸入特征的第i 個分量,vi 是同類關(guān)聯(lián)信息的平均值,這樣使輸入特征的各分 量量限基本相同,而且仍然可以表征原輸入特征。
?。?)輸出特征值設(shè)定
輸出特征維數(shù)取決于輸出的表示方法和要識別或分類的數(shù)目,當(dāng)電路有M 個待監(jiān)測節(jié) 點時,電路狀態(tài)有M 類,本文把無節(jié)點輸出做為輸出節(jié)點坐標(biāo)為0,輸出特征維數(shù)選擇為M, 輸出特征分量與輸出節(jié)點一一對應(yīng)。
?。?)訓(xùn)練樣本集的選擇
同故障字典的樣本集選擇不同,最優(yōu)測試集的訓(xùn)練樣本一開始時不存在的,是在制定的 約束條件下,不斷反復(fù)運算的動態(tài)過程,是一個自我學(xué)習(xí)更新的過程。因此本網(wǎng)絡(luò)將樣本集 訓(xùn)練融合到網(wǎng)絡(luò)的學(xué)習(xí)過程中。
4 仿真結(jié)果
本文所選擇的目標(biāo)電路模型為實際某設(shè)備的使用組件。電路板屬于較為典型的模擬電路 板,電路板的原理圖如圖1。
對電路板進(jìn)行仿真試驗,得到結(jié)果如表1,其指標(biāo)衡量如表2。
運用神經(jīng)網(wǎng)絡(luò)方法得到的種群中的個體元素仍比較分散,說明神經(jīng)網(wǎng)絡(luò)在自主學(xué)習(xí)訓(xùn)練 下要將當(dāng)前的最優(yōu)解解出的能力相對較弱一些,表1 中給出的結(jié)果是應(yīng)用神經(jīng)網(wǎng)絡(luò)多次運算 得到的出現(xiàn)頻率較高的解。
在設(shè)定生成較少的測設(shè)點數(shù)量時,應(yīng)用神經(jīng)網(wǎng)絡(luò)能夠解出點集,但各項指標(biāo)與使用進(jìn)化 規(guī)劃算法的解相比相對較差,整體效果類似于陷入“早熟”。在設(shè)定生成較多的測試點數(shù)量時,應(yīng)用神經(jīng)網(wǎng)絡(luò)來對目標(biāo)點集的查找解算較為困難,對目標(biāo)求解的明晰性不強,目標(biāo)集(樣本集)內(nèi)的元素不趨同,求解精度不高。
應(yīng)用傳統(tǒng)的 BP 神經(jīng)網(wǎng)絡(luò)解決TSP 或集覆蓋等問題時,可行解獲得的效率低,網(wǎng)絡(luò)較難 收斂到可行解。隨著問題的復(fù)雜化,傳統(tǒng)的BP 神經(jīng)網(wǎng)絡(luò)方法搜索到嚴(yán)格最優(yōu)解或近似最優(yōu) 解的困難加大,容易陷入局部最優(yōu)。求解速度較慢,網(wǎng)絡(luò)特性相對不夠穩(wěn)定。
5 結(jié)論
本文應(yīng)用神經(jīng)網(wǎng)絡(luò)對模擬電路最優(yōu)測試集生成上進(jìn)行了初步實現(xiàn)。仿真結(jié)果說明當(dāng)電路結(jié)構(gòu)變得復(fù)雜以后,神經(jīng)網(wǎng)絡(luò)的訓(xùn)練和識別所需要的時間都比較長,運算時間大大增加,甚至在限定的最大時間內(nèi)出現(xiàn)求不出參考解的情況。目前,應(yīng)用進(jìn)化規(guī)劃算法進(jìn)行最優(yōu)測試集的生成對復(fù)雜電路結(jié)構(gòu)求解問題上顯示出其優(yōu)越性,在設(shè)定的時間內(nèi)求解精度高,在設(shè)定的 精度下運算時間短。
本文作者創(chuàng)新點:在復(fù)雜電路結(jié)構(gòu)的求解問題上,應(yīng)用進(jìn)化規(guī)劃算法進(jìn)行最優(yōu)測試集的 生成,在設(shè)定的時間內(nèi)求解精度高,在設(shè)定的精度下運算時間短。
DIY機(jī)械鍵盤相關(guān)社區(qū):機(jī)械鍵盤DIY
評論