tf.nn.dynamic_rnn对其输入参数进行了什么样的计算?
What kind of calculation does tf.nn.dynamic_rnn do with its input parameters?
tf.nn.dynamic_rnn
执行什么样的计算?它如何使用参数 cell
和 inputs
(创建结果)?
我在 documentation 中查找过,但没有找到解释。
tf.nn.static_rnn
对比 tf.nn.dynamic_rnn
在内部,tf.nn.static_rnn
为固定的 RNN 长度创建展开图。这意味着,如果您使用具有 200 个时间步长的输入调用 tf.nn.static_rnn
,您将创建一个具有 200 个 RNN 步骤的静态图。首先,图形创建速度慢。其次,您无法传入比最初指定的更长的序列 (> 200)。
tf.nn.dynamic_rnn
解决了这个问题。它在执行时使用 tf.while_loop
动态构建图形。这意味着图形创建速度更快,并且您可以提供可变大小的批次。
性能如何?
您可能认为 tf.nn.static_rnn
比其动态对应物更快,因为它预先构建了图表。
Please note, it is strongly encouraged to use tf.nn.dynamic_rnn
.
参考:http://www.wildml.com/2016/08/rnns-in-tensorflow-a-practical-guide-and-undocumented-features/
tf.nn.dynamic_rnn
执行什么样的计算?它如何使用参数 cell
和 inputs
(创建结果)?
我在 documentation 中查找过,但没有找到解释。
tf.nn.static_rnn
对比 tf.nn.dynamic_rnn
在内部,tf.nn.static_rnn
为固定的 RNN 长度创建展开图。这意味着,如果您使用具有 200 个时间步长的输入调用 tf.nn.static_rnn
,您将创建一个具有 200 个 RNN 步骤的静态图。首先,图形创建速度慢。其次,您无法传入比最初指定的更长的序列 (> 200)。
tf.nn.dynamic_rnn
解决了这个问题。它在执行时使用 tf.while_loop
动态构建图形。这意味着图形创建速度更快,并且您可以提供可变大小的批次。
性能如何?
您可能认为 tf.nn.static_rnn
比其动态对应物更快,因为它预先构建了图表。
Please note, it is strongly encouraged to use
tf.nn.dynamic_rnn
.
参考:http://www.wildml.com/2016/08/rnns-in-tensorflow-a-practical-guide-and-undocumented-features/