来自Tensorflow中的RNN, Denny Britz 撰写的实用指南和未记录的功能 ,于2016年8月21日发布。
tf.nn.rnn
创建一个固定RNN长度的展开图。这意味着,如果使用具有200个时间步长的输入调用tf.nn.rnn
,则将创建具有200个RNN步骤的静态图形。首先,图形创建很慢。其次,您无法传递比原来指定的更长的序列(> 200)。
tf.nn.dynamic_rnn
解决了这个问题。它使用tf.While
循环在执行图形时动态构建图形。这意味着图形创建速度更快,并且可以喂入可变大小的批处理。
0
tf.nn
中有几个与tf.nn
相关的类。在我在网上找到的示例中,tf.nn.dynamic_rnn
和tf.nn.rnn
似乎可以互换使用,或者至少我无法弄清楚为什么使用其中一个代替另一个。有什么区别?