[论文解读] How deep should be the depth of convolutional neural networks: a backyard dog case study
本文提出一种基于高级监督主成分分析(ASPCA)的非迭代网络剪枝算法,将深度预训练卷积神经网络蒸馏为浅层、高效的专用任务模型。应用于人脸识别时,该方法将VGG-16从16层缩减至5层,同时保持较低的错误率(MF+MO < 6%),并实现在Raspberry Pi等低功耗硬件上的实时推理。
The work concerns the problem of reducing a pre-trained deep neuronal network to a smaller network, with just few layers, whilst retaining the network's functionality on a given task The proposed approach is motivated by the observation that the aim to deliver the highest accuracy possible in the broadest range of operational conditions, which many deep neural networks models strive to achieve, may not necessarily be always needed, desired, or even achievable due to the lack of data or technical constraints. In relation to the face recognition problem, we formulated an example of such a usecase, the `backyard dog' problem. The `backyard dog', implemented by a lean network, should correctly identify members from a limited group of individuals, a `family', and should distinguish between them. At the same time, the network must produce an alarm to an image of an individual who is not in a member of the family. To produce such a network, we propose a shallowing algorithm. The algorithm takes an existing deep learning model on its input and outputs a shallowed version of it. The algorithm is non-iterative and is based on the Advanced Supervised Principal Component Analysis. Performance of the algorithm is assessed in exhaustive numerical experiments. In the above usecase, the `backyard dog' problem, the method is capable of drastically reducing the depth of deep learning neural networks, albeit at the cost of mild performance deterioration. We developed a simple non-iterative method for shallowing down pre-trained deep networks. The method is generic in the sense that it applies to a broad class of feed-forward networks, and is based on the Advanced Supervise Principal Component Analysis. The method enables generation of families of smaller-size shallower specialized networks tuned for specific operational conditions and tasks from a single larger and more universal legacy network.
研究动机与目标
- 解决在Raspberry Pi等资源受限设备上部署大型预训练深度神经网络的挑战。
- 开发一种无需迭代微调即可减少网络深度的方法,同时保留专用任务的功能。
- 从单一遗留模型出发,创建一系列针对特定运行条件优化的更小、更快、更高效的网络。
- 评估剪枝后网络在真实、受限的人脸识别任务(即“后院狗”问题)中的性能。
- 证明减少深度的网络可在显著降低推理时间和计算成本的同时,维持可接受的准确率。
提出的方法
- 该方法使用高级监督主成分分析(ASPCA)将预训练CNN各层的高维特征投影到低维空间。
- ASPCA以非迭代方式逐层应用,保留与目标任务相关的类别判别信息。
- 算法选择一组ASPCs(高级监督主成分),以最大化在目标数据集上的分类性能。
- 该过程系统性地应用于原始网络的所有层,将深层架构转换为浅层结构。
- 生成的剪枝网络仅在最后的分类层进行微调,最大限度减少再训练开销。
- 通过选择ASPC数量和正则化参数α来优化性能,使误匹配(MF)与误开放(MO)率之和最小化。
实验结果
研究问题
- RQ1能否在保持足够准确率的前提下,有效减少用于特定、受限识别任务的深层预训练CNN的深度?
- RQ2在低功耗硬件上,剪枝后网络的错误率和推理速度与原始深层模型相比如何?
- RQ3在减少的网络中,使分类错误最小化的ASPC最优数量和正则化参数α是多少?
- RQ4当在有限数据上训练并在边缘设备上部署时,浅层网络在多大程度上能保持功能?
- RQ5所提方法能否在不从头开始训练的情况下,从单一通用遗留模型生成一系列专用、高效的网络?
主要发现
- 在Raspberry Pi 3B上,使用60个ASPC的5层“后院狗”网络处理64×64图像耗时0.70秒,平均MF+MO错误率为5.78%。
- 17层网络使用70个ASPC时,平均MF+MO错误率为3.27%,100次测试中最大错误率是平均值的1.8倍。
- 通过最优ASPC选择(60个)的5层网络,平均MF+MO错误率为8.53%,最坏情况下达10.22%。
- 该方法实现了在低端硬件上的实时推理:5层模型在Raspberry Pi单核上每张图像处理时间低于1秒。
- 基于非迭代ASPCA的方法成功减少了网络深度,同时保持了合理的性能,证明了其在边缘部署中的可行性。
- 该方法具有通用性,可应用于MobileNet和SqueezeNet等其他架构,尽管本研究未对此进行测试。
更好的研究,从现在开始
从阅读论文到最终审阅,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。