파이토치 튜토리얼 분류기(CLASSIFIER) 학습하기 CIFAR10 데이터로드 질문

transform = transforms.Compose(
[transforms.ToTensor(),
transforms.Normalize((0.5, 0.5, 0.5), (0.5, 0.5, 0.5))])

batch_size = 4

trainset = torchvision.datasets.CIFAR10(root=’./data’, train=True,
download=True, transform=transform)
trainloader = torch.utils.data.DataLoader(trainset, batch_size=batch_size,
shuffle=True, num_workers=0)

testset = torchvision.datasets.CIFAR10(root=’./data’, train=False,
download=True, transform=transform)
testloader = torch.utils.data.DataLoader(testset, batch_size=batch_size,
shuffle=False, num_workers=0)

classes = (‘plane’, ‘car’, ‘bird’, ‘cat’,
‘deer’, ‘dog’, ‘frog’, ‘horse’, ‘ship’, ‘truck’)

아나콘다3으로 공부하는데 이 코드 부분에서

URLError: <urlopen error [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: certificate has expired (_ssl.c:1125)>

이러한 오류가 납니다. BrokenPipeError 오류는 아닌 것으로 보이는데 Colab으로 돌리면 또 오류가 안나더군요. 혹시 아나콘다3으로 오류 원인과 해결방법을 알 수 있을까요.

안녕하세요, @Orange_Cat 님.

해당 에러는 CIFAR10 데이터셋을 받아오기 위해 시도하던 중 발생한 서버쪽 SSL 인증서 관련 에러(인증서 만료)로 보입니다.
즉, Anaconda의 오류는 아니니 신경쓰지 않으셔도 될 것 같습니다.

다만, 아래와 같이 제 환경(Python 3.8.8, torchvision 0.10.0)에서는 CIFAR10 데이터셋을 받아오는데 별다른 오류가 없고

$ python
Python 3.8.8 (default, Feb 24 2021, 21:46:12)
[GCC 7.3.0] :: Anaconda, Inc. on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import torchvision
>>> torchvision.__version__
'0.10.0+cu102'
>>>
>>> torchvision.datasets.CIFAR10(root='./data', download=True)
Downloading https://www.cs.toronto.edu/~kriz/cifar-10-python.tar.gz to ./data/cifar-10-python.tar.gz
170499072it [00:18, 9014068.03it/s]
Extracting ./data/cifar-10-python.tar.gz to ./data
Dataset CIFAR10
    Number of datapoints: 50000
    Root location: ./data
    Split: Train
>>>

GitHub에서 torchvision > dataset > cifar.py에도 url(www.cs.toronto.edu) 부분의 변경 또한 없어보입니다.

혹시 네트워크 문제일 수도 있으니 확인을 위해 네트워크를 변경해보시거나, 아래 URL로 직접 접근하셔서 CIFAR10 데이터셋을 다운로드 받으실 수 있는지 확인해보시는 것도 방법일 것 같습니다.
https://www.cs.toronto.edu/~kriz/cifar-10-python.tar.gz

문제가 계속되면 알려주세요~