импорт входных данных MNIST tensorflow не работает

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 с pip (на моем OSX) и текущее местоположение ~/anaconda/lib/python2.7/site-packages/tensorflow/__init__.py

эти файлы предназначены для доступа непосредственно через tensorflow как sklearn данных? или я должен просто зайти в каталог и работать оттуда? Пример не ясен.

9 ответов


Итак, предположим, что вы находитесь в директории: /somePath/tensorflow/tutorial (и это ваш рабочий каталог).

все, что вам нужно сделать, это загрузитьinput_data.py и поставьте это. Пусть имя файла, где вы вызываете:

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

is main.py и он также находится в этом каталоге.

всякий раз, когда это делается, вы можете просто начать работать main.py который начнет загрузку файлов и поместит их в папку MNIST_data (как только они будут там скрипт не будет скачивать их в следующий раз).


старый учебник сказал, чтобы импортировать данные 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)

и это хорошо работает.


я использую другую версию - после установки на Windows с Docker здесь - и была аналогичная проблема.

легкий обходной путь, который я нашел, был:

1.В командной строке Linux выясните, где находится input_data.py на моем изображении Docker (в вашем случае вы упомянули, что вам пришлось загрузить его вручную. В моем случае он уже был здесь). Я использовал следующую команду 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')

надеюсь, что это может помочь. Если вы нашли лучший вариант, дайте мне знать. :)


как я могу начать учебник

Я не загружал папку, которую вы сделали, но я установил tensorflow по pip, а затем у меня была аналогичная проблема.

мой обходной заменить

import tensorflow.examples.tutorials.mnist.input_data

С

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


Я могу немного опоздать, но для 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/')


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

MNIST input_data был встроен, это просто не отдельный модуль, он находится внутри модуля Tensorflow, попробуйте

from tensorflow.examples.tutorials.mnist import input_data

набор данных MNIST, включенный в учебник TensorFlow examples, если мы хотим использовать это:

импорт данных MNIST для идентификации рукописных digites

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

Как официальный TensorFlow сайте показаны, все данных MNIST размещенного на http://yann.lecun.com/exdb/mnist/

enter image description here