vix.ing · top · new · best · stats · spec

Mixed Precision Training With 8-bit Floating Point

2019/05/29 by Naveen Mellempudi, Mellempudi, Naveen, Sudarshan Srinivasan +5
Computer Science · Engineering · #Astronomical Observations and Instrumentation #FOS: Computer and information sciences #Image and Object Detection Techniques #Machine Learning (cs.LG) #Machine Learning (stat.ML) #Robotic Mechanisms and Dynamics

paper · pdf · doi:10.48550/arxiv.1905.12334

openalex publication_date 2019/05/29 · openalex created_date 2025/10/10 · openalex updated_date 2026/07/28

Abstract

Reduced precision computation for deep neural networks is one of the key areas addressing the widening compute gap driven by an exponential growth in model size. In recent years, deep learning training has largely migrated to 16-bit precision, with significant gains in performance and energy efficiency. However, attempts to train DNNs at 8-bit precision have met with significant challenges because of the higher precision and dynamic range requirements of back-propagation. In this paper, we propose a method to train deep neural networks using 8-bit floating point representation for weights, activations, errors, and gradients. In addition to reducing compute precision, we also reduced the precision requirements for the master copy of weights from 32-bit to 16-bit. We demonstrate state-of-the-art accuracy across multiple data sets (imagenet-1K, WMT16) and a broader set of workloads (Resnet-18/34/50, GNMT, Transformer) than previously reported. We propose an enhanced loss scaling method to augment the reduced subnormal range of 8-bit floating point for improved error propagation. We also examine the impact of quantization noise on generalization and propose a stochastic rounding technique to address gradient noise. As a result of applying all these techniques, we report slightly higher validation accuracy compared to full precision baseline.

Citations

Related