Trainable Fixed-Point Quantization for Deep Learning Acceleration on FPGAs

Fuente: arXiv
Salvato in:
Dettagli Bibliografici
Autori principali: Dai, Dingyi, Zhang, Yichi, Zhang, Jiahao, Hu, Zhanqiu, Cai, Yaohui, Sun, Qi, Zhang, Zhiru
Natura: Preprint
Pubblicazione: 2024
Soggetti:
Accesso online:
Tags: Aggiungi Tag
Nessun Tag, puoi essere il primo ad aggiungerne!!
_version_ 1866916111106179072
author Dai, Dingyi
Zhang, Yichi
Zhang, Jiahao
Hu, Zhanqiu
Cai, Yaohui
Sun, Qi
Zhang, Zhiru
author_facet Dai, Dingyi
Zhang, Yichi
Zhang, Jiahao
Hu, Zhanqiu
Cai, Yaohui
Sun, Qi
Zhang, Zhiru
contents Quantization is a crucial technique for deploying deep learning models on resource-constrained devices, such as embedded FPGAs. Prior efforts mostly focus on quantizing matrix multiplications, leaving other layers like BatchNorm or shortcuts in floating-point form, even though fixed-point arithmetic is more efficient on FPGAs. A common practice is to fine-tune a pre-trained model to fixed-point for FPGA deployment, but potentially degrading accuracy. This work presents QFX, a novel trainable fixed-point quantization approach that automatically learns the binary-point position during model training. Additionally, we introduce a multiplier-free quantization strategy within QFX to minimize DSP usage. QFX is implemented as a PyTorch-based library that efficiently emulates fixed-point arithmetic, supported by FPGA HLS, in a differentiable manner during backpropagation. With minimal effort, models trained with QFX can readily be deployed through HLS, producing the same numerical results as their software counterparts. Our evaluation shows that compared to post-training quantization, QFX can quantize models trained with element-wise layers quantized to fewer bits and achieve higher accuracy on both CIFAR-10 and ImageNet datasets. We further demonstrate the efficacy of multiplier-free quantization using a state-of-the-art binarized neural network accelerator designed for an embedded FPGA (AMD Xilinx Ultra96 v2). We plan to release QFX in open-source format.
format Preprint
id arxiv_https___arxiv_org_abs_2401_17544
institution arXiv
publishDate 2024
record_format arxiv
spellingShingle Trainable Fixed-Point Quantization for Deep Learning Acceleration on FPGAs
Dai, Dingyi
Zhang, Yichi
Zhang, Jiahao
Hu, Zhanqiu
Cai, Yaohui
Sun, Qi
Zhang, Zhiru
Machine Learning
Computer Vision and Pattern Recognition
Quantization is a crucial technique for deploying deep learning models on resource-constrained devices, such as embedded FPGAs. Prior efforts mostly focus on quantizing matrix multiplications, leaving other layers like BatchNorm or shortcuts in floating-point form, even though fixed-point arithmetic is more efficient on FPGAs. A common practice is to fine-tune a pre-trained model to fixed-point for FPGA deployment, but potentially degrading accuracy. This work presents QFX, a novel trainable fixed-point quantization approach that automatically learns the binary-point position during model training. Additionally, we introduce a multiplier-free quantization strategy within QFX to minimize DSP usage. QFX is implemented as a PyTorch-based library that efficiently emulates fixed-point arithmetic, supported by FPGA HLS, in a differentiable manner during backpropagation. With minimal effort, models trained with QFX can readily be deployed through HLS, producing the same numerical results as their software counterparts. Our evaluation shows that compared to post-training quantization, QFX can quantize models trained with element-wise layers quantized to fewer bits and achieve higher accuracy on both CIFAR-10 and ImageNet datasets. We further demonstrate the efficacy of multiplier-free quantization using a state-of-the-art binarized neural network accelerator designed for an embedded FPGA (AMD Xilinx Ultra96 v2). We plan to release QFX in open-source format.
title Trainable Fixed-Point Quantization for Deep Learning Acceleration on FPGAs
topic Machine Learning
Computer Vision and Pattern Recognition
url https://arxiv.org/abs/2401.17544