
137
4
장
파이토치 데이터셋
4.8
훈련 성능 향상을 위해
ETL
병렬화하기
DataLoader
클래스를 사용하는 경우,
num
_
workers
매개변수를 사용해 손쉽게 병렬화할 수
있습니다. 예를 들어
CIFAR10
데이터셋에서 모델을 훈련하고 병렬 훈련하는 방법을 단계별로
살펴보겠습니다.
먼저, 추출 및 변환 단계를 살펴봅니다.
import torchvision.transforms as transforms
from torchvision.datasets import CIFAR10
# 변환 정의
transform = transforms.Compose([
transforms.ToTensor(),
transforms.Normalize((0.5, 0.5, 0.5), (0.5, 0.5, 0.5))
])
# CIFAR10 데이터셋 로드
dataset = CIFAR10(root='./data', train=True, download=True, transform=transform)
그런 다음 로드 단계를 위해
DataLoader
를 설정하고 생성합니다.
from torch.utils.data import DataLoader
# 여러 개의 워커를 사용하는 데이터 로더
data_loader = DataLoader(dataset, batch_size=64, shuffle ...