[论文解读] EdgeCNN: Convolutional Neural Network Classification Model with small inputs for Edge Computing
本文提出EdgeCNN,一种专为内存和算力受限的边缘计算设备(如Raspberry Pi 3B+)优化的轻量化卷积神经网络。通过避免此前在移动端优化模型中常见的分组卷积,EdgeCNN在Raspberry Pi上实现了1.37 FPS的推理速度,同时在FER-2013和RAF-DB数据集上的面部表情分类任务中,准确率优于其他模型。
With the development of Internet of Things (IoT), data is increasingly appearing on the edge of the network. Processing tasks on the edge of the network can effectively solve the problems of personal privacy leaks and server overload. As a result, it has attracted a great deal of attention and made substantial progress. This progress includes efficient convolutional neural network (CNN) models such as MobileNet and ShuffleNet. However, all of these networks appear as a common network model and they usually need to identify multiple targets when applied. So the size of the input is very large. In some specific cases, only the target needs to be classified. Therefore, a small input network can be designed to reduce computation. In addition, other efficient neural network models are primarily designed for mobile phones. Mobile phones have faster memory access, which allows them to use group convolution. In particular, this paper finds that the recently widely used group convolution is not suitable for devices with very slow memory access. Therefore, the EdgeCNN of this paper is designed for edge computing devices with low memory access speed and low computing resources. EdgeCNN has been run successfully on the Raspberry Pi 3B+ at a speed of 1.37 frames per second. The accuracy of facial expression classification for the FER-2013 and RAF-DB datasets outperforms other proposed networks that are compatible with the Raspberry Pi 3B+. The implementation of EdgeCNN is available at https://github.com/yangshunzhi1994/EdgeCNN
研究动机与目标
- 解决在计算和内存资源有限的边缘设备上部署深度学习模型的挑战。
- 指出分组卷积在移动端优化网络中广泛应用,但在内存带宽缓慢的边缘设备(如Raspberry Pi 3B+)上效率低下。
- 设计一种专为小输入尺寸(44×44)的单目标分类任务而优化的新型CNN架构EdgeCNN,以减少计算开销。
- 在资源受限的边缘硬件(特别是Raspberry Pi 3B+)上实现高准确率和可接受的推理速度。
- 证明模型效率必须基于目标设备的实际内存访问特性进行重新评估,而不仅仅是FLOPs或参数量。
提出的方法
- 设计输入尺寸为44×44的EdgeCNN,专为单目标分类而非多目标检测而优化。
- 在EdgeCNN中避免使用分组卷积,以减少内存访问开销,这对Raspberry Pi 3B+等内存带宽缓慢的设备至关重要。
- 实现EdgeCNN-G作为变体,使用分组卷积以在相同硬件条件下对比性能权衡。
- 在面部表情识别数据集(FER-2013和RAF-DB)上训练并评估模型,以评估准确率和推理速度。
- 在Raspberry Pi 3B+上实测实际推理速度(FPS)和内存使用情况,以评估实际可部署性。
- 使用OpenVINO工具包和Intel Movidius NCS 2以期提升速度,但指出由于缺乏特征检测支持,硬件存在局限性。
实验结果
研究问题
- RQ1能否设计一种CNN模型,在计算和内存资源极少的边缘设备上实现高准确率?
- RQ2为何分组卷积——在移动端优化模型中广泛使用——在内存访问缓慢的边缘设备上表现不佳?
- RQ3将输入尺寸减小至44×44,对单目标分类任务中的模型准确率和效率有何影响?
- RQ4能否设计一种针对低内存访问设备优化的模型,在相同硬件上超越MobileNet和ShuffleNet等移动端优化模型?
- RQ5当需要特征检测时,使用Intel Movidius NCS 2等加速硬件进行边缘推理存在哪些实际限制?
主要发现
- EdgeCNN在Raspberry Pi 3B+上实现了1.37 FPS的推理速度,证明了其在真实场景中实现边缘实时部署的可行性。
- 在FER-2013和RAF-DB面部表情分类数据集上,EdgeCNN在准确率上优于其他兼容Raspberry Pi 3B+的模型。
- 由于Raspberry Pi 3B+的内存访问速度较慢(22.61 MB/s),仅为典型智能手机(222.26 MB/s)的1/10,分组卷积导致性能下降。
- 使用分组卷积的EdgeCNN-G在相同硬件上表现劣于EdgeCNN,证实分组卷积不适用于内存访问缓慢的边缘设备。
- SqueezeNet和SqueezeNext因避免使用分组卷积而速度快,但准确率较低,凸显了速度与性能之间的权衡。
- 由于缺乏对特征检测的支持,Intel Movidius NCS 2无法用于加速EdgeCNN,限制了其在该模型上的适用性。
更好的研究,从现在开始
从阅读论文到最终审阅,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。