더북(TheBook)

다음 코드는 GPTDatasetV1을 사용하여 파이토치 DataLoader를 통해 입력을 배치로 로드합니다.

코드 2-6 입력-타깃 쌍의 배치를 생성하기 위한 데이터 로더

def create_dataloader_v1(txt, batch_size=4, max_length=256,
                         stride=128, shuffle=True, drop_last=True,
                         num_workers=0):
    tokenizer = tiktoken.get_encoding("gpt2") ----- 토크나이저를 초기화합니다.
    dataset = GPTDatasetV1(txt, tokenizer, max_length, stride) ----- 데이터셋을 만듭니다.
    dataloader = DataLoader(
        dataset,
        batch_size=batch_size,
        shuffle=shuffle,
        drop_last=drop_last, ----- drop_last=True로 지정하면 batch_size보다 작을 경우 훈련 손실이 갑자기 높아지는 것을 피하기 위해 마지막 배치를 삭제합니다.
        num_workers=num_workers ----- 전처리에 사용할 CPU 프로세서 개수
    )

    return dataloader
신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.