상세 컨텐츠

본문 제목

[pytorch] mnist download error - "File not found or corrupted"

머신러닝 딥러닝

by 힐둔 2022. 3. 21. 13:48

본문

mnist를 이용한 pytorch 예제 프로그램을 돌려보려고 하는데, 아래와 같이 "File not found or corrupted" 에러를 내며 다운로드 하지 못하는 경우가 있다. (아래와 같은 코드를 이용해서 다운로드 할 수 있다.)

from torchvision import datasets
from torchvision.transforms import ToTensor
train_data = datasets.MNIST(
    root = 'data',
    train = True,                         
    transform = ToTensor(), 
    download = True,            
)

파이토치 mnist 다운로드 오류

 

mnist 다운로드 받는 mirror 사이트의 오류로 보이며 아래처럼 간단한 소스 수정 후 (mirror 사이트 우선 순위 변경), jupyter notebook을 재 실행 했더니 정상적으로 다운로드 되었다. 수정은 간단했지만 하루를 googling 한 것 같다.

 

기본으로 깔리는 pytorch 패키지 안에 mnist 다운 받는 site들이 몇개 들어 있고 이 중 가장 먼저 시도하는 site가 문제가 있다. 좀 더 자세히 보면, torchvision의 mnist.py의 소스를 보면 아래와 같이 mirrors 사이트가 구성 되어 있고, 첫번째로 yann.lecun.com으로 되어 있는데, 어떤 사유로 제대로 다운로드 되지 못하는 문제가 있는 것 같다. 그래서 두번째인 ossci-dataset.s3.amazonaws.com/mnist를 먼저 찾아보도록 우선 순위를 변경했더니 정상 적으로 다운로드 되었다. 나 같은 경우 첫번째를 주석처리 했다.

 

 

파일위치 : anaconda3/envs/pytorch_p39_cuda113/lib/python3.9/site-packages/torchvision/datasets/mnist.py

                   (* 환경에 따라 다를 수 있다. grep -rn mnist.py로 검색을 해보자. )

    mirrors = [
#        'http://yann.lecun.com/exdb/mnist/',
        'https://ossci-datasets.s3.amazonaws.com/mnist/',
    ]

 

wow !!

 

 

댓글 영역