葛 利,李新東
(哈爾濱商業(yè)大學(xué)計算機與信息工程學(xué)院,哈爾濱150028)
過程神經(jīng)網(wǎng)絡(luò)[1]是傳統(tǒng)神經(jīng)網(wǎng)絡(luò)在時間域上的擴展,具有較強的時變信息處理能力和非線性映射能力,對于大量過程式問題的求解具有較高的實用價值.其中應(yīng)用最為廣泛的是多層前饋神經(jīng)網(wǎng)絡(luò)模型,而基于BP算法訓(xùn)練的過程神經(jīng)網(wǎng)絡(luò)存在易陷入局部極小的缺點,為此本文提出一種蟻群過程神經(jīng)網(wǎng)絡(luò)模型,在分析蟻群算法與時變過程式輸入特點的基礎(chǔ)上,利用信息素和概率分布的方式,采用連續(xù)的信息素分布函數(shù)和概率分布函數(shù)代替?zhèn)鹘y(tǒng)的矩陣分布方式,將蟻群算法應(yīng)用于前饋過程神經(jīng)網(wǎng)絡(luò)的訓(xùn)練,使得蟻群過程神經(jīng)網(wǎng)絡(luò)模型既具備過程神經(jīng)網(wǎng)絡(luò)的較強過程式信息處理能力,同時又具有蟻群算法的快速全局收斂能力[2-3],并通過GDP預(yù)測問題驗證了模型的有效性.
過程神經(jīng)元的結(jié)構(gòu)由聚合、加權(quán)和激勵運算三部分組成.它與傳統(tǒng)神經(jīng)元的區(qū)別在于:過程神經(jīng)元的輸入、輸出和對應(yīng)的權(quán)值均是時變的,其聚合運算既包含對空間的多輸入聚合,也有對時間過程的累積聚合.單個過程神經(jīng)元的結(jié)構(gòu)如圖1所示.其中:X(t)=(X1(t),X2(t),…Xn))T為過程神經(jīng)元的輸入函數(shù)向量,w1(t),w2(t),…wn(t)為相應(yīng)的權(quán)函數(shù),f(·)為激勵函數(shù),可取線性函數(shù)、Sigmoid函數(shù)、Gauss型函數(shù)等.
圖1 過程神經(jīng)元
過程神經(jīng)元的輸入、輸出關(guān)系為
這里“⊕”表示某種空間聚合運算,“θ”為過程神經(jīng)元閾值,“?”表示某種時間(過程)聚合運算,K(·) 為[0,T]上的一個可積函數(shù)[1].
雙隱層蟻群過程神經(jīng)網(wǎng)絡(luò)模型的拓撲結(jié)構(gòu)如圖2所示.其中,第一層為輸入層,共有n個節(jié)點單元,用以完成x1(t),x2(t)……xn(t)n個時變函數(shù)向網(wǎng)絡(luò)的輸入;第二層為過程神經(jīng)元隱層(第一隱層),由m個過程神經(jīng)元組成,完成對n個輸入函數(shù)在空間和時間上的聚合運算,以及對樣本特征的抽取;第三層為一般神經(jīng)元隱層 (第二隱層),由p個傳統(tǒng)神經(jīng)元組成;最后一層為輸出層,其輸出為常量y.
圖2 蟻群過程神經(jīng)網(wǎng)絡(luò)的拓撲結(jié)構(gòu)
該模型為一個多輸入單輸出的網(wǎng)絡(luò),拓撲結(jié)構(gòu)為n-m-p-1.將蟻群過程神經(jīng)網(wǎng)絡(luò)各隱層需進化的網(wǎng)絡(luò)權(quán)函數(shù)及權(quán)系數(shù)對應(yīng)為螞蟻待選擇的路徑數(shù)據(jù),考慮到復(fù)雜輸入、輸出系統(tǒng)存在的非線性映射關(guān)系,在網(wǎng)絡(luò)中增加了一個一般神經(jīng)元隱層,以提高網(wǎng)絡(luò)的整體非線性映射能力和適應(yīng)性.
該網(wǎng)絡(luò)各層之間的輸入與輸出關(guān)系為:
第1隱層輸出:
第2隱層輸出:
綜合式(2)~(4),則該網(wǎng)絡(luò)輸入與輸出之間的關(guān)系為:
輸出層:
式(2)~(5)中,wij(t)為輸入層與過程神經(jīng)元隱層的連接權(quán)函數(shù),[0,T]為時間采樣間隔,θj為第一隱層第j個神經(jīng)元的輸出閾值;vjk為第一隱層第j個神經(jīng)元與第二隱層第k個神經(jīng)元之間的連接權(quán)值,θk為第二隱層第k個神經(jīng)元的閾值;yk為第二隱層與輸出層的連接權(quán)值,f、g分別為第一隱層和第二隱層的激勵函數(shù),yj和yk分別為第一隱層第j個神經(jīng)元的輸出和第二隱層第k個神經(jīng)元的輸出,y為網(wǎng)絡(luò)輸出.此模型中空間聚合運算及時間聚合運算,可以根據(jù)實際問題選擇其他形式的聚合算子[1,4].
1.3.1 蟻群過程神經(jīng)網(wǎng)絡(luò)的訓(xùn)練機制
蟻群過程神經(jīng)網(wǎng)絡(luò)的輸入及時變隱層連接權(quán)均為時變函數(shù)的特點,使得蟻群過程神經(jīng)元網(wǎng)絡(luò)的映射機制和計算過程與一般非時變神經(jīng)元網(wǎng)絡(luò)有較大區(qū)別,其計算復(fù)雜度大大增加.同時由于網(wǎng)絡(luò)連接權(quán)函數(shù)形式的任意性,在不對該函數(shù)加以一定的轉(zhuǎn)化和處理的情況下,直接討論過程神經(jīng)網(wǎng)絡(luò)的訓(xùn)練問題,權(quán)函數(shù)很難通過訓(xùn)練樣本集的學(xué)習(xí)來確定.
設(shè)U是泛函空間S={f(x)|x=x(t)∈Rn,t∈R,f(x)∈V?Rm}上的一個緊致集,記C(U,V;n,m)為U到V上的連續(xù)映射泛函的集合.為討論簡單起見,取m=1,即多輸入單輸出系統(tǒng)(不難將結(jié)果推廣到m>1的情況).依據(jù)數(shù)學(xué)分析理論,蟻群過程神經(jīng)元網(wǎng)絡(luò)的權(quán)函數(shù)可表示為U中的一組基函數(shù)B(t)的展開式形式,即將權(quán)函數(shù)的形式限制在一類較為簡單的函數(shù)類中來考慮問題.廣義地講,基函數(shù)B(t)既可以是有限基或可數(shù)基,也可以是正交基或非正交基.
為簡化計算,本文在輸入函數(shù)和權(quán)函數(shù)展開為輸入空間同一組標準正交基函數(shù)的前提下,討論蟻群算法的訓(xùn)練過程.權(quán)函數(shù)在標準正交基展開下的蟻群過程神經(jīng)元的運算過程如下:
或一般地有
其中:b1(t),b2(t),……,bL(t)為U中的一組標準正交基函數(shù),L為基函數(shù)的個數(shù);w(l)i為wi(t)相對于bl(t)的展開式系數(shù),θ為過程神經(jīng)元的閾值,f為過程神經(jīng)元的激勵函數(shù).K(·)可根據(jù)實際問題的需要來確定.
蟻群過程神經(jīng)網(wǎng)絡(luò)訓(xùn)練的基本思想為:將螞蟻待尋優(yōu)路徑的數(shù)據(jù)設(shè)定為蟻群過程神經(jīng)網(wǎng)絡(luò)中待優(yōu)化的參數(shù),個數(shù)為n,其值為蟻群過程神經(jīng)網(wǎng)絡(luò)時變隱層權(quán)函數(shù)正交基展開式參數(shù)個數(shù)與非時變隱層權(quán)值個數(shù)之和.首先,將過程神經(jīng)網(wǎng)絡(luò)參數(shù)Pi(1≤i≤n)設(shè)置為N個隨機非零值,形成集合Ipi.蟻群從蟻巢出發(fā)尋找食物,即每只螞蟻在集合Ipi中選擇一個權(quán)值,在全部集合中選擇一組具體的數(shù)值.螞蟻的數(shù)目為s,τ(Ipi)為集合Ipi(1≤i≤m)的第j個元素Pj(Ipi)的信息素.
螞蟻相互獨立地進行搜索并選擇元素,當(dāng)螞蟻在所有集合中完成元素選擇后,到達食物源,此時將每只螞蟻所選擇的元素集合,作為一組獨立的蟻群過程神經(jīng)網(wǎng)絡(luò)參數(shù),對蟻群過程神經(jīng)網(wǎng)絡(luò)進行訓(xùn)練,得到蟻群過程神經(jīng)網(wǎng)絡(luò)的一組實際網(wǎng)絡(luò)輸出,然后對比期望輸出,得到對應(yīng)的網(wǎng)絡(luò)誤差,并據(jù)此調(diào)節(jié)集合中元素的信息素,以減少網(wǎng)絡(luò)誤差.反復(fù)以上過程,當(dāng)全部螞蟻收斂到同一路徑,或達到給定的迭代代數(shù)時訓(xùn)練結(jié)束.
1.3.2 蟻群過程神經(jīng)網(wǎng)絡(luò)的學(xué)習(xí)步驟
1)首先將蟻群過程神經(jīng)網(wǎng)絡(luò)權(quán)函數(shù)和輸入函數(shù)表示為輸入空間中同一組標準正交基的展開式,并初始化權(quán)函數(shù)展開式系數(shù)和非時變隱層權(quán)值.
2)令時間t和循環(huán)次數(shù)NC為零,設(shè)置最大循環(huán)次數(shù)NCmax,令每個集合中的每個元素的信息素τ(Ipi)(t)=C,其增加值Δτj(Ipi)=0;設(shè)定螞蟻個數(shù)為s,過程神經(jīng)網(wǎng)絡(luò)的參數(shù)個數(shù)為n.
3)啟動所有螞蟻,對螞蟻k(k=1,……,h),根據(jù)路徑選擇規(guī)則(10)計算概率,用輪盤轉(zhuǎn)法選擇集合Ipi的元素.每只螞蟻所選取路徑,對應(yīng)一組蟻群過程神經(jīng)網(wǎng)絡(luò)參數(shù)值.
路徑選擇規(guī)則:對集合Ipi,螞蟻k根據(jù)公式(10)計算的概率Prob隨機地選擇它的第j個元素.
4)重復(fù)步驟3),直到每只螞蟻都選取到一組蟻群過程神經(jīng)網(wǎng)絡(luò)的參數(shù),將各組參數(shù),分別代入蟻群前饋過程神經(jīng)網(wǎng)絡(luò),得到蟻群前饋過程神經(jīng)網(wǎng)絡(luò)的實際輸出及網(wǎng)絡(luò)誤差,此時即蟻群已全部到達食物源.
5)令t←t+s,NC←NC+1將網(wǎng)絡(luò)誤差最小的一組參數(shù),作為螞蟻選擇的最優(yōu)路徑,并記錄當(dāng)前最優(yōu)解.
并依據(jù)下式規(guī)則調(diào)節(jié)信息素更新每個元素的信息素
其中:參數(shù)u(0≤u<1)代表信息素的持久性,1-u對應(yīng)信息素的消逝程度.Δτkj(Ipi)為第k只螞蟻在本次循環(huán)中在集合Ipi的第j個元素Pj(Ipi)上留下的信息素,Δτkj(Ipi)值可依據(jù)不同情況獲得:若第k只螞蟻在本次循環(huán)中選擇元素Pj(Ipi),則信息素的增加值Δτkj(Ipi)依據(jù)式(12)來計算,否則信息素的增加值 Δτkj(Ipi) 根據(jù)式(13) 計算[2-3].
其中:Q為常數(shù),用于調(diào)節(jié)信息素的調(diào)整速度;ek為將第k個螞蟻選擇的一組權(quán)值作為神經(jīng)網(wǎng)絡(luò)權(quán)值的輸出誤差,定義為ek=|O-Oq|.式中O和Oq是神經(jīng)網(wǎng)絡(luò)的實際輸出和期望輸出.
6)若螞蟻群全部收斂至一條路徑或循環(huán)次數(shù)NC≥NCmax,則訓(xùn)練結(jié)束,輸出最佳路徑作為最優(yōu)解;否則轉(zhuǎn)步驟(3).
以黑龍江省年度GDP預(yù)測為例,依據(jù)國家統(tǒng)計局網(wǎng)站上的1981~2009年的黑龍江省GDP相關(guān)數(shù)據(jù)作為原始數(shù)據(jù),依據(jù)相關(guān)文獻分析[5-8],選取外貿(mào)出口總額、財政支出、社會消費品零售總額、實際利用外資、財政收入和固定資產(chǎn)投資作為影響GDP的6個主要因素,將其連續(xù)9 a的時序數(shù)據(jù)分別進行函數(shù)擬合,得到6個時變函數(shù)作為蟻群過程神經(jīng)網(wǎng)絡(luò)模型的輸入,以下一個年度對應(yīng)的黑龍江省GDP數(shù)值作為網(wǎng)絡(luò)的期望輸出,共組成21個樣本.將其中的17個樣本作為訓(xùn)練樣本,4個樣本作為測試樣本.通過試湊法最終確定過程神經(jīng)網(wǎng)絡(luò)GDP預(yù)測模型的網(wǎng)絡(luò)結(jié)構(gòu)為6-17-1,即網(wǎng)絡(luò)輸入層節(jié)點數(shù)為6,輸出層節(jié)點數(shù)為1,過程神經(jīng)元隱層節(jié)點數(shù)為17.經(jīng)過反復(fù)的測試和比較,最終確定螞蟻數(shù)量s為25,常數(shù)Q為0.9,信息素的揮發(fā)系數(shù)u為0.6時,蟻群過程神經(jīng)網(wǎng)絡(luò)的訓(xùn)練取得相對理想的結(jié)果.
經(jīng)878次迭代后網(wǎng)絡(luò)收斂,4個測試樣本對應(yīng)的網(wǎng)絡(luò)輸出與其實際值對比結(jié)果如表1所示.從中可見,網(wǎng)絡(luò)平均相對誤差為3.89%.
表1 過程神經(jīng)網(wǎng)絡(luò)GDP預(yù)測值與實際值對比
本文將蟻群算法引入到前饋過程網(wǎng)絡(luò)神經(jīng)網(wǎng)絡(luò)的訓(xùn)練,提出了蟻群過程神經(jīng)網(wǎng)絡(luò)模型,該模型兼有前饋過程神經(jīng)網(wǎng)絡(luò)對過程式問題的較強非線性映射能力和蟻群算法快速、全局收斂的特點.并針對黑龍江省年度GDP預(yù)測問題,建立了基于蟻群過程神經(jīng)網(wǎng)絡(luò)的GDP預(yù)測模型,驗證了該模型的有效性.
[1] 何新貴,梁久禎.過程神經(jīng)元網(wǎng)絡(luò)的若干理論問題[J].中國工程科學(xué),2000,12(2):40 40-44.
[2] 孔令軍,張興華,陳建國.基本蟻群算法及其改進[J].華北大學(xué)學(xué)報:自然科學(xué)版,2004,12(6):32-34.
[3] 段海濱,王道波,于秀芬.蟻群算法的研究現(xiàn)狀及其展望[J].中國工程科學(xué),2007(6):98-102.
[4] 何新貴,梁久禎,許少華.過程神經(jīng)元網(wǎng)絡(luò)的訓(xùn)練及其應(yīng)用[J].中國工程科學(xué),2001,3(4):31-35.
[5] 楊 挺.基于BP神經(jīng)網(wǎng)絡(luò)改進算法的湖南省GDP預(yù)測研究[D].長沙:中南大學(xué),2008:10-32.
[6] 陳小娟.時間序列分析在廣東省GDP預(yù)測中應(yīng)用研究[D].廣州:中山大學(xué),2009:4-15.
[7] 都崴崴.人工神經(jīng)網(wǎng)絡(luò)在廣東省GDP預(yù)測中的應(yīng)用研究[D].廣州:暨南大學(xué),2006:1-20.
[8] 徐耀群,尹遜芹.基于實時路況的配送路徑優(yōu)化問題研究[J].哈爾濱商業(yè)大學(xué)學(xué)報:自然科學(xué)版,2012,28(5):537-540.