楊正校,劉靜,汪小霞
(蘇州健雄職業(yè)技術(shù)學(xué)院軟件與服務(wù)外包學(xué)院,江蘇太倉215411)
基于PSO-ANFIS改進(jìn)算法的推理系統(tǒng)平衡性研究
楊正校,劉靜,汪小霞
(蘇州健雄職業(yè)技術(shù)學(xué)院軟件與服務(wù)外包學(xué)院,江蘇太倉215411)
針對粒子群優(yōu)化(PSO)算法在自適應(yīng)神經(jīng)模糊推理系統(tǒng)(ANFIS)中的集成應(yīng)用,提出對學(xué)習(xí)神經(jīng)模型參數(shù)、隸屬度函數(shù)參數(shù)進(jìn)行改進(jìn)優(yōu)化的算法。該算法可增強模糊系統(tǒng)的近似精度和可解釋性,提高系統(tǒng)的性能,進(jìn)而發(fā)現(xiàn)更好的分類優(yōu)化規(guī)則。算法經(jīng)4個標(biāo)準(zhǔn)數(shù)據(jù)庫的數(shù)據(jù)測試,結(jié)果表現(xiàn)出更好的性能,獲得更好的分類效果,同時降低了系統(tǒng)時間復(fù)雜度。
自適應(yīng)神經(jīng)模糊推理系統(tǒng);可解釋性;精度;演化算法;粒子群優(yōu)化
神經(jīng)模糊系統(tǒng)的強度涉及模糊建模中兩個相互沖突的需求:近似精度和可解釋性。在模糊系統(tǒng)理論或應(yīng)用[1]中提高模糊系統(tǒng)的近似精度和可解釋性是一個很重要的問題。基于TSK模型的自適應(yīng)神經(jīng)模糊推理系統(tǒng)(Adaptive Neuro-Fuzzy Inference System,ANFIS),是神經(jīng)建模的特殊分支,其結(jié)構(gòu)與一般神經(jīng)模糊系統(tǒng)類似,從數(shù)據(jù)集中獲取數(shù)據(jù)屬性,并根據(jù)給定的誤差標(biāo)準(zhǔn)調(diào)整系統(tǒng)參數(shù)[2]。但在規(guī)則層中,它有許多代表自動生成所有可能的神經(jīng)模糊結(jié)構(gòu)模糊規(guī)則的節(jié)點,而自動生成規(guī)則又有產(chǎn)生冗余規(guī)則的機會。因此,研究一種生成具有良好的準(zhǔn)確性和有效規(guī)則的ANFIS同步技術(shù)是必要的。
粒子群算法,也稱粒子群優(yōu)化(Particle Swarm Optimization,PSO)算法,是近年來發(fā)展起來的一種新的演化算法[3](Evolutionary Algorithms,EA),由于其容易實現(xiàn)并且需要調(diào)整的粒子很少而為研究人員所廣泛應(yīng)用與開發(fā)。該算法受飛鳥集群活動規(guī)律的啟發(fā),利用群體智能建立一個簡化模型[4]。此外, PSO算法只需要幾行程序代碼就可以實現(xiàn),僅需要基本的數(shù)學(xué)運算符,運算速度快,內(nèi)存消耗小[5-6]。文獻(xiàn)[7]中通過設(shè)計規(guī)則,使用PSO來解決模糊神經(jīng)網(wǎng)絡(luò)(FNN)的沖突問題。
基于PSO算法的優(yōu)點以及ANFIS的需求,本文通過優(yōu)化隸屬度函數(shù)確定神經(jīng)模糊系統(tǒng)中相互沖突問題的平衡關(guān)系,對粒子群優(yōu)化方法在ANFIS結(jié)構(gòu)中增強平衡精度和可解釋性的性能進(jìn)行檢驗。
與一般模糊模型結(jié)構(gòu)類似,ANFIS主要通過兩個特征指標(biāo)來評估模糊模型的質(zhì)量:可解釋性和精度[8]??山忉屝约从媚:P蛠肀硎酒湎到y(tǒng)的常規(guī)屬性。一些研究者認(rèn)為可解釋性包括模型結(jié)構(gòu)、輸入變量的數(shù)目、模糊規(guī)則的數(shù)量、術(shù)語條款,以及模糊集的形態(tài)等內(nèi)容,因為它會影響系統(tǒng)的復(fù)雜程度和處理時間,所以在ANFIS過程中是重要的問題。可解釋性可以通過微調(diào)和改進(jìn)模糊規(guī)則,如增加和減少模糊規(guī)則數(shù)目,從而在所有可能的模糊規(guī)則中找到更加有效的規(guī)則。
精度,能準(zhǔn)確地表示模型系統(tǒng)的能力,模糊模型越接近真實系統(tǒng),其精度越高,真實系統(tǒng)和模型系統(tǒng)響應(yīng)的相似性能被模糊模型理解。神經(jīng)模糊系統(tǒng)的優(yōu)勢之一就是能夠完全基于近似和語言信息來進(jìn)行設(shè)計。因此,通過調(diào)整網(wǎng)絡(luò)結(jié)構(gòu)和學(xué)習(xí)神經(jīng)模糊模型的參數(shù)可以達(dá)到滿意的精度[9]。在隸屬度函數(shù)和精度之間有密切的聯(lián)系[10]。依據(jù)這一結(jié)論,我們猜想:優(yōu)化隸屬度函數(shù)將會改進(jìn)神經(jīng)模糊系統(tǒng)的精度。
基于模糊建模中兩個相互沖突的需求,ANFIS可以同時優(yōu)化這兩個需求目標(biāo)。
(1)修改ANFIS的參數(shù)以獲得良好的性能(精度),它是基于均方誤差(Mean Square Error,MSE)的模糊建模,公式如下:
式中:yj和ydj分別表示網(wǎng)絡(luò)輸出值和輸出期望值; N是數(shù)據(jù)總量。
(2)增加和減少模糊規(guī)則數(shù)量以獲得一個可解釋的模糊模型,公式如下:
式中:R是規(guī)則節(jié)點的最大值;Or(∈O,O表示模糊規(guī)則集)是用來確定是否存在規(guī)則節(jié)點r的二進(jìn)制值,相當(dāng)于開關(guān),用來打開或關(guān)閉一個規(guī)則節(jié)點。
PSO算法是ANFIS作為一種學(xué)習(xí)方式優(yōu)化兩個相互沖突標(biāo)準(zhǔn)的演化算法的一部分,它的一種定義是把PSO描述成粒子群,而每個粒子代表一個潛在的解決方案。把PSO的學(xué)習(xí)機制引入模糊系統(tǒng),將構(gòu)成一個具有人類感知成分的自適應(yīng)神經(jīng)網(wǎng)絡(luò)系統(tǒng),在不知不覺中向訓(xùn)練數(shù)據(jù)學(xué)習(xí),自動產(chǎn)生、修正并高度概括出最佳的輸入與輸出變量的隸屬度函數(shù)以及模糊規(guī)則;另一方面,神經(jīng)網(wǎng)絡(luò)的各層結(jié)構(gòu)與參數(shù)也都具有了明確的、易于理解的物理涵義[11]。
PSO是解決ANFIS問題的一個潛在技術(shù)。在PSO算法中,PSO是由粒子構(gòu)成的,粒子的位置受其速度的影響。ANFIS被看作是一個粒子和參數(shù),這些參數(shù)是影響ANFIS過程的粒子維度。設(shè)xi(t)為第i粒子經(jīng)過時間t后在搜索空間的位置,通過增加速度來改變粒子的位置。若vi(t)代表當(dāng)前位置,則有
式中:c1和c2是加速度;r1和r2是隨機向量,pbest和gbest分別表示局部或全局最優(yōu)值。
由此可見,粒子的數(shù)量等于ANFIS過程的數(shù)量,而每個ANFIS過程都是完成目標(biāo)函數(shù)的一個潛在解決方案,圖1是自適應(yīng)神經(jīng)模糊推理系統(tǒng)結(jié)構(gòu)。圖中:x表示輸入信號,μ表示隸屬度函數(shù)的前期函數(shù), λ表示隸屬度函數(shù)的后期參數(shù),R表示模糊規(guī)則庫, π表示標(biāo)準(zhǔn)化模糊規(guī)則,N表示自適應(yīng)規(guī)則,k表示學(xué)習(xí)機制。
圖1 自適應(yīng)神經(jīng)模糊推理系統(tǒng)結(jié)構(gòu)圖Fig.1 The adaptive neuro-fuzzy architecture
第1層是輸入層,而xi(i=1,2,···,n)是輸入信號;第2層是模糊化過程的前期參數(shù)即隸屬度函數(shù)(μ),每個節(jié)點與第2a層的單節(jié)點相連,連接代表修改隸屬度函數(shù)值;第3層是模糊規(guī)則庫層;第4層是標(biāo)準(zhǔn)化層,在這一層中,將選擇優(yōu)化的模糊規(guī)則(o);第5層是去模糊化層,受結(jié)果參數(shù)(k)的影響;c是系統(tǒng)輸出。
如圖1所示,第2層中的每個節(jié)點與2a層有單個節(jié)點相連,意味著在第2層中的每個隸屬函數(shù)參數(shù)將要在2a層中修改,從而獲得適當(dāng)?shù)碾`屬參數(shù),該隸屬參數(shù)將用來測量輸出并獲得最小誤差。此外,第3層的每個節(jié)點與第4層的每個節(jié)點相連,其中每個連接線代表一個模糊規(guī)則。最優(yōu)模糊規(guī)則的選擇取決于每個模糊規(guī)則在其對應(yīng)系統(tǒng)中的重要性。
在PSO-ANFIS中,利用PSO調(diào)整所有ANFIS學(xué)習(xí)到的參數(shù),增加和減少ANFIS結(jié)構(gòu)中模糊規(guī)則數(shù)量,從而分別獲得最佳參數(shù)值和模糊規(guī)則數(shù)。所提出的PSO-ANFIS將用最少的模糊規(guī)則和高性能的準(zhǔn)確性來設(shè)計ANFIS。所以,這個任務(wù)是通過選擇準(zhǔn)確性高、規(guī)則數(shù)量少來完成的。
圖2為PSO-ANFIS算法過程。下面通過PSO增減ANFIS結(jié)構(gòu)中的模糊規(guī)則數(shù)以調(diào)整ANFIS的所有參數(shù)。
圖2 PSO-ANFIS算法流程圖Fig.2 The fow chart of PSO-ANFIS
設(shè)第i個粒子為Xi=(xi1,xi2,···,xid),這些粒子會在解空間搜索并跟蹤2個“極值”:一是粒子本身所找到的最優(yōu)解,也稱為局部極值pbest,記為Pi=(pi1,pi2,···,pid);另一個是群體中所有粒子經(jīng)歷的最佳位置,或稱為全局極值gbest,記為Pg=(pg1,pg2,···,pgd)。粒子i的速度表示為Vi=(vi1,vi2,···,vid),每一個粒子的位置就是一個潛在解[12],在每一次迭代中,根據(jù)下列步驟對速度進(jìn)行更新。
(1)使用速度(vd)和d維度初始化粒子位置(xd)。
(2)對PSO-ANFIS適應(yīng)度函數(shù)(fj)進(jìn)行初始化,適應(yīng)度函數(shù)是ANFIS的目標(biāo)函數(shù)即式(1)和式(2)。
(3)使用式(1)和式(2)找到ANFIS的目標(biāo)函數(shù),根據(jù)適應(yīng)度函數(shù)找到粒子的位置。如果適應(yīng)度函數(shù)的位置比適應(yīng)度函數(shù)的當(dāng)?shù)匚恢煤?那么pbestd=xd。
(4)找到最好的pbestp值,把pbestp設(shè)置成gbest。
(5)使用式(3)和式(4)更新速度和位置。
(6)對于每個粒子,找到新的適應(yīng)度函數(shù)fxi,基于步驟(3)確定新的適應(yīng)度函數(shù)值,基于步驟(4)找到gbest值。
(7)判斷數(shù)值如果收斂,則停止,否則返回步驟(5)檢查,直至迭代完成并產(chǎn)生最優(yōu)值,則過程結(jié)束,否則轉(zhuǎn)到步驟(5)。
為了評估上述算法的性能,進(jìn)行標(biāo)準(zhǔn)數(shù)據(jù)庫數(shù)據(jù)實驗,所用數(shù)據(jù)選自加州理工學(xué)院機器學(xué)習(xí)數(shù)據(jù)庫UCI機器學(xué)習(xí)網(wǎng)站(http://archive.ics.uci.edu/ ml/datasets.html)的學(xué)習(xí)數(shù)據(jù)庫:Iris Flower,Balloon, Haberman’s Survival Data and Thyroid。表1匯總了本實驗中使用到的數(shù)據(jù)集屬性。
表1 數(shù)據(jù)集屬性Tab.1 Characteristics of datasets
為確保數(shù)據(jù)的一致性,數(shù)據(jù)集的數(shù)值采用正常范圍內(nèi)([0,1])的數(shù)值,對系統(tǒng)進(jìn)行交叉性實驗。將數(shù)據(jù)集隨機地劃分為訓(xùn)練組和測試組兩個部分,其中80%的數(shù)據(jù)作為訓(xùn)練組,其余20%作為測試組。訓(xùn)練組的目的是為了訓(xùn)練網(wǎng)絡(luò)獲取ANFIS的學(xué)習(xí)數(shù)據(jù),測試組是用來測試ANFIS的表現(xiàn)且不出現(xiàn)在訓(xùn)練過程的數(shù)據(jù)。
表2給出了PSO-ANFIS過程中參數(shù)的初始值。對每個數(shù)據(jù)集進(jìn)行1 000次實驗,以測試均值和標(biāo)準(zhǔn)差是否分別滿足精度要求,計算并給出規(guī)則數(shù)量和時間消耗。
表2 技術(shù)參數(shù)Tab.2 Specifcation of proposed method
選取粒子數(shù)為50,語言模糊集數(shù)為3,c1=0.5, c2=1,迭代次數(shù)為103,對均值誤差和標(biāo)準(zhǔn)差誤差進(jìn)行仿真比較,運行結(jié)果如圖3所示。
圖3 算法改進(jìn)前后的誤差仿真對比圖Fig.3 The simulation comparison chart
表3給出了ANFIS基于PSO算法學(xué)習(xí)到的平均值和標(biāo)準(zhǔn)差,表中顯示的最佳誤差率發(fā)生在訓(xùn)練過程中的Balloon組,而測試過程的最佳錯誤率發(fā)生在Iris Flower組。結(jié)果表明,誤差率不受輸入?yún)?shù)數(shù)量和樣本的影響,但與數(shù)據(jù)集本身的分布有關(guān),盡管Haberman的數(shù)據(jù)集有3個輸入變量,但其分類的分布極其不平衡(有一級實例255個和二級實例81個),因此,比較Balloon組和Iris Flower組,都出現(xiàn)了較大誤差。Balloon組的實例相對較少,而其他組的分布數(shù)據(jù)相對正常,訓(xùn)練組和測試組的誤差結(jié)果存在巨大差異。相反,Iris Flower組的數(shù)據(jù)變量比Haberman組多,比Balloon有更多的實例,但其數(shù)據(jù)分布正常,輸出顯示了訓(xùn)練組和測試組的最小誤差值,盡管Thyroid組比其他組具有更多的變量,其數(shù)據(jù)結(jié)果顯示非正態(tài)分布。因此,可以得出結(jié)論:每個類別的數(shù)據(jù)分布對誤差率產(chǎn)生較大的影響。
表3 PSO-ANFIS實驗結(jié)果Tab.3 Result of PSO-ANFIS
在優(yōu)化規(guī)則數(shù)(f2)列中,數(shù)量最小的是Balloon組,而Thyroid組獲得的優(yōu)化規(guī)則數(shù)量最多。從表3中可見,Balloon組數(shù)據(jù)集最小,Thyroid組數(shù)據(jù)集最大,似乎輸入數(shù)量和優(yōu)化規(guī)則之間存在關(guān)聯(lián)。然而, Haberman組的輸入數(shù)據(jù)量比較少,而優(yōu)化規(guī)則數(shù)量卻比Balloon組多。從樣品(實例)的數(shù)量看,Haberman組的實例數(shù)量比Balloon組多,而Iris Flower組具有更多優(yōu)化規(guī)則數(shù),這是由于輸入Haberman組,并且比Balloon組具有更多的實例。因此可以得出結(jié)論:輸入數(shù)量和實例是發(fā)現(xiàn)優(yōu)化規(guī)則數(shù)的決定因素。
表3同時給出了時間與規(guī)則數(shù)量的平衡關(guān)系,規(guī)則數(shù)量與時間成正相關(guān)。Balloon組與其他組進(jìn)行比較,優(yōu)化規(guī)則數(shù)少,時間開銷也較小。Thyroid組比其他組優(yōu)化規(guī)則多,時間消耗多。由此可以得出結(jié)論:時間復(fù)雜度的減小取決于優(yōu)化規(guī)則的數(shù)量。
評價PSO-ANFIS的測量分類可以通過靈敏性、特異性和表4中執(zhí)行的模型預(yù)測精度的平均值得到。表4表明,當(dāng)敏感性較高而特異性較低的時候,準(zhǔn)確性更高,說明測量分類的準(zhǔn)確性與靈敏性、特異性這兩個值之間存在著對應(yīng)關(guān)系。在這個結(jié)果中,獲得分類精度最高的是Balloon組(分類精度等于所有數(shù)據(jù)集精確分類后的準(zhǔn)確性平均值),Iris Flower組和Haberman組分列第二和第三,精度最不理想的是Thyroid組。通過數(shù)據(jù)分析顯示,與Haberman組相比較,Iris Flower組,Balloon和Thyroid組有較多的輸入變量和較少的實例,但分類精度比Haberman組的高。Haberman組與其他組相比,其中每個類別數(shù)據(jù)集的分布都呈非正態(tài)分布,可見每個類別的數(shù)據(jù)分布可能對數(shù)據(jù)集以外的不一致的數(shù)據(jù)集分類產(chǎn)生較大影響。實驗結(jié)果對所有數(shù)據(jù)集給出的可行的準(zhǔn)確性分類的精度都超過了75%。
表4 方法的測量分類Tab.4 Classifcation measurement of Proposed method
本文通過對群智能優(yōu)化算法(PSO)進(jìn)行改進(jìn),將其用于自適應(yīng)神經(jīng)模糊推理系統(tǒng)(ANFIS)實現(xiàn)性能優(yōu)化。本文的創(chuàng)新之處是:基于在可解釋的基礎(chǔ)上提高精度和降低時間復(fù)雜度兩條準(zhǔn)則,對ANFIS架構(gòu)進(jìn)行優(yōu)化,并使用標(biāo)準(zhǔn)數(shù)據(jù)集進(jìn)行測試。測試結(jié)果表明:該算法對所有數(shù)據(jù)集給出的可行的準(zhǔn)確性分類的精度都超過了75%,降低了時間復(fù)雜度,從而提高了算法的效率。
參考文獻(xiàn):
[1]PAIVA R P,DOURADO A.Interpretability and learning in neuro-fuzzy systems[J].Elsevier Fuzzy Sets and Systems, 2004,147:17-38.
[2]NEGNEVITSKY M.Artifcial inteligence:A guide to intelligent systems[M].2nd ed.England:Pearson Education Limited,2005.
[3]鄭金興.粒子群優(yōu)化人工神經(jīng)網(wǎng)絡(luò)在高速銑削力建模中的應(yīng)用[J].計算機集成制造系統(tǒng),2008,14(9):1710-1716.
[4]顧秀萍.自適應(yīng)神經(jīng)模糊推理系統(tǒng)(ANIS)及其仿真[J].火力與指揮控制,2010,35(2):48-53.
[5]Bai Q.Analysis of particle swarm optimization algorithm [J].Computer and Information Science,2010,3(1):180-184.
[6]ENGELBRECHT A P.Fundamental of computational swarm intelligent[M].London,England:John Wiley&Sons Ltd,2005.
[7]MA M,ZHANG L B,MA J,et al.Fuzzy neural network optimization by a particle swarm optimization algorithm[C]//Advances in Neural Networks.Berlin,Heidelberg:Springer Berlin Heidelberg,2006,3971:752-761.
[8]DI NUOVO A G,CATANIA V.Linguistic modifers to improve the accuracy-interpretability trade-off in multiobjective genetic design of fuzzy rule based classifer systems[C]//2009 Ninth International Conference on Intelligent Systems Design and Applications.USA:Intelligent Systems Design and Applications,2009.
[9]LEE C H,TENG C C.Fine tuning of membership functions for fuzzy neural system[J].Asian Journal of Control, 2001,3(3):216-225.
[10]ZENG X J,SINGH M G.A relationship between membership functions and approximation accuracy in fuzzy systems[J].IEEE Transactions on Systems Man and Cybernetics.Part B:Cybernetics,1996,26(1):176-180.
[11]王介生,張勇.基于ANFIS的軟測量模型在浮選中的應(yīng)用[J].合肥工業(yè)大學(xué)學(xué)報:自然科學(xué)版,2006,29(11): 1365-1369.
[12]朱煒,賈衡天,徐玉如,等.水下目標(biāo)的特征提取及識別[J].系統(tǒng)工程與電子技術(shù),2008,30(1):171-175.
Research on Reasoning System Balance Based on the Improved Algorithm PSO-ANFIS
YANG Zheng-xiao,LIU Jing,WANG Xiao-xia
(School of Software and Service Outsourcing,Suzhou Chien-shiung Institute of Technology, Taicang 215411,Jiangsu,P.R.China)
For the particle swarm optimization(PSO)algorithm on the adaptive neuro fuzzy inference system(ANFIS)integrated applications,put forward an improved algorithm by optimizing the learning of neural model parameters,the parameters of membership functions.The algorithm can improve the approximation accuracy and interpretability of fuzzy systems and the performance of the system.The proposed method has been tested on four standard dataset from UCI machine learning,i.e.Iris Flower,Haberman’s Survival Data,Balloon and Thyroid dataset.The results have shown better classifcation using the proposed PSO-ANFIS and the time complexity has reduced accordingly.
adaptive neuro-fuzzy inference system(ANFIS);interpretability;accuracy;evolutionary algorithms;particle swarm optimization(PSO)
TP301.6
A
1001-4543(2014)03-0233-06
2014-04-03
楊正校(1963–),男,江蘇沭陽人,副教授,碩士,主要研究方向為算法與軟件設(shè)計、職業(yè)教育研究。
電子郵箱yzx new@163.com。
江蘇省教育廳2013年度高校哲學(xué)社會科學(xué)基金(No.2013SJD880071)資助
上海第二工業(yè)大學(xué)學(xué)報2014年3期