39

TensorFlow MNIST 示例未与fully_connected_feed.py 一起运行

我检查了这个并意识到这input_data不是内置的。所以我从这里下载了整个文件夹。如何开始本教程:

import input_data
mnist = input_data.read_data_sets("MNIST_data/", one_hot=True)


---------------------------------------------------------------------------
ImportError                               Traceback (most recent call last)
<ipython-input-6-a5af65173c89> in <module>()
----> 1 import input_data
      2 mnist = tf.input_data.read_data_sets("MNIST_data/", one_hot=True)

ImportError: No module named input_data

我正在使用 iPython (Jupyter),所以我需要将我的工作目录更改为我下载的这个文件夹吗?或者我可以将它添加到我的tensorflow目录中吗?如果是这样,我在哪里添加文件?我安装tensorflowpip(在我的 OSX 上),当前位置是~/anaconda/lib/python2.7/site-packages/tensorflow/__init__.py

这些文件是否可以通过tensorflow类似的sklearn数据集直接访问?还是我只是应该 cd 进入目录并从那里工作?例子不清楚。

编辑:

这篇文章非常过时

4

15 回答 15

34

所以让我们假设您在目录中:(/somePath/tensorflow/tutorial这是您的工作目录)。

您需要做的就是下载input_data.py文件并像这样放置它。假设您调用的文件名:

import input_data
mnist = input_data.read_data_sets("MNIST_data/", one_hot=True)
...

main.py并且它也在同一个目录中。

完成后,您可以开始运行main.py,它将开始下载文件并将它们放在 MNIST_data 文件夹中(一旦它们在那里,脚本将不会在下次下载它们)。

于 2015-11-12T05:01:10.703 回答
25

旧教程说,要导入 MNIST 数据,请使用:

import input_data
mnist = input_data.read_data_sets('MNIST_data', one_hot=True)

这将导致错误。新教程使用以下代码执行此操作:

from tensorflow.examples.tutorials.mnist import input_data
mnist = input_data.read_data_sets("MNIST_data", one_hot=True)

这很好用。

于 2016-05-31T08:08:40.663 回答
3

如果您使用的是 TensorFlow 2.0 或更高版本,则需要先安装 tensorflow_datasets:

pip install tensorflow_datasets

或者如果您使用的是 Anaconda 发行版:

conda install tensorflow_datasets

从命令行。

如果您使用的是 Jupyter Notebook,则需要安装并启用 ipywidgets。根据使用 pip的文档( https://ipywidgets.readthedocs.io/en/stable/user_install.html ):

pip install ipywidgets
jupyter nbextension enable --py widgetsnbextension

如果您使用的是 Anaconda 发行版,请从命令行安装 ipywidgets,如下所示:

conda install -c conda-forge ipywidgets

使用 Anaconda 发行版,无需启用扩展,conda 会为您处理。

然后导入您的代码:

import tensorflow_datasets as tfds
mnist = tfds.load(name='mnist')

如果您遵循这些说明,您应该能够正确使用它。

于 2020-06-01T18:43:42.840 回答
3

我正在使用不同的版本-在此处使用 Docker 在 Windows 上安装之后-并且遇到了类似的问题。

我发现一个简单的解决方法是:

1.进入Linux命令行,找出我的Docker镜像上的input_data.py在哪里(在你的例子中你提到你必须手动下载它。在我的例子中,它已经在这里了)。我使用了以下 linux 命令:

$ sudo find . -print | grep -i '.*[.]py'

我有文件和路径

./tensorflow/g3doc/tutorials/mnist/mnist.py
./tensorflow/g3doc/tutorials/mnist/input_data.py

2. 启动 Python 并使用 SYS 键入以下命令:

>> import sys
>> print(sys.path)

你会得到现有的路径。

['', '/usr/lib/python2.7', '/usr/lib/python2.7/plat-x86_64-linux-gnu', '/usr/lib/python2.7/lib-tk', '/usr/lib/python2.7/lib-old', '/usr/lib/python2.7/lib-dynload', '/usr/local/lib/python2.7/dist-packages', '/usr/lib/python2.7/dist-packages', '/usr/lib/python2.7/dist-packages/PILcompat']

4.添加inputa_data.py的路径:

>> sys.path.insert(1,'/tensorflow/tensorflow/g3doc/tutorials/mnist')

希望它可以提供帮助。如果您找到更好的选择,请告诉我。:)

于 2015-12-06T00:27:54.103 回答
3

如何开始教程

我没有下载你下载的文件夹,但是我通过 pip 安装了 tensorflow,然后我遇到了类似的问题。

我的解决方法是更换

import tensorflow.examples.tutorials.mnist.input_data

import tensorflow.examples.tutorials.mnist.input_data as input_data

于 2016-02-04T04:04:55.257 回答
2

现在有一种更简单的方法可以将 MNIST 数据加载到 tensorflow 中,而无需使用 Tensorflow 2 和 Tensorflow 数据集下载数据

要开始使用,请确保导入 Tensorflow 并指定第二个版本:

%tensorflow_version 2.x
import tensorflow as tf

然后使用以下代码将数据加载到字典中:

MNIST_data = tfds.load(name = "mnist")

然后将数据拆分为训练和测试:

train, test = MNIST_data['train'] , MNIST_data['test']

现在您可以随意使用这些数据生成器。

于 2019-12-23T22:33:41.307 回答
2

我可能有点晚了,但对于 tensorflow 版本 0.12.1,你可能想改用 input_data.read_data_sets 。

基本上使用此功能从您从http://yann.lecun.com/exdb/mnist/下载的本地驱动器加载数据。

from tensorflow.examples.tutorials.mnist import input_data mnist = input_data.read_data_sets('data_set/')

于 2017-01-27T03:43:56.493 回答
2

对于TensorFlow API 2.0,mnist 数据更改为:tf.keras.datasets.mnist.load_data

于 2019-12-07T18:47:00.347 回答
1
cd your_mnist_dir &&\
wget https://github.com/HIPS/hypergrad/raw/master/data/mnist/mnist_data.pkl &&\
wget https://github.com/HIPS/hypergrad/raw/master/data/mnist/t10k-images-idx3-ubyte.gz &&\
wget https://github.com/HIPS/hypergrad/raw/master/data/mnist/t10k-labels-idx1-ubyte.gz &&\
wget https://github.com/HIPS/hypergrad/raw/master/data/mnist/train-images-idx3-ubyte.gz &&\
wget https://github.com/HIPS/hypergrad/raw/master/data/mnist/train-labels-idx1-ubyte.gz
于 2017-03-07T03:41:41.670 回答
1

删除行:

from tensorflow.examples.tutorials.mnist import input_data
fashion_mnist = input_data.read_data_sets('input/data',one_hot=True)

下面的行就足够了:

fashion_mnist = keras.datasets.fashion_mnist

请注意,如果数据集在 keras 内置的示例中不可用,这将下载数据集并解决问题。:)

于 2020-07-14T05:17:08.393 回答
1

MNIST input_data 是内置的,它不是一个单独的模块,它在 Tensorflow 模块中,试试

from tensorflow.examples.tutorials.mnist import input_data
于 2017-04-02T15:29:52.657 回答
1

MNIST 数据集包含在 tensorflow 示例教程中,如果我们想使用它:

导入 MNIST 数据以识别手写数字

from tensorflow.examples.tutorials.mnist import input_data
mnist = input_data.read_data_sets("MNIST data", one_hot=True)
于 2017-10-03T03:47:54.127 回答
0

如 TensorFlow 官网所示,所有 MNIST 数据都托管在http://yann.lecun.com/exdb/mnist/

在此处输入图像描述

于 2018-03-25T11:16:32.270 回答
0

对于 2.0 以上的 Tensorflow API,要使用 MNIST 数据集,可以使用以下命令,

import tensorflow_datasets as tfds
data = tfds.load(name = "mnist")
于 2020-04-17T07:04:23.797 回答
0

以下步骤在我的笔记本中完美运行:

第 1 步:从 github 获取 Python 文件: !git clone https://github.com/tensorflow/tensorflow.git

第 2 步:将这些文件附加到我的 Python 路径中:

import sys

sys.path.append('/content/tensorflow/tensorflow/examples/tutorials/mnist')

第 3 步:使用 'input_data' 函数加载 MNIST 数据

import input_data

mnist = input_data.read_data_sets("MNIST_data/", one_hot=True)

就这样 !

于 2020-04-23T09:08:12.127 回答