李琳 劉龍
【摘 要】為了提高RBF神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)太陽(yáng)黑子數(shù)的準(zhǔn)確度,本文采用一種基于粒子群算法優(yōu)化RBF神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)模型。利用粒子群算法優(yōu)化RBF神經(jīng)網(wǎng)絡(luò)的初始參數(shù),并將其用于太陽(yáng)黑子數(shù)月均值的預(yù)測(cè)。將實(shí)驗(yàn)結(jié)果與傳統(tǒng)RBF神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)模型預(yù)測(cè)結(jié)果進(jìn)行比較,結(jié)果表明,該方法收斂快速、預(yù)測(cè)精度明顯提高,表明了PSO-RBF預(yù)測(cè)模型在太陽(yáng)黑子數(shù)預(yù)測(cè)中的有效性。
【關(guān)鍵詞】太陽(yáng)黑子數(shù);RBF神經(jīng)網(wǎng)絡(luò);粒子群算法;預(yù)測(cè)
中圖分類(lèi)號(hào): TP3 文獻(xiàn)標(biāo)識(shí)碼: A 文章編號(hào): 2095-2457(2018)13-0009-002
DOI:10.19694/j.cnki.issn2095-2457.2018.13.004
【Abstract】In order to improve the accuracy of RBF neural network to predict the number of sunspots, this paper uses a particle swarm optimization algorithm to optimize RBF neural network prediction model.The initial parameters of RBF neural network were optimized by particle swarm optimization,and its prediction was used for the mean of sunspot.The experimental results are compared with traditional RBF neural network prediction model.The simulation results show that the proposed method has a fast convergence and a significant improvement in the prediction accuracy,indicating the effectiveness of the group optimization RBF prediction model in the prediction of sunspot number.
【Key words】Number of sunspots;RBF neural network;Particle swarm optimization;Prediction
0 引言
太陽(yáng)黑子活動(dòng)是太陽(yáng)活動(dòng)中最基本、最顯而易見(jiàn)的,這種活動(dòng)發(fā)生在太陽(yáng)的光球?qū)?。人們通常把太?yáng)黑子認(rèn)為是太陽(yáng)表面一種熾熱氣體的巨大漩渦,其溫度能夠達(dá)到約3000~4500℃,此處磁場(chǎng)聚集,同時(shí)產(chǎn)生許多太陽(yáng)耀斑和太陽(yáng)風(fēng)暴。太陽(yáng)黑子活動(dòng)與多種因素有關(guān),如受地磁變化、地震、地球生物的生命周期等現(xiàn)象影響較大。因此,對(duì)太陽(yáng)黑子數(shù)的測(cè)量和預(yù)報(bào)有重要研究意義。
神經(jīng)網(wǎng)絡(luò)有很強(qiáng)的非線性擬合能力,可以映射復(fù)雜的非線性關(guān)系。但傳統(tǒng)神經(jīng)網(wǎng)絡(luò)具有預(yù)測(cè)結(jié)果隨機(jī)性、收斂慢,并且有局部極小等問(wèn)題。本文采用粒子群算法優(yōu)化神經(jīng)網(wǎng)絡(luò)的初始參數(shù),提高神經(jīng)網(wǎng)絡(luò)的逼近和推廣能力。
1 RBF網(wǎng)絡(luò)及其算法
徑向基函數(shù)(RBF)神經(jīng)網(wǎng)絡(luò)是一種單隱層三層前向網(wǎng)絡(luò)。大量實(shí)驗(yàn)表明,徑向基函數(shù)神經(jīng)網(wǎng)絡(luò)能以任意數(shù)值的精度逼近任意函數(shù)。
1.1 網(wǎng)絡(luò)結(jié)構(gòu)
RBF神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)如圖1所示:
2 粒子群優(yōu)化算法[1]
粒子群優(yōu)化算法是通過(guò)對(duì)鳥(niǎo)類(lèi)捕食行為的模擬演化而來(lái)。相對(duì)于遺傳算法,二者具有相似性,均為迭代優(yōu)化工具。PSO從流程簡(jiǎn)捷性、實(shí)現(xiàn)難易度等方面顯示出自身優(yōu)勢(shì)。
2.1 粒子群算法及流程
PSO優(yōu)化過(guò)程[2]:(1)粒子種群的初始化;(2)評(píng)價(jià)粒子的適應(yīng)度;(3)對(duì)每個(gè)粒子,比較其適應(yīng)值與其經(jīng)歷過(guò)的最好位置pbest,如果更好,則將其作為當(dāng)前的最好位置pbest;(4)對(duì)每個(gè)粒子,比較其適應(yīng)值與全局所經(jīng)歷的最好位置gbest,如果適應(yīng)值較好,則重新設(shè)置gbest的索引號(hào);(5)更新粒子的速度和位置;(6)如果沒(méi)達(dá)到結(jié)束條件則返回(2)。
3 仿真預(yù)測(cè)模型的建立及實(shí)現(xiàn)
在MATLAB R2009環(huán)境下進(jìn)行實(shí)驗(yàn):太陽(yáng)黑子數(shù)原始數(shù)據(jù)詳見(jiàn)文獻(xiàn)[3]。預(yù)測(cè)模型建立:從原始數(shù)據(jù)中選取第501月到第960月數(shù)據(jù)樣本進(jìn)行實(shí)驗(yàn),采用時(shí)間序列算法進(jìn)行預(yù)。以前7個(gè)月數(shù)據(jù)作為RBF神經(jīng)網(wǎng)絡(luò)輸入,第8個(gè)月數(shù)據(jù)作為網(wǎng)絡(luò)輸出,依次遞推循環(huán)構(gòu)建樣本集。隱層神經(jīng)元個(gè)數(shù)取2n+1,n為輸入神經(jīng)元個(gè)數(shù),則計(jì)算值取為15。選擇501~900月的400個(gè)太陽(yáng)黑子數(shù)據(jù)作為訓(xùn)練樣本,訓(xùn)練RBF神經(jīng)網(wǎng)絡(luò)權(quán)值和參數(shù),901~960月的60個(gè)數(shù)據(jù)作為檢驗(yàn)樣本。學(xué)習(xí)速率和動(dòng)量因子均設(shè)置為0.05,訓(xùn)練誤差精度設(shè)置為0.001。數(shù)據(jù)需要先進(jìn)行歸一化處理,再輸入網(wǎng)絡(luò)進(jìn)行訓(xùn)練和預(yù)測(cè)。
3.1 基于RBF網(wǎng)絡(luò)仿真模型及預(yù)測(cè)
為了比較優(yōu)化和不優(yōu)化兩種情況,取RBF、PSO-RBF兩種模型具有相同結(jié)構(gòu),即均取網(wǎng)絡(luò)結(jié)構(gòu):7-5-1進(jìn)行實(shí)驗(yàn)。學(xué)習(xí)速率、動(dòng)量因子均設(shè)置為0.05,對(duì)于RBF網(wǎng)絡(luò),輸入層神經(jīng)元個(gè)數(shù)為7個(gè),隱層為5個(gè),輸出層神經(jīng)元個(gè)數(shù)為一個(gè),即RBF網(wǎng)絡(luò)結(jié)構(gòu)為7-5-1,訓(xùn)練精度設(shè)為0.001,網(wǎng)絡(luò)訓(xùn)練和預(yù)測(cè)結(jié)果如圖2所示。
圖2中,橫坐標(biāo)s代表樣本個(gè)數(shù),(a)是網(wǎng)絡(luò)訓(xùn)練誤差曲線,(b)為訓(xùn)練樣本和實(shí)際值比較,(c)是檢驗(yàn)樣本實(shí)際值和預(yù)測(cè)值比較,圖(d)為訓(xùn)練誤差。(c)圖是預(yù)測(cè)結(jié)果,絕對(duì)平均精度為6.1863%。
3.2 粒子群優(yōu)化模型(PSO-RBF)及預(yù)測(cè)
用粒子群優(yōu)化網(wǎng)絡(luò)預(yù)測(cè)太陽(yáng)黑子數(shù)。其中PSO-RBF模型實(shí)現(xiàn)程序包括3部分:①粒子群算法;②最佳適應(yīng)度計(jì)算;③RBF神經(jīng)網(wǎng)絡(luò)訓(xùn)練及預(yù)測(cè)。經(jīng)實(shí)驗(yàn)參數(shù)設(shè)置為:動(dòng)量因子為0.1,學(xué)習(xí)速率取0.02,輸入層神經(jīng)元個(gè)數(shù)為7個(gè),隱層為5個(gè),輸出層神經(jīng)元個(gè)數(shù)為1個(gè),即PSO-RBF神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)為:7-5-1,訓(xùn)練精度設(shè)為0.001。
由于是7-5-1的網(wǎng)絡(luò)結(jié)構(gòu),因此可以計(jì)算出粒子維數(shù),種群規(guī)模取m=20,迭代次數(shù)可取G=150,粒子群算法參數(shù)qc=0.1,c1=2,c2=2。 圖3為適應(yīng)度函數(shù)優(yōu)化曲線。
圖4中(a)-(d)的含義同圖2。根據(jù)圖(c)計(jì)算可知,經(jīng)過(guò)粒子群優(yōu)化后的絕對(duì)平均精度是2.9122%,顯然,精確度比不優(yōu)化時(shí)RBF有較大提高。
4 結(jié)論
本文將粒子群優(yōu)化算法和RBF神經(jīng)網(wǎng)絡(luò)有機(jī)結(jié)合應(yīng)用于太陽(yáng)黑子數(shù)的預(yù)測(cè),用粒子群算法優(yōu)化RBF神經(jīng)網(wǎng)絡(luò)的初始參數(shù),并與傳統(tǒng)的RBF神經(jīng)網(wǎng)絡(luò)進(jìn)行比較。仿真實(shí)驗(yàn)結(jié)果表明,該算法在太陽(yáng)黑子數(shù)預(yù)測(cè)中具有更好的應(yīng)用價(jià)值。
【參考文獻(xiàn)】
[1]魏秀業(yè),潘宏俠.粒子群優(yōu)化及智能故障檢測(cè)[M]. 2010,7.
[2]http://sidc.oma.be/sunspot-data.
[3]劉潔.能源總量的BP網(wǎng)絡(luò)與粒子群優(yōu)化預(yù)測(cè)[J].科技視界,2016,7,15.