我试图在GCE运行中获取IMU的MNIST示例(如https://cloud.google.com/tpu/docs/tutorials/mnist所示),但我遇到了几个问题。首先,我必须设置我的PYTHONPATH以获取模型目录,该目录并未列为演练中的一个步骤(对于每日python程序员来说可能很明显,但它没有说明如果不是)。之后,我现在遇到以下错误,我不确定如何解决:
frival@tpu-demo-vm:~$ python /usr/share/models/official/mnist/mnist_tpu.py --tpu_name=$TPU_NAME --data_dir=${STORAGE_BUCKET}/data --model_dir=${STORAGE_BUCKET}/output --use_tpu=True --iterations=500 --train_steps=1000 --train_file=${STORAGE_BUCKET}/data/train.tfrecords
WARNING:tensorflow:From /usr/local/lib/python2.7/dist-packages/tensorflow/contrib/learn/python/learn/datasets/base.py:198: retry (from tensorflow.contrib.learn.python.learn.datasets.base) is deprecated and will be removed in a future version.
Instructions for updating:
Use the retry module or similar alternatives.
Traceback (most recent call last):
File "/usr/share/models/official/mnist/mnist_tpu.py", line 163, in <module>
tf.app.run()
File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/platform/app.py", line 126, in run
_sys.exit(main(argv))
File "/usr/share/models/official/mnist/mnist_tpu.py", line 135, in main
FLAGS.tpu, zone=FLAGS.tpu_zone, project=FLAGS.gcp_project)
File "/usr/local/lib/python2.7/dist-packages/tensorflow/contrib/cluster_resolver/python/training/tpu_cluster_resolver.py", line 128, in __init__
self._tpu = compat.as_bytes(tpu) # self._tpu is always bytes
File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/util/compat.py", line 68, in as_bytes
(bytes_or_text,))
TypeError: Expected binary or unicode string, got None
我已经确认TPU_NAME和STORAGE_BUCKET已正确设置,并且我还验证了我从这个VM看到TPU处于READY状态,尽管我认为其中任何一个都没有造成这个错误。有谁知道我错过了什么?
答案 0 :(得分:1)
可能你的tensorflow版本比你的mnist_tpu.py更新。 你可以在这里尝试这个更新版本的mnist_tpu.py,而不是使用--tpu标志作为上面提到的tayo。 https://github.com/tensorflow/models/blob/master/official/mnist/mnist_tpu.py
答案 1 :(得分:0)
请将--tpu_name = $ TPU_NAME标志更改为--tpu = $ TPU_NAME。
对错误表示道歉,因为这是最近的一次内部更改,并没有进入演练文档。它正在纠正。
TPU好运!