[论文解读] SkyNet: a Hardware-Efficient Method for Object Detection and Tracking on Embedded Systems
SkyNet 引入了一种自下而上的、考虑硬件的嵌入式对象检测与跟踪的 DNN 设计,在 TX2 GPU 和 Ultra96 FPGA 上实现了最先进的效率与准确率,并提升了 SiamRPN++ 和 SiamMask 等跟踪器。
Object detection and tracking are challenging tasks for resource-constrained embedded systems. While these tasks are among the most compute-intensive tasks from the artificial intelligence domain, they are only allowed to use limited computation and memory resources on embedded devices. In the meanwhile, such resource-constrained implementations are often required to satisfy additional demanding requirements such as real-time response, high-throughput performance, and reliable inference accuracy. To overcome these challenges, we propose SkyNet, a hardware-efficient neural network to deliver the state-of-the-art detection accuracy and speed for embedded systems. Instead of following the common top-down flow for compact DNN (Deep Neural Network) design, SkyNet provides a bottom-up DNN design approach with comprehensive understanding of the hardware constraints at the very beginning to deliver hardware-efficient DNNs. The effectiveness of SkyNet is demonstrated by winning the competitive System Design Contest for low power object detection in the 56th IEEE/ACM Design Automation Conference (DAC-SDC), where our SkyNet significantly outperforms all other 100+ competitors: it delivers 0.731 Intersection over Union (IoU) and 67.33 frames per second (FPS) on a TX2 embedded GPU; and 0.716 IoU and 25.05 FPS on an Ultra96 embedded FPGA. The evaluation of SkyNet is also extended to GOT-10K, a recent large-scale high-diversity benchmark for generic object tracking in the wild. For state-of-the-art object trackers SiamRPN++ and SiamMask, where ResNet-50 is employed as the backbone, implementations using our SkyNet as the backbone DNN are 1.60X and 1.73X faster with better or similar accuracy when running on a 1080Ti GPU, and 37.20X smaller in terms of parameter size for significantly better memory and storage footprint.
研究动机与目标
- 解决在资源受限的嵌入式设备上实现实时高精度对象检测与跟踪的挑战。
- 提出一种自下而上的、硬件感知的 DNN 设计,从一开始就考虑硬件约束。
- 在嵌入式 GPU 和 FPGA 平台上演示 SkyNet,并展示具有竞争力的准确性和能效。
- 将 SkyNet 作为骨干网络扩展,以提升最先进跟踪器的速度和内存占用。
提出的方法
- 将硬件感知的 Bundles 定义为 DNN 的基本构建块,并在目标硬件上评估它们,以捕捉现实的延迟和资源使用情况。
- 阶段 1:Bundles 的选择与评估,识别在准确性和硬件成本之间取得平衡的有前景组件。
- 阶段 2:使用基于分组的粒子群优化(PSO)的硬件感知 DNN 搜索,在准确性和延迟目标下优化网络配置。
- 阶段 3:添加高级特征,如特征图旁路、重新排序和 ReLU6,以改善对小目标的检测和硬件效率。
- 展示由重复的 DW-Conv3 和 PW-Conv1 块(带 BN 和 ReLU6)构成的 SkyNet 架构,并改编成 YOLO 风格的边界框回归头。
- 用于 FPGA 的量化和切块/批处理策略,以在准确性、内存和带宽之间取得平衡。
实验结果
研究问题
- RQ1一种自下而上的、硬件感知的设计方法能否在嵌入式检测器中超越传统的自上而下 DNN 设计流程?
- RQ2如何将硬件反馈整合到 DNN 搜索流程中,以同时在嵌入式 GPU 和 FPGA 上优化延迟与资源使用?
- RQ3哪些架构特征(如特征图旁路和 ReLU6)在小目标检测与硬件效率之间提供最佳权衡?
- RQ4作为骨干网络在如 SiamRPN++ 和 SiamMask 的对象跟踪管道中,SkyNet 相较于 ResNet-50 的表现如何?
- RQ5在 GOT-10K 风格的基准测试中,用 SkyNet 替换骨干网络在速度和内存占用方面的提升是多少?
主要发现
- 在 DAC-SDC 中,SkyNet 在 TX2 嵌入式 GPU 上实现 0.731 IoU 和 67.33 FPS,在 Ultra96 FPGA 上实现 0.716 IoU 和 25.05 FPS,超过 100+ 竞争者。
- SkyNet 骨干在 1080Ti GPU 上分别为 SiamRPN++ 和 SiamMask 提供 1.60x 与 1.73x 的加速,参数量更小(小 37.20x)。
- 消融实验显示,带 ReLU6 的 SkyNet C(IoU 0.741)在 DAC-SDC 上为最佳验证模型,SkyNet 骨干在 IoU 约 0.73–0.74 的水平,且参数量较小(基础骨干约 0.44M)。
- 基于底层的硬件感知 PSO 搜索能够识别满足软件精度和硬件延迟目标的 DNN 候选者,展示了高效的硬件感知探索。
- FPGA 特定结果表明量化和切块/批处理策略在保持可接受的准确率损失的同时实现了可行的 BRAM 使用。
更好的研究,从现在开始
从论文设计到论文写作,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。