【问题标题】:Cyclic computational graphs with Tensorflow or Theano使用 Tensorflow 或 Theano 的循环计算图
【发布时间】:2016-05-31 16:46:21
【问题描述】:

TensorFlowTheano 似乎都不支持循环计算图,循环元素被实现为具有缓冲和展开的循环单元(RNN / LSTM 单元),但这种限制主要与反向计算有关传播。我没有特别需要计算反向传播,只需要计算前向传播。

有没有办法忽略这个限制,或者只是分解非循环组件中的任意计算图?

【问题讨论】:

    标签: tensorflow theano lstm recurrent-neural-network


    【解决方案1】:

    TensorFlow确实支持循环计算图。 tf.while_loop() 函数允许您为条件和循环体指定带有任意子图的 while 循环,运行时将并行执行循环。 tf.scan() 函数是一个更高级别的 API,类似于 Theano 的 theano.scan() 函数。两者都允许您循环动态大小的张量。

    【讨论】:

    • 谢谢。我添加了一个图表示例 (stackoverflow.com/q/37566925/1792701),我在其中尝试使用张量的前一个值作为输入,但我发现每次运行时张量的值为零,而不是保留其前一个值。我应该将sess.run 替换为while_loop 吗?
    猜你喜欢
    • 2015-07-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-01-27
    • 1970-01-01
    • 2019-05-01
    • 1970-01-01
    • 2016-05-31
    相关资源
    最近更新 更多