楊正校,劉靜,汪小霞
(蘇州健雄職業(yè)技術(shù)學(xué)院軟件與服務(wù)外包學(xué)院,江蘇太倉(cāng)215411)
基于PSO-ANFIS改進(jìn)算法的推理系統(tǒng)平衡性研究
楊正校,劉靜,汪小霞
(蘇州健雄職業(yè)技術(shù)學(xué)院軟件與服務(wù)外包學(xué)院,江蘇太倉(cāng)215411)
針對(duì)粒子群優(yōu)化(PSO)算法在自適應(yīng)神經(jīng)模糊推理系統(tǒng)(ANFIS)中的集成應(yīng)用,提出對(duì)學(xué)習(xí)神經(jīng)模型參數(shù)、隸屬度函數(shù)參數(shù)進(jìn)行改進(jìn)優(yōu)化的算法。該算法可增強(qiáng)模糊系統(tǒng)的近似精度和可解釋性,提高系統(tǒng)的性能,進(jìn)而發(fā)現(xiàn)更好的分類優(yōu)化規(guī)則。算法經(jīng)4個(gè)標(biāo)準(zhǔn)數(shù)據(jù)庫(kù)的數(shù)據(jù)測(cè)試,結(jié)果表現(xiàn)出更好的性能,獲得更好的分類效果,同時(shí)降低了系統(tǒng)時(shí)間復(fù)雜度。
自適應(yīng)神經(jīng)模糊推理系統(tǒng);可解釋性;精度;演化算法;粒子群優(yōu)化
神經(jīng)模糊系統(tǒng)的強(qiáng)度涉及模糊建模中兩個(gè)相互沖突的需求:近似精度和可解釋性。在模糊系統(tǒng)理論或應(yīng)用[1]中提高模糊系統(tǒng)的近似精度和可解釋性是一個(gè)很重要的問題?;赥SK模型的自適應(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ī)則層中,它有許多代表自動(dòng)生成所有可能的神經(jīng)模糊結(jié)構(gòu)模糊規(guī)則的節(jié)點(diǎn),而自動(dòng)生成規(guī)則又有產(chǎn)生冗余規(guī)則的機(jī)會(huì)。因此,研究一種生成具有良好的準(zhǔn)確性和有效規(guī)則的ANFIS同步技術(shù)是必要的。
粒子群算法,也稱粒子群優(yōu)化(Particle Swarm Optimization,PSO)算法,是近年來(lái)發(fā)展起來(lái)的一種新的演化算法[3](Evolutionary Algorithms,EA),由于其容易實(shí)現(xiàn)并且需要調(diào)整的粒子很少而為研究人員所廣泛應(yīng)用與開發(fā)。該算法受飛鳥集群活動(dòng)規(guī)律的啟發(fā),利用群體智能建立一個(gè)簡(jiǎn)化模型[4]。此外, PSO算法只需要幾行程序代碼就可以實(shí)現(xiàn),僅需要基本的數(shù)學(xué)運(yùn)算符,運(yùn)算速度快,內(nèi)存消耗小[5-6]。文獻(xiàn)[7]中通過設(shè)計(jì)規(guī)則,使用PSO來(lái)解決模糊神經(jīng)網(wǎng)絡(luò)(FNN)的沖突問題。
基于PSO算法的優(yōu)點(diǎn)以及ANFIS的需求,本文通過優(yōu)化隸屬度函數(shù)確定神經(jīng)模糊系統(tǒng)中相互沖突問題的平衡關(guān)系,對(duì)粒子群優(yōu)化方法在ANFIS結(jié)構(gòu)中增強(qiáng)平衡精度和可解釋性的性能進(jìn)行檢驗(yàn)。
與一般模糊模型結(jié)構(gòu)類似,ANFIS主要通過兩個(gè)特征指標(biāo)來(lái)評(píng)估模糊模型的質(zhì)量:可解釋性和精度[8]??山忉屝约从媚:P蛠?lái)表示其系統(tǒng)的常規(guī)屬性。一些研究者認(rèn)為可解釋性包括模型結(jié)構(gòu)、輸入變量的數(shù)目、模糊規(guī)則的數(shù)量、術(shù)語(yǔ)條款,以及模糊集的形態(tài)等內(nèi)容,因?yàn)樗鼤?huì)影響系統(tǒng)的復(fù)雜程度和處理時(shí)間,所以在ANFIS過程中是重要的問題。可解釋性可以通過微調(diào)和改進(jìn)模糊規(guī)則,如增加和減少模糊規(guī)則數(shù)目,從而在所有可能的模糊規(guī)則中找到更加有效的規(guī)則。
精度,能準(zhǔn)確地表示模型系統(tǒng)的能力,模糊模型越接近真實(shí)系統(tǒng),其精度越高,真實(shí)系統(tǒng)和模型系統(tǒng)響應(yīng)的相似性能被模糊模型理解。神經(jīng)模糊系統(tǒng)的優(yōu)勢(shì)之一就是能夠完全基于近似和語(yǔ)言信息來(lái)進(jìn)行設(shè)計(jì)。因此,通過調(diào)整網(wǎng)絡(luò)結(jié)構(gòu)和學(xué)習(xí)神經(jīng)模糊模型的參數(shù)可以達(dá)到滿意的精度[9]。在隸屬度函數(shù)和精度之間有密切的聯(lián)系[10]。依據(jù)這一結(jié)論,我們猜想:優(yōu)化隸屬度函數(shù)將會(huì)改進(jìn)神經(jīng)模糊系統(tǒng)的精度。
基于模糊建模中兩個(gè)相互沖突的需求,ANFIS可以同時(shí)優(yōu)化這兩個(gè)需求目標(biāo)。
(1)修改ANFIS的參數(shù)以獲得良好的性能(精度),它是基于均方誤差(Mean Square Error,MSE)的模糊建模,公式如下:
式中:yj和ydj分別表示網(wǎng)絡(luò)輸出值和輸出期望值; N是數(shù)據(jù)總量。
(2)增加和減少模糊規(guī)則數(shù)量以獲得一個(gè)可解釋的模糊模型,公式如下:
式中:R是規(guī)則節(jié)點(diǎn)的最大值;Or(∈O,O表示模糊規(guī)則集)是用來(lái)確定是否存在規(guī)則節(jié)點(diǎn)r的二進(jìn)制值,相當(dāng)于開關(guān),用來(lái)打開或關(guān)閉一個(gè)規(guī)則節(jié)點(diǎn)。
PSO算法是ANFIS作為一種學(xué)習(xí)方式優(yōu)化兩個(gè)相互沖突標(biāo)準(zhǔn)的演化算法的一部分,它的一種定義是把PSO描述成粒子群,而每個(gè)粒子代表一個(gè)潛在的解決方案。把PSO的學(xué)習(xí)機(jī)制引入模糊系統(tǒng),將構(gòu)成一個(gè)具有人類感知成分的自適應(yīng)神經(jīng)網(wǎng)絡(luò)系統(tǒng),在不知不覺中向訓(xùn)練數(shù)據(jù)學(xué)習(xí),自動(dòng)產(chǎn)生、修正并高度概括出最佳的輸入與輸出變量的隸屬度函數(shù)以及模糊規(guī)則;另一方面,神經(jīng)網(wǎng)絡(luò)的各層結(jié)構(gòu)與參數(shù)也都具有了明確的、易于理解的物理涵義[11]。
PSO是解決ANFIS問題的一個(gè)潛在技術(shù)。在PSO算法中,PSO是由粒子構(gòu)成的,粒子的位置受其速度的影響。ANFIS被看作是一個(gè)粒子和參數(shù),這些參數(shù)是影響ANFIS過程的粒子維度。設(shè)xi(t)為第i粒子經(jīng)過時(shí)間t后在搜索空間的位置,通過增加速度來(lái)改變粒子的位置。若vi(t)代表當(dāng)前位置,則有
式中:c1和c2是加速度;r1和r2是隨機(jī)向量,pbest和gbest分別表示局部或全局最優(yōu)值。
由此可見,粒子的數(shù)量等于ANFIS過程的數(shù)量,而每個(gè)ANFIS過程都是完成目標(biāo)函數(shù)的一個(gè)潛在解決方案,圖1是自適應(yīng)神經(jīng)模糊推理系統(tǒng)結(jié)構(gòu)。圖中:x表示輸入信號(hào),μ表示隸屬度函數(shù)的前期函數(shù), λ表示隸屬度函數(shù)的后期參數(shù),R表示模糊規(guī)則庫(kù), π表示標(biāo)準(zhǔn)化模糊規(guī)則,N表示自適應(yīng)規(guī)則,k表示學(xué)習(xí)機(jī)制。
圖1 自適應(yīng)神經(jīng)模糊推理系統(tǒng)結(jié)構(gòu)圖Fig.1 The adaptive neuro-fuzzy architecture
第1層是輸入層,而xi(i=1,2,···,n)是輸入信號(hào);第2層是模糊化過程的前期參數(shù)即隸屬度函數(shù)(μ),每個(gè)節(jié)點(diǎn)與第2a層的單節(jié)點(diǎn)相連,連接代表修改隸屬度函數(shù)值;第3層是模糊規(guī)則庫(kù)層;第4層是標(biāo)準(zhǔn)化層,在這一層中,將選擇優(yōu)化的模糊規(guī)則(o);第5層是去模糊化層,受結(jié)果參數(shù)(k)的影響;c是系統(tǒng)輸出。
如圖1所示,第2層中的每個(gè)節(jié)點(diǎn)與2a層有單個(gè)節(jié)點(diǎn)相連,意味著在第2層中的每個(gè)隸屬函數(shù)參數(shù)將要在2a層中修改,從而獲得適當(dāng)?shù)碾`屬參數(shù),該隸屬參數(shù)將用來(lái)測(cè)量輸出并獲得最小誤差。此外,第3層的每個(gè)節(jié)點(diǎn)與第4層的每個(gè)節(jié)點(diǎn)相連,其中每個(gè)連接線代表一個(gè)模糊規(guī)則。最優(yōu)模糊規(guī)則的選擇取決于每個(gè)模糊規(guī)則在其對(duì)應(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)確性來(lái)設(shè)計(jì)ANFIS。所以,這個(gè)任務(wù)是通過選擇準(zhǔn)確性高、規(guī)則數(shù)量少來(lái)完成的。
圖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個(gè)粒子為Xi=(xi1,xi2,···,xid),這些粒子會(huì)在解空間搜索并跟蹤2個(gè)“極值”:一是粒子本身所找到的最優(yōu)解,也稱為局部極值pbest,記為Pi=(pi1,pi2,···,pid);另一個(gè)是群體中所有粒子經(jīng)歷的最佳位置,或稱為全局極值gbest,記為Pg=(pg1,pg2,···,pgd)。粒子i的速度表示為Vi=(vi1,vi2,···,vid),每一個(gè)粒子的位置就是一個(gè)潛在解[12],在每一次迭代中,根據(jù)下列步驟對(duì)速度進(jìn)行更新。
(1)使用速度(vd)和d維度初始化粒子位置(xd)。
(2)對(duì)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)對(duì)于每個(gè)粒子,找到新的適應(yīng)度函數(shù)fxi,基于步驟(3)確定新的適應(yīng)度函數(shù)值,基于步驟(4)找到gbest值。
(7)判斷數(shù)值如果收斂,則停止,否則返回步驟(5)檢查,直至迭代完成并產(chǎn)生最優(yōu)值,則過程結(jié)束,否則轉(zhuǎn)到步驟(5)。
為了評(píng)估上述算法的性能,進(jìn)行標(biāo)準(zhǔn)數(shù)據(jù)庫(kù)數(shù)據(jù)實(shí)驗(yàn),所用數(shù)據(jù)選自加州理工學(xué)院機(jī)器學(xué)習(xí)數(shù)據(jù)庫(kù)UCI機(jī)器學(xué)習(xí)網(wǎng)站(http://archive.ics.uci.edu/ ml/datasets.html)的學(xué)習(xí)數(shù)據(jù)庫(kù):Iris Flower,Balloon, Haberman’s Survival Data and Thyroid。表1匯總了本實(shí)驗(yàn)中使用到的數(shù)據(jù)集屬性。
表1 數(shù)據(jù)集屬性Tab.1 Characteristics of datasets
為確保數(shù)據(jù)的一致性,數(shù)據(jù)集的數(shù)值采用正常范圍內(nèi)([0,1])的數(shù)值,對(duì)系統(tǒng)進(jìn)行交叉性實(shí)驗(yàn)。將數(shù)據(jù)集隨機(jī)地劃分為訓(xùn)練組和測(cè)試組兩個(gè)部分,其中80%的數(shù)據(jù)作為訓(xùn)練組,其余20%作為測(cè)試組。訓(xùn)練組的目的是為了訓(xùn)練網(wǎng)絡(luò)獲取ANFIS的學(xué)習(xí)數(shù)據(jù),測(cè)試組是用來(lái)測(cè)試ANFIS的表現(xiàn)且不出現(xiàn)在訓(xùn)練過程的數(shù)據(jù)。
表2給出了PSO-ANFIS過程中參數(shù)的初始值。對(duì)每個(gè)數(shù)據(jù)集進(jìn)行1 000次實(shí)驗(yàn),以測(cè)試均值和標(biāo)準(zhǔn)差是否分別滿足精度要求,計(jì)算并給出規(guī)則數(shù)量和時(shí)間消耗。
表2 技術(shù)參數(shù)Tab.2 Specifcation of proposed method
選取粒子數(shù)為50,語(yǔ)言模糊集數(shù)為3,c1=0.5, c2=1,迭代次數(shù)為103,對(duì)均值誤差和標(biāo)準(zhǔn)差誤差進(jìn)行仿真比較,運(yùn)行結(jié)果如圖3所示。
圖3 算法改進(jìn)前后的誤差仿真對(duì)比圖Fig.3 The simulation comparison chart
表3給出了ANFIS基于PSO算法學(xué)習(xí)到的平均值和標(biāo)準(zhǔn)差,表中顯示的最佳誤差率發(fā)生在訓(xùn)練過程中的Balloon組,而測(cè)試過程的最佳錯(cuò)誤率發(fā)生在Iris Flower組。結(jié)果表明,誤差率不受輸入?yún)?shù)數(shù)量和樣本的影響,但與數(shù)據(jù)集本身的分布有關(guān),盡管Haberman的數(shù)據(jù)集有3個(gè)輸入變量,但其分類的分布極其不平衡(有一級(jí)實(shí)例255個(gè)和二級(jí)實(shí)例81個(gè)),因此,比較Balloon組和Iris Flower組,都出現(xiàn)了較大誤差。Balloon組的實(shí)例相對(duì)較少,而其他組的分布數(shù)據(jù)相對(duì)正常,訓(xùn)練組和測(cè)試組的誤差結(jié)果存在巨大差異。相反,Iris Flower組的數(shù)據(jù)變量比Haberman組多,比Balloon有更多的實(shí)例,但其數(shù)據(jù)分布正常,輸出顯示了訓(xùn)練組和測(cè)試組的最小誤差值,盡管Thyroid組比其他組具有更多的變量,其數(shù)據(jù)結(jié)果顯示非正態(tài)分布。因此,可以得出結(jié)論:每個(gè)類別的數(shù)據(jù)分布對(duì)誤差率產(chǎn)生較大的影響。
表3 PSO-ANFIS實(shí)驗(yàn)結(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í)例)的數(shù)量看,Haberman組的實(shí)例數(shù)量比Balloon組多,而Iris Flower組具有更多優(yōu)化規(guī)則數(shù),這是由于輸入Haberman組,并且比Balloon組具有更多的實(shí)例。因此可以得出結(jié)論:輸入數(shù)量和實(shí)例是發(fā)現(xiàn)優(yōu)化規(guī)則數(shù)的決定因素。
表3同時(shí)給出了時(shí)間與規(guī)則數(shù)量的平衡關(guān)系,規(guī)則數(shù)量與時(shí)間成正相關(guān)。Balloon組與其他組進(jìn)行比較,優(yōu)化規(guī)則數(shù)少,時(shí)間開銷也較小。Thyroid組比其他組優(yōu)化規(guī)則多,時(shí)間消耗多。由此可以得出結(jié)論:時(shí)間復(fù)雜度的減小取決于優(yōu)化規(guī)則的數(shù)量。
評(píng)價(jià)PSO-ANFIS的測(cè)量分類可以通過靈敏性、特異性和表4中執(zhí)行的模型預(yù)測(cè)精度的平均值得到。表4表明,當(dāng)敏感性較高而特異性較低的時(shí)候,準(zhǔn)確性更高,說(shuō)明測(cè)量分類的準(zhǔn)確性與靈敏性、特異性這兩個(gè)值之間存在著對(duì)應(yīng)關(guān)系。在這個(gè)結(jié)果中,獲得分類精度最高的是Balloon組(分類精度等于所有數(shù)據(jù)集精確分類后的準(zhǔn)確性平均值),Iris Flower組和Haberman組分列第二和第三,精度最不理想的是Thyroid組。通過數(shù)據(jù)分析顯示,與Haberman組相比較,Iris Flower組,Balloon和Thyroid組有較多的輸入變量和較少的實(shí)例,但分類精度比Haberman組的高。Haberman組與其他組相比,其中每個(gè)類別數(shù)據(jù)集的分布都呈非正態(tài)分布,可見每個(gè)類別的數(shù)據(jù)分布可能對(duì)數(shù)據(jù)集以外的不一致的數(shù)據(jù)集分類產(chǎn)生較大影響。實(shí)驗(yàn)結(jié)果對(duì)所有數(shù)據(jù)集給出的可行的準(zhǔn)確性分類的精度都超過了75%。
表4 方法的測(cè)量分類Tab.4 Classifcation measurement of Proposed method
本文通過對(duì)群智能優(yōu)化算法(PSO)進(jìn)行改進(jìn),將其用于自適應(yīng)神經(jīng)模糊推理系統(tǒng)(ANFIS)實(shí)現(xiàn)性能優(yōu)化。本文的創(chuàng)新之處是:基于在可解釋的基礎(chǔ)上提高精度和降低時(shí)間復(fù)雜度兩條準(zhǔn)則,對(duì)ANFIS架構(gòu)進(jìn)行優(yōu)化,并使用標(biāo)準(zhǔn)數(shù)據(jù)集進(jìn)行測(cè)試。測(cè)試結(jié)果表明:該算法對(duì)所有數(shù)據(jù)集給出的可行的準(zhǔn)確性分類的精度都超過了75%,降低了時(shí)間復(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].計(jì)算機(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的軟測(cè)量模型在浮選中的應(yīng)用[J].合肥工業(yè)大學(xué)學(xué)報(bào):自然科學(xué)版,2006,29(11): 1365-1369.
[12]朱煒,賈衡天,徐玉如,等.水下目標(biāo)的特征提取及識(shí)別[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–),男,江蘇沭陽(yáng)人,副教授,碩士,主要研究方向?yàn)樗惴ㄅc軟件設(shè)計(jì)、職業(yè)教育研究。
電子郵箱yzx new@163.com。
江蘇省教育廳2013年度高校哲學(xué)社會(huì)科學(xué)基金(No.2013SJD880071)資助
上海第二工業(yè)大學(xué)學(xué)報(bào)2014年3期