① 데이터로더는 전체 데이터셋을 작은 단위로 쪼개서 메모리로 가져올 때 사용합니다. 데이터로더에서 사용하는 파라미터는 다음과 같습니다. (데이터로더에서 사용하는 파라미터는 앞에서도 계속 살펴보았습니다. 그만큼 중요하고 자주 사용하기 때문에 다시 살펴봅니다.)
ⓐ 첫 번째 파라미터: 훈련 데이터셋
ⓑ batch_size: 메모리로 한 번에 불러올 데이터의 크기
ⓒ shuffle: True로 지정하면 데이터를 무작위로 섞겠다는 의미입니다.
ⓓ num_workers: 데이터를 불러올 때 몇 개의 프로세스를 사용할지 지정하는 부분으로 병렬로 데이터를 불러오겠다는 의미입니다. 일반적으로 GPU를 사용할 때 많이 사용하는 파라미터입니다. 너무 많은 값을 할당하면 오버헤드가 발생할 수 있고 작게 할당하면 좋은 성능을 기대할 수 있으므로 적절한 값을 지정해야 합니다. 일반적으로 ‘4 * GPU 개수’를 지정하지만 모든 상황에 적합한 것은 아니므로 주의해서 사용할 필요가 있습니다.
ⓔ pin_memory: CPU를 사용하다 GPU로 전환할 때 속도 향상을 위해 사용합니다. 따라서 모델 훈련 과정에서 CPU나 GPU만 사용한다면 True로 지정할 필요가 없는 파라미터입니다. pin_memory를 True로 지정하면 훈련에 사용할 데이터셋을 GPU에 미리 불러와서 학습시키기 때문에 속도가 향상됩니다.