【发布时间】:2017-02-04 14:07:17
【问题描述】:
如何从 TensorFlow 中的 tf.nn.rnn() 或 tf.nn.dynamic_rnn() 获取所有隐藏状态? API 只给了我最终的状态。
第一种选择是在构建直接在 RNNCell 上运行的模型时编写一个循环。但是,时间步数对我来说不是固定的,取决于传入的批次。
一些选项是使用 GRU 或编写我自己的 RNNCell 将状态连接到输出。前一种选择不够通用,而后者听起来太老套了。
另一种选择是执行the answers in this question 之类的操作,从 RNN 获取所有变量。但是,我不确定如何在这里以标准方式将隐藏状态与其他变量分开。
有没有一种很好的方法可以在仍然使用库提供的 RNN API 的同时从 RNN 中获取所有隐藏状态?
【问题讨论】:
-
我创建了一个 PR here,它可能会帮助您处理简单的案例
标签: python machine-learning tensorflow deep-learning