분산 딥러닝에서 통신 오버헤드를 줄이기 위해 레이어를 오버래핑하는 하이브리드 올-리듀스 기법

Alternative Title
Hybrid All-reduce Strategy with Layer Overlapping for Reducing Communication Overhead in Distributed Deep Learning
Author(s)
김대현
Advisor
오상윤
Department
일반대학원 인공지능학과
Publisher
The Graduate School, Ajou University
Publication Year
2021-02
Language
kor
Keyword
All-reduce동기화딥러닝분산딥러닝
Abstract
머신 러닝 기법 중 하나인 딥러닝은 이전에는 해결할 수 없다고 생각했던 문제에 대한 해결책을 제공하고 있다. 이에 따라 음성 인식, 시각적 객체 인식, 텍스트 처리와 같은 실제 응용 분야에서 딥러닝이 많이 사용되고 있다. 딥러닝에 사용되는 학습 데이터의 크기는 큰 대규모 데이터(수 Terabyte 급)를 사용하며, 높은 정확도를 달성하기 위하여 딥러닝 모델의 깊이 더 깊어지고 있다. 이에 따라 대규모 연산이 요구되고 있다. 이러한 대규모 데이터와 깊은 딥러닝 모델을 단일 노드 환경에서 학습을 한다면 많은 시간이 소요되며, 딥러닝 학습의 대규모 연산부하를 다수의 노드로 분산하여 학습하여 시간을 단축시킬 수 있는 분산 딥러닝 개념이 주목을 받고 있다. 딥러닝 알고리즘을 분산/병렬화 하는 방법 중 Data Parallelism 기법은 학습 데이터를 학습에 참여하는 노드로 나뉘어 학습이 진행된다. 이로 인하여 각 노드에서 지역적으로 업데이트한 지역 파라미터를 동기화는 과정을 하여야 한다. 본 연구에서는 기존의 분산 딥러닝의 효과적인 파라미터 동기화 과정을 위한 레이어 별 특성을 고려한 All-reduce 및 통신과 연산 오버래핑(Overlapping) 기법을 제안한다. 상위 레이어의 파라미터 동기화는 하위 레이어의 다음 전파과정 시간까지 통신 / 계산(학습)을 오버랩하여 진행할 수 있다. 또한 이미지 분류를 위한 일반적인 딥러닝 모델의 상위 레이어는 Convolution 레이어로 하위 레이어는 Fully-connected 레이어로 구성되어 있다. Convolution 레이어는 Fully-connected 레이어에 비해 적은 수의 파라미터를 가지고 있고 상위에 레이어가 위치하므로 네트워크 오버랩 허용시간이 짧기 때문에 이러한 점을 고려한 네트워크 지연시간을 단축할 수 있는 Butterfly All-reduce를 사용하고, 오버랩 허용시간이 보다 길고 오버랩 허용시간이 길기 때문에 네트워크 대역폭을 고려한 Ring All-reduce를 사용한다. 본 논문의 제안 방법의 효과를 검증하기 위해 제안 방법이 적용된 PyTorch 플랫폼 기반으로 실험 환경을 구성하여 배치크기에 대한 성능 평가를 진행하였다. 실험을 통해 제안 기법의 학습시간은 기존 PyTorch 방식 대비 최고 33% 단축된 모습을 확인하였다.
Alternative Abstract
Currently, the size of training dataset used for deep learning has become large-scale data, and the deep learning model is getting deeper to achieve high accuracy. Therefore, deep learning requires a lot of computation. Deep learning with a single node takes a lot of time. Therefore, distributed deep learning, which can shorten the time by distributing computation across multiple nodes, is required. Distributed deep learning requires synchronization. In this study, we propose hybrid all-reduce strategy that considers the characteristics of each layer and communication and computational overlapping technique. Since the convolution layer has fewer parameters than the fully-connected layer. Because convolution layer is located at the upper, the network overlappable time is short. So, Butterfly All-reduce is used to synchronize the convolution layer. Conversely, fully-connecter layer is synchronized using ring all-reduce. In the experiment, the proposed method reduced the time by up to 33% compared to the PyTorch.
URI
https://dspace.ajou.ac.kr/handle/2018.oak/20158
Fulltext

Appears in Collections:
Graduate School of Ajou University > Department of Artificial Intelligence > 3. Theses(Master)
Files in This Item:
There are no files associated with this item.
Export
RIS (EndNote)
XLS (Excel)
XML

Items in DSpace are protected by copyright, with all rights reserved, unless otherwise indicated.

Browse