J'ai téléchargé les images et les étiquettes de formation MNIST sur yann.lecun.com et je les ai décompressées. J'essaye de les charger en utilisant ce code -
FileNotFoundError: [Errno 2] No such file or directory: '/python/mnist-files'
Cependant, j'obtiens cette erreur -
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
Le répertoire existe, et le les noms de fichiers sont corrects. Comment puis-je résoudre ce problème?
EDIT: J'ai essayé la même chose avec le package python-mnist -
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'
J'ai obtenu une erreur similaire-
from mnist import MNIST
mndata = MNIST('/python/mnist-files')
features,labels = mndata.load_training()
L'erreur ne semble provenir que du fichier training-labels; J'ai essayé de retélécharger le fichier, mais cela ne l'a pas corrigé.
EDIT 2: Comme demandé, voici la sortie de ls -l / python / mnist-files -
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'
EDIT 3: Voici la sortie de print (os.listdir ('/ python / mnist-files')) :
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')
Je suis totalement perplexe - je sais que le répertoire existe! Je peux le voir quand je cd dans /python !
3 Réponses :
Vous pouvez essayer d'utiliser ce code.
from tensorflow.examples.tutorials.mnist import input_data
mnist = input_data.read_data_sets('MNIST_data', validation_size=0)
J'ai exécuté le code et cela fonctionne très bien !! J'espère que vous le trouverez utile.
Il existe une différence entre un / et un ~ . Par défaut,
from os.path import expanduser
home = expanduser("~")+'/python/mnist-files'
mndata = MNIST(home)
features,labels = mndata.load_training()
vérifiera à '/' . Je suppose que votre fichier python se trouve dans '~' c'est-à-dire votre répertoire personnel.
Vous pouvez essayer ceci:
os.dir('/')
C'était ce dont j'avais besoin; J'avais besoin d'écrire les chemins de fichier comme '/ home / username / python / ...'. Erreur stupide causée par ne pas en savoir suffisamment sur la navigation dans les fichiers. Merci d'avoir répondu!
Pour moi, cela m'a aidé à renommer le fichier en train-images.idx3-ubyte au lieu de train-images-idx3-ubyte (le - code> après que les images aient été changées en . ).
Pouvez-vous essayer de mettre vos données mnist dans le répertoire de votre fichier python? Et puis lancez MNIST comme ceci
mndata = MNIST (). Avez-vous téléchargé et décompressé les fichiers à ici ? Pouvez-vous ajouter l'outpyt dels -l / python / mnist-files@ Jeppe- oui, j'ai utilisé le site que vous avez mentionné dans votre lien. Je les ai décompressés également, si c'est ce que vous voulez dire.
@ Jeppe- oui, j'ai utilisé le site que vous avez mentionné dans votre lien. Je les ai décompressés également, si c'est ce que vous voulez dire.
Oui, décompressez. :-P - Hm, vos permissions / tailles de fichiers sont les mêmes que les miennes. Que faire si vous mettez un fichier aléatoire dans le même répertoire - pouvez-vous l'ouvrir à partir de python? Ou peut-être exécuter
print (os.listdir ('/ python / mnist-files'))? Désolé, je ne fais que deviner ici.