Как исправить ошибку «Нет такого файла или каталога» при загрузке набора данных MNIST - PullRequest
0 голосов
/ 08 февраля 2019

Я скачал учебные образы и ярлыки MNIST с yann.lecun.com и распаковал их.Я пытаюсь загрузить их, используя этот код -

from mlxtend.data import loadlocal_mnist

features,labels = loadlocal_mnist(
    images_path='/python/mnist-files/train-images-idx3-ubyte',
    labels_path='/python/mnist-files/train-labels-idx1-ubyte')

Однако я получаю эту ошибку -

Traceback (most recent call last):
  File "generateClassifier.py", line 12, in <module>
    labels_path='/python/mnist-files/train-labels-idx1-ubyte')
  File "/home/inglorion/.local/lib/python3.6/site- 
packages/mlxtend/data/local_mnist.py", line 36, in loadlocal_mnist
    with open(labels_path, 'rb') as lbpath:
FileNotFoundError: [Errno 2] No such file or directory: '/python/mnist- 
files/train-labels-idx1-ubyte'

Каталог существует, и имена файлов правильные.Как я могу это исправить?

РЕДАКТИРОВАТЬ: Я пытался то же самое с python-mnist пакет -

from mnist import MNIST
mndata = MNIST('/python/mnist-files')
features,labels = mndata.load_training()

Я получил похожую ошибку -

Traceback (most recent call last):
  File "generateClassifier.py", line 11, in <module>
    features,labels = mndata.load_training()
  File "/home/inglorion/.local/lib/python3.6/site-packages/mnist/loader.py", 
line 126, in load_training
    os.path.join(self.path, self.train_lbl_fname))
  File "/home/inglorion/.local/lib/python3.6/site-packages/mnist/loader.py", 
line 247, in load
    with self.opener(path_lbl, 'rb') as file:
  File "/home/inglorion/.local/lib/python3.6/site-packages/mnist/loader.py", 
line 239, in opener
    return open(path_fn, *args, **kwargs)
FileNotFoundError: [Errno 2] No such file or directory: '/python/mnist- 
files/train-labels-idx1-ubyte'

ошибка, кажется, только с файлом обучающих меток;Я попытался повторно загрузить файл, но это не помогло.

РЕДАКТИРОВАТЬ 2: В соответствии с запросом, здесь выводится ls -l /python/mnist-files -

total 46156
-rw-r--r-- 1 inglorion inglorion 47040016 Jul 21  2000 train-images-idx3- 
ubyte
-rw-r--r-- 1 inglorion inglorion    60008 Jul 21  2000 train-labels-idx1- 
ubyte
-rw-r--r-- 1 inglorion inglorion   147970 Feb  8 22:43 wget-log
-rw-r--r-- 1 inglorion inglorion      682 Feb  9 14:40 wget-log.1

РЕДАКТИРОВАТЬ 3: Вотвывод print(os.listdir('/python/mnist-files')):

FileNotFoundError: [Errno 2] No such file or directory: '/python/mnist-files'

Я полностью озадачен - я знаю каталог существует!Я вижу это, когда перехожу на /python!

Ответы [ 2 ]

0 голосов
/ 26 февраля 2019

Существует разница между / и ~ .По умолчанию

os.dir('/')

будет проверять на '/'.Я предполагаю, что ваш файл python находится в '~', т.е. в вашем домашнем каталоге.

Вы можете попробовать это:

from os.path import expanduser
home = expanduser("~")+'/python/mnist-files'
mndata = MNIST(home)
features,labels = mndata.load_training()

Дайте мне знать, если это поможет.

0 голосов
/ 26 февраля 2019

Вы можете попробовать использовать этот код.

from tensorflow.examples.tutorials.mnist import input_data
mnist = input_data.read_data_sets('MNIST_data', validation_size=0)

Я выполнил код, и он отлично работает !!Надеюсь, вы найдете это полезным.

...