EF-Train: Enable Efficient On-device CNN Training on FPGA through Data Reshaping for Online Adaptation or Personalization

EF-Train: Enable Efficient On-device CNN Training on FPGA through Data Reshaping for Online Adaptation or Personalization
复制标题

DOI:
10.1145/3505633
复制
发表时间:
2022-02
期刊:
ACM Transactions on Design Automation of Electronic Systems (TODAES)
影响因子:
--
通讯作者:
Yue Tang;Xinyi Zhang;Peipei Zhou;Jingtong Hu
Yue Tang;Xinyi Zhang;Peipei Zhou;Jingtong Hu
中科院分区:
其他
文献类型:
--
作者:
Yue Tang;Xinyi Zhang;Peipei Zhou;Jingtong Hu

文献摘要

被引文献

相似文献

传统上,深度神经网络(DNN)模型在云端训练一次,然后部署在汽车、机器人或无人机等边缘设备中进行实时推理。然而,在很多情况下,模型需要适应新的环境、领域或用户。为了实现这种领域适应或个性化,设备上的模型需要在设备上持续训练。在这项工作中,我们设计了EF - Train,这是一种高效的DNN训练加速器,它具有基于统一通道级并行的卷积核,能够在资源有限的低功耗边缘级FPGA上实现端到端训练。由于前向传播、后向传播和权重更新之间不同的内存访问模式导致效率低下,在资源有限的FPGA上实现设备上训练具有挑战性。因此,我们开发了一种具有片内连续内存分配和权重复用的数据重塑方法。建立了一个分析模型来自动调度计算和内存资源,以在边缘FPGA上实现高能效。实验结果表明,我们的设计在吞吐量和能效方面分别达到了46.99 GFLOPS和6.09 GFLOPS/W。
Conventionally, DNN models are trained once in the cloud and deployed in edge devices such as cars, robots, or unmanned aerial vehicles (UAVs) for real-time inference. However, there are many cases that require the models to adapt to new environments, domains, or users. In order to realize such domain adaption or personalization, the models on devices need to be continuously trained on the device. In this work, we design EF-Train, an efficient DNN training accelerator with a unified channel-level parallelism-based convolution kernel that can achieve end-to-end training on resource-limited low-power edge-level FPGAs. It is challenging to implement on-device training on resource-limited FPGAs due to the low efficiency caused by different memory access patterns among forward and backward propagation and weight update. Therefore, we developed a data reshaping approach with intra-tile continuous memory allocation and weight reuse. An analytical model is established to automatically schedule computation and memory resources to achieve high energy efficiency on edge FPGAs. The experimental results show that our design achieves 46.99 GFLOPS and 6.09 GFLOPS/W in terms of throughput and energy efficiency, respectively.