model.predict 会正确更新 GRU 层状态吗?

Will model.predict update a GRU layer states correctly?

这是我的第一个问题,欢迎提出建议!

背景

我建立了一个类似于这个的模型。

我正在使用 model.predict(inputs) 进行预测,我构建了自定义函数和流程以使其学习。它似乎有效,当它预测时一切似乎都很好。

几天前,我看了这个视频: https://youtu.be/8HyCNIVRbSU?t=284 (它从产生我的问题的部分开始)我复制了引起我注意的图像: 它表示每个输入按顺序插入每个单元格,每个单元格将按顺序向下一个单元格提供更多信息。

我开始怀疑我的实现是否正确,我会给你所有可能有用的细节。

详情

  1. am 对两个 GRU 层使用 stateful=True
  2. model.predict(inputs) 处的输入定义为 inputs = [np.array(arr).reshape(1, 1, 6), np.array(arr2).reshape(1, 1, 4)]
  3. 我有一个包含输入第一部分值的 CSV,但对于其他值,我是即时创建的。这就是我使用 model.predict 的原因。因此,如果有另一种方法能够同时发送静态和“动态数据”,我会很乐意这样做。
  4. 我在加载模型后与模型交互的唯一方法是要求预测值,并更新其权重(并在我输入新序列时重置状态)。

现在,有了所有这些信息,问题就是:

在前向传递过程中(predict()fit())GRU(和其他 RNN)从您的序列中获取第一项,重新计算其状态,获取第二项,重新计算其状态状态等等。