1

在包 rnn 中有一个如何进行网络训练的示例,在此链接中进行了描述(示例 1)。在这个包的方法中,输入以 3D 数组的格式给出,其中 dim 1: samples; 暗淡2:时间;暗淡 3:变量,但没有明确区分输入和目标(输入和目标,这是 RNA 包中的常用方法)。此外,在包描述中,条目和目标必须具有相同的维度。那么,如何在 rnn 包中为循环神经网络定义我的数据集?数据到一个可复制的例子。

我在 DF 上的训练数据(输入),前五行:

> data[1:5,2:14]
           Ibiara.P_t Ibiara.P_t_1 Ibiara.P_t_2 Nova.Olinda.P_t_1 Princesa.Isabel.P_t_1 Boa.ventura.P_t_1 Boa.Ventura.P_t_2
1966-01-01          0            0            0                 0                     0                 0                 0
1966-01-02          0            0            0                 0                     0                 0                 0
1966-01-03          0            0            0                 0                     0                 0                 0
1966-01-04          0            0            0                 0                     0                 0                 0
1966-01-05          0            0            0                 0                     0                 0                 0
           Piancó.P_t Piancó.P_t_1 Piancó.P_t_2 Q_t_1 Q_t_2 Q_t_3
1966-01-01          0            0            0     0     0     0
1966-01-02          0            0            0     0     0     0
1966-01-03          0            0            0     0     0     0
1966-01-04          0            0            0     0     0     0
1966-01-05          0            0            0     0     0     0

我的目标数据,前五行:

> data[1:5,1]

                 Q_t
1966-01-01          0                    
1966-01-02          0                      
1966-01-03          0                     
1966-01-04          0            
1966-01-05          0            

那是我定义数据的代码:

# Scaling data for the NN
maxs <- apply(data, 2, max)
mins <- apply(data, 2, min)
scaled <- as.data.frame(scale(data, center = mins, scale = maxs - mins))


# Train-test split
train_ <- scaled[1:train_days,]
test_ <- scaled[(train_days+1):nrow(data),]

X <- t(as.matrix(train_[,1]))
Y <- t(as.matrix(test_[,2:14]))

# Train model
model <- trainr(Y = Y,
                X = X,
                learningrate = 0.01,
                hidden_dim = 10,
                numepochs = 10)
4

0 回答 0