Publications

Detailed Information

8-bit 부동소수점 혼합 정밀도 훈련 : Mixed Precision Training with an 8-bit Floating Point Format

Cited 0 time in Web of Science Cited 0 time in Scopus
Authors

조영민

Advisor
성원용
Issue Date
2020
Publisher
서울대학교 대학원
Description
학위논문(석사)--서울대학교 대학원 :공과대학 전기·정보공학부,2020. 2. 성원용.
Abstract
오늘날, 인공신경망은 다양한 응용 분야에서 우수한 성능을 보인다. 좋은 성능을 얻기 위해서는 복잡한 모델과 큰 사이즈의 데이터가 필요하며, 훈련 과정에 상당히 많은 연산량과 메모리 자원을 요구한다. 본 논문에서는 필요한 연산량과 메모리 자원을 줄이기 위해, 낮은 정밀도 데이터형을 활용한 8-bit 부동소수점(FP8) 혼합 정밀도 훈련을 진행한다. FP8의 지수부, 가수부 bit를 어떻게 구성하는 것이 가장 좋은지 살펴본다. 또한, FP8 혼합 정밀도 훈련에 스토케스틱 가중치 평균(SWA)을 다양하게 적용해보면서 가장 좋은 SWA 적용 방식을 찾는다.
다양한 실험 결과에 의하면, FP8을 부호 1-bit, 지수부 5-bit, 가수부 2-bit(FP8-s1e5m2)으로 구성해서 FP8 혼합 정밀도 훈련을 한 뒤, SWA를 적용하는 것이 가장 적합해 보인다. 본 논문에서는 FP8의 지수부, 가수부 bit 개수를 달리하며 bit 조합에 따른 모델 성능을 검증했다. FP8-s1e4m3은 성능은 우수하지만, 값 표현 범위가 좁아서 복잡한 작업에서 훈련이 되지 않았다. FP8-s1e6m1은 훈련은 되지만 모델이 깊어질수록 성능 저하가 상당히 심했다. FP8-s1e5m2은 약간의 성능 저하를 보였는데, SWA를 적용할 경우 약간의 성능 저하를 보이면서 FP32-Baseline의 성능을 거의 따라갔다. 추가로 본 논문에서는 SWA를 FP8 혼합 정밀도 훈련에 다양하게 적용해보았다. 훈련이 끝난 뒤 SWA를 적용하는 것은 대다수 실험에서 성능 향상을 보였다. 그러나, 훈련 중 SWA를 1회 적용하는 방식과 훈련 중 SWA를 매 에포크마다 적용하는 방식은 성능 향상을 보이지 않았다.
In recent years, Artificial Neural Networks(ANN) perform well in a variety of applications. To achieve better performance, complex models and large data are required, which necessitates a significant amount of computation and memory resources during training. In this paper, mixed precision training with 8-bit floating point format(FP8) is performed to reduce the amount of computation and memory resources. We analyzed how many bits are best for exponent and mantissa of the FP8. We also explored various ways of applying Stochastic Weighted Averaging(SWA) to FP8 mixed precision training and found the best way of them.
According to various experimental results, it is most suitable to apply SWA after FP8 mixed precision training with FP8 of sign 1-bit, exponent 5-bit and mantissa 2-bit(FP8-s1e5m2). In this paper, we verified the model performance according to the combination of bits with different numbers of exponent and mantissa bits of FP8. The FP8-s1e4m3 has good performance, but its narrow value representation makes it difficult to train in complex tasks. A neural network with FP8-s1e6m1 can be trained, but the deeper the model, the more severe the performance degradation. FP8-s1e5m2 showed some performance degradation. The applying SWA to FP8-s1e5m2 almost followed the performance of the FP32-Baseline. In addition, this paper has applied SWA in various ways to FP8 mixed precision training. Applying SWA after training has improved performance in most experiments. However, applying SWA once during training or applying SWA at every epoch during training have not shown any improvement.
Language
kor
URI
http://dcollection.snu.ac.kr/common/orgView/000000158613
Files in This Item:
Appears in Collections:

Altmetrics

Item View & Download Count

  • mendeley

Items in S-Space are protected by copyright, with all rights reserved, unless otherwise indicated.

Share