張忠林,張 艷
蘭州交通大學(xué) 電子與信息工程學(xué)院,蘭州 730070
時(shí)間序列預(yù)測(cè)就是通過(guò)分析時(shí)間序列,去進(jìn)行類推或者延展,常作為一種有效預(yù)測(cè)手段而被廣泛應(yīng)用于金融[1]、氣象預(yù)測(cè)、交通分析預(yù)測(cè)[2]、市場(chǎng)分析、人類行為預(yù)測(cè)[3]等領(lǐng)域。其中,自回歸模型[4]的出現(xiàn)使得時(shí)間序列預(yù)測(cè)建模逐步成熟,但是同時(shí)也存在一些問(wèn)題,包括模型的識(shí)別、估計(jì)和解釋等。近年機(jī)器學(xué)習(xí)的出現(xiàn)使得預(yù)測(cè)可以通過(guò)不斷的重復(fù)訓(xùn)練來(lái)逼近真實(shí)模型以此達(dá)到較好的預(yù)測(cè)結(jié)果。人工神經(jīng)網(wǎng)絡(luò)[5]、支持向量回歸、基于核方法[6]以及基于樹(shù)[7]的集成學(xué)習(xí)方法在處理時(shí)間序列預(yù)測(cè)輸入變量之間的序列依賴性時(shí)仍然存在一定的缺陷。長(zhǎng)短期記憶神經(jīng)網(wǎng)絡(luò)(long-term and short-term memory network,LSTM)[8],由于其包含時(shí)間記憶單元,因此適合處理和預(yù)測(cè)時(shí)間序列中的間隔和延遲事件,從而廣泛應(yīng)用于時(shí)間序列預(yù)測(cè)任務(wù)?;诂F(xiàn)有的文獻(xiàn),不難發(fā)現(xiàn)LSTM模型輸入?yún)?shù)仍依靠經(jīng)驗(yàn)選取,特別是時(shí)間窗口大小、批處理數(shù)量、隱藏層單元數(shù)目,隨機(jī)性的賦值大大降低了模型的預(yù)測(cè)性能。為了提高輸入?yún)?shù)的準(zhǔn)確性以及擴(kuò)展LSTM模型的應(yīng)用范圍,引入各種改進(jìn)方式來(lái)提高LSTM的綜合性能。
其中許多學(xué)者提出使用智能算法充當(dāng)優(yōu)化器優(yōu)化LSTM的輸入?yún)?shù)。受小生境技術(shù)的啟發(fā),有學(xué)者提出了多群體策略,以保持種群的多樣性,這對(duì)于尋優(yōu)效果至關(guān)重要。文獻(xiàn)[9]采用不同的學(xué)習(xí)策略分布對(duì)不同類型的粒子進(jìn)行更新,提高種群多樣性,增強(qiáng)了粒子的尋優(yōu)效果,從而優(yōu)化了LSTM的輸入?yún)?shù),有效預(yù)測(cè)了股票價(jià)格走勢(shì)。表明對(duì)智能優(yōu)化算法種群多樣的增強(qiáng)會(huì)有效提高算法性能,但該算法未考慮到算法陷入局部最優(yōu)。文獻(xiàn)[10]使用Logistics混沌映射去提升FA初始種群的多樣性,并加入線性遞減慣性權(quán)重去幫助算法跳出局部最優(yōu),取得了較好預(yù)測(cè)效果。以上研究表明對(duì)智能算法種群多樣性的有效干涉會(huì)提高算法尋優(yōu)性能。
由于不同的智能算法有其自身的優(yōu)點(diǎn),因此很自然會(huì)考慮將不同的算法或策略結(jié)合起來(lái)處理復(fù)雜問(wèn)題。文獻(xiàn)[11]將FA與序貫二次規(guī)劃(SQP)相結(jié)合,用于鋼筋混凝土基礎(chǔ)的設(shè)計(jì)優(yōu)化,該算法結(jié)合了FA的全局搜索能力和SQP的精確局部挖掘能力,彌補(bǔ)了搜索能力和開(kāi)發(fā)能力之間的矛盾。文獻(xiàn)[12]使用了蟻群與粒子群混合算法優(yōu)化LSSVM的脈動(dòng)風(fēng)速取得較好的效果。研究表明,諸如此類的混合模型會(huì)將單一模型優(yōu)勢(shì)互補(bǔ),具有更快的收斂速度和更高的解質(zhì)量等綜合性能。
受到以上研究的啟發(fā)提出了一種改進(jìn)的螢火蟲智能混合(GAFA)優(yōu)化算法,該算法將遺傳算法(genetic algorithm,GA)[13]中的選擇算子、交叉算子和變異算子集成到FA中,去增加FA種群多樣性以提高算法性能,將改進(jìn)后的FA應(yīng)用于LSTM模型輸入?yún)?shù)的優(yōu)化,以此搭建一個(gè)高精度的時(shí)序預(yù)測(cè)模型。
LSTM模型有三個(gè)控制門來(lái)對(duì)信息進(jìn)行選擇性通過(guò)[8]。首先是遺忘門f對(duì)輸入x t的遺忘程度,保留下來(lái)部分送往輸入門,輸入門i中的x t經(jīng)激活函數(shù)sigmoid和tanh共同控制保留向量,最后經(jīng)由輸出門h輸出當(dāng)前值,其結(jié)構(gòu)如圖1所示。
圖1 LSTM模型結(jié)構(gòu)Fig.1 LSTM Model structure
式(1)~(7)是它的數(shù)學(xué)表達(dá):
螢火蟲算法由Yang等提出[14],在FA中,螢火蟲的亮度I取決于它的位置X,它被認(rèn)為是一個(gè)潛在的解,且群體的運(yùn)動(dòng)軌跡可以描述為一個(gè)搜索過(guò)程。它的實(shí)現(xiàn)是將空間中的每一只螢火蟲視為解決問(wèn)題的候選人,而發(fā)光強(qiáng)的螢火蟲則吸引較弱的螢火蟲,它們最終集中在較亮螢火蟲周圍,螢火蟲在移動(dòng)過(guò)程中完成了位置信息的更新,即完成了更新[15]。以下是它的數(shù)學(xué)表達(dá),相對(duì)熒光亮度,如式(8):
式中,I0表示光源的光強(qiáng)度,γ是傳播介質(zhì)的光吸收系數(shù),I與β成正比,可以描述為式(9):
其中,β0是r=0時(shí)的吸引力,βmin是最小吸引力。根據(jù)上述定義,螢火蟲的運(yùn)動(dòng)可以描述為式(10):
其中,α是決定隨機(jī)游動(dòng)大小的參數(shù),rand是均勻分布在[0,1]上的隨機(jī)數(shù)。
在選取優(yōu)化器時(shí),考慮了FA、粒子群算法(particle swarm optimization,PSO)[16]以及蟻群算法(ant colony optimization,ACO)[17],分別對(duì)它們的初始參數(shù)、適用場(chǎng)景以及抗早熟能力進(jìn)行了權(quán)衡。ACO較PSO以及FA顯著差異是它的正反饋機(jī)制,這就決定它不能進(jìn)行全局信息共享,且ACO對(duì)問(wèn)題的維度較為敏感,所以本文在FA和PSO之間進(jìn)行了選擇。最終在驗(yàn)證實(shí)驗(yàn)中選取了FA,具體實(shí)驗(yàn)在4.4節(jié)中顯示與討論。
早熟趨同被認(rèn)為與個(gè)體在種群中的趨同密切相關(guān),這對(duì)于持續(xù)搜索優(yōu)化算法至關(guān)重要。多樣性越大,種群越分散,越利于算法的全局搜索,反之,種群越集中,越利于算法的局部搜索。為了使FA算法有更好的處理問(wèn)題能力,將遺傳算法中的選擇、交叉與變異算子集成到FA算法中,通過(guò)輪盤賭選擇法,選擇確定執(zhí)行交叉變異的個(gè)體,將選擇到的算子復(fù)制n次,產(chǎn)生新的種群個(gè)體,后使用改進(jìn)的交叉變異概率在新的種群中創(chuàng)建新的種群個(gè)體,達(dá)到種群多樣性再生的目的,避免陷入局部最優(yōu),增強(qiáng)算法搜索能力,找到問(wèn)題的最優(yōu)解。
FA由于其隨著迭代次數(shù)的增加,種群的多樣性也逐步減少,于是,F(xiàn)A參數(shù)完成初始化后,在種群開(kāi)始進(jìn)化的進(jìn)程中引入多樣性度量公式,計(jì)算當(dāng)前多樣性進(jìn)化結(jié)果與上一次多樣性進(jìn)化結(jié)果的差值,迭代初期,收斂速度較快,連續(xù)多次的多樣性計(jì)算差值較大,t-(t-1)的迭代結(jié)果為正數(shù)。迭代后期,逐漸接近最優(yōu)解,t-(t-1)的迭代結(jié)果為負(fù)數(shù)。進(jìn)行連續(xù)三次差值計(jì)算,若三次結(jié)果都是負(fù)數(shù)且呈現(xiàn)遞減趨勢(shì)就證明接近最優(yōu)解,陷入了局部最優(yōu),此時(shí)引入自適應(yīng)多樣性增加機(jī)制豐富種群多樣性,這即是觸發(fā)多樣性增加機(jī)制的條件。在計(jì)算出多樣性后,判斷是否滿足多樣性增加機(jī)制的條件,如果滿足條件就將遺傳算法中的選擇、交叉與變異算子集成到FA中,創(chuàng)建新的種群,開(kāi)始新一輪的迭代,同時(shí)為防止迭代到最后的局部震蕩,加入了自適應(yīng)游動(dòng)參數(shù),防止局部震蕩的出現(xiàn)。本文采用任意兩個(gè)個(gè)體之間的平均距離來(lái)度量種群的多樣性,平均距離越大證明種群越分散,平均距離越小,證明種群越集中,|s|為種群個(gè)體個(gè)數(shù),在種群中任取兩個(gè)不同的粒子計(jì)算平均距離,如式(11)所示:
其中,d(X i,X j)為歐式距離。粒子i和j的位置向量分別為X i=[Pi1,P i2,…,Pin],X j=[Pj1,P j2,…,P jn],則其歐式距離如式(12):
FA迭代后期由于種群多樣性的彌散,種群對(duì)于多樣性的要求也隨之降低,上述提到在識(shí)別到FA陷入局部最優(yōu)時(shí)引入多樣性增加機(jī)制,但是算法迭代后期不需要特別分散的種群去做全局搜索,就需要較小的多樣性增加機(jī)制的概率,因此賦予多樣性機(jī)制一個(gè)遞減趨勢(shì)的權(quán)重來(lái)平衡算法由于多樣性需求降低而減緩收斂速度的要求,算法迭代前期ω值較大,后期ω值較小,更新度量多樣性公式如式(13):
其中,max為最大迭代次數(shù),iter為當(dāng)前迭代次數(shù)。
2.2.1 選擇算子
本文采用基于比例選擇的輪盤賭選擇法[18],依據(jù)螢火蟲個(gè)體在迭代更新中個(gè)體亮度值來(lái)選擇執(zhí)行交叉變異的螢火蟲個(gè)體,以此創(chuàng)建新的種群,依據(jù)式(15)對(duì)螢火蟲個(gè)體進(jìn)行選擇:
其中,f(X i)為螢火蟲個(gè)體Xi的亮度值,P(X i)為個(gè)體
被選概率,同時(shí)將個(gè)體被選概率累加,后通過(guò)隨機(jī)數(shù)對(duì)隨機(jī)數(shù)落在的區(qū)域?qū)?yīng)的螢火蟲個(gè)體進(jìn)行選取。
2.2.2 改進(jìn)的交叉變異算子
在傳統(tǒng)的遺傳算法中,交叉和變異算子的值通常被確定為0.3≤Pc≤0.8和0.001≤Pm≤0.1,在實(shí)際操作中一般都選取某一固定值,這樣的選取帶來(lái)很多局限性。在算法進(jìn)化初期,個(gè)體適應(yīng)能力較弱,適應(yīng)能力比平均適應(yīng)能力差,需要較大的交叉概率值來(lái)進(jìn)行全局搜索范圍,同時(shí)選擇較小的變異概率來(lái)保存染色體中的優(yōu)良基因。在算法進(jìn)化的后期,個(gè)體適應(yīng)度超過(guò)了平均適應(yīng)度值,此時(shí)需要較小的交叉概率進(jìn)行局部搜索,同時(shí)需要增加變異概率來(lái)增強(qiáng)算法的局部搜索能力[19]。改進(jìn)后的交叉與變異概率為式(16)、(17):
其中,F(xiàn)max為個(gè)體最大的適應(yīng)度,F(xiàn)mean為個(gè)體平均適應(yīng)度,iter為當(dāng)前迭代次數(shù),F(xiàn)為父代染色體的適應(yīng)度值,F(xiàn)min為個(gè)體最小適應(yīng)度值。
2.2.3 自適應(yīng)游動(dòng)參數(shù)
從式(10)可以看出,決定隨機(jī)游動(dòng)大小的參數(shù)是一個(gè)固定值,使在迭代前期能較好實(shí)現(xiàn)全局搜索,而迭代后期由于多樣性的彌散螢火蟲個(gè)體圍繞最優(yōu)點(diǎn)做局部搜索,此時(shí)的α由于是一個(gè)定長(zhǎng)值可能會(huì)使得無(wú)法收斂到最優(yōu)點(diǎn),所以本文采用自適應(yīng)因子來(lái)自發(fā)平衡算法前后期的矛盾,迭代前期由于種群分散采用較大的游動(dòng)參數(shù)進(jìn)行全局搜索,迭代后期種群集中采用較小的游動(dòng)參數(shù)進(jìn)行局部搜索。調(diào)整如式(18):
其中,α0為初始隨機(jī)游動(dòng)參數(shù),max為最大迭代次數(shù),iter為當(dāng)前迭代次數(shù)。
為了分析GAFA算法的時(shí)間復(fù)雜度,給出了它的偽代碼,具體如下所示:
GAFA算法在每輪迭代中首先運(yùn)用式(13)計(jì)算任意兩個(gè)個(gè)體間的平均距離,其時(shí)間復(fù)雜度為O(n),接著個(gè)體會(huì)向發(fā)光較亮個(gè)體移動(dòng),其時(shí)間復(fù)雜度為O(n),迭代t次,因此GAFA算法迭代一輪的時(shí)間復(fù)雜度為O(n2t)。
為了直接觀察到GAFA與FA在尋優(yōu)效果上的顯著差異,本文對(duì)兩者進(jìn)行了改進(jìn)效果的測(cè)試。具體實(shí)驗(yàn)細(xì)節(jié)在4.5節(jié)中顯示與討論。
時(shí)間序列數(shù)據(jù)預(yù)測(cè)受到多方面因素的影響,具有一定的不穩(wěn)定性。本文將選用在時(shí)間序列分析與預(yù)測(cè)中表現(xiàn)優(yōu)異的LSTM模型為基礎(chǔ),構(gòu)建時(shí)間序列數(shù)據(jù)預(yù)測(cè)模型。首先將LSTM模型的時(shí)間窗口大小、批處理處理量和隱藏層單元數(shù)的取值范圍分別作為改進(jìn)螢火蟲算法的初始群體,應(yīng)用貪心策略思想分別取得表現(xiàn)最優(yōu)的參數(shù)個(gè)體,進(jìn)而組成一組最優(yōu)參數(shù)組合,將這一參數(shù)組合作為L(zhǎng)STM的輸入?yún)?shù)[20]。此外,為了進(jìn)一步挖掘時(shí)間序列的時(shí)間依賴關(guān)系,本文將采用兩層LSTM網(wǎng)絡(luò)結(jié)構(gòu)[21],進(jìn)一步提高模型預(yù)測(cè)性能,至此GAFA-LSTM時(shí)序預(yù)測(cè)模型搭建完成。螢火蟲算法廣泛地應(yīng)用于各種優(yōu)化問(wèn)題的求解,但隨著種群多樣性的減少,優(yōu)化性能被削弱,改進(jìn)后的螢火蟲算法能夠有效避免陷入局部最優(yōu),會(huì)使得LSTM模型能夠有效確定最優(yōu)超參數(shù)組合,實(shí)現(xiàn)高精度預(yù)測(cè)。其中,每一只螢火蟲代表一種解,訓(xùn)練時(shí),訓(xùn)練精度由平均絕對(duì)百分誤差來(lái)衡量。
本文提出的改進(jìn)螢火蟲算法的混合優(yōu)化器主要分五部分,F(xiàn)A的參數(shù)初始化模塊、FA改進(jìn)模塊、LSTM結(jié)構(gòu)模塊、LSTM參數(shù)更新模塊、LSTM訓(xùn)練預(yù)測(cè)模塊。整個(gè)GAFA-LSTM算法的步驟如下所示,模塊圖如圖2所示。
圖2 改進(jìn)螢火蟲算法優(yōu)化LSTM網(wǎng)絡(luò)的算法流程圖Fig.2 Improved firefly algorithm to optimize algorithm flow chart of LSTM network
步驟1初始化參數(shù)。
步驟2多樣性計(jì)算。利用式(13)度量種群多樣性,在連續(xù)迭代多次無(wú)果陷入局部最優(yōu)時(shí),引入自適應(yīng)多樣性增加機(jī)制,幫助跳出局部最優(yōu)。
步驟3判斷是否達(dá)到最優(yōu),更新最優(yōu)值,如達(dá)到最優(yōu)更新LSTM參數(shù)。否則返回步驟2。
步驟4保留最優(yōu)參數(shù)組合,進(jìn)行預(yù)測(cè)。
用電負(fù)荷:該數(shù)據(jù)來(lái)自浙江某地區(qū)2020年2月至5月每隔1小時(shí)的實(shí)際用電負(fù)荷。用電負(fù)荷為實(shí)驗(yàn)中預(yù)測(cè)的目標(biāo)值。
股票:該數(shù)據(jù)來(lái)自網(wǎng)易財(cái)經(jīng)提供的某公司2019年7月至2020年5月的股票數(shù)據(jù)。股票的收盤價(jià)作為預(yù)測(cè)的目標(biāo)值。
用氣量:該數(shù)據(jù)來(lái)自前瞻數(shù)據(jù)庫(kù)提供的重慶天然氣2016年1月至2018年12月的用氣量。用氣量為實(shí)驗(yàn)中預(yù)測(cè)的目標(biāo)值。
Beijing PM2.5:該數(shù)據(jù)來(lái)自UCI(machine learning repository)數(shù)據(jù)集,采樣時(shí)間為2010年1月1日至2014年12月31日。PM2.5濃度是在實(shí)驗(yàn)中預(yù)測(cè)的目標(biāo)值。具體數(shù)據(jù)集信息如表1所示。
表1 數(shù)據(jù)集信息Table 1 Data set information
本文所有的實(shí)驗(yàn)均在Windows10 64位操作系統(tǒng)下進(jìn)行,設(shè)備使用的處理器是AMD瑞龍3,顯卡是gtx1080,內(nèi)存大小為8.00 GB,實(shí)驗(yàn)環(huán)境是Python 3.6,開(kāi)發(fā)工具為Spyder,后端使用tensorflow-gpu1.14。
優(yōu)化算法選取實(shí)驗(yàn)在FA和PSO中進(jìn)行,經(jīng)分析兩者在初始參數(shù)階段沒(méi)有顯著差異,為了找到更適用于本文場(chǎng)景的算法,將兩者分別對(duì)LSTM的輸入?yún)?shù)進(jìn)行優(yōu)化,并在Beijing PM2.5UCI數(shù)據(jù)集上進(jìn)行驗(yàn)證對(duì)比,最終以適應(yīng)度曲線形式體現(xiàn)算法優(yōu)勢(shì)[22]。實(shí)驗(yàn)結(jié)果如圖3所示。
圖3中可以看出FA在迭代前期適應(yīng)度曲線呈梯度下降趨勢(shì),收斂速度優(yōu)于PSO,且在迭代后期兩者性能相當(dāng),在對(duì)抗早熟能力和適用場(chǎng)景比較分析之后決定選取FA算法對(duì)LSTM輸入?yún)?shù)進(jìn)行優(yōu)化。
圖3 FA與PSO適應(yīng)度曲線圖Fig.3 Fitness curve of FA and PSO
在對(duì)本文所做的FA改進(jìn)工作進(jìn)行總結(jié)時(shí),對(duì)其改進(jìn)效果進(jìn)行了測(cè)試,測(cè)試如下:將GAFA與FA分別進(jìn)行尋優(yōu)對(duì)比,實(shí)驗(yàn)中螢火蟲粒子均為初始螢火蟲群體。實(shí)驗(yàn)結(jié)果如圖4所示。
圖4 尋優(yōu)效果對(duì)比圖Fig.4 Comparison diagram of optimization effect
圖4經(jīng)過(guò)20次迭代選取了四組尋優(yōu)效果對(duì)比圖,實(shí)驗(yàn)結(jié)果表明,改進(jìn)后的螢火蟲算法借助于種群再生的選擇、交叉與變異算子,能夠達(dá)到持續(xù)搜索的目的,與基礎(chǔ)螢火蟲相比,性能有了很大程度的提升。
4.6.1 數(shù)據(jù)預(yù)處理
用電負(fù)荷數(shù)據(jù)集、用氣量數(shù)據(jù)集和股票數(shù)據(jù)集均無(wú)缺失值,無(wú)需對(duì)缺失值進(jìn)行處理,其中用電負(fù)荷數(shù)據(jù)是以一天的負(fù)荷為輸出,將前n天的29個(gè)前5個(gè)用電負(fù)荷特征值作為輸入[23],預(yù)測(cè)當(dāng)天24時(shí)刻的負(fù)荷作為輸出;對(duì)用氣量數(shù)據(jù)進(jìn)行處理時(shí)首先將字符型特征轉(zhuǎn)化為數(shù)值,將前n個(gè)時(shí)刻的氣象特征與用氣量作為輸入,預(yù)測(cè)當(dāng)前時(shí)刻的用氣量;股票數(shù)據(jù)集中將股票名稱不作為特征值,輸入變量為頭十天內(nèi)的開(kāi)盤價(jià)、最低價(jià)格、最高價(jià)格。當(dāng)天的收盤價(jià)作為輸出;對(duì)Beijing PM2.5數(shù)據(jù)集中的離散特征數(shù)值化,即將字符型特征轉(zhuǎn)化為數(shù)值,PM2.5值標(biāo)準(zhǔn)化之后均值為0,所以用0去替換缺失值,將前n個(gè)時(shí)刻的氣象特征值與PM2.5值作為輸入,預(yù)測(cè)當(dāng)前時(shí)刻的PM2.5。然后,上述數(shù)據(jù)集中的四個(gè)輸入變量都被處理為式(22),輸出值按式(23)處理:
4.6.2 實(shí)驗(yàn)結(jié)果分析
此節(jié)采用經(jīng)典LSTM模型、GA-LSTM模型、典型混合HFPSO-LSTM[15]模型,以及本文所提GAFA-LSTM這四種預(yù)測(cè)模型在四組不同領(lǐng)域的數(shù)據(jù)集上進(jìn)行預(yù)測(cè)結(jié)果與實(shí)際結(jié)果的比對(duì),并且通過(guò)擬合曲線圖來(lái)體現(xiàn)不同預(yù)測(cè)模型的預(yù)測(cè)效果,如圖5所示。
圖5 不同模型預(yù)測(cè)值與真實(shí)值擬合效果圖Fig.5 Fitting effect diagram of predicted value and true value of different model
圖5為四種預(yù)測(cè)模型在四組不同數(shù)據(jù)集上的預(yù)測(cè)值與真實(shí)值的擬合圖。其中圖5(a)橫坐標(biāo)代表全部數(shù)據(jù),圖5(b)、(c)、(d)橫坐標(biāo)代表選取了10%的數(shù)據(jù)做了擬合圖,所有圖的縱坐標(biāo)都代表實(shí)驗(yàn)中預(yù)測(cè)目標(biāo)的值。其中四個(gè)數(shù)據(jù)集的時(shí)間跨度從3個(gè)月到4年,長(zhǎng)度從98到43 824。從圖中可以看出,四種預(yù)測(cè)模型在四組不同領(lǐng)域的數(shù)據(jù)集上的預(yù)測(cè)趨勢(shì)與真實(shí)數(shù)據(jù)走向趨勢(shì)基本吻合,但是LSTM與GA-LSTM的預(yù)測(cè)效果的擬合程度明顯差于兩種改進(jìn)后的螢火蟲算法優(yōu)化模型的擬合程度,而本文所提的GAFA-LSTM的預(yù)測(cè)擬合程度又優(yōu)于HFPSO-LSTM模型的預(yù)測(cè)擬合程度。這說(shuō)明本文所提的GAFA-LSTM對(duì)LSTM網(wǎng)絡(luò)模型的超參數(shù)的優(yōu)化更加有效,可借鑒度更高,預(yù)測(cè)效果更加準(zhǔn)確。
從表2結(jié)果看出,LSTM在四組數(shù)據(jù)集上的三種誤差值的表現(xiàn)最差,GA-LSTM的預(yù)測(cè)模型在數(shù)據(jù)集上的誤差得到一定程度的降低,但是在用氣量和Beijing PM2.5的數(shù)據(jù)集上MAE的指標(biāo)誤差超過(guò)了單一神經(jīng)網(wǎng)絡(luò)的預(yù)測(cè)誤差,HFPSO-LSTM預(yù)測(cè)模型的誤差較GA-LSTM預(yù)測(cè)模型的誤差更小,在四個(gè)數(shù)據(jù)集上的三個(gè)誤差下的表現(xiàn)均具有優(yōu)勢(shì),這從側(cè)面反映出混合智能優(yōu)化器優(yōu)化參數(shù)的效果更有優(yōu)勢(shì)。本文所提模型的R2在四個(gè)數(shù)據(jù)集上分別為0.934 4、0.986 0、0.976 6與0.949 8,較其他三個(gè)模型的誤差都小。其他兩個(gè)指標(biāo)也相較于其他3個(gè)模型的預(yù)測(cè)誤差均不同程度地降低,其中MAPE達(dá)0.257 6,MAE達(dá)1.467 9,這表明本文所提GAFA-LSTM預(yù)測(cè)模型會(huì)使得預(yù)測(cè)更加準(zhǔn)確,與真實(shí)數(shù)據(jù)的偏差小,進(jìn)而提高了模型的預(yù)測(cè)精度。
表2 四組數(shù)據(jù)集下不同模型的實(shí)驗(yàn)結(jié)果Table 2 Experimental results of different models under four data
根據(jù)以上兩組實(shí)驗(yàn)可以得出,本文所提的GAFALSTM模型與實(shí)驗(yàn)中所提其他模型相比,擬合程度更高,在不同數(shù)據(jù)集上具有較強(qiáng)的泛化能力和較強(qiáng)的預(yù)測(cè)精度,而且在波動(dòng)較大的數(shù)據(jù)集上也可以取得較好的擬合效果和較小的預(yù)測(cè)誤差,是一種高效的時(shí)間序列預(yù)測(cè)模型。
4.6.3 模型性能分析
為了驗(yàn)證GAFA-LSTM模型的性能,將在時(shí)間復(fù)雜度和算法運(yùn)行時(shí)間兩個(gè)方面來(lái)對(duì)其進(jìn)行性能分析。其中經(jīng)過(guò)2.3節(jié)的分析,本文模型與其他3個(gè)模型的時(shí)間復(fù)雜度相同,都為O()n2,且因LSTM為單一模型所以不參與其他3個(gè)組合模型運(yùn)行時(shí)間的比較。其中運(yùn)行時(shí)間為運(yùn)行10次的平均值。
從表3可以看出,在3個(gè)組合模型運(yùn)行時(shí)間的比較中本文所提模型在股票數(shù)據(jù)集和PM2.5數(shù)據(jù)集上時(shí)間效率較高,分別為18.222 0 s與353.753 6 s,值得注意的是這兩個(gè)數(shù)據(jù)集數(shù)據(jù)量都較大,股票數(shù)據(jù)集波動(dòng)較大,PM2.5數(shù)據(jù)集平穩(wěn),說(shuō)明本文所提模型魯棒性和普適性都較好。
表3 不同模型性能分析結(jié)果Table 3 Performance analysis results of different models
為了進(jìn)一步提高時(shí)間序列預(yù)測(cè)精度,本文提出了一種改進(jìn)的螢火算法優(yōu)化LSTM輸入?yún)?shù)的時(shí)序預(yù)測(cè)模型。FA在尋優(yōu)過(guò)程中由于多樣性彌散而帶來(lái)的陷入局部最優(yōu)問(wèn)題,提出加入自適應(yīng)多樣性度量機(jī)制增加多樣性,來(lái)提高它的局部搜索能力,防止陷入局部最優(yōu)。在迭代后期再加入自適應(yīng)游動(dòng)參數(shù)來(lái)避免大量螢火蟲個(gè)體在最優(yōu)值附近震蕩的問(wèn)題,同時(shí)將每個(gè)螢火蟲個(gè)體看作一個(gè)超參數(shù)配置去不斷優(yōu)化更新LSTM模型的超參數(shù)取值從而來(lái)匹配到最優(yōu)參數(shù)組合。
本文所提模型與上述實(shí)驗(yàn)中所提模型相比有以下兩個(gè)結(jié)論。(1)首先提出一種改進(jìn)的螢火蟲算法,且效果在測(cè)試中表現(xiàn)較好。(2)其次采用改進(jìn)螢火蟲算法對(duì)LSTM的輸入?yún)?shù)進(jìn)行優(yōu)化,搭建了一個(gè)GAFA-LSTM預(yù)測(cè)模型,解決了依據(jù)經(jīng)驗(yàn)選取的參數(shù)而導(dǎo)致預(yù)測(cè)精度低的問(wèn)題。本文構(gòu)建的GAFA-LSTM模型較文中所提其他預(yù)測(cè)模型預(yù)測(cè)效果有較大幅度的提升。但是本文方法也存在一定的局限性。首先GAFA-LSTM可以取得良好的預(yù)測(cè)結(jié)果,但是未能進(jìn)行更長(zhǎng)時(shí)間跨度預(yù)測(cè)的輸出,這將是下一步探究的方向。