【问题标题】:How to do forecasting of Time series data (2 columns) using Neural Network in R?如何使用 R 中的神经网络对时间序列数据(2 列)进行预测?
【发布时间】:2016-04-10 15:53:57
【问题描述】:

我有以下格式的数据:

我想使用神经网络来预测 A 的下一个值。我已经在 A 系列中获得了滞后,根据 AIC 标准得出的结果是 37。这是通过使用代码来完成的

model<-nnetar(data[,2], P=1,repeats=20,lambda=NULL)  

我想对系列 A 和 B 使用相同的延迟来预测系列 A 的下一个值。我面临的问题是 nnetar 仅在 1 列上构建模型,我想同时使用这两个列进行预测和滞后部分需要完好无损。有什么办法,我可以做到吗?

【问题讨论】:

  • 几乎不可能将数据集加载到 R 中。请使用 dput() 提供摘录。
  • 数据集非常庞大。
  • 做类似 dput(data[100,])
  • 结构(列表(时间 = “42005.458333333336”,现货 = 8269.7,期货 = 8316.95,现货 = 7.86e-05,期货_ret = 6.61e-05),.Names = c(“时间”, “现货”,“期货”,“Spot_ret”,“Futures_ret”),row.names = 100L,class= “data.frame”)。这里 spot_ret 是 A 列,Futures_ret 是 B 列

标签: r neural-network time-series prediction forecasting


【解决方案1】:

我认为本地几乎不可能使用 NNAR,因为它具有固定的 NN 结构,除了隐藏层中的节点数量。

警告:有点疯狂的想法) 但是,据我了解,nnetar 它使用类似于窗口化的方法。因此,可以将 A 和 B 交替的数据交错。这可以使用来自 reshape 的melt(data[,2:3]) 来完成。之后,您可以同时预测 A 和 B。您需要相应地调整所有其他参数。

但是,我会切换到像 RSNNS 这样的循环神经网络库

【讨论】:

  • RSNNS如何处理时间序列数据?我将它用于结构化数据,但不适用于时间序列数据。
  • 你可以看看函数elm an 和jordan。 en.wikipedia.org/wiki/Recurrent_neural_network 据我所知,时间序列是 RNN 的主要例子
  • 将尝试使用循环神经网络解决问题。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2011-05-12
  • 2015-10-12
  • 2013-02-22
  • 2013-09-11
  • 2014-07-02
  • 2018-08-11
相关资源
最近更新 更多