Caffeinated FPGA:用于卷积神经网络的 FPGA 框架
计算机视觉与模式识别
2016-10-03 v1 分布式、并行与集群计算
摘要
卷积神经网络(CNN)在机器学习领域获得了显著关注,尤其因其在视觉识别中的高准确率。近期的研究将 CNN 的 GPU 实现性能大幅提升,显著改善了其分类和训练时间。随着这些改进,出现了许多可在 CPU 和 GPU 上实现 CNN 的框架,但缺乏对 FPGA 实现的支持。在本文中,我们提出了带有 FPGA 支持的流行 CNN 框架 Caffe 的修改版本。这使得能够使用 CNN 模型进行分类,并结合专用的 FPGA 实现,同时具备在必要时重新编程器件的灵活性、主机与设备之间无缝的内存事务、易于使用的测试平台,以及创建流水线层实现的能力。为了验证该框架,我们使用 Xilinx SDAccel 环境实现了一个基于 FPGA 的 Winograd 卷积引擎,并展示了该 FPGA 层可以与运行在主机处理器上的其他层协同工作,以运行几种流行的 CNN(AlexNet、GoogleNet、VGG A、Overfeat)。结果表明,我们的框架在基准测试中的 3x3 卷积上达到了 50 GFLOPS。这是在一个实用的框架内实现的,将有助于未来基于 FPGA 的 CNN 的发展。
引用
@article{arxiv.1609.09671,
title = {Caffeinated FPGAs: FPGA Framework For Convolutional Neural Networks},
author = {Roberto DiCecco and Griffin Lacey and Jasmina Vasiljevic and Paul Chow and Graham Taylor and Shawki Areibi},
journal= {arXiv preprint arXiv:1609.09671},
year = {2016}
}