李志剛,高媛媛,孫曉川
(華北理工大學,河北 唐山 063200)
混沌時間序列廣泛存在于氣象系統(tǒng)、天文系統(tǒng)、水文系統(tǒng)等復(fù)雜的自然系統(tǒng)中[1]。這些系統(tǒng)隨時間的演變呈現(xiàn)出非線性、非周期性且伴有噪聲的混沌特性。如何預(yù)測演變出混沌時間序列的變化規(guī)律是一項具有挑戰(zhàn)性的研究課題[2-4]。
當前,機器學習成為預(yù)測混沌時間序列的主流方法,特別是人工神經(jīng)網(wǎng)絡(luò)(Artificial Neural Net-work, ANN)。其中,遞歸神經(jīng)網(wǎng)絡(luò)(Recurrent Neural Network, RNN)[5]憑借其記憶的特性,表現(xiàn)出良好的非線性逼近能力。但它訓練算法復(fù)雜、網(wǎng)絡(luò)結(jié)構(gòu)難以確定,導致計算負擔過重且容易陷入局部最優(yōu),極大地影響了它的預(yù)測能力。
為解決以上問題,Jaeger 教授在 2001 年提出回聲狀態(tài)網(wǎng)絡(luò)(Echo State Networks, ESN)[6],它的核心為隨機產(chǎn)生且稀疏連接的儲備池。ESN的學習過程簡單,只需訓練輸出權(quán)值,呈現(xiàn)出計算量小且精度高的優(yōu)勢,成功應(yīng)用于網(wǎng)絡(luò)流量預(yù)測、模式識別、圖像處理、事件檢測等領(lǐng)域[7-8]。眾所周知,ESN在構(gòu)建網(wǎng)絡(luò)時產(chǎn)生了眾多參數(shù),如譜半徑、輸入尺度、稀疏度、儲備池規(guī)模等。由于它們在初始化中隨機產(chǎn)生,使得網(wǎng)絡(luò)適應(yīng)性和穩(wěn)定性降低,影響網(wǎng)絡(luò)的泛化性能,特別是輸入權(quán)值、儲備池內(nèi)部權(quán)值和反饋權(quán)值的隨機初始化對網(wǎng)絡(luò)性能影響較大。
針對ESN的輸入權(quán)值、儲備池內(nèi)部權(quán)值和反饋權(quán)值的參數(shù)選擇問題,大量的優(yōu)化算法被研究[9-14]。粒子群優(yōu)化算法(Particle Swarm Optimization, PSO)[15]憑借其較強的全局搜索能力和較高的計算精度,被廣泛用于優(yōu)化ESN參數(shù)。其中Wang等[16]采用二進制PSO算法優(yōu)化輸出權(quán)值來替代ESN的訓練,提高了ESN的預(yù)測精度,但卻忽略了模型的復(fù)雜度,影響模型的預(yù)測效率。然而,Chouikhi等[17]采用PSO算法對儲備池規(guī)模和連通性進行單一參數(shù)和組合參數(shù)的優(yōu)化,在模型復(fù)雜度和預(yù)測精度中權(quán)衡出最優(yōu)的模型。盡管上述這些做法不同程度上彌補了ESN的預(yù)測能力,但優(yōu)化參數(shù)的特征較多會導致網(wǎng)絡(luò)隨機性的喪失和預(yù)測速度的降低,選擇適當?shù)奶卣髯蛹莾?yōu)化參數(shù)任務(wù)中非常重要的工作。針對以上問題,Chouikhi等[18]用粒子群優(yōu)化算法來優(yōu)化部分輸入權(quán)值、儲備池內(nèi)部權(quán)值和反饋權(quán)值并在多個時間序列中得到了驗證。這樣既保留了網(wǎng)絡(luò)的隨機性,又降低了模型復(fù)雜度,并且提高了預(yù)測精度。但由于粒子群優(yōu)化算法存在參數(shù)較多、收斂速度慢、容易陷入局部最優(yōu)解等問題,降低了它的收斂效率。
為了有效處理全局優(yōu)化,探尋簡單而高效的優(yōu)化算法,提高ESN的預(yù)測效率,R. Rao等[19]提出了教與學優(yōu)化 (Teaching-learning-based Optimization, TLBO),它是一種基于種群的求解非線性連續(xù)問題的隨機方法,它的靈感來自于一個典型班級的教學過程。具有參數(shù)少,簡單易行,收斂速度快,穩(wěn)定性強,計算精度高,全局搜索能力強等優(yōu)勢,可以有效地彌補PSO的不足[20]。
鑒于此,本文對ESN的參數(shù)選擇問題展開了研究,具體是指利用TLBO算法來優(yōu)化ESN中初始化且固定不變的輸入權(quán)值、儲備池內(nèi)部權(quán)值和輸出權(quán)值,以提高ESN的預(yù)測性能。同時,為了降低優(yōu)化模型的復(fù)雜度,減少訓練時間,并保留以上參數(shù)的隨機性,本文采取部分優(yōu)化的方式來獲得最優(yōu)復(fù)雜度模型結(jié)構(gòu),保留優(yōu)化參數(shù)的隨機性,以獲得一種具有最優(yōu)復(fù)雜度和隨機性的高效預(yù)測模型TLBO-ESN。進一步,將其與相關(guān)PSO優(yōu)化方法作對比并采取Mackey-Glass和Lorenz混沌時間序列驗證模型的有效性。
本文提出的TLBO-ESN是用TLBO來自適應(yīng)選擇局部的輸入權(quán)值、儲備池內(nèi)部權(quán)值和輸出權(quán)值參數(shù),不僅保留了網(wǎng)絡(luò)的部分隨機性,并且提高了模型的預(yù)測性能。
具有參數(shù)自適應(yīng)性和隨機性的TLBO-ESN模型結(jié)構(gòu)如圖1所示。將教與學優(yōu)化的Win,W和Wfb用紅色箭頭表示,具有隨機性的原始Win,W和Wfb用黑色箭頭表示,使TLBO-ESN成為一種簡單而高效的遞歸神經(jīng)網(wǎng)絡(luò)。與傳統(tǒng)ESN相似,儲備池內(nèi)部的神經(jīng)元采用隨機產(chǎn)生并稀疏連接的方式,增強了模型的非線性映射能力。
圖1 教與學優(yōu)化的回聲狀態(tài)網(wǎng)絡(luò)結(jié)構(gòu)
網(wǎng)絡(luò)的更新方程如下
x(t+1)=f(Winu(t+1)+Wx(t)+Wfby(t))
(1)
y(t+1)=fout(Woutx(t+1)+Winoutu(t+1))
(2)
其中,u(t),x(t),y(t)分別表示輸入層,儲備池和輸出層在t時刻的狀態(tài)。f和fout為儲備池和輸出層的激活函數(shù),它們可以是線性函數(shù),也可以是非線性函數(shù),常見的有Tanh,Sigmoid等。將Winout和Wout定義為輸出權(quán)值矩陣R,R需要在訓練中更新
R=pinv(M)*yt
(3)
其中M是儲備池內(nèi)部神經(jīng)元的狀態(tài)矩陣,pinv(M)是M的偽逆矩陣,yt是輸出層神經(jīng)元狀態(tài)矩陣。所以,求解輸出權(quán)值矩陣R就轉(zhuǎn)化為了簡單的線性問題。
首先,選取部分Win,W,Wfb作為待優(yōu)化對象partWeight
partWeight=αψin+βψ+γψfb
(4)
其中ψin,ψ和ψfb是Win,W,Wfb中的非零元素,參數(shù)α,β,γ是設(shè)定的參數(shù),范圍[0,1]。
適應(yīng)值函數(shù)也稱“目標函數(shù)”,用來評價優(yōu)化對象的優(yōu)劣,本文采用均方根誤差(Root Mean Squared Error, RMSE)作為適應(yīng)度函數(shù)
(5)
其中,N為輸出樣本大小,yt(t)為t時刻的期望輸出,y(t)為t時刻的實際輸出。
將待優(yōu)化對象partWeight賦值給NP個學生,組成班級S=x1,x2,…,xNP,令迭代次數(shù)為G,班級中的每個學員的位置為xi(i=1, 2,…,NP),根據(jù)適應(yīng)度函數(shù)RMSE,每位學員有成績Xi(i=1, 2,…,NP),通過優(yōu)化輸出成績最佳的xi(i=1, 2,…,NP)。
優(yōu)化分為兩個階段:教師階段和學生階段。
在教師階段,將整個班級中成績最佳的當作教師xteacher, 教師通過式(6)傳授經(jīng)驗給學生來提高整個班級的成績
(6)
其中,xiold和xinew分別表示第i個學員學習前和學習后的位置,mean是所有學員的平均位置;還有兩個關(guān)鍵的參數(shù),即教學因子TFi=round[1+rand(0,1)]和學習步長ri=rand(0,1), 因為每個學生的學習能力不同,因此教學因子TFi和學習步長ri應(yīng)針對不同學生進行設(shè)定,使算法具有特異性。
在學習階段,學生通過互動交流學習,進一步提高自己的成績。每個學員xi(i=1,2,…,NP)在班級中隨機選取一個學習對象xj(j≠i),xi通過式(7)分析自己和xj的差異進行學習調(diào)整:
(7)
其中ri=rand(0,1) 表示第i個學員的學習步長。
與傳統(tǒng)的ESN訓練不同,TLBO-ESN在訓練前需將部分Win,W,Wfb進行迭代尋優(yōu),用優(yōu)化好的Win,W,Wfb參與傳統(tǒng)的ESN訓練。TLBO-ESN的訓練步驟如下所示。
算法:TLBO-ESN的訓練
1)初始化ESN的參數(shù);初始化partWeight;
2)xi( i=1:NP )=partWeight;
3)NP=8, G=50;
4)while G < 50 do
5)Xi( 1 :NP)=RMSE;
6)xteacher=適應(yīng)值最佳的xi;
7) 教師階段:
8) for i=1: NP do
9)xinew=xiold+ri× (xteacher-TFi×mean) ;
10) end for
11) 更新學生成績;
12) 學生階段:
13) 隨機選取xj( j≠i );
14) for i=1: NP do
15)ifXi 16) xi new=xi old+ri× (xi-xj); 17) else 18) xi new=xiold+ri× (xj-xi); 19) end if 20) end for 21) 更新學生成績; 22)end while 23)partWeight=xi( i=1:NP ); 24)將partWeight加入到網(wǎng)絡(luò)中; 25)根據(jù)式(1) (2)更新網(wǎng)絡(luò)狀態(tài); 26)根據(jù)式(5)求訓練誤差; 27)根據(jù)式(3)求輸出權(quán)值R。 本文考慮了Mackey-Glass和Lorenz混沌時間序列數(shù)據(jù)集,選取PSO-ESN、RandWPSO-ESN、LinWPSO-ESN、LnCPSO-ESN、AsyLnCPSO-ESN來評估TLBO-ESN的有效性和優(yōu)越性。 表1 模型的參數(shù)配置 表1給出了Mackey-Glass和Lorenz基準下模型的參數(shù)配置,這些參數(shù)通過網(wǎng)格搜索法確定。 為了得到較好的預(yù)測結(jié)果,使用500個數(shù)據(jù)樣本作為訓練集,500個用于測試。為了避免某些參數(shù)隨機初始化對網(wǎng)絡(luò)性能的影響,將算法重新執(zhí)行5次后取平均值作為最后的結(jié)果。 本實驗分別從預(yù)測精度、收斂速度和穩(wěn)定性三個方面來度量教與學優(yōu)化回聲狀態(tài)網(wǎng)絡(luò)模型的整體性能。其中,預(yù)測精度通過測試誤差RMSE即式(5)作為評價標準,收斂速度用訓練時間評估,穩(wěn)定性以極差(Range, R)和平均絕對偏差(Mean Absolute Deviation, MAD)為準。 Mackey-Glass時間序列 具有延時特性的Mackey-Glass混沌時間序列的動力學方程為 (8) 其中,通常取a=0.2,b=0.1,c=10,參數(shù)τ為延時因子,決定混沌程度。當τ>16.8時系統(tǒng)出現(xiàn)混沌特性,τ的值越大混沌性越強。本實驗τ取17。 Lorenz時間序列 Lorenz引力是描述流體在熱表面和冷表面之間運動的一組微分方程,描述公式如下: (9) 其中,當參數(shù)α=10, r=28, b=8/3時,系統(tǒng)出現(xiàn)混沌特性。 為了更加準確的評估模型的性能,本實驗分別討論了在譜半徑和儲備池規(guī)模參數(shù)的動態(tài)變化下各個模型的性能。圖2和圖3給出了各模型在執(zhí)行Mackey-Glass和Lorenz時間序列預(yù)測任務(wù)的性能對比。其中譜半徑的變化范圍為(0,1),儲備池規(guī)模的變化范圍為(50,100)。從圖中可以直觀地看出,在測試誤差相同的變化范圍內(nèi),TLBO-ESN的變化波動最小,可見它對儲備池規(guī)模和譜半徑的敏感度最低。 圖2 Mackey-Glass序列下模型的誤差對比 圖3 Lorenz序列下模型的誤差對比 表2 模型的性能對比 表2給出了不同儲備池規(guī)模和譜半徑設(shè)置下各評估模型的最優(yōu)預(yù)測性能。顯然,無論是Mackey-Glass時間序列還是Lorenz時間序列,TLBO-ESN的測試誤差均小于其它模型,并且訓練時間最短,模型的復(fù)雜度最低,預(yù)測效率最高,因此TLBO-ESN的測試性能最佳。 為了進一步討論模型的穩(wěn)定性,在統(tǒng)一模型的配置下(表1),對每個模型分別做100次實驗,統(tǒng)計各模型測試誤差的變化情況。 表3 模型的穩(wěn)定性對比 表3給出了不同模型在執(zhí)行預(yù)測任務(wù)中測試誤差的極差(Range, R)和平均絕對偏差(Mean Absolute Deviation, MAD)。極差表示測試誤差的波動范圍,平均絕對偏差表示測試誤差的離散程度。可以看出在執(zhí)行Mackey-Glass和Lorenz的預(yù)測任務(wù)中,TLBO-ESN測試誤差的極差和平均絕對偏差最小,因此它的測試誤差變化范圍和離散程度最小,模型的穩(wěn)定性最強。 為了進一步討論模型的收斂能力,在統(tǒng)一參數(shù)配置下(表2),本實驗總結(jié)了各模型在執(zhí)行預(yù)測任務(wù)中適應(yīng)值隨迭代次數(shù)的變化,其中適應(yīng)值由式(5)求出。 圖4 模型的收斂性對比 圖4給出了各模型在執(zhí)行Mackey-Glass和Lorenz混沌時間序列預(yù)測任務(wù)下的收斂性能對比,描繪了不同算法在迭代過程中適應(yīng)度變化趨勢??梢钥闯鯰LBO-ESN都是最快達到收斂且適應(yīng)度值最小。因此TLBO-ESN的收斂速度最快,收斂效率最高,收斂性能最強。 本文在儲備池計算框架下,利用教與學優(yōu)化算法來選擇回聲狀態(tài)網(wǎng)絡(luò)的部分Win,W和Wfb以適應(yīng)于不同混沌時間序列的動力學特性, 提高了預(yù)測精度,保留了網(wǎng)絡(luò)的隨機特性,仿真結(jié)果表明,在執(zhí)行混沌時間序列任務(wù)中,本文所提出的模型比其它預(yù)測模型具有較高的預(yù)測精度和較強的收斂性能,并且保留了模型的隨機性。本實驗將豐富儲備池計算優(yōu)化研究的內(nèi)涵,對于推動其應(yīng)用于預(yù)測混沌時間序列具有重要意義。通過與五種粒子群優(yōu)化算法的對比實驗表明,TLBO-ESN的性能最佳,模型具有較好的預(yù)測精度、收斂速度和穩(wěn)定性。下一步研究的主要內(nèi)容是對于模型預(yù)測多種時間序列問題的性能。3 實驗分析
3.1 數(shù)據(jù)描述和度量標準
3.2 性能分析
4 結(jié)束語