Tutorial 첫번째에서 fasionmnist dataset 다운로드 이슈

PyTorch 공부를 시작한지 얼마 안된 새내기 입니다.
어렵게 PyTorch 설치에 성공하고 튜토리얼을 따라하고 있는데요.
아래 예제에서 회사 보안 이슈로 Python에서 인터넷 연결이 direct로 안 되어서 별도로 파일을 다운받았는데 어디에다 저장해야 아래 코드에서 train-images-idx3-ubyte를 제대로 읽어올수 있을지 모르겠어요.
Python 3.11이고 PyCharm이 개발환경입니다.

공개 데이터셋에서 학습 데이터를 내려받습니다.

training_data = datasets.FashionMNIST(
root="data",
train=True,
download=False,
transform=ToTensor(),
)

공개 데이터셋에서 테스트 데이터를 내려받습니다.

test_data = datasets.FashionMNIST(
root="data",
train=False,
download=False,
transform=ToTensor(),
)

  • 아래 답변은 OpenAI의 GPT-3.5(ChatGPT) 모델로 자동 생성한 것으로, 정확하지 않을 수 있습니다.
  • 잘못된 답변을 보셨다면 댓글로 첨삭 지도 부탁드립니다. :sweat_smile:

안녕하세요, hanspace77님!

PyTorch 공부를 시작하신 것을 축하드립니다. 질문에 대한 답변을 드리겠습니다.

주어진 코드에서 datasets.FashionMNIST를 사용하여 FashionMNIST 데이터셋을 다운로드하고 있습니다. download 매개변수를 False로 설정하면 데이터셋을 자동으로 다운로드하지 않고, 수동으로 다운로드한 데이터셋을 사용할 수 있습니다.

다운로드한 데이터셋을 어디에 저장해야 하는지에 대해서는 root 매개변수를 사용하여 지정할 수 있습니다. 기본적으로 root는 "data"로 설정되어 있으며, 현재 작업 디렉토리에 "data"라는 폴더를 생성하고 그 안에 데이터셋을 저장합니다.

따라서, 별도로 다운로드한 데이터셋을 사용하려면 "data" 폴더를 생성하고 그 안에 데이터셋 파일을 저장하면 됩니다. 예를 들어, "data" 폴더를 현재 작업 디렉토리에 생성하고 그 안에 "train-images-idx3-ubyte" 파일을 저장하면 아래 코드에서 데이터셋을 제대로 읽어올 수 있습니다.

training_data = datasets.FashionMNIST(
    root="data",
    train=True,
    download=False,
    transform=ToTensor(),
)

test_data = datasets.FashionMNIST(
    root="data",
    train=False,
    download=False,
    transform=ToTensor(),
)

위 코드에서 root 매개변수를 원하는 경로로 변경하여 데이터셋을 저장할 수 있습니다.

더 자세한 내용은 PyTorch 공식 튜토리얼의 "FashionMNIST 데이터셋 사용하기" 가이드를 참고하시면 도움이 될 것입니다. 해당 가이드에는 데이터셋을 다운로드하고 사용하는 방법에 대한 자세한 설명과 예제 코드가 포함되어 있습니다.

답변이 도움이 되었는지 확인 부탁드리며, 추가로 궁금한 사항이 있다면 언제든지 질문해주세요!


  • 답변이 어떠셨나요? 괜찮았다고 생각하신다면 아래 :heart:를 한 번 눌러주시길 부탁드려요!
1개의 좋아요
  • 아래 답변은 OpenAI의 GPT-4 모델로 자동 생성한 것으로, 정확하지 않을 수 있습니다.
  • 잘못된 답변을 보셨다면 댓글로 첨삭 지도 부탁드립니다. :sweat_smile:

안녕하세요, PyTorch를 공부하시는데 어려움을 겪고 계신 것 같아 공감합니다. 질문을 정리해보면, FashionMNIST 데이터셋을 직접 다운로드 받아서 사용하고 싶으신데, 어디에 저장해야 PyTorch에서 제대로 읽어올 수 있는지에 대한 문제로 이해하였습니다.

PyTorch에서 제공하는 torchvision.datasetsFashionMNIST 클래스는 기본적으로 데이터를 다운로드 받아 사용하도록 설계되어 있습니다. 이 때, root 파라미터에 지정한 디렉토리에 데이터를 다운로드 받습니다.

직접 다운로드 받은 데이터를 사용하려면, root 파라미터에 지정한 디렉토리에 다운로드 받은 데이터를 저장하면 됩니다. 다만, FashionMNIST 데이터셋은 다음과 같은 파일들로 구성되어 있습니다.

  • train-images-idx3-ubyte
  • train-labels-idx1-ubyte
  • t10k-images-idx3-ubyte
  • t10k-labels-idx1-ubyte

따라서, 위의 파일들을 모두 다운로드 받아 root 파라미터에 지정한 디렉토리에 저장해야 합니다. 예를 들어, root 파라미터를 "data"로 지정했다면, "data/FashionMNIST/raw" 디렉토리에 위의 파일들을 저장하면 됩니다.

다음은 예제 코드입니다.

from torchvision import datasets, transforms

# 데이터를 저장할 디렉토리 지정
data_dir = "data"

# 학습 데이터 로드
training_data = datasets.FashionMNIST(
    root=data_dir,
    train=True,
    download=False,
    transform=transforms.ToTensor(),
)

# 테스트 데이터 로드
test_data = datasets.FashionMNIST(
    root=data_dir,
    train=False,
    download=False,
    transform=transforms.ToTensor(),
)

위의 코드를 실행하면, "data" 디렉토리에 저장된 FashionMNIST 데이터셋을 로드할 수 있습니다.

더 자세한 내용은 PyTorch 공식 문서의 torchvision.datasets를 참고하시면 좋을 것 같습니다.

제가 제시한 해결 방법이 hanspace77님의 문제를 해결하는데 도움이 되었으면 좋겠습니다. 그럼에도 불구하고 문제가 계속된다면, 추가적인 정보와 함께 다시 질문해주시면 감사하겠습니다. 제 답변이 틀릴 수도 있으니, 다른 자료나 의견도 참고하시는 것이 좋습니다.


  • 답변이 어떠셨나요? 괜찮았다고 생각하신다면 아래 :heart:를 한 번 눌러주시길 부탁드려요!
1개의 좋아요