陳琪琪
摘 要:提出了使用卷積神經(jīng)網(wǎng)絡(luò)和長短期記憶(CNN-LSTM)神經(jīng)網(wǎng)絡(luò)模型來分析股票價格變動。CNN-LSTM神經(jīng)網(wǎng)絡(luò)通過CNN進(jìn)行數(shù)據(jù)的空間結(jié)構(gòu)特征提取,然后通過使用LSTM對輸入的時間序列特征進(jìn)行特征提取,最后有效地預(yù)測短時間內(nèi)的當(dāng)日股票最高價。實驗證明,CNN-LSTM神經(jīng)網(wǎng)絡(luò)模型可以成功地應(yīng)用于股票價格變動的研究。
關(guān)鍵詞:卷積神經(jīng)網(wǎng)絡(luò)(CNN);長短期記憶神經(jīng)網(wǎng)絡(luò)(LSTM);股票價格變動
中圖分類號:F832.5? ? ? 文獻(xiàn)標(biāo)志碼:A? ? ? 文章編號:1673-291X(2020)02-0157-04
一、股票價格研究的可行性分析
股票價格體系內(nèi)部結(jié)構(gòu)的復(fù)雜性和外部因素的多樣性(國家政策、銀行利率、價格指數(shù)、報價公司的表現(xiàn)以及投資者的心理因素)決定了股票市場的復(fù)雜性、股票價格預(yù)測任務(wù)的不確定性和不確定性。股票市場具有高回報、高風(fēng)險的特點(diǎn)。CNN是特定的DNN架構(gòu),涉及在多個層中使用卷積而不是更傳統(tǒng)的矩陣乘法,并且是處理常規(guī)采樣數(shù)據(jù)(例如2D和3D圖像)的理想工具。用于圖像分析任務(wù)的典型CNN體系結(jié)構(gòu)由四個關(guān)鍵層類型組成,即卷積層、非線性激活、池化和完全連接層[1]。為了獲得更好的回報,我們采用了遞歸神經(jīng)網(wǎng)絡(luò)(RNN),它已被證明是處理順序數(shù)據(jù)的最強(qiáng)大模型之一。長短期記憶(LSTM)是最成功的RNN架構(gòu)之一,用于解決神經(jīng)網(wǎng)絡(luò)中的消失梯度問題[2]。對于時間序列數(shù)據(jù)(例如文本、信號、股票價格等),較長的短期記憶(LSTM)對于學(xué)習(xí)深度神經(jīng)網(wǎng)絡(luò)(DNN)中的時間模式更為優(yōu)越。LSTM克服了遞歸神經(jīng)網(wǎng)絡(luò)(RNN)中消失的梯度問題,可以使用存儲單元和門來學(xué)習(xí)時間序列數(shù)據(jù)中的長期依賴性。所以,CNN-LSTM神經(jīng)網(wǎng)絡(luò)模型可以從歷史數(shù)據(jù)集中找到潛在的規(guī)則,研究股票價格變動是可行的。
二、CNN網(wǎng)絡(luò)和LSTM網(wǎng)絡(luò)介紹
(一)卷積神經(jīng)網(wǎng)絡(luò)(CNN)介紹
卷積神經(jīng)網(wǎng)絡(luò)是一種多層神經(jīng)網(wǎng)絡(luò),擅長處理與圖像,尤其是大圖像有關(guān)的機(jī)器學(xué)習(xí)問題。通過一系列的方法,卷積網(wǎng)絡(luò)成功地用大量的數(shù)據(jù)降低了圖像識別問題的維數(shù),最終使其得到訓(xùn)練。CNN最早由Yann LeCun提出并應(yīng)用在手寫字體識別上(MINST)。LeCun提出的網(wǎng)絡(luò)稱為LeNet,其網(wǎng)絡(luò)結(jié)構(gòu)如圖1所示。
這是一個由卷積層、池化層和全連接層共同組成的基本的卷積神經(jīng)網(wǎng)絡(luò)[4]。卷積層與池化層結(jié)合形成了多個卷積組,并逐層提取特征。最后,通過多個全連接層完成分類。卷積層完成的操作可以看做是受到了局部感受野概念的啟發(fā),而池化層主要目的是減小數(shù)據(jù)維度。一般來說,CNN通過卷積來模擬特征區(qū)分,通過卷積的權(quán)重共享和卷積的池化來降低網(wǎng)絡(luò)參數(shù)的數(shù)量級,最后運(yùn)用傳統(tǒng)的神經(jīng)網(wǎng)絡(luò)完成分類等任務(wù)。
(二)長短期記憶網(wǎng)絡(luò)(LSTM)介紹
長短期記憶網(wǎng)絡(luò)(LSTM)是RNN(Recurrent neural network,循環(huán)神經(jīng)網(wǎng)絡(luò))的一種特殊形式,是一系列能夠處理序列數(shù)據(jù)的神經(jīng)網(wǎng)絡(luò)的統(tǒng)稱。LSTM在許多問題上取得了很大的成功,并且得到了廣泛的應(yīng)用[4]。
1.循環(huán)神經(jīng)網(wǎng)絡(luò)(RNN)
循環(huán)神經(jīng)網(wǎng)絡(luò)(RNN)不同于深度神經(jīng)網(wǎng)絡(luò)和卷積神經(jīng)網(wǎng)絡(luò),它可以處理有關(guān)于序列的問題。例如,基于時間的序列:一段連續(xù)的語音通話、一段連續(xù)的手寫文本。這些序列相對較長,長度不同,難以分離成獨(dú)立樣本進(jìn)行訓(xùn)練[5]。
循環(huán)神經(jīng)網(wǎng)絡(luò)(RNN)是一種專門處理時序數(shù)據(jù)樣本的神經(jīng)網(wǎng)絡(luò)。它的每個層不但要輸出下一層,還輸出一個當(dāng)前層在處理下一個樣本時使用的隱藏狀態(tài)。類似于卷積神經(jīng)網(wǎng)絡(luò),可以很容易地擴(kuò)展到擁有較大高度和寬度的圖像,并且一些卷積神經(jīng)網(wǎng)絡(luò)還可以處理具有不同大小的圖像。循環(huán)神經(jīng)網(wǎng)絡(luò)同樣也可以擴(kuò)展到具有較長周期的序列數(shù)據(jù),并且大部分的循環(huán)神經(jīng)網(wǎng)絡(luò)可以處理不同序列長度的數(shù)據(jù),例如,for循環(huán)、長度可變變量。循環(huán)神經(jīng)網(wǎng)絡(luò)可以看做是一個具有自循環(huán)反饋的全連接神經(jīng)網(wǎng)絡(luò)[6],其網(wǎng)絡(luò)結(jié)構(gòu)如圖2所示。
其中,X是輸入序列(長度為T),h是隱藏層序列,o是輸出序列,L是總體損失,y是目標(biāo)標(biāo)記序列,U是從輸入層到隱藏層的參數(shù)矩陣,W是從隱藏層到隱藏層的自循環(huán)參數(shù)矩陣,V是隱藏層到輸出層的參數(shù)矩陣。需要注意的是,圖中的輸入節(jié)點(diǎn)(多個)、隱藏節(jié)點(diǎn)和輸出節(jié)點(diǎn)的數(shù)量都用一個個小圓圈來表示的,它們之間是完全連接的,并且在隱藏層之間添加了一個自循環(huán)反饋(通過權(quán)重共享),這也是它能夠處理不同序列長度數(shù)據(jù)的原因。
2.長短期記憶網(wǎng)絡(luò)(LSTM)
LSTM是一種遞歸神經(jīng)網(wǎng)絡(luò)(RNN),它可以從長期的依賴信息中學(xué)習(xí)。與常規(guī)RNN不同,當(dāng)有任意大小的時間步長時,它非常適合從經(jīng)驗中學(xué)習(xí)以預(yù)測時間序列。另外,通過存儲單元將與時間相關(guān)的信息保留任意時間量,可以解決梯度消失的問題[7]。有證據(jù)表明,它比常規(guī)的RNN更有效。通常,長短期記憶(LSTM)旨在通過引入存儲單元和輸入/輸出門來解決RNN網(wǎng)絡(luò)中的長期時間依賴性,以解決遞歸神經(jīng)網(wǎng)絡(luò)中的梯度爆炸或消失問題[8]。
LSTM的單一節(jié)點(diǎn)的結(jié)構(gòu)如圖3所示。LSTM對于時間序列預(yù)測顯示出令人鼓舞的結(jié)果。它的單元由三個門組成:輸入門、忘記門和輸出門。它之所以受歡迎,是因為它具有學(xué)習(xí)隱藏的長期順序依存關(guān)系的能力,這實際上有助于學(xué)習(xí)時間序列的基本表示形式。但是,現(xiàn)實世界中的時間序列數(shù)據(jù)通?;蚨嗷蛏俚匕恍┊惓V?,尤其是在網(wǎng)絡(luò)攻擊中,這些異常通常在監(jiān)視網(wǎng)絡(luò)流量某些度量的時間序列數(shù)據(jù)中顯示為異常。這些離群值在提取時間序列的真實表示時誤導(dǎo)了學(xué)習(xí)方法,并降低了預(yù)測的性能[9]。
根據(jù)LSTM網(wǎng)絡(luò)的結(jié)構(gòu),每個LSTM單元的計算公式如圖4所示。其中,F(xiàn)t代表的是遺忘門限,It代表的是輸入門限,Ct代表的是cell狀態(tài)(這里意思是循環(huán)發(fā)生的地方),t代表的是前一時刻cell狀態(tài),Ot代表的是輸出門限,Ht代表的是當(dāng)前單元的輸出,Ht-1代表的是前一時刻單元的輸出。
三、實驗和分析
(一)CNN-LSTM網(wǎng)絡(luò)結(jié)構(gòu)
我們實施了CNN-LSTM神經(jīng)網(wǎng)絡(luò)模型,用于對股票價格變動的研究。CNN-LSTM流程圖和參數(shù)的細(xì)節(jié)在圖5和表1中描述如下。
在我們的CNN-LSTM模型中,LSTM部分由順序?qū)咏M成,后跟1個LSTM層和具有Tanh激活的密集層。過擬合問題是神經(jīng)網(wǎng)絡(luò)訓(xùn)練時最難以避免的事情之一。過擬合意味著模型在訓(xùn)練數(shù)據(jù)中表現(xiàn)良好,但對于其他數(shù)據(jù),預(yù)測器效果較差。原因是“死記硬背”的數(shù)據(jù)和噪音通常會導(dǎo)致復(fù)雜的模型。為了避免過擬合問題,將Dropout添加到CNN-LSTM模型中,并將正則化項應(yīng)用于權(quán)重。Dropout指的是隨機(jī)丟棄一些特征以提高模型的穩(wěn)健性。正則化是指在計算損失函數(shù)時添加L2范數(shù),使得一些接近0的權(quán)重值避免對每個特征的強(qiáng)制適應(yīng)。然后它提高了穩(wěn)定性,也獲得了功能選擇的效果[10]。
(二)實驗結(jié)果
根據(jù)股票歷史數(shù)據(jù)中的開盤價、收盤價、最低價、最高價、交易量、交易額、跌漲幅等因素,對下一日股票最高價進(jìn)行預(yù)測。本次實驗的數(shù)據(jù)信息的元素維度為10個,也就是10個對股票價格造成影響的信息數(shù)據(jù),分別為股票序號、股票號、時間、開盤價、閉盤價、最低價、最高價、交易量、交易額、跌漲幅[11]。
本次實驗主要是預(yù)測在比較短時間內(nèi)的下一個時間段的最高價。由圖6可以看出,test為測試集的真實最高價,pred為模型預(yù)測的最高價,在短時間的價格變動中預(yù)測的最高價還是逼近與真實的最高價的。由此可以發(fā)現(xiàn),紅色預(yù)測值能夠很好地接近藍(lán)色代表的真實值,并能有效預(yù)測出股票未來短期的走勢等。
結(jié)語
我們將深度學(xué)習(xí)應(yīng)用在股票價格的變動的分析與研究上,首先說明了運(yùn)用神經(jīng)網(wǎng)絡(luò)方法研究股票價格變動是可行的。然后提出了CNN和LSTM神經(jīng)網(wǎng)絡(luò)相結(jié)合的股票預(yù)測神經(jīng)網(wǎng)絡(luò)模型,可以稍微有效率地研究股票價格的變化,從而提供了一種基于股票數(shù)據(jù)的特征構(gòu)建神經(jīng)網(wǎng)絡(luò)模型的思路。但是現(xiàn)在對長時間股票數(shù)據(jù)的預(yù)測的方面并不理想,我們還需要對神經(jīng)網(wǎng)絡(luò)進(jìn)行進(jìn)一步的優(yōu)化與改善,例如改進(jìn)誤差函數(shù),提高神經(jīng)網(wǎng)絡(luò)預(yù)測未來股票價格的高精度。
參考文獻(xiàn):
[1]? 基于卷積神經(jīng)網(wǎng)絡(luò)的K線圖有效性驗證.2018.
[2]? 盧興沄.一種類人機(jī)器人手勢識別算法及其實現(xiàn)[D].長沙:湖南大學(xué),2017.
[3]? 顧帥.Android移動平臺下基于深度學(xué)習(xí)的目標(biāo)檢測技術(shù)研究[D].西安:西安電子科技大學(xué),2018.
[4]? 曹成遠(yuǎn).基于深度學(xué)習(xí)的蛋白質(zhì)殘基相互作用預(yù)測[D].蘇州:蘇州大學(xué),2016.
[5]? 陳再發(fā),劉彥呈,劉厶源.長短期記憶神經(jīng)網(wǎng)絡(luò)在機(jī)械狀態(tài)預(yù)測中的應(yīng)用[J].大連海事大學(xué)學(xué)報,2018,44(1).
[6]? 沈榮,張保文.深度學(xué)習(xí)淺談[J].電腦知識與技術(shù),2017,16(13):156.
[7]? BAO W,YUE J,RAO Y.A deep learning framework for financial time series using stacked autoencoders and long-short term memory[J].Plos One,2017,12(7):e0180944.
[8]? 基于時空上下文建模的行為識別研究[D].蘇州:蘇州大學(xué),2017.
[9]? YANG H,PAN Z,TAO Q.Robust and Adaptive Online Time Series Prediction with Long Short-Term Memory[J].Computational Intelligence and Neuroscience,2017:1-9.
[10]? LIU S,CHAO Z,MA J:CNN-LSTM Neural Network Model for Quantitative Strategy Analysis in Stock Markets.In International Conference on Neural Information Processing 2017.
[11]? KIM T,KIM H Y.Forecasting stock prices with a feature fusion LSTM-CNN model using different representations of the same data[J].2019,14(2):e0212320.