◆任楚嵐 宋才彥
基于雙向循環(huán)神經(jīng)網(wǎng)絡(luò)的金融數(shù)據(jù)預(yù)測研究
◆任楚嵐1,2宋才彥1,2
(1.沈陽化工大學(xué)計算機(jī)科學(xué)與技術(shù)學(xué)院 遼寧 110142;2.遼寧省化工過程工業(yè)智能化技術(shù)重點(diǎn)實驗室 遼寧 110142)
近年來,越來越多的人加入到股票投資的隊伍當(dāng)中,金融學(xué)家和社會學(xué)家也將股票市場的發(fā)展作為衡量一個國家或者地區(qū)發(fā)展水平的一項重要標(biāo)準(zhǔn)。對于股民來講,若可以準(zhǔn)確預(yù)測股價變化,就可以及時采取措施達(dá)到較高的收益。為此,建立一種基于CBAM注意力機(jī)制的神經(jīng)網(wǎng)絡(luò)模型實現(xiàn)對未來股票價格的預(yù)測。通過與建立的其他模型預(yù)測結(jié)果對比發(fā)現(xiàn),基于CBAM注意力機(jī)制的BiLSTM神經(jīng)網(wǎng)絡(luò)模型對于股票價格的預(yù)測性能最優(yōu)。
股票預(yù)測;長短時記憶神經(jīng)網(wǎng)絡(luò);注意力模塊;深度學(xué)習(xí)
如今,社會學(xué)家和金融學(xué)家將股票市場的發(fā)展作為一個國家或是地區(qū)發(fā)展水平的衡量標(biāo)準(zhǔn)[1]。對于普通股民來講,若可以準(zhǔn)確預(yù)測股價變化,則會帶來較大的經(jīng)濟(jì)收益,因此國內(nèi)外眾多研究者著手于股票價格的預(yù)測。早期金融學(xué)家使用傳統(tǒng)簡單的數(shù)學(xué)模型對股票數(shù)據(jù)進(jìn)行處理,隨著時間的延長暴露出線性模型的局限性,因此使用傳統(tǒng)數(shù)學(xué)模型難以滿足對股票價格的預(yù)測。研究者嘗試建立非線性模型對股票價格進(jìn)行預(yù)測,成功并引入支持向量機(jī)和人工神經(jīng)網(wǎng)絡(luò)等方法[2]。目前神經(jīng)網(wǎng)絡(luò)在股票預(yù)測領(lǐng)域已經(jīng)取得較好的成果,但是對于預(yù)測股票價格的準(zhǔn)確性仍然存在較大的提升空間。
股票價格移動自回歸平均ARMA(p,q)模型表示的形式如下:
傳統(tǒng)的人工神經(jīng)網(wǎng)絡(luò)模型(RNN)主要用來處理基于時間序列的數(shù)據(jù),但是隨著時間的推移,傳統(tǒng)人工神經(jīng)網(wǎng)絡(luò)會對先前的信息有所遺忘,容易出現(xiàn)梯度消失或者梯度爆炸等現(xiàn)象[3]。長短時記憶神經(jīng)網(wǎng)絡(luò)(LSTM)對RNN進(jìn)行了改進(jìn),在神經(jīng)網(wǎng)絡(luò)每個單元的隱藏層增加了記憶模塊,使得神經(jīng)網(wǎng)絡(luò)可以長時間記憶。LSTM神經(jīng)網(wǎng)絡(luò)主要加入了遺忘門、輸入門和輸出門[4]。遺忘門用于控制對于先前隱藏單元傳遞的信息要遺忘的程度,進(jìn)行選擇性遺忘;輸入門控制對于前一隱藏層狀態(tài)以及當(dāng)前新信息的輸入程度,避免當(dāng)前時間步的非關(guān)鍵特征傳遞到記憶模塊;輸出門控制對于經(jīng)過遺忘門和輸入門處理后的信息的輸出程度。通過這三個門對先前歷史信息以及當(dāng)前新信息的權(quán)重進(jìn)行調(diào)整,找到模型的最優(yōu)參數(shù)及權(quán)重,解決了傳統(tǒng)神經(jīng)網(wǎng)絡(luò)的梯度消失或者梯度爆炸問題。因此,LSTM被廣泛用于對于時間序列數(shù)據(jù)的研究。
LSTM只能夠按照時間從過去到未來的順序?qū)?shù)據(jù)信息進(jìn)行傳遞,而雙向長短時記憶神經(jīng)網(wǎng)絡(luò)(BiLSTM)還可以做到按照時間從后向前的順序?qū)?shù)據(jù)信息進(jìn)行特征提取和處理。
BiLSTM主要由前向和后向兩個方向的LSTM神經(jīng)網(wǎng)絡(luò)構(gòu)成,充分地考慮了數(shù)據(jù)間的關(guān)聯(lián)性,將前向和后向傳播層通過線性融合到一起傳遞到輸出層,使得模型的輸出結(jié)果更為準(zhǔn)確。BiLSTM網(wǎng)絡(luò)拓?fù)鋱D如圖1所示。
圖1 BiLSTM網(wǎng)絡(luò)拓?fù)鋱D
CBAM包含兩個通道,在通道維度上,BiLSTM神經(jīng)網(wǎng)絡(luò)與CBAM注意力模塊經(jīng)過融合后在通道和空間兩個方面進(jìn)行過濾非重要特征信息,然后將權(quán)重圖與輸入的特征圖相乘來進(jìn)行特征的自適應(yīng)學(xué)習(xí),提高網(wǎng)絡(luò)的特征提取[5]。
本文研究的是股票開盤價的預(yù)測,以從CSMAR數(shù)據(jù)庫選取滬深交易所上市A股中光大銀行(股票編號為601818)的股票數(shù)據(jù)為例進(jìn)行分析,收集2019年6月1日到2021年5月31日的股票日交易信息數(shù)據(jù)。
由于收集到的歷史股票交易數(shù)據(jù)存在重復(fù)值以及數(shù)據(jù)缺失情況,因此需要對收集到的數(shù)據(jù)集進(jìn)行數(shù)據(jù)預(yù)處理,將證券代碼“601818”特征進(jìn)行刪除,然后對數(shù)據(jù)集按照日期順序進(jìn)行排序,獲得一個較為有序的數(shù)據(jù)集。但是,股票交易數(shù)據(jù)中的數(shù)據(jù)之間的量綱不同,導(dǎo)致量綱值域范圍較小的特征數(shù)據(jù)受到量綱值域范圍較大的特征數(shù)據(jù)影響而產(chǎn)生“失效”問題,因此,使用歸一化的措施對收集到的特征數(shù)據(jù)進(jìn)行無量綱化處理,加快模型的收斂速度。利用Z-socre標(biāo)準(zhǔn)化方法和原數(shù)據(jù)的均值和標(biāo)準(zhǔn)差使數(shù)據(jù)符合標(biāo)準(zhǔn)正態(tài)分布[6]。使用的轉(zhuǎn)換函數(shù)如下所示:
歸一化后的數(shù)據(jù)分布在[-1,1]區(qū)間內(nèi)。模型得到預(yù)測值時,需要對其去歸一化處理得到其真實值,使用的函數(shù)如下所示:
將四種模型在相同的操作環(huán)境下以及相同的數(shù)據(jù)集的測試集條件下進(jìn)行實驗。
對于ARIMA模型,將收集到的2019年6月1日到2021年5月31日的股票樣本數(shù)據(jù)直接進(jìn)行輸入并尋找最優(yōu)參數(shù),得到股票價格的預(yù)測結(jié)果。
對于LSTM和BiLSTM模型,使用移動窗口化的方法進(jìn)行建模。將采集到的股票樣本數(shù)據(jù)劃分為獨(dú)立窗口。BiLSTM神經(jīng)網(wǎng)絡(luò),每層神經(jīng)網(wǎng)絡(luò)有128個隱藏單元,然后在每個結(jié)構(gòu)模塊的線性融合后再加入CBAM模塊,最后反向傳播神經(jīng)網(wǎng)絡(luò)輸出最終的預(yù)測價格[7]。
四種模型對于股票預(yù)測的實驗結(jié)果如圖2~圖5所示,其中虛心紅色方框的散點(diǎn)圖表示股票開盤價的預(yù)測值,實心藍(lán)色方塊的散點(diǎn)圖表示股票開盤價的真實值,橫坐標(biāo)為時間,縱坐標(biāo)為股票標(biāo)準(zhǔn)化處理后的結(jié)果。
通過觀察以上四個實驗預(yù)測結(jié)果擬合圖可知,四種模型都能夠較為準(zhǔn)確地預(yù)測股票的價格,但是LSTM模型、BiLSTM模型以及CBAM-BiLSTM模型的曲線更貼近于實際股票價格曲線,并且CBAM-BiLSTM模型最貼近實際股票價格曲線。
圖2 ARIMA模型預(yù)測結(jié)果
圖3 LSTM模型預(yù)測結(jié)果
圖4 BiLSTM網(wǎng)絡(luò)模型預(yù)測結(jié)果
圖5 CBAM-BiLSTM網(wǎng)絡(luò)模型預(yù)測結(jié)果
均方根誤差表示觀測值與真實值之間的偏差,常用來作為深度學(xué)習(xí)模型預(yù)測結(jié)果衡量的標(biāo)準(zhǔn),因此采用均方根誤差(RMSE)對各個模型的實驗結(jié)果進(jìn)行評估[8]。RMSE計算公式如下:
四種模型的預(yù)測結(jié)果的RMSE如表1所示。
表1 網(wǎng)絡(luò)模型的預(yù)測誤差
模型RMSE ARIMA0.0845 LSTM0.0572 BiLSTM0.0348 CBAM-BiLSTM0.0235
均方根誤差的值越小,表示預(yù)測結(jié)果越準(zhǔn)確。LSTM模型和BiLSTM模型的猜測結(jié)果優(yōu)于ARIMA模型,且在加入CBAM模塊之后,模型預(yù)測結(jié)果的準(zhǔn)確率得到提升。因此,從模型的預(yù)測誤差方面來講,基于CBAM-BiLSTM模型對于股票價格的預(yù)測結(jié)果更優(yōu)。
回歸方程的擬合程度使用決定系數(shù)(R2score)進(jìn)行定量的判斷,決定系數(shù)越大表示模型的預(yù)測性能越好[9],因此可以使用決定系數(shù)衡量模型的預(yù)測能力,計算公式如下。
四種模型的預(yù)測結(jié)果的R2如表2所示。
由表2可知,CBAM-BiLSTM模型和BiLSTM模型以及LSTM模型的決定系數(shù)較ARIMA模型更大,且CBAM-BiLSTM模型的決定系數(shù)最大,說明加入CBAM注意力模塊的BiLSTM模型的擬合度最好。
表2 各網(wǎng)絡(luò)模型的決定系數(shù)
模型R2score ARIMA0.715615 LSTM0.845623 BiLSTM0.916578 CBAM-BiLSTM0.934574
模型的時間復(fù)雜度決定了模型的預(yù)測時間[10],如果模型的時間復(fù)雜度過高就會耗費(fèi)大量時間。對四種股票預(yù)測模型的時效性做了一個對比分析,得到的四種模型的預(yù)測完成所需時間如表3所示。
表3 網(wǎng)絡(luò)模型的預(yù)測時效性
模型用時/ms ARIMA4.646 LSTM4.846 BiLSTM7.481 CBAM-BiLSTM8.706
由表3可知,四種模型的預(yù)測時間均在5~9毫秒,可以做到快速的預(yù)測。雖然CBAM-BiLSTM模型的預(yù)測時間較其他三種模型的預(yù)測時間較長,但是相差在2~4毫秒之間,在預(yù)測過程中均不會耗費(fèi)大量時間。因此,表3定量地證明CBAM-BiLSTM模型具有一定的時效性。
根據(jù)股票價格數(shù)據(jù)的時間序列特征,將CBAM注意力模塊加入到BiLSTM神經(jīng)網(wǎng)絡(luò)模型中實現(xiàn)對未來股票開盤價的預(yù)測。充分利用股票數(shù)據(jù)的時間序列特征。實驗結(jié)果表明,基于CBAM-BiLSTM神經(jīng)網(wǎng)絡(luò)模型相較于ARIMA模型、傳統(tǒng)的LSTM模型以及標(biāo)準(zhǔn)的BilSTM模型對于股票的預(yù)測有著更高的準(zhǔn)確性,為投資者提供了一定的參考,有助于投資者實現(xiàn)投資利益的最大化。
[1]FISCHER T,KRAUSS C.Deep learning with long short-term memory networks for financial market predictions[J].European Journal of Operational Re-search,2017,270(2):654-669.
[2]謝琪,程耕國,徐旭.基于神經(jīng)網(wǎng)絡(luò)集成學(xué)習(xí)股票預(yù)測模型的研究[J].計算機(jī)工程與應(yīng)用,2019,55(8):238-243.
[3]Sharma,Dinesh K.,Hota et al. Integration of genetic algorithm with artificial neural network for stock market forecasting[J]. International Journal of System Assurance Engineering and Management,2021(prepublish).
[4]張婷婷,唐振鵬,吳俊傳.基于優(yōu)化KELM模型的股票指數(shù)預(yù)測方法[J].統(tǒng)計與決策,2021,37(13):148-150.
[5]Prachyachuwong Kittisak,Vateekul Peerapon. Stock Trend Prediction Using Deep Learning Approach on Technical Indicator and Industrial Specific Information[J]. Information,2021,12(6):124-132.
[6]孫麗麗,方宏彬,朱星星,等.基于網(wǎng)格搜索優(yōu)化的XGBoost模型的股票預(yù)測[J].阜陽師范大學(xué)學(xué)報(自然科學(xué)版),2021,38(02):97-101.
[7]趙紅蕊,薛雷.基于LSTM-CNN-CBAM模型的股票預(yù)測研究[J].計算機(jī)工程與應(yīng)用,2021,57(03):203-207.
[8]蒙懿,徐慶娟.基于LSTM神經(jīng)網(wǎng)絡(luò)——馬氏鏈的股票價格預(yù)測[J].時代金融,2021(11):3-6.
[9]宋剛,張云峰,包芳勛,等.基于粒子群優(yōu)化LSTM的股票預(yù)測模型[J].北京航空航天大學(xué)學(xué)報,2019,45(12):2533-2542.
[10]Shengyin Luo. Review on the Application of Machine Learning in Stock Forecasting[J]. Academic Journal of Business &; Management,2021,3(4):75-86.
遼寧省科技廳博士啟動基金,項目編號:201601204
網(wǎng)絡(luò)安全技術(shù)與應(yīng)用2022年4期