시작하기무료로 시작하기

두 입력을 받는 데이터세트

멀티 입력 모델을 만들려면, 먼저 모델에 필요한 모든 입력을 제공할 수 있는 사용자 정의 데이터세트를 구성해야 해요. 이 연습 문제에서는 다음과 같은 트리플을 제공하는 Omniglot 데이터세트를 구축해 보겠습니다.

  • 분류할 문자 이미지,
  • 길이 30의 원-핫(one-hot) 인코딩된 알파벳 벡터(문자가 속한 알파벳의 ID를 나타내는 위치만 1, 나머지는 0),
  • 타깃 레이블(0에서 963 사이의 정수).

이미지의 파일 경로, 해당 알파벳 벡터, 타깃 레이블로 이루어진 3-튜플 리스트인 samples가 제공되어 있어요. 또한 아래 임포트는 이미 완료되어 있으니 바로 시작해 볼까요?

from PIL import Image
from torch.utils.data import DataLoader, Dataset
from torchvision import transforms

이 연습은 강의의 일부입니다

PyTorch로 배우는 Intermediate Deep Learning

강의 보기

실습형 인터랙티브 연습

이 예제를 이 샘플 코드를 완성하여 풀어보세요.

class OmniglotDataset(Dataset):
    def __init__(self, transform, samples):
        # Assign transform and samples to class attributes
        ____ = ____
        ____ = ____
코드 편집 및 실행