【问题标题】:Need for m.initial_state.eval() in TensorFlow PTB tutorialTensorFlow PTB 教程中需要 m.initial_state.eval()
【发布时间】:2016-06-14 18:15:45
【问题描述】:

https://github.com/tensorflow/tensorflow/blob/master/tensorflow/models/rnn/ptb/ptb_word_lm.py 的 PTB 语言模型教程中。 我不明白需要第 248 行(以及在第 254 行将状态传递给 session.run)

state = m.initial_state.eval()

是不是初始状态的张量:

self._initial_state = cell.zero_state(batch_size, tf.float32)

在图表加载到会话时进行评估?

例如,此代码按预期打印 11,

x = constant(6)
y = tf.placeholder(tf.int32)
z = x + y
with tf.Session() as sess:
    print sess.run(z,{y:5})

无需将最后一行替换为 print sess.run(z,{y:5,x:x.eval()})

那么需要那个 eval 吗?如果是这样,为什么?

【问题讨论】:

    标签: python tensorflow


    【解决方案1】:

    好的,我想通了。 RNN 被多次调用,每次调用时,您都希望它以干净的初始状态开始。如果您只调用一次,则无需将干净的初始状态传递给sess.run()

    【讨论】:

      猜你喜欢
      • 2018-03-06
      • 1970-01-01
      • 2012-01-19
      • 2017-12-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多