ODENet is a deep neural network architecture in which a stacking structure of ResNet is implemented with an ordinary differential equation (ODE) solver. It can reduce the number of parameters and strike a balance between accuracy and performance by selecting a proper solver. It is also possible to improve the accuracy while keeping the same number of parameters on resource-limited edge devices. In this paper, using Euler method as an ODE solver, a part of ODENet is implemented as a dedicated logic on a low-cost FPGA (Field-Programmable Gate Array) board, such as PYNQ-Z2 board. As ODENet variants, reduced ODENets (rODENets) each of which heavily uses a part of ODENet layers and reduces/eliminates some layers differently are proposed and analyzed for low-cost FPGA implementation. They are evaluated in terms of parameter size, accuracy, execution time, and resource utilization on the FPGA. The results show that an overall execution time of an rODENet variant is improved by up to 2.66 times compared to a pure software execution while keeping a comparable accuracy to the original ODENet.
翻译:ODENet是一种深度神经网络架构,它利用常微分方程求解器实现了ResNet的堆叠结构。通过选择合适的求解器,该架构可减少参数数量并在准确性与性能之间取得平衡。在资源受限的边缘设备上,它还能在保持相同参数数量的同时提升准确率。本文采用欧拉法作为常微分方程求解器,在低成本FPGA开发板(如PYNQ-Z2板)上实现部分ODENet专用逻辑电路。针对低成本FPGA实现,我们提出并分析了多种简化型ODENet变体——这些变体通过高度复用ODENet部分层、差异化缩减/移除某些层的方式构建。从参数量、准确率、执行时间及FPGA资源利用率四个维度对变体进行评估。结果表明,与纯软件执行相比,某简化型ODENet变体的总执行时间可提升至2.66倍,同时保持与原ODENet相当的准确率。