2016-11-19 2 views
0
제가

keras.datasets가 mnist 가져 내지 대안

from keras.datasets import mnist 
import numpy as np 
(x_train, _), (x_test, _) = mnist.load_data() 

그것은 그것이 관련되어 있어야 이러한 Exception: URL fetch failure on https://s3.amazonaws.com/img-datasets/mnist.pkl.gz: None -- [Errno 110] Connection timed out

로 에러 메시지를 생성 MNIST 데이터를 가져올 필요가 Keras 예, 실험 한

내가 사용하고있는 네트워크 환경. 내 질문은 수동으로 다운로드 한 mnist 데이터 세트를 직접 가져올 수있는 함수 또는 코드가 있는지 여부입니다. 감사.

이것은

import sys 
import pickle 
import gzip 
f = gzip.open('/data/mnist.pkl.gz', 'rb') 
    if sys.version_info < (3,): 
    data = pickle.load(f) 
else: 
    data = pickle.load(f, encoding='bytes') 
f.close() 
import numpy as np 
(x_train, _), (x_test, _) = data 

그런 다음 나는 다음과 같은 오류 메시지가

Traceback (most recent call last): 
File "test.py", line 45, in <module> 
(x_train, _), (x_test, _) = data 
ValueError: too many values to unpack (expected 2) 

답변

1

음, keras.datasets.mnist 파일 is really short을 얻을 수정 된 접근 방식을 것입니다. 수동으로 같은 동작을 시뮬레이션 할 수 있습니다, 즉 : https://s3.amazonaws.com/img-datasets/mnist.pkl.gz

  • 에서

    1. 다운로드 데이터 집합.

      import gzip 
      f = gzip.open('mnist.pkl.gz', 'rb') 
      if sys.version_info < (3,): 
          data = cPickle.load(f) 
      else: 
          data = cPickle.load(f, encoding='bytes') 
      f.close() 
      (x_train, _), (x_test, _) = data 
      
  • +0

    안녕 sygi, 제안을 주셔서 감사합니다. 그러나 업데이트 된 게시물에 표시된대로 오류 메시지가 나타납니다. 너와 다른 점은 내가 피클을 사용한다는거야. 데이터를로드하는 중에 오류가 발생하지 않는 것 같습니다. – user785099

    +0

    필자는 시스템에서 pickle과 cPickle 모두와 파이썬 2와 3을 모두 사용할 수 있는지 확인했습니다. 동일한 파일 (md5 b39289ebd4f8755817b1352c8488b486)을 사용하고 있습니까? – sygi

    +0

    작동 여부, 왜 이전에 오류 메시지가 있었는지 모르겠다. 고마워. – user785099

    관련 문제