paper-with-me

Papers

Reduced Precision Floating-Point Optimization for Deep Neural Network On-Device Learning on MicroControllers

2023-05-30 · Davide Nadalini, Manuele Rusci, Luca Benini, Francesco Conti

Enabling On-Device Learning (ODL) for Ultra-Low-Power Micro-Controller Units (MCUs) is a key step for post-deployment adaptation and fine-tuning of Deep Neural Network (DNN) models in future TinyML applications. This paper tackles this challenge by introducing a novel reduced precision optimization technique for ODL primitives on MCU-class devices, leveraging the State-of-Art advancements in RISC-V RV32 architectures with support for vectorized 16-bit floating-point (FP16) Single-Instruction Multiple-Data (SIMD) operations. Our approach for the Forward and Backward steps of the Back-Propagation training algorithm is composed of specialized shape transform operators and Matrix Multiplication (MM) kernels, accelerated with parallelization and loop unrolling. When evaluated on a single training step of a 2D Convolution layer, the SIMD-optimized FP16 primitives result up to 1.72$\times$ faster than the FP32 baseline on a RISC-V-based 8+1-core MCU. An average computing efficiency of 3.11 Multiply and Accumulate operations per clock cycle (MAC/clk) and 0.81 MAC/clk is measured for the end-to-end training tasks of a ResNet8 and a DS-CNN for Image Classification and Keyword Spotting, respectively -- requiring 17.1 ms and 6.4 ms on the target platform to compute a training step on a single sample. Overall, our approach results more than two orders of magnitude faster than existing ODL software frameworks for single-core MCUs and outperforms by 1.6 $\times$ previous FP32 parallel implementations on a Continual Learning setup.

📄 PDF Abstract BibTeX arXiv:2305.19167

Code (1)

pulp-platform/pulp-trainlib 공식 구현 pytorch

Tasks

Continual Learningimage-classificationImage ClassificationKeyword Spotting

Methods 이 논문이 사용한 방법론

Convolution A convolution is a type of matrix operation, consisting of a kernel, a small matrix of weights, that slides over input data performing element-wise multiplication with the…
ODL Deep Neural Networks (DNNs) are typically trained by backpropagation in a batch learning setting, which requires the entire training data to be made available prior to the…

Similar Papers 제목 키워드 기반

Quantizing Convolutional Neural Networks for Low-Power High-Throughput Inference Engines

2018-05-21 · Sean O. Settle, Manasa Bollavaram, Paolo D'Alberto, Elliott Delaye 외

Deep learning as a means to inferencing has proliferated thanks to its versatility and ability to approach or exceed human-level accuracy. These computational models have seemingly insatiable appetites for computational …

Computational EfficiencyQuantizationVocal Bursts Intensity Prediction

BPT: Binary Point Cloud Transformer for Place Recognition

2023-03-02 · Zhixing Hou, Yuzhang Shang, Tian Gao, Yan Yan

Place recognition, an algorithm to recognize the re-visited places, plays the role of back-end optimization trigger in a full SLAM system. Many works equipped with deep learning tools, such as MLP, CNN, and transformer, …

Customizing Number Representation and Precision

2022-12-08 · Olivier Sentieys, Daniel Menard

There is a growing interest in the use of reduced-precision arithmetic, exacerbated by the recent interest in artificial intelligence, especially with deep learning. Most architectures already provide reduced-precision c…

Mixed Precision Training With 8-bit Floating Point

2019-05-29 · Naveen Mellempudi, Sudarshan Srinivasan, Dipankar Das, Bharat Kaul

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 migrat…

Quantization

FLInt: Exploiting Floating Point Enabled Integer Arithmetic for Efficient Random Forest Inference

2022-09-09 · Christian Hakert, Kuan-Hsun Chen, Jian-Jia Chen

In many machine learning applications, e.g., tree-based ensembles, floating point numbers are extensively utilized due to their expressiveness. Nowadays performing data analysis on embedded devices from dynamic data mass…