中文

利用 OpenCL 在 FPGA 上加速确定性及随机二值化神经网络

机器学习 2021-02-18 v1 机器学习

摘要

近期的技术进步使现代中央处理单元(CPU)、图形处理单元(GPU)和现场可编程门阵列(FPGA)可用的计算能力、内存和速度大幅提升。因此,人工神经网络(ANN)的性能和复杂度迅速增长。尽管 GPU 加速的深度神经网络(DNN)目前提供最先进的性能,但其功耗巨大。在 CPU 上训练此类网络效率低下,因为数据吞吐量和并行计算受限。FPGA 被认为是性能关键、低功耗系统(例如物联网(IoT)边缘设备)的合适候选。使用 Xilinx SDAccel 或 Intel FPGA SDK for OpenCL 开发环境,可用高级 OpenCL 框架描述的网络在异构平台上加速。此外,利用将网络权重量化二值化的正则化技术,可进一步改善 DNN 的资源利用率和功耗。在本文中,据我们所知,我们首次引入了 FPGA 加速的随机二值化 DNN 实现,并将其与 GPU 和 FPGA 加速的实现进行比较。我们开发的网络使用流行的 MNIST 和 CIFAR-10 数据集进行训练和基准测试,取得了接近最先进的性能,同时与常规 GPU 加速网络相比,功耗改善超过 16 倍。我们的 FPGA 加速确定性及随机 BNN 在 MNIST 和 CIFAR-10 上的推理时间分别减少超过 9.89 倍和 9.91 倍。

关键词

引用

@article{arxiv.1905.06105,
  title  = {Accelerating Deterministic and Stochastic Binarized Neural Networks on FPGAs Using OpenCL},
  author = {Corey Lammie and Wei Xiang and Mostafa Rahimi Azghadi},
  journal= {arXiv preprint arXiv:1905.06105},
  year   = {2021}
}

备注

4 pages, 3 figures, 1 table