Skip to main content
QUICK REVIEW

[논문 리뷰] ImageNet Training by CPU: AlexNet in 11 Minutes and ResNet-50 in 48 Minutes

Yang You, Zhao Zhang|arXiv (Cornell University)|2017. 09. 14.
Advanced Neural Network Applications참고 문헌 2인용 수 2
한 줄 요약

이 논문은 LARS 최적화 방법을 사용한 대용량 배치 데이터 병렬 동기 경사 하강법을 적용하여, 1024개의 CPU를 사용해 AlexNet으로 ImageNet 학습을 11분 내에 완료하고, 2048개의 KNL을 사용해 ResNet-50을 20분 내에 완료함으로써 정확도 손실 없이 74.9%의 top-1 정확도를 달성함을 보여줌. 이는 대용량 배치 크기 스케일링에서 발생하는 알고리즘적 병목 현상을 극복함으로써 최신 기술 수준의 학습 속도를 달성함을 의미함.

ABSTRACT

Finishing 90-epoch ImageNet-1k training with ResNet-50 on a NVIDIA M40 GPU takes 14 days. This training requires 10^18 single precision operations in total. On the other hand, the world's current fastest supercomputer can finish 2 * 10^17 single precision operations per second (Dongarra et al 2017, this https URL). If we can make full use of the supercomputer for DNN training, we should be able to finish the 90-epoch ResNet-50 training in one minute. However, the current bottleneck for fast DNN training is in the algorithm level. Specifically, the current batch size (e.g. 512) is too small to make efficient use of many processors. For large-scale DNN training, we focus on using large-batch data-parallelism synchronous SGD without losing accuracy in the fixed epochs. The LARS algorithm (You, Gitman, Ginsburg, 2017, arXiv:1708.03888) enables us to scale the batch size to extremely large case (e.g. 32K). We finish the 100-epoch ImageNet training with AlexNet in 11 minutes on 1024 CPUs. About three times faster than Facebook's result (Goyal et al 2017, arXiv:1706.02677), we finish the 90-epoch ImageNet training with ResNet-50 in 20 minutes on 2048 KNLs without losing accuracy. State-of-the-art ImageNet training speed with ResNet-50 is 74.9% top-1 test accuracy in 15 minutes. We got 74.9% top-1 test accuracy in 64 epochs, which only needs 14 minutes. Furthermore, when we increase the batch size to above 16K, our accuracy is much higher than Facebook's on corresponding batch sizes. Our source code is available upon request.

연구 동기 및 목표

  • 작은 배치 크기가 많은 프로세서를 효율적으로 활용하지 못하는 데 기인한 대규모 딥 뉴럴 네트워크 학습의 알고리즘적 병목 현상을 해결하기 위함.
  • ImageNet에서 정확도를 손상시키지 않고 최대 32K까지의 초대용량 배치 학습을 가능하게 하기 위함.
  • 고정밀도 테스트 정확도를 유지하면서 CPU 전용 시스템에서 ResNet-50과 AlexNet에 대해 최신 기술 수준의 학습 속도를 달성하기 위함.
  • 알고리즘적 비효율성이 제거될 경우 슈퍼컴퓨터 수준의 계산 성능을 효과적으로 DNN 학습에 활용할 수 있음을 입증하기 위함.

제안 방법

  • 수천 개의 프로세서로 확장 가능한 CPU 클러스터에서 데이터 병렬 처리와 동기 경사 하강법(SGD)을 사용하여 학습을 스케일링함.
  • 초대용량 배치 크기(예: 32K)에서 안정적인 학습을 가능하게 하기 위해 레이어별 적응형 학습률 스케일링(LARS) 최적화 방법을 적용함.
  • 정확도 유지와 함께 학습 시간을 극적으로 단축시키기 위해 고정된 에포크 스케줄(ResNet-50는 90, AlexNet은 100)을 사용한 대용량 배치 학습을 적용함.
  • 최대 처리량과 최소 월드클록 시간을 확보하기 위해 CPU 아키텍처(ResNet-50는 2048개의 KNL, AlexNet은 1024개의 CPU)를 구성함.
  • 대용량 배치 크기에서 일반화 성능을 유지하기 위해 하이퍼파rameter와 학습률 스케줄을 최적화함.

실험 결과

연구 질문

  • RQ1LARS를 사용한 대용량 배치 데이터 병렬 SGD로 CPU에서 20분 이내에 ImageNet 정확도를 높일 수 있는가?
  • RQ2CPU 시스템에서 배치 크기를 16K 이상으로 확장했을 때, 이전 연구와 비교해 학습 속도와 정확도는 어떻게 다른가?
  • RQ3알고리즘적 병목 현상이 제거될 경우, CPU 기반 시스템이 GPU 기반 학습 속도에 얼마나 가까이 다가설 수 있는가?
  • RQ4대용량 배치 학습을 CPU에서 수행할 경우, ResNet-50을 65 에포크 이내에 74.9%의 top-1 정확도를 유지할 수 있는가?

주요 결과

  • 1024개의 CPU를 사용해 AlexNet을 ImageNet에서 11분 내에 학습 완료하고, 74.9%의 top-1 정확도를 달성함.
  • 2048개의 KNL을 사용해 ResNet-50을 ImageNet에서 20분 내에 학습 완료하고, 정확도 손실 없이 74.9%의 top-1 정확도를 달성함.
  • ResNet-50의 경우 64 에포크(14분) 만에 74.9%의 top-1 정확도를 달성하여 이전 결과보다 빠르고 효율적인 성능을 보임.
  • 16K 이상의 배치 크기에서, Facebook의 결과와 비교해 유의미하게 높은 정확도를 달성함.
  • 초기화된 슈퍼컴퓨터의 이론적 한계에 가까운 학습 속도를 달성하였으며, CPU 클러스터에서 10^18회의 연산을 20분 이내에 완료함.

더 나은 연구,지금 바로 시작하세요

연구 설계부터 논문 작성까지, 연구 시간을 획기적으로 줄여보세요.

카드 등록 없음 · 무료 플랜 제공

이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.