国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

結合深度學習和分解算法的股票價格預測研究

2021-03-09 16:41:04張倩玉嚴冬梅韓佳彤
計算機工程與應用 2021年5期
關鍵詞:股票價格注意力神經網絡

張倩玉,嚴冬梅,韓佳彤

天津財經大學 理工學院,天津300222

股票市場是投資市場最重要的組成部分之一。與其他行業(yè)相比,股票市場有著更高的投資回報率,同時也存在著更高的風險,股票市場預測一直是投資者密切關注的問題。因此,對股票市場預測方法的研究以及如何減小股票價格預測的誤差成為了國內外眾多學者的研究熱點。目前,常見的股票預測方法包括計量經濟學方法和機器學習方法。

計量經濟學方法是人們根據統(tǒng)計學理論,應用統(tǒng)計分析模型對股票價格進行預測。常用的模型有自回歸滑動平均模型(Autoregressive Moving Average,ARMA)、差分整合移動平均自回歸模型(Autoregressive Integrated Moving Average,ARIMA)、廣義自回歸條件異方差模型(Autoregressive Conditional Heteroskedasticity,GRACH)。吳玉霞等人[1]通過建立ARIMA模型對創(chuàng)業(yè)板市場股票價格的變動規(guī)律和趨勢進行了預測。楊琦等人[2]對數據初步分析并建立了ARMA模型,后通過加入GARCH項來消除模型中的條件異方差性,得到ARMA-GARCH模型對大眾公用股票價格進行分析預測。計量經濟學模型雖然比較客觀,有良好的理論支撐,但其優(yōu)勢體現在處理線性數據上且需要嚴格的基礎假設,而股票價格序列是一種復雜的非線性時間序列,因此使用傳統(tǒng)的計量經濟模型無法達到最理想的預測效果。

與計量經濟模型相比,機器學習方法可直接從數據中挖掘有價值的信息,無需預先制定假設,并且機器學習方法能更好地處理非線性數據,因此被廣泛應用于股票價格預測。常用的機器學習方法包括決策樹、支持向量機(Support Vector Machine,SVM)、支持向量回歸機(Support Vactor Regression,SVR)、神經網絡等。其中,神經網絡的學習機制使其擁有更強大的學習能力和非線性擬合能力,在股票價格預測領域更具有優(yōu)勢。

神經網絡概念的提出要追溯到20世紀40年代,但由于網絡自身的局限性,人們對神經網絡的研究一度陷入了低潮,直到20世紀80年代玻爾茲曼機和反向傳播(Backpropagation,BP)算法[3]的出現解決了多層網絡的訓練問題,神經網絡重新成為了研究熱點。隨后,國內外眾多學者開始利用神經網絡進行股票價格預測。White等人[4]將BP神經網絡應用于股票價格預測,并使用IBM個股作為實驗對象,但由于出現了梯度爆炸現象,使參數陷入局部最小值,因此沒有達到預想的預測效果,但作者指出可以通過對網絡進行調整以及對優(yōu)化算法進行改造來提升模型性能。向小東等人[5]提出一種激勵函數來加速BP算法的收斂,通過調整參數并結合BP算法對股票價格進行預測。張坤等人[6]使用小波分解將股票價格數據分解為不同的尺度,利用Elman神經網絡分別對不同尺度的數據進行預測,最后對各尺度數據的預測結果使用BP神經網絡進行合成得到最終預測結果。肖菁等人[7]為避免算法陷入局部最優(yōu),基于LM算法建立了三層BP神經網絡對股價進行預測,并利用遺傳算法優(yōu)化網絡的權重和閾值,提高網絡的預測精度。于卓熙等人[8]運用主成分分析法對影響股票價格的指標進行降維,并使用廣義回歸神經網絡對股票價格進行預測,與ARIMA模型相比,該模型得到了更優(yōu)的預測結果。鄧烜堃等人[9]使用了深度自編碼器(Deep Autoencoder,DAE)對高維數據進行壓縮并結合BP神經網絡建立預測模型,實驗證明該模型可以有效減少計算開銷,并提高了預測精度。

人們通過對網絡進行優(yōu)化一定程度上避免了使參數陷入局部解,通過對輸入數據進行降維,減少了訓練開銷并提高了模型的預測準確率,但傳統(tǒng)的神經網絡往往泛化能力不強,容易出現過擬合等問題。

近年來,隨著大數據技術的不斷發(fā)展以及計算機運算能力的提升,深度學習技術受到了國內外學者的廣泛關注。與傳統(tǒng)的神經網絡相比,深度學習模型層數更多,特征提取能力更強。以深度神經網絡(Deep Neural Networks,DNN)、卷積神經網絡(Convolutional Neural Networks,CNN)、循環(huán)神經網絡(Recurrent Neural Network,RNN)等為代表的深度學習技術,在股票預測領域取得了進展。但由于股票數據的復雜性及其存在的長期依賴問題,使傳統(tǒng)的RNN模型的預測性能無法進一步提升,因此長短期記憶網絡(Long Short Term Memory Network,LSTM)成為了目前股票預測的主流模型。

Wei等人[10]利用小波變換對股票價格時間序列進行分解,消除噪聲干擾,利用堆疊式自動編碼器(Stacked Autoencoderm,SAE)提取深層特征,將高級去噪特征輸入LSTM預測股票價格。Huang等人[11]以LSTM作為股票預測主體模型,采用貝葉斯優(yōu)化方法對參數進行動態(tài)選擇,確定最優(yōu)單元數,與傳統(tǒng)LSTM相比預測準確率提高25%。任君等人[12]從優(yōu)化網絡結構的角度入手,采用正則化方法修改LSTM模型的目標函數,得到泛化能力強的彈性正則化LSTM,并使用該模型預測道瓊斯指數價格,得到了較好的預測效果。陳佳等人[13]從特征參數選取角度,對股票的15個參數指標通過先分類后降維的思想篩選出最終的輸入參數,并使用LSTM對股票指數價格進行預測,該模型在速度和預測準確性方面都得到了提升。

為了進一步減小股票價格的預測誤差,本文引入深度學習中的注意力機制并結合門控循環(huán)單元(Gated Recurrent Unit,GRU)神經網絡對蘋果、亞馬遜、百度和貴州茅臺四家公司的股票價格及上證指數進行預測,并且應用經驗模態(tài)分解(Empirical Mode Decomposition,EMD)算法和自適應噪聲的完整集成經驗模態(tài)分解(Complete Ensemble Empirical Mode Decomposition with Adaptive Noise,CEEMDAN)算法對原始股票價格時間序列進行分解,對各分解信號分別進行預測,最后將各分量的預測值相加得到最終預測結果。通過與其他模型進行實驗對比,驗證模型的有效性。

1 結合注意力機制的GRU神經網絡股票價格預測

1.1 GRU神經網絡

1.1.1 循環(huán)神經網路

RNN被廣泛應用于語音識別、語言翻譯、時序數據預測等領域。RNN結構如圖1所示,在t時刻,xt為網絡的輸入向量,st為網絡隱藏層值,οt為網絡的輸出向量,U、V、W為網絡的權重矩陣。網絡中的隱藏層節(jié)點相互連接,st的值不僅取決于當前時刻的輸入xt,還取決于上一時刻隱藏層的輸出st-1。這種結構使得網絡在t時刻的輸出與t時刻之前的輸入相關聯,并能從之前的輸入中獲取到有效信息,因此RNN是一種具有記憶功能的神經網絡。

圖1 RNN結構圖

盡管RNN能夠有效地處理時間序列,但由于原始RNN隱藏單元的權重對網絡的訓練影響較大,導致網絡存在梯度消失和梯度爆炸現象,這使得RNN不能很好地解決長距離依賴。為了解決這一問題,Hochreiter和Schmidhuber提出了LSTM神經網絡模型[14]。

LSTM神經網絡是一種特殊的循環(huán)神經網絡。與傳統(tǒng)RNN相比,LSTM網絡的神經元中增加了能夠保存長期狀態(tài)的單元狀態(tài)(CellState)結構,以及三個對單元狀態(tài)進行控制的門(Gate)結構,分別是遺忘門(Forget Gate)、輸入門(Input Gate)和輸出門(Output Gate)。

LSTM神經元的內部結構如圖2所示,在t時刻,xt是LSTM單元的輸入數據,ht-1是LSTM單元在前一時刻的輸出,xt是單元狀態(tài)的值,ht是LSTM單元在當前時刻的輸出。

圖2 LSTM神經元結構

1.1.2 GRU神經網絡

GRU神經網絡[15]由Cho等人于2014年首次提出,是目前LSTM神經網絡最成功的變體之一。與LSTM相比,GRU結構更簡單,參數更少,而且還能保持著和LSTM相同的效果。

GRU對LSTM做了兩個改動:(1)將輸入門、遺忘門、輸出門變?yōu)閮蓚€門——更新門(Update Gate)zt和重置門(Reset Gate)rt;(2)將LSTM的單元狀態(tài)ct與輸出合并為一個狀態(tài)ht,圖3為GRU神經元的內部結構。

圖3 GRU神經元結構

更新門zt的作用是決定上一時刻隱藏層狀態(tài)中有多少信息傳遞到當前時刻隱藏層狀態(tài)ht中,重置門rt的作用是決定上一時刻隱藏層狀態(tài)中的信息有多少是需要被遺忘的為當前時刻的隱藏層的候選狀態(tài),使用重置門決定當前候選狀態(tài)中要遺忘多少上一時刻隱藏狀態(tài)ht-1的內容,ht表示當前時刻隱藏層狀態(tài)。W為權重矩陣,[ht-1,xt]表示兩個向量的連接,σ是激活函數。

GRU單元的計算公式見式(7)~(10):

1.2 注意力機制

注意力機制(Attention Mechanism)的靈感來源于對人類視覺注意力機制的研究。當人類的視覺在感知眼前的場景時,由于人的注意力有限,所以不會對場景中的所有物體投入同等的關注度,而是快速捕捉到需要重點關注的區(qū)域,對重要區(qū)域給予更多的注意力,而忽略其他非重要區(qū)域,這一機制使人類能夠利用有限的注意力從大量信息中篩選出更高價值的信息,提高了人類在視覺信息處理時的效率和準確率。

結合注意力機制的模型近年來在圖像處理、語音識別和自然語言處理等領域被廣泛應用。Mnih等人[16]將RNN模型與注意力機制結合來進行圖像分類,Bahdanau等人[17]首次將注意力機制應用到機器翻譯任務中。

深度學習中的注意力機制和人類的視覺注意力機制類似,它的核心就是從輸入的序列中學習每一個輸入元素對目標元素的重要程度,即注意力權重,使神經網絡可以專注于選定好的對目標任務更有效的輸入,在計算資源不足的情況下,將有限的資源分配給更重要的特征。

1.3 結合注意力機制的GRU神經網絡模型

受啟發(fā)于Qin等人[18]提出的結合注意力機制的時間序列預測模型,本文對原始輸入序列引入注意力機制并結合GRU神經網絡對股票價格進行預測。

對于給出的N個長度為T的時間序列,輸入矩陣表示輸入數據的特征數,T表示設置的時間步長度,xk=表示第k個長度為T的時間序列表示在t時刻輸入的長度為N的序列。

目標序列的歷史數據表示為(y1,y2,…,yT)T,yi∈R,輸入序列的歷史數據表示為(x1,x2,…,xT)T,xi∈R,i={1,2,…,T}。結合了注意力機制的GRU神經網絡模型的目標就是給定時間步長T,根據輸入序列和目標序列歷史數據,學習一個從輸入序列到目標序列的非線性映射。

根據結合注意力機制的GRU神經網絡的思想,針對t時刻而言,根據輸入矩陣X=(x1,x2,…,xT)T,學習一個從原始輸入序列xt到GRU神經網絡隱藏層ht的映射,即:

其中,ht∈Rm表示GRU網絡在t時刻的隱藏層的值,m為隱藏節(jié)點的個數。

將ht和第k個輸入時間序列RT做相應的計算,得到:

2 基于EMD和CEEMDAN的股票價格預測

2.1 EMD、CEEMDAN算法

信號分解算法在處理非線性、非平穩(wěn)信號領域具有廣泛應用。股票作為一種典型的非線性時序數據,應用EMD、CEEMDAN算法處理原始輸入序列S(t)可以有效地捕獲到原始價格序列在不同時間尺度上的特征。

2.1.1 EMD算法原理

EMD算法是Huang等人[19]提出的一種自適應信號時頻處理方法,與傳統(tǒng)的傅里葉變換方法相比,EMD根據數據本身的時間尺度特征對信號進行分解,通過自適應得到基函數,無需預先設定。

EMD將原始信號分解為有限個本征模函數(Intrinsic Mode Function,IMF),每個IMF分量表示原始信號在不同時間尺度上的不同特征。IMF可以是線性函數也可以是非線性函數,每個分解得到的IMF需滿足以下兩個條件:IMF函數在其定義域中,極值點的個數與零點個數相差不能超過1;由IMF的局部極大值定義的包絡函數和由IMF的局部極小值定義的包絡函數的和恒為0。

EMD算法的具體步驟如下:

步驟1找出原數據序列S(t)的極大值和極小值點。

步驟2通過三次樣條插值過程對上包絡線U(t)和下包絡線L(t)的極值點進行擬合。

圖4 結合注意力機制的GRU模型

步驟3根據m(t)=(U(t)+L(t))/2計算上包絡和下包絡的平均值m(t)。

步驟4從原始序列S(t)中減去m(t),得到一個新的序列h(t)=S(t)-m(t)。

步驟5重復步驟1到步驟4,以h(t)作為新的輸入序列,直到h(t)的均值接近于零為止,得到第i個IMF,表示為Ci(t)。

步驟6將Ci(t)與原始序列S(t)分離,得到一個不含高頻分量的差分序列rI(t)=S(t)-Ci(t)。

步驟7重復步驟1至步驟6,以rI(t)作為新的輸入序列,直到滿足終止條件。

通過上述步驟,篩選出一組IMF,記作Ci(t)=(i=1,2,…,N)。根據式(15),原始信號S(t)由這組IMF重構得到。

其中,RN(t)為殘差,代表時間序列的趨勢。

2.1.2 CEEMDAN算法原理

通常情況下,EMD算法在處理非平穩(wěn)和非線性信號方面有很大的優(yōu)勢,但仍然存在“模式混合”問題。模式混合是指在不同的模式中存在相似的振蕩,或在一個模式中存在明顯不同的振幅。通過向信號中添加高斯白噪聲,集成經驗模態(tài)分解(Ensemble Empirical Mode Decomposition,EEMD)算法[20]在一定程度上消除了EMD算法中存在的模式混合問題。但是,EEMD算法不能完全消除信號重構后由于高斯白噪聲造成的重構誤差。

為了解決這個問題,提出了CEEMDAN算法[21]作為EEMD的改進版本。定義運算符Ej(?)表示由EMD生成的第j個模式,設ωi(t)是正態(tài)分布N(0,1)的白噪聲。CEEMDAN算法的具體步驟如下:

步驟1用EMD分解每個Si(t)=S(t)+ε0ωi(t),提取第一個IMF,其中ε0是噪聲系數,i=1,2,…,I;并將第一種模式定義為

步驟2計算第一殘差

步驟3分解殘差r1(t)+ε1E1(ωi(t))獲得第二種模式:

步驟4重復上述步驟得到另一個IMF,直到得到最終的殘差,最終的殘差可以表示為:

其中,M為IMFS的總數。IMFS共同構成了原始信號在不同時間尺度上的特征,殘差代表了原始序列的趨勢。

2.2 基于EMD和CEEMDAN的股票預測模型

為了進一步提高股票預測模型的性能,提出了基于EMD和CEEMDAN的股票市場預測模型(EMD-aGRU、CEEMDAN-aGRU)。該模型包含兩個部分,第一部分是通過EMD和CEEMDAN算法,將原始股票價格序列分解為多個IMF序列和殘差序列,第二部分應用了結合注意力機制的GRU模型(aGRU),將分解后得到的各個序列作為aGRU網絡模型的輸入數據進行訓練預測。實現步驟如圖5所示。

圖5 股市預測流程模型

步驟1利用EMD和CEEMDAN將原始股票價格序列S(t)分解為多個IMF序列Ci(t)(i=1,2,…,M)和殘差RM(t)。

步驟2將所獲得的IMF和殘差作為aGRU預測模型的輸入數據進行訓練得到各IMF的預測結果。測試集的預測結果分別表示為

步驟3根據式(17)對每個IMF和殘差的預測結果進行重構,得到最終的預測價格序列。

其中,L是測試集的長度是每個IMF的預測序列序列,S是殘差的預測?(t)表示測試集的最終預測結果。

2.3 實驗分析

2.3.1 數據來源及預處理

本文選取的股票和股指數據(下載自Yahoo財經),包含每天的開盤價(Open)、最高價(High)、最低價(Low)、收盤價(Close)、交易量(Volume)和調整后的收盤價(Adj Close),其中將調整后的收盤價作為目標變量。

由于將股票的價格數據和交易量數據同時作為輸入的特征參數,而兩者的數值差異巨大,為了消除指標間的量綱影響,提升模型精度和收斂速度,本文對數據進行了歸一化處理。

將處理后的數據按順序分成訓練集和測試集,其中前80%的數據作為訓練集用來訓練模型,后20%的數據作為測試集對模型預測效果進行評估。

2.3.2模型構建與參數設置

本文實驗模型在Python 3.7中的Keras框架下搭建并完成計算過程,Keras版本為2.2.4,采用Keras中的Sequential模型結構,將一層GRU層與一層Dense層相結合建立預測模型。在模型參數設置方面,通過進行多次實驗最終確定實驗模型的神經元個數為128,批處理大?。╞atch_size)為128,迭代次數(epoch)為500,損失函數(loss)設置為平均絕對誤差損失函數(mae),優(yōu)化器(optimizer)為adam,參考文獻[18],將時間步長T設置為10。

2.3.3 評價指標

為了評估CEEMDAN-aGRU模型對股票價格的預測性能,本文采用均方根誤差(RMSE)、平均絕對誤差(MAE)和R-平方(R2)三種回歸評價指標來量化模型性能,三種指標計算如公式(18)~(20)所示:

其中,yi為真實值,yi為預測值,yˉ為真實值的均值,m為樣本數。RMSE和MAE用來度量真實值與預測值間的偏差,其值越小表明預測值越接近真實值,R2用來度量模型擬合程度,越接近1表明模型擬合越好。

2.3.4 股票時間序列的EMD和CEEMDAN

將股票的原始價格序列通過EMD和CEEMDAN算法分解成若干個IMF序列和一個殘差序列,根據實驗結果顯示,CEEMDAN生成的IMF的數量往往小于EMD算法生成的IMF的數量,為了更直觀地比較兩種算法的分解效果,實驗限制了EMD生成的IMF數量與CEEMDAN相同。圖6(a)和(b)展示了亞馬遜公司股票收盤價序列的分解結果。

每個IMF從高頻到低頻排列,前幾個IMF代表原始序列中的高頻分量,可以看出EMD算法的分解結果存在“模式混合”現象,而通過CEEMDAN算法進行分解這一問題有了明顯的改善,所得到的IMF有了明顯的頻差。

2.3.5 股票價格預測

將本文提出的CEEMDAN-aGRU模型應用于蘋果(AAPL)、亞馬遜(AMZN)、百度(BIDU)和貴州茅臺(600519)四家公司的股票價格預測中,數據集所選時間范圍均為2009年1月1日至2018年12月31日,每只股票包含2 517條股價數據。圖7(a)、(b)、(c)、(d)分別為模型對蘋果、亞馬遜、百度和貴州茅臺四只股票的預測結果。

圖6 亞馬遜公司股票收盤價序列分解結果

為了驗證本文模型的性能,將CEEMDAN-aGRU模型與RNN、LSTM神經網絡、GRU神經網絡、結合注意力機制的LSTM網絡(aLSTM)、aGRU模型和EMDaGRU模型進行了對比實驗,觀察不同模型對四只股票數據集的預測效果。為了消除一次實驗帶來的結果偶然性,對每個模型在不同數據集上分別進行10次實驗,取多次結果的平均值,得到最終的實驗結果,實驗結果如表1所示。

由表1可知,EMD-aGRU和CEEMDAN-aGRU模型在四只個股數據集上實驗得到的RMSE和MAE均小于其他模型,R2更接近1,說明與其他模型相比,EMDaGRU模型和CEEMDAN-aGRU模型預測的股票價格更接近真實值,模型擬合更好。證明針對股票價格預測問題,使用分解算法對原始序列進行分解后再進行預測,可以有效提升模型預測性能。其中,CEEMDANaGRU模型對股票的預測誤差小于EMD-aGRU模型,這是由于CEEMDAN從原始數據中提取了更有效的特征,因此預測誤差較小。

圖7 CEEMDAN-aGRU模型對四只股票測試集預測結果

表1 不同模型在四只股票測試集的預測性能

圖8 (a)、(b)、(c)、(d)分別展示了aGRU模型和CEEMDAN-aGRU模型對蘋果、亞馬遜、百度和貴州茅臺四只股票前50天的預測結果。可以看出,與aGRU模型相比,CEEMDAN-aGRU模型的預測結果更接近股票價格的真實值,誤差更小。

2.3.6 股票指數預測

2018年Zhou等人[22]提出了EMD2FNN模型,該模型應用EMD算法與FNN模型對股票指數進行了預測。為了進一步驗證CEEMDAN-aGRU模型的預測性能,將CEEMDAN-aGRU模型與EMD2FNN模型進行實驗對比。本節(jié)實驗選擇上海證券交易所綜合指數(SSEC)作為實驗數據,根據文獻[22]將數據集時間范圍選取為2012年1月4日至2016年1月30日,共1 214個交易日,實驗結果如表2所示,本文提出的CEEMDAN-aGRU模型在各項指標上均優(yōu)于EMD2FNN模型。圖9展示了CEEMDAN-aGRU模型對SSEC測試集的預測結果,圖10展示了aGRU模型和CEEMDAN-aGRU模型對SSEC測試集前50天的預測結果。

3 結語

本文首先提出了結合注意力機制的GRU神經網絡模型,即通過使用注意力機制對輸入特征參數進行加權,使網絡聚焦于更重要的輸入特征,將加權后的參數作為新的輸入,并使用GRU神經網絡作為預測主體模型。后引入EMD和CEEMDAN算法來減小股票價格序列的非平穩(wěn)性、非線性對預測結果的影響。實驗對蘋果等四家公司的股票價格和上證指數進行預測。結果表明:與其他網絡模型相比,本文提出的CEEMDANaGRU模型預測效果更好,模型擬合程度更高,證明了應用信號分解算法能進一步提升模型的預測性能,減小預測誤差。目前存在的問題是模型選擇的輸入特征參數較為單一,后期可以考慮增加模型的訓練特征,從特征選取的角度進一步提升模型的預測性能。

圖8 aGRU和CEEMDAN-aGRU模型對四只股票前50天的預測結果

圖9 SSEC測試集預測結果

表2 不同模型在SSEC測試集的預測性能

圖10 SSEC測試集前50天預測結果

猜你喜歡
股票價格注意力神經網絡
讓注意力“飛”回來
基于GARCH族模型的重慶啤酒股票價格波動研究
神經網絡抑制無線通信干擾探究
電子制作(2019年19期)2019-11-23 08:42:00
“揚眼”APP:讓注意力“變現”
傳媒評論(2017年3期)2017-06-13 09:18:10
A Beautiful Way Of Looking At Things
基于神經網絡的拉矯機控制模型建立
重型機械(2016年1期)2016-03-01 03:42:04
論股票價格準確性的社會效益
管理現代化(2016年5期)2016-01-23 02:10:11
復數神經網絡在基于WiFi的室內LBS應用
我國股票價格指數與“克強指數”的關系研究
基于支持向量機回歸和RBF神經網絡的PID整定
临西县| 凤庆县| 饶平县| 大同市| 卢氏县| 台前县| 乌拉特后旗| 德兴市| 论坛| 富平县| 抚顺市| 花莲市| 莒南县| 绥宁县| 靖远县| 水城县| 克山县| 平湖市| 金塔县| 襄城县| 大田县| 克东县| 融水| 治多县| 道孚县| 营山县| 宁城县| 宜阳县| 上犹县| 建昌县| 巴南区| 七台河市| 陆川县| 宝山区| 永清县| 德格县| 涞源县| 庆元县| 惠东县| 九龙县| 定陶县|