我有两个关于如何使用 R 的 RNN 包的问题,特别是训练器和预测器功能。
假设我有 5 个不同变量的 4000 步时间序列。
- 由于输入必须是 3D 数组,因此应该如何将其传递给 RNN?它应该是一个 dim(1, 4000, 5) 或 dim(4000,1,5) 数组还是完全不同的数组?
此外,假设我成功训练了我的 RNN,并想使用预测函数进行一些预测。
- 输出将具有哪个维度以及如何解释?
到目前为止,我一直尝试使用以下代码将数据输入为 3D 数组 (4000, 1, 5):
RecNN <- trainr(TrainR, TrainI,
learningrate = 0.003, momentum = 0.003, hidden_dim = c(100),
network_type = "rnn", batch_size = 50,
numepochs = 100, sigmoid = "logistic", use_bias = TRUE)
print("--- DONE LEARNING ---")
然后将预测函数与输入 (250, 1, 5) 一起使用:
results1 <- predictr(RecNN, TestI, hidden = TRUE, real_output = TRUE)
List of 2
$ : num [1:250, 1, 1:100] 0 0 0 0 0 0 0 0 0 0 ...
$ : num [1:250, 1, 1:2] 1 1 1 1 1 1 1 1 1 1 ...
非常感谢!