关于神经网络:Python-TensorFlow循环神经网络RNNLSTM神经网络预测股票市场价格时间序列和MSE评估准确性

43次阅读

共计 2075 个字符,预计需要花费 6 分钟才能阅读完成。

原文链接:http://tecdat.cn/?p=26562

该我的项目包含:

  • 自 2000 年 1 月以来的股票价格数据。咱们应用的是 Microsoft 股票。
  • 将工夫序列数据转换为分类问题。
  • 应用 TensorFlow 的 LSTM 模型
  • 由 MSE 掂量的预测准确性

GPU 设置(如果可用)

 

gpus = tf.config.experimental.li

读取数据集

有几种办法能够获取股市数据。以下数据集是应用 R BatchGetSymbols 生成的。

# 加载数据集
# ref.date 是数组的第一列 
datang = read_csv('stopriceo.csv', header=0)

pd.pivot_table(datong)

咱们的股票工夫序列

咱们为这个项目选择了微软(股票代码 MSFT)。

plt.rrms\['fgre.dpi'\] = 300

plt.plot(dfte\['MSFT'\])

工夫序列显然不是安稳的,这是大多数预测模型所假如的属性。咱们能够对工夫序列利用变换,直到它达到安稳状态。Dickey-Fuller 测验使咱们可能确定咱们的工夫序列是否具备季节性。

在这里,咱们将利用对数转换来解决股票市场的指数行为。

其余有助于预测模型的转换:

  • 挪动平均线
  • 差分化
df1 = datt\['MSFT'\]

# 咱们对数据集进行了对数转换
df1 = np.log(df1)

# 代替计划:咱们能够对工夫序列进行差分,从而去除季节性和平均值的变动。# 创立一个差分序列

#dfdiff = diffe(df1,1)

预处理

在这里,咱们对工夫序列数据利用规范预处理。

在工夫序列中,咱们没有标签,但咱们有工夫序列的将来值,因而输入能够是 x(t),给定 x(t-1) 作为输出。这是将数据集构建为监督问题的一种实用(且直观)的办法。

scaer = ixSer(fatue_ange = (0,1))
scer.i_rrm(np.array(df1).rehape(-1,1))

LSTM 模型

咱们在这里实现了一个重叠的 LSTM 模型。

LSTM 网络是一种递归神经网络,可能学习序列预测问题中的序列依赖性。LSTM 模型次要用于语音辨认、自然语言解决的上下文中。最近,它们也被利用于工夫序列数据的剖析。

from tensorflow.keras.models import Sequential 

model.add(LSTM(50, retsueces = True
#stacked LSTM
model.add(Dropout(0.1))

history

plt.plot(history.history

体现

import math 
from sklearn.metrics import mean\_squared\_error

plt.rcParams\['figure.dpi'\] = 300
plt.rcParams\['savefig.dpi'\] = 300
#移位预测
lokback = ie_step
trinPrectPot = numpy.empty_like(df1)
traireditPlot\[:,:\] = np.nan

in_y = scaler.nesetsfrm(df1)
plt.plot

plt.plot(iv_y)

将来 30 天的预测

咱们当初能够递归地利用该模型,通过预计第二天的 (t+1) 价格,而后再次将其作为输出来推断 t+2 天的价格,依此类推。这个预测当然会有更大的误差,因为每个预测的日子都会带来很大的不确定性。然而,这个预测的确会通知咱们模型是否从过来的数据中学到了任何货色。

# 预测将来 30 天的状况 
len(tesdata) # 1211
# 我认为在 test_data 中,最初一天是 5 月 22 日,例如
# 对于 5 月 23 日,我须要 100 个前一天的数据 

x\_input = test\_data\[(len

while(i<ftue_teps):
    if(len(tep\_put)>ie\_sep):
        x_input = np.array(tepinut\[1:\])
        x\_input = x\_input.reshap

plt.plot(dy\_ew, scaler.inverse\_transf

plt.plot(df3\[1000:\])


最受欢迎的见解

1. 用于 NLP 的 Python:应用 Keras 的多标签文本 LSTM 神经网络分类

2.Python 中利用长短期记忆模型 LSTM 进行工夫序列预测剖析 – 预测电力耗费数据

3.python 在 Keras 中应用 LSTM 解决序列问题

4.Python 中用 PyTorch 机器学习分类预测银行客户散失模型

5.R 语言多元 Copula GARCH 模型工夫序列预测

6. 在 r 语言中应用 GAM(狭义相加模型)进行电力负荷工夫序列剖析

7.R 语言中 ARMA,ARIMA(Box-Jenkins),SARIMA 和 ARIMAX 模型用于预测工夫序列数

8.R 语言预计时变 VAR 模型工夫序列的实证钻研剖析案例

9. 用狭义加性模型 GAM 进行工夫序列剖析

正文完
 0