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

?

基于SARIMA和LSTM組合預(yù)測(cè)模型

2020-05-15 05:19王若舟
關(guān)鍵詞:階數(shù)差分可視化

丁 銳 李 偉 王若舟

(1.武漢郵電科學(xué)研究院 武漢 430074)(2.武漢烽火信息集成技術(shù)有限公司 武漢 430074)

1 引言

隨著我國(guó)經(jīng)濟(jì)的飛速增長(zhǎng),人們的生活越來(lái)越富裕,投資已經(jīng)成為一種常態(tài),股票的投資也成為人們關(guān)注的一個(gè)熱點(diǎn),其中股票價(jià)格的走勢(shì)成為股民們非常關(guān)心的問(wèn)題。股票的走勢(shì)由于受到許多外界因素的影響,變化呈現(xiàn)出很復(fù)雜的趨勢(shì),而且股票價(jià)格具有隨機(jī)性、季節(jié)性等特點(diǎn),因此研究出一種準(zhǔn)確率比較高的預(yù)測(cè)模型具有十分重要的現(xiàn)實(shí)意義[1]。

SARIMA模型(季節(jié)求和自回歸移動(dòng)平均模型)對(duì)季節(jié)性的數(shù)據(jù)具有很精確的預(yù)測(cè)效果,這種線性預(yù)測(cè)可以很好地預(yù)測(cè)短期數(shù)據(jù),但是隨著預(yù)測(cè)時(shí)間的增長(zhǎng)精確度也隨之降低[2]。LSTM(長(zhǎng)短期記憶網(wǎng)絡(luò))是遞歸神經(jīng)網(wǎng)絡(luò)中一個(gè)優(yōu)秀的變種,非常適用于處理時(shí)間序列相關(guān)的問(wèn)題,但是對(duì)于這種季節(jié)性波動(dòng)較大的數(shù)據(jù)預(yù)測(cè)結(jié)果并不是很好[3~4]。所以本文采用SARIMA和LSTM組合的方式來(lái)進(jìn)行時(shí)間序列的分析與預(yù)測(cè),采用LSTM神經(jīng)網(wǎng)絡(luò)對(duì)SARIMA預(yù)測(cè)的數(shù)據(jù)進(jìn)行矯正,得到更加精確的預(yù)測(cè)結(jié)果。

2 相關(guān)技術(shù)介紹

2.1 SARIMA模型介紹

SARIMA模型是時(shí)間序列預(yù)測(cè)主要方法之一,是主要針對(duì)具有季節(jié)性或周期性規(guī)律變化的時(shí)間序列[5]。SARIMA模型是在ARIMA模型的基礎(chǔ)上的一種對(duì)季節(jié)性或周期性數(shù)據(jù)的演化模型[6]。ARIMA模型是用來(lái)對(duì)平穩(wěn)時(shí)間序列進(jìn)行數(shù)據(jù)預(yù)測(cè),所以必須對(duì)數(shù)據(jù)源進(jìn)行平穩(wěn)化處理,通過(guò)平穩(wěn)化處理的次數(shù)可以得到差分d和D的值,然后通過(guò)ACF(自相關(guān)函數(shù))和PACF(偏自相關(guān)函數(shù))圖形來(lái)判斷模型中的p,q和P,Q的值。p為自回歸階數(shù),q為移動(dòng)平均階數(shù),d為差分階數(shù),P,Q,D分別為季節(jié)求和自回歸移動(dòng)平均模型中的自回歸、移動(dòng)平均和差分的值,S為季節(jié)周期和循環(huán)長(zhǎng)度[7~8]。季節(jié)求和自回歸移動(dòng)平均模型通用表達(dá)式為

SARIMA建模分為幾步:1)首先將清理后的數(shù)據(jù)可視化,通過(guò)可視化后的時(shí)間序列折線圖進(jìn)行初步的平穩(wěn)性判斷。2)對(duì)非平穩(wěn)的數(shù)據(jù)進(jìn)行差分,直到差分后的數(shù)據(jù)為平穩(wěn)時(shí)間序列,此時(shí)差分的次數(shù)即為SARIMA模型中d和D的值。3)引入自相關(guān)系數(shù)和偏自相關(guān)系數(shù),使用python將自相關(guān)和偏自相關(guān)函數(shù)可視化,通過(guò)可視化的圖形是截尾還是拖尾來(lái)確定p和P、q和Q的值,如果自相關(guān)函數(shù)拖尾,偏自相關(guān)函數(shù)是截尾,通過(guò)可視化的階數(shù)確定p和P的值。如果自相關(guān)函數(shù)是截尾,偏自相關(guān)函數(shù)是拖尾,通過(guò)可視化階數(shù)確定q和Q的值。如果自相關(guān)函數(shù)和偏自相關(guān)函數(shù)都是拖尾,通過(guò)可視化階數(shù)可以確定p和P、q和Q的值。4)對(duì)季節(jié)性時(shí)間序列數(shù)據(jù)進(jìn)行分解,季節(jié)分解的主要方法包括平均發(fā)和移動(dòng)平均趨勢(shì)剔除法,最終來(lái)確定S的值。5)得到所有的參數(shù),對(duì)估計(jì)結(jié)果進(jìn)行校驗(yàn),使用參數(shù)估計(jì)對(duì)模型進(jìn)行校驗(yàn),確定最終模型[9]。

2.2 LSTM神經(jīng)網(wǎng)絡(luò)模型介紹

LSTM是一種RNN(循環(huán)神經(jīng)網(wǎng)絡(luò))特殊類(lèi)型,LSTM 由Hochreiter&Schmidhuber(1997)提出,并在近期被Alex Graves進(jìn)行了改良和推廣。LSTM在RNN的基礎(chǔ)上加入了3個(gè)cell,使得LSTM具有記憶功能,cell包含一個(gè)sigmoid神經(jīng)網(wǎng)絡(luò)層和一個(gè)pointwise乘法操作,sigmoid函數(shù)輸出0~1之間的數(shù)值,描述每個(gè)部分有多少量可以通過(guò)[10~11]。0代表“不許任何量通過(guò)”,1代表“允許任何量通過(guò)”。LSTM中的3個(gè)cell分別為“遺忘門(mén)”、“輸入門(mén)”和“輸出門(mén)”。遺忘門(mén)是用來(lái)決定是否丟棄信息的,sigmoid函數(shù)的輸出值決定前一個(gè)狀態(tài)的值是否丟棄,表達(dá)式為

輸入門(mén)用來(lái)決定是否要保存新的信息,sig?moid函數(shù)決定什么值需要更新,然后一個(gè)tanh函數(shù)創(chuàng)建一個(gè)新的候選值向量(得到一個(gè)在-1與1之間的值)并與sigmoid函數(shù)的值相乘,最終會(huì)輸出我們確定輸出的那部分,表達(dá)式為

輸出門(mén)用來(lái)決定輸出什么值,sigmoid函數(shù)將決定哪個(gè)部分將輸出出去,然后將之前的狀態(tài)與tanh函數(shù)進(jìn)行處理(得到一個(gè)在-1與1之間的值)與sigmoid函數(shù)的輸出相乘,最終我將輸出我們確定輸出的那部分,表達(dá)式為

LSTM神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)圖如圖1所示。

3 組合模型的設(shè)計(jì)

3.1 基于SARIMA-LSTM組合模型設(shè)計(jì)

整個(gè)組合模型主要分為以下幾個(gè)部分:數(shù)據(jù)的預(yù)處理、SARIMA模型預(yù)測(cè)、神經(jīng)網(wǎng)絡(luò)訓(xùn)練和SARIMA預(yù)測(cè)數(shù)據(jù)的矯正。組合模型的設(shè)計(jì)圖如圖2所示。

圖2 組合模型設(shè)計(jì)圖

3.2 組合模型原理

單獨(dú)使用SARIMA模型預(yù)測(cè)的數(shù)據(jù)只能適用于短期預(yù)測(cè),而LSTM模型預(yù)測(cè)容易受到季節(jié)因素的影響,所以提出一種組合模型預(yù)測(cè)。

本文的設(shè)計(jì)思路主要是將股票數(shù)據(jù)先經(jīng)過(guò)SARIMA模型進(jìn)行初步預(yù)測(cè),SARIMA模型預(yù)測(cè)的數(shù)據(jù)在短期內(nèi)準(zhǔn)確度比較高,并將一些季節(jié)或者周期因素考慮在內(nèi),具有一定的預(yù)測(cè)意義[12]。同時(shí)也將同樣的股票數(shù)據(jù)放入LSTM神經(jīng)網(wǎng)絡(luò)中,對(duì)神經(jīng)網(wǎng)絡(luò)進(jìn)行訓(xùn)練,得到一個(gè)訓(xùn)練好的神經(jīng)網(wǎng)絡(luò)模型。最后將SARIMA模型預(yù)測(cè)的數(shù)據(jù)放入到已經(jīng)訓(xùn)練好的LSTM神經(jīng)網(wǎng)絡(luò)中去,對(duì)SARIMA預(yù)測(cè)的數(shù)據(jù)進(jìn)行一個(gè)矯正。

4 實(shí)驗(yàn)驗(yàn)證

4.1 實(shí)驗(yàn)環(huán)境介紹

本次實(shí)驗(yàn)使用Windows操作系統(tǒng),使用python編碼,IDE使用pycharm2017,其中SARIMA使用arima_model包實(shí)現(xiàn),LSTM則是使用tensorflow包來(lái)實(shí)現(xiàn)。

4.2 實(shí)驗(yàn)數(shù)據(jù)處理

本文數(shù)據(jù)來(lái)源為sz399001股票收盤(pán)的價(jià)格,選擇2013年1月到2014年2月的數(shù)據(jù)作為分析數(shù)據(jù),因?yàn)?013到2014年的股票數(shù)據(jù)外界影響因素小,包含季節(jié)性因素,所以本文選擇這兩年的數(shù)據(jù)作為數(shù)據(jù)源。將2013-01-01到2013-10-30的數(shù)據(jù)作為測(cè)試數(shù)據(jù),將2013-11-01到2014-01-18的數(shù)據(jù)作為預(yù)測(cè)數(shù)據(jù)。測(cè)試數(shù)據(jù)用來(lái)進(jìn)行對(duì)模型的訓(xùn)練,預(yù)測(cè)數(shù)據(jù)則是用來(lái)與模型預(yù)測(cè)的數(shù)據(jù)進(jìn)行對(duì)比分析,判斷模型預(yù)測(cè)的準(zhǔn)確度。

4.3 SARIMA模型對(duì)數(shù)據(jù)的預(yù)測(cè)

選取sz399001股票中2013年1月到2014年2月的數(shù)據(jù)作為分析數(shù)據(jù),將2013-01-01到2013-10-30的數(shù)據(jù)作為測(cè)試數(shù)據(jù),將2013-11-01到2014-01-18的數(shù)據(jù)作為預(yù)測(cè)數(shù)據(jù),SARIMA模型python預(yù)測(cè)圖如圖3所示。

4.4 LSTM神經(jīng)網(wǎng)絡(luò)對(duì)原始數(shù)據(jù)進(jìn)行預(yù)測(cè)

將之前選取的sz399001的股票數(shù)據(jù)分為訓(xùn)練集和測(cè)試集,使用Google的tensorflow深度學(xué)習(xí)框架構(gòu)建LSTM神經(jīng)網(wǎng)絡(luò)模型,將訓(xùn)練數(shù)據(jù)喂入LSTM中,對(duì)其進(jìn)行訓(xùn)練[13-15]。LSTM隱藏層我們選用10個(gè)節(jié)點(diǎn),7個(gè)輸入層,為的是將當(dāng)天的開(kāi)盤(pán)價(jià)、收盤(pán)價(jià)、最高、最低、成交、變化、總價(jià)等因素都計(jì)入到預(yù)測(cè)中,提高預(yù)測(cè)的準(zhǔn)確性。LSTM神經(jīng)網(wǎng)絡(luò)py?thon預(yù)測(cè)圖如圖4所示。

圖4 LSTM神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)圖

由圖4可以看出灰色為預(yù)測(cè)的股票數(shù)據(jù),預(yù)測(cè)的趨勢(shì)基本上正確,并且也達(dá)到了長(zhǎng)期預(yù)測(cè)的目的。LSTM神經(jīng)網(wǎng)絡(luò)訓(xùn)練300次預(yù)測(cè)丟失率如圖5所示。其中丟失率(loss)代表預(yù)測(cè)數(shù)據(jù)于實(shí)際數(shù)據(jù)差值的比例??梢钥闯鲇?xùn)練300次神經(jīng)網(wǎng)絡(luò)的丟失率已經(jīng)很低了。

圖5 LSTM神經(jīng)網(wǎng)絡(luò)300次預(yù)測(cè)丟失率圖

4.5 SARIMA與LATM組合預(yù)測(cè)

還是選取sz399001股票中2013-01-01到2013-10-30的數(shù)據(jù)作為訓(xùn)練數(shù)據(jù)喂入LSTM神經(jīng)網(wǎng)絡(luò)中進(jìn)行訓(xùn)練,但是這次選擇SARIMA預(yù)測(cè)的數(shù)據(jù)作為測(cè)試的輸入數(shù)據(jù),輸出數(shù)據(jù)還是2013-11-01到2014-01-18的股票數(shù)據(jù)進(jìn)行預(yù)測(cè),SARIMA-LSTM組合模型python預(yù)測(cè)圖如圖6所示。

通過(guò)SARIMA-LSTM神經(jīng)網(wǎng)絡(luò)數(shù)據(jù)預(yù)測(cè)圖可以看到,灰線與黑線的重合率越來(lái)越高。組合模型訓(xùn)練300次預(yù)測(cè)丟失率如圖7所示。

圖6 SARIMA-LSTM組合模型預(yù)測(cè)圖

圖7 組合模型300次預(yù)測(cè)丟失率圖

由上圖可以看到此次預(yù)測(cè)的數(shù)據(jù)比前兩次的正確率有了一定的提高,準(zhǔn)確率提高了2個(gè)百分點(diǎn)。可以看出組合模型的預(yù)測(cè)相比單個(gè)模型的預(yù)測(cè)具有一定程度的提高。

5 結(jié)語(yǔ)

本文通過(guò)實(shí)驗(yàn)表明SARIMA模型的短期預(yù)測(cè)準(zhǔn)確率比較高,但是隨著時(shí)間的推移,預(yù)測(cè)的結(jié)果與實(shí)際結(jié)果偏差較大,所以SARIMA模型不適合做長(zhǎng)期預(yù)測(cè)。LSTM神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)丟失率穩(wěn)定到0.030,已經(jīng)可以應(yīng)用到股票數(shù)據(jù)的預(yù)測(cè)中。將SARIMA預(yù)測(cè)的數(shù)據(jù)放入到已經(jīng)訓(xùn)練好的神經(jīng)網(wǎng)絡(luò)中進(jìn)行矯正,預(yù)測(cè)丟失率穩(wěn)定在0.012,可以看出組合模型的正確率得到提升,預(yù)測(cè)也更加準(zhǔn)確。雖然SARIMA-LSTM預(yù)測(cè)提高了一定的準(zhǔn)確性,但是實(shí)際股票的趨勢(shì)會(huì)受到很多外界的因素影響,如宏觀經(jīng)濟(jì)因素、政治因素、法律因素等,所以對(duì)這種大的宏觀因素需要進(jìn)行進(jìn)一步的優(yōu)化。

猜你喜歡
階數(shù)差分可視化
XIO 優(yōu)化階數(shù)對(duì)宮頸癌術(shù)后靜態(tài)調(diào)強(qiáng)放射治療計(jì)劃的影響
自然資源可視化決策系統(tǒng)
一類(lèi)分?jǐn)?shù)階q-差分方程正解的存在性與不存在性(英文)
思維可視化
準(zhǔn)天頂衛(wèi)星系統(tǒng)廣播星歷精度評(píng)定和擬合精度分析
自然資源可視化決策系統(tǒng)
確定有限級(jí)數(shù)解的階數(shù)上界的一種n階展開(kāi)方法
序列型分?jǐn)?shù)階差分方程解的存在唯一性
一個(gè)求非線性差分方程所有多項(xiàng)式解的算法(英)
基于知識(shí)圖譜的我國(guó)短道速滑研究可視化分析
津市市| 紫阳县| 顺昌县| 泉州市| 沽源县| 内江市| 凤凰县| 遂宁市| 金昌市| 农安县| 绩溪县| 德兴市| 泸州市| 竹溪县| 淮北市| 双城市| 双流县| 绍兴市| 公主岭市| 义乌市| 广宗县| 广东省| 铁岭市| 百色市| 邯郸县| 巨野县| 宝鸡市| 盖州市| 云阳县| 淮阳县| 阿坝| 舒城县| 苍梧县| 苗栗县| 岳西县| 乐昌市| 上思县| 高州市| 荆州市| 杨浦区| 玛曲县|