Department of Electronic and Computer Engineering, Ritsumeikan University, Kusatsu, Shiga, Japan.
School of AI and Computer Science, Jiangnan University, Wuxi, China.
Comput Intell Neurosci. 2022 Jun 1;2022:8039281. doi: 10.1155/2022/8039281. eCollection 2022.
To accelerate the practical applications of artificial intelligence, this paper proposes a high efficient layer-wise refined pruning method for deep neural networks at the software level and accelerates the inference process at the hardware level on a field-programmable gate array (FPGA). The refined pruning operation is based on the channel-wise importance indexes of each layer and the layer-wise input sparsity of convolutional layers. The method utilizes the characteristics of the native networks without introducing any extra workloads to the training phase. In addition, the operation is easy to be extended to various state-of-the-art deep neural networks. The effectiveness of the method is verified on ResNet architecture and VGG networks in terms of dataset CIFAR10, CIFAR100, and ImageNet100. Experimental results show that in terms of ResNet50 on CIFAR10 and ResNet101 on CIFAR100, more than 85% of parameters and Floating-Point Operations are pruned with only 0.35% and 0.40% accuracy loss, respectively. As for the VGG network, 87.05% of parameters and 75.78% of Floating-Point Operations are pruned with only 0.74% accuracy loss for VGG13BN on CIFAR10. Furthermore, we accelerate the networks at the hardware level on the FPGA platform by utilizing the tool Vitis AI. For two threads mode in FPGA, the throughput/fps of the pruned VGG13BN and ResNet101 achieves 151.99 fps and 124.31 fps, respectively, and the pruned networks achieve about 4.3× and 1.8× speed up for VGG13BN and ResNet101, respectively, compared with the original networks on FPGA.
为了加速人工智能的实际应用,本文提出了一种高效的软件层逐层细化剪枝方法,用于在现场可编程门阵列(FPGA)上对深度神经网络进行硬件级加速推理。细化剪枝操作基于各层的通道重要性指标和卷积层的层间输入稀疏性。该方法利用了原始网络的特点,而不会给训练阶段带来任何额外的工作负载。此外,该操作易于扩展到各种最先进的深度神经网络。该方法在 ResNet 架构和 VGG 网络上,通过数据集 CIFAR10、CIFAR100 和 ImageNet100 进行了验证。实验结果表明,在 CIFAR10 上的 ResNet50 和 CIFAR100 上的 ResNet101 中,参数和浮点运算分别超过 85%和 75.78%被修剪,精度损失仅为 0.35%和 0.40%。对于 VGG 网络,在 CIFAR10 上的 VGG13BN 中,参数和浮点运算分别修剪了 87.05%和 75.78%,精度损失仅为 0.74%。此外,我们通过利用 Vitis AI 工具在 FPGA 平台上对网络进行硬件级加速。对于 FPGA 中的双线程模式,修剪后的 VGG13BN 和 ResNet101 的吞吐量/fps 分别达到 151.99 fps 和 124.31 fps,与 FPGA 上的原始网络相比,修剪后的网络分别实现了约 4.3×和 1.8×的加速。