기억 장벽 극복: 대조 손실을 위한 거의 무한한 배치 크기 확장Breaking the Memory Barrier: Near Infinite Batch Size Scaling for
Contrastive Loss
대조 손실은 표현 학습에 대한 강력한 방법으로, 더 큰 배치 크기는 유사하고 비유사한 데이터를 더 잘 구별하기 위해 더 많은 부정적 샘플을 제공하여 성능을 향상시킵니다. 그러나 배치 크기를 확장하는 것은 GPU 메모리 소비의 이차적 증가로 제한되며, 주로 유사성 행렬의 완전한 인스턴스화 때문입니다. 이를 해결하기 위해 우리는 대조 손실 계산을 임의의 작은 블록으로 분할하여 유사성 행렬의 완전한 자료화를 피하는 타일 기반 계산 전략을 제안합니다. 더불어, 분산 시스템의 계층 구조를 활용하기 위해 다중 수준의 타일링 전략을 소개하여 GPU 수준에서 링 기반 통신을 활용하여 동기화를 최적화하고 CUDA 코어 수준에서 통합 커널을 사용하여 I/O 오버헤드를 줄입니다. 실험 결과는 제안된 방법이 배치 크기를 전례 없는 수준으로 확장시킨다는 것을 보여줍니다. 예를 들어, 8개 또는 32개의 A800 80GB를 사용하여 4M 또는 12M의 배치 크기로 CLIP-ViT-L/14 모델의 대조 훈련을 가능하게 하면서 정확도를 희생시키지 않습니다. 최신 기술에 비해 메모리 효율적인 솔루션을 비교했을 때, 메모리를 두 단계 줄이면서 비슷한 속도를 유지합니다. 코드는 공개적으로 제공될 예정입니다.