如何用FPGA加速机器学习?- Xilinx CTO办公室杰出工程师告诉你!

AI ( 人工智能) 现在完全处于图像识别市场的主导地位,因为卷积神经网络 (CNN) 的表现不仅远远超越同类竞争机器实现方案,甚至让人类的图像识别能力也相形见绌。基本的 CNN 算法需要大量的计算和数据重复使用,这与 FPGA 实现方案非常匹配。

赛灵思 CTO 办公室的杰出工程师 Ralph Wittig 在 2016 年 OpenPOWER 峰会上做了 20 分钟的演讲,讨论了 CNN 的当前技术最新发展水平以及包括清华大学等在内各个大学的一些研究结果。这为我们带来了几个与 CNN 算法实现方案功耗相关且备受关注的结论:

  • 继续使用片上存储器;
  • 使用较小的乘法器;
  • 继续使用定点算法 — 16 位定点解析可最大限度减少与 32 位定浮点计算有关的精确度退化问题,而且如果逐层使用动态量化,8 位计算也能产生良好的结果。
  • 要想详细了解, 一定要观看一下 Wittig 在 OpenPOWER 峰会上的演讲视频:

       在本视频中,Wittig 还说明了两款 CNN 相关产品的使用情况。 这两款产品在之前有过一些报道:

    1. 与 CAPI 兼容的 Alpha Data ADM-PCIE-8K5 PCIe 加速板。(请参见:“Alpha Data 面向 x86 和 IBM Power8/9 数据中心及云服务器的 ADM-PCIE-8K5 PCIe 加速板使用 Kintex UltraScale FPGA”。)
    2. Auviz Systems 的 AuvizDNN(深度神经网络)库。(请参见:“深入了解 AuvizSystems 的卷积神经网络性能加速”、“云端的机器学习:FPGA 上的深度神经网络”以及“Auviz 图像处理及计算机视觉库与赛灵思 SDAccel 相配合,可为 FPGA 实现堪比 GPU 的性能”。)