[논문 리뷰] Experiments on Parallel Training of Deep Neural Network using Model Averaging
이 논문은 복수의 GPU와 MPI를 사용하여 병렬 학습을 위한 모델 평균화 방법을 제안하며, 상당한 통신 오버헤드 없이 빈번한 파라미터 동기화를 가능하게 한다. 16개 및 32개 GPU를 사용할 경우 각각 9.3배 및 17배의 속도 향상을 달성하며 정확도 저하가 최소화되었고, NG-SGD와 RBM 전학습이 모델 평균화 프레임워크 내에서 학습 안정성과 수렴성을 크게 향상시킨다는 것을 입증하였다.
In this work we apply model averaging to parallel training of deep neural network (DNN). Parallelization is done in a model averaging manner. Data is partitioned and distributed to different nodes for local model updates, and model averaging across nodes is done every few minibatches. We use multiple GPUs for data parallelization, and Message Passing Interface (MPI) for communication between nodes, which allows us to perform model averaging frequently without losing much time on communication. We investigate the effectiveness of Natural Gradient Stochastic Gradient Descent (NG-SGD) and Restricted Boltzmann Machine (RBM) pretraining for parallel training in model-averaging framework, and explore the best setups in term of different learning rate schedules, averaging frequencies and minibatch sizes. It is shown that NG-SGD and RBM pretraining benefits parameter-averaging based model training. On the 300h Switchboard dataset, a 9.3 times speedup is achieved using 16 GPUs and 17 times speedup using 32 GPUs with limited decoding accuracy loss.
연구 동기 및 목표
- 다양한 GPU를 통한 깊이 신경망의 효율적 병렬 학습을 모델 평균화를 통해 탐구한다.
- NG-SGD와 RBM 전학습이 모델 평균화 기반 학습에 미치는 영향을 평가한다.
- 분산 환경에서 학습률 스케줄, 미니배치 크기 및 평균화 빈도에 최적의 설정을 규명한다.
- 모델 정확도를 유지하면서도 분산 학습의 통신 오버헤드를 최소화한다.
- MPI와 다중 GPU 환경을 활용한 빈번한 모델 평균화를 통한 DNN 학습 확장 가능성 탐색
제안 방법
- 학습 데이터를 복수의 GPU에 분산 배포하고 각 노드에서 로컬 SGD 업데이트를 수행한다.
- 저지연 통신을 위한 MPI를 사용해 몇 개의 미니배치마다 노드 간 모델 파라미터를 평균화하여 동기화한다.
- 모델 평균화 중 수렴성과 파라미터 안정성을 향상시키기 위해 자연경향성 스토하스틱 경사하강법(NG-SGD)을 사용한다.
- 신경망 가중치 초기화를 위해 RBM 전학습을 적용하여 병렬 학습 환경에서의 일반화 성능을 향상시킨다.
- 학습 노드 수에 비례하여 스케일링되는 학습률 스케줄을 구현하여 효과적인 파라미터 업데이트를 유지한다.
- MPI를 통한 메모리 내 파라미터 교환을 통해 평균화 중 데이터 I/O를 방지함으로써 빈번한 동기화를 가능하게 한다.
실험 결과
연구 질문
- RQ1MPI를 통한 빈번한 동기화를 통해 복수의 GPU에서 효과적이고 확장 가능한 DNN 학습이 가능한가?
- RQ2NG-SGD와 RBM 전학습은 모델 평균화 프레임워크 내에서 수렴성과 정확도에 어떤 영향을 미치는가?
- RQ3병렬 DNN 학습에서 평균화 빈도, 미니배치 크기 및 학습률 스케줄 간 최적의 균형은 무엇인가?
- RQ4빈번한 모델 평균화가 대규모 DNN 학습에서 고속도를 달성하면서도 높은 정확도를 유지할 수 있는가?
- RQ5음성 인식 작업에서 기존 방법과 비교해 본다면, 제안된 방법은 속도 향상과 디코딩 성능 측면에서 어떻게 다른가?
주요 결과
- 16개 GPU를 사용할 경우 300시간 분량의 Switchboard 데이터셋에서 WER가 0.3~0.9포인트 감소하는 데서도 9.3배의 속도 향상을 달성하였다.
- 32개 GPU를 사용할 경우 17배의 속도 향상을 달성하여 모델 평균화 프레임워크 내에서 뛰어난 확장성을 입증하였다.
- NG-SGD는 학습 안정성과 수렴성을 크게 향상시켜 표준 SGD보다 WER 및 속도 향상 측면에서 뛰어난 성능을 보였다.
- RBM 전학습은 모델 평균화와 조합했을 때 특히 초기 학습 단계에서 성능 향상을 크게 높였다.
- 10개의 미니배치 간격으로 평균화할 경우 SWB에서 WER 15.1을 기록하여 20개 간격(15.8)보다 더 우수한 성능을 보였으며, 이는 더 빈번한 평균화가 정확도 향상에 기여함을 시사한다.
- 지수적 학습률 스케줄링은 Newbob 스케줄과 유사한 성능을 보였지만, 더 많은 하이퍼파rameter 튜닝이 필요하다.
더 나은 연구,지금 바로 시작하세요
연구 설계부터 논문 작성까지, 연구 시간을 획기적으로 줄여보세요.
카드 등록 없음 · 무료 플랜 제공
이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.