tf.nn.dynamic_rnn()在Google Cloud Datalab中使用时返回错误

时间:2016-07-28 21:23:28

标签: tensorflow google-cloud-datalab

我正在尝试在Google Cloud Datalab上运行RNN。同一网络在我的计算机上正常运行,但是当我在Datalab上运行时,我收到以下错误:

TypeError:dynamic_rnn()至少需要3个参数(给定3个)

dynamic_rnn()的使用如下:

rnn_outputs,state = tf.nn.dynamic_rnn(cells,inputs,initial_state = initial_state_placeholder)

这是张量流版本问题吗?在我的电脑上,我使用的是tensorflow-0.9.0,来自Ubuntu的最新GPU pip安装。 Cloud Datalab是否可能使用了不同的版本,其中dynamic_rnn()的使用略有变化?

更新:已检查导入Datalab的tensorflow版本 - 它是0.7.1。我认为如果导致问题的原因是没有办法导入更新的版本?

我按照这里的使用说明进行操作: https://github.com/tensorflow/tensorflow/blob/master/tensorflow/g3doc/api_docs/python/functions_and_classes/shard8/tf.nn.dynamic_rnn.md

非常感谢。

1 个答案:

答案 0 :(得分:1)

dynamic_rnn似乎没有列在张量流0.7的api docs中。

下一步,您可以尝试以下选项之一:

  • 部署较新版本的Datalab。这是推荐的选项。最新版本使用tensorflow 0.9.0。
  • 通过在Datalab笔记本中运行以下命令,将tensorflow升级到0.9.0版。请参阅以下stackoverflow post中的解释,解释为什么不建议这样做(但它可能有效)。

tensorflow版本0.9.0使用注意事项:

%%bash
wget https://storage.googleapis.com/cloud-datalab/deploy/tf/tensorflow-0.9.0-cp27-none-linux_x86_64.whl && pip install --ignore-installed --no-deps tensorflow-0.9.0-cp27-none-linux_x86_64.whl && rm tensorflow-0.9.0-cp27-none-linux_x86_64.whl