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. Two variants, one for high accuracy and the other for performance, are proposed and implemented on the FPGA board as well. 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 ODENet and its variants is improved by up to 2.50 times compared to a pure software execution when a part of convolution layers is executed by the programmable logic.
翻译:ODENet是一个深层神经网络结构,在这种结构中,ResNet的堆叠结构是用普通的差分方程(ODE)求解器执行的。它可以减少参数数量,并通过选择一个合适的求解器在准确性和性能之间取得平衡。还可以提高精确性,同时对资源有限的边缘设备保留相同数量的参数。在本文中,使用Euler方法作为ODE求解器,ODENet的一部分被作为低成本的FPGA(外地可配置门阵列)板(如PYNQ-Z2版板)的专用逻辑执行。两种变体,一个是高精度的变体,另一个是性能的变体。两种变体在FPGA板上被提出并应用,在参数大小、准确性能、执行时间和资源利用方面对FPGA进行了评价。结果显示,ODENet及其变体的总体执行时间比根据可编程逻辑执行的组合层部分时纯软件执行的时间提高到2.50倍。