NeuralFuse: Обучение повышению точности вывода нейронных сетей с ограниченным доступом в режимах низкого напряжения
NeuralFuse: Learning to Improve the Accuracy of Access-Limited Neural Network Inference in Low-Voltage Regimes
June 29, 2023
Авторы: Hao-Lun Sun, Lei Hsiung, Nandhini Chandramoorthy, Pin-Yu Chen, Tsung-Yi Ho
cs.AI
Аннотация
Глубокие нейронные сети (DNN) стали повсеместно применяться в машинном обучении, однако их энергопотребление остается значительной проблемой. Снижение напряжения питания является эффективной стратегией для уменьшения энергопотребления. Однако агрессивное снижение напряжения питания может привести к ухудшению точности из-за случайных битовых ошибок в статической оперативной памяти (SRAM), где хранятся параметры модели. Для решения этой проблемы мы представляем NeuralFuse — новый дополнительный модуль, который решает компромисс между точностью и энергопотреблением в условиях низкого напряжения, обучая преобразования входных данных для создания устойчивых к ошибкам представлений. NeuralFuse защищает точность DNN как в нормальных, так и в условиях низкого напряжения. Более того, NeuralFuse легко реализовать, и его можно применять к DNN с ограниченным доступом, таким как неконфигурируемое оборудование или удаленный доступ к облачным API. Экспериментальные результаты показывают, что при уровне битовых ошибок в 1% NeuralFuse может снизить энергопотребление доступа к памяти SRAM до 24%, одновременно повышая точность до 57%. Насколько нам известно, это первый модельно-агностический подход (т.е. без переобучения модели) для устранения битовых ошибок, вызванных низким напряжением. Исходный код доступен по адресу https://github.com/IBM/NeuralFuse.
English
Deep neural networks (DNNs) have become ubiquitous in machine learning, but
their energy consumption remains a notable issue. Lowering the supply voltage
is an effective strategy for reducing energy consumption. However, aggressively
scaling down the supply voltage can lead to accuracy degradation due to random
bit flips in static random access memory (SRAM) where model parameters are
stored. To address this challenge, we introduce NeuralFuse, a novel add-on
module that addresses the accuracy-energy tradeoff in low-voltage regimes by
learning input transformations to generate error-resistant data
representations. NeuralFuse protects DNN accuracy in both nominal and
low-voltage scenarios. Moreover, NeuralFuse is easy to implement and can be
readily applied to DNNs with limited access, such as non-configurable hardware
or remote access to cloud-based APIs. Experimental results demonstrate that, at
a 1% bit error rate, NeuralFuse can reduce SRAM memory access energy by up to
24% while improving accuracy by up to 57%. To the best of our knowledge, this
is the first model-agnostic approach (i.e., no model retraining) to address
low-voltage-induced bit errors. The source code is available at
https://github.com/IBM/NeuralFuse.