无法在google cloud ml上加载mnist数据集

时间:2017-04-22 16:15:49

标签: tensorflow mnist google-cloud-ml

我想在google cloud ml上运行MNIST的简单深度学习模型。我尝试通过tensroflow的实用方法tensorflow.examples.tutorials.mnist下载并解压缩它。不幸的是,当我在云中使用它时,我的代码看不到它。我有这样的例外:没有这样的文件或目录:'gs://bucket/path/train-images-idx3-ubyte.gz当我浏览存储桶时,文件就在那里,但是tensorflow看不到它。 / p>

它出了什么问题?

2 个答案:

答案 0 :(得分:1)

不幸的是,TensorFlow的文件系统抽象不能正确支持Python的gzip库。因此,mnist.read_data_sets仅支持本地文件系统上的train_dir,即,您不能将GCS与实用程序功能一起使用。

解决方法是在本地文件系统上创建一个临时目录,然后使用它。

在我看来,这是示例中的默认值,例如,mnist_softmax.py有一个标志--data-dir,默认情况下指向'/ tmp / tensorflow / mnist / input_data'。为了验证,我将mnist_softmax.py的内容复制到一个新的Python脚本中,该脚本在Cloud Machine Learning Engine上成功运行。也适用于mnist_deep.py

但是,如果您要手动使用read_data_sets(通过tensorflow/examples/tutorials/mnist/input_data.py),请确保将本地目录作为第一个参数传递。

答案 1 :(得分:0)

问题在于我使用了提供张量流的阅读器,并且只能使用本地文件系统。要读取mnist,必须使用tensorflow.python.lib.io包。