While integer arithmetic has been widely adopted for improved performance in deep quantized neural network inference, training remains a task primarily executed using floating point arithmetic. This is because both high dynamic range and numerical accuracy are central to the success of most modern training algorithms. However, due to its potential for computational, storage and energy advantages in hardware accelerators, neural network training methods that can be implemented with low precision integer-only arithmetic remains an active research challenge. In this paper, we present NITI, an efficient deep neural network training framework that stores all parameters and intermediate values as integers, and computes exclusively with integer arithmetic. A pseudo stochastic rounding scheme that eliminates the need for external random number generation is proposed to facilitate conversion from wider intermediate results to low precision storage. Furthermore, a cross-entropy loss backpropagation scheme computed with integer-only arithmetic is proposed. A proof-of-concept open-source software implementation of NITI that utilizes native 8-bit integer operations in modern GPUs to achieve end-to-end training is presented. When compared with an equivalent training setup implemented with floating point storage and arithmetic, NITI achieves negligible accuracy degradation on the MNIST and CIFAR10 datasets using 8-bit integer storage and computation. On ImageNet, 16-bit integers are needed for weight accumulation with an 8-bit datapath. This achieves training results comparable to all-floating-point implementations.
翻译:虽然在深四分化神经网络推算中,普遍采用整数算术来提高性能,但培训仍然是一项主要使用浮动点算算法执行的任务,因为高动态范围和数字精度是大多数现代培训算法成功的关键,但是,由于在硬件加速器中具有计算、储存和能源优势,因此,可以低精度整数计算的唯一算术实施的神经网络培训方法仍然是一项积极的研究挑战。在本文件中,我们介绍了一个高效的深神经网络培训框架,它将所有参数和中间值作为整数储存,并且完全用全数算法进行计算。建议采用一个模拟随机数字循环计划,消除外部随机数字生成的需要,以促进从更广泛的中间结果转换到低精度储存。此外,还提出了用全精度算算计算法计算的跨机率损失反调方案。 使用现代GPUS的所有本地8位整数操作实现端到端到端培训。 与采用浮动点存储和IMFAR IM IM IM IM IM IM IM IM 进行等量的模拟培训设置相当的模型, IMBI IM IM IM IM IM IM IM IM IM IM IM IM IM IM IM IM IM IM IM IM IM IM IM IM IM IM IM IM IM IM IM IM IM IM IM IM IM IM IM IM IM IM IM IM IM IM IM IM IM IM IM IM IM IM IM IM IM IM IM IM IM IM IM IM IM IM IM IM IM IM IM IM IM IM IM IM IM IM IM IM IM IM IM IM IM IM IM IM IM IM IM IM IM IM IM IM IM IM IM IM IM IM IM IMD IMD IM IM IM IM IM IM IM IM IM IM IM IM IM IM IM IMD IMD IM IM IM IM IM IM IM IM IM IM