中文

E-RNN:面向FPGA中高效循环神经网络的设计优化

计算机视觉与模式识别 2018-12-19 v1 机器学习 信号处理

摘要

循环神经网络(RNNs)对于需要高效实时实现的时间序列相关应用正变得日益重要。其两种主要类型是长短期记忆(LSTM)和门控循环单元(GRU)网络。由于对不精确累积的高度敏感性以及特殊激活函数实现的需求,实现实时、高效且准确的硬件 RNN 是一项具有挑战性的任务。先前工作的一个关键局限是缺乏 RNN 模型与硬件实现的系统性设计优化框架,特别是当块大小(或压缩比)应与 RNN 类型、层大小等联合优化时。在本文中,我们采用基于块循环矩阵的框架,并提出用于自动语音识别(ASR)应用 FPGA 实现的高效 RNN(E-RNN)框架。总体目标是在精度要求下提升性能/能效。我们使用交替方向乘子法(ADMM)技术进行更精确的块循环训练,并给出两种设计探索,为块大小提供指导并减少 RNN 训练试验。基于这两个观察,我们将 E-RNN 分解为两个阶段:阶段 I 确定 RNN 模型以在精度要求下减少计算和存储,阶段 II 在给定 RNN 模型下进行硬件实现,包括处理单元设计/优化、量化、激活实现等。在实际 FPGA 部署上的实验结果表明,在相同精度下,E-RNN 相比 ESE 实现了最高 37.4×\times 的能效提升,相比 C-LSTM 实现了 2×\times 以上的提升。

关键词

引用

@article{arxiv.1812.07106,
  title  = {E-RNN: Design Optimization for Efficient Recurrent Neural Networks in FPGAs},
  author = {Zhe Li and Caiwen Ding and Siyue Wang and Wujie Wen and Youwei Zhuo and Chang Liu and Qinru Qiu and Wenyao Xu and Xue Lin and Xuehai Qian and Yanzhi Wang},
  journal= {arXiv preprint arXiv:1812.07106},
  year   = {2018}
}

备注

In The 25th International Symposium on High-Performance Computer Architecture (HPCA 2019)