我正在尝试构建一个玩具模型,以演示LSTM如何预测序列的下几次迭代。我的代码运行到最后一行没有任何错误。
# Simulating dummy data
seq <- data.frame(x_train = (seq(0,8, 1)/10), y_train = (seq(0,8, 1)/10))
seq$x_train <- seq$x_train + 0.1
# Reshaping
x_train <- array_reshape(seq$x_train, dim = c(9,1,1))
y_train <- array_reshape(seq$y_train, dim = c(9,1))
# Checking dimensions
dim(x_train); dim(y_train)
# Building the model
m <- keras_model_sequential()
m %>%
layer_lstm(units = 10, input_shape =c(9,1), batch_size = 9, return_sequences = T, stateful = T) %>%
layer_dense(units = 1)
summary(m)
# Compiling
m %>% compile(loss = "mse", optimizer = "adam")
这就是问题所在-
for (i in 1:9) {
m %>% fit(object = x_train, y_train, batch_size = 1, shuffle = FALSE)
m %>% reset_states()
}
我收到以下错误,但我不确定为什么:
Error: $ operator is invalid for atomic vectors
有人知道我在做什么错吗?