阅读笔记|Towards Edge Computing Using Early-Exit Convolutional Neural Networks

warning: 这篇文章距离上次修改已过277天,其中的内容可能已经有所变动。
info: R. G. Pacheco, K. Bochie, M. S. Gilbert, R. S. Couto, and M. E. M. Campista, “Towards Edge Computing Using Early-Exit Convolutional Neural Networks,” Information, vol. 12, no. 10, p. 431, Oct. 2021, doi: 10.3390/info12100431.

1.1 背景

在计算机视觉应用中,移动设备由于计算资源的限制往往需要将卷积神经网络(CNN)的推理任务转移到云端完成。但是除了给云端带来更多的网络负载之外,这种方法还会使那些需要低延迟的应用变得不可行。

1.2 要解决的问题

在边缘计算场景下,如何减少将图像分类等计算机视觉任务的推理转移到云端带来的网络负载和延迟问题。

1.3 现有方法的缺点

  1. 简单地将CNN推理完全转移到云端,会增加网络负载和推理延迟。
  2. 针对推理任务在边缘设备和云端的划分,现有工作主要关注最小化推理时间,没有考虑模型性能。
  3. 现有的使用分支神经网络在边缘设备进行部分推理的方法,没有对分支数量和置信度阈值等超参数进行深入分析。

1.4 文章主要贡献

  1. 在边缘计算场景中,评估了使用带有多个分支/侧支的MobileNetV2作为提前退出的卷积神经网络模型,可以减少因将图像分类任务完全卸载至云端而带来的数据上传量和推理时间。
  2. 通过调整提前退出神经网络中分支的数量、分支的位置以及用于判断是否在分支上进行分类的置信度阈值,分析了这些超参数对提前退出率和分类性能的影响。
  3. 结果显示,在分支深层位置适当设置2-4个分支,并采用0.75-0.85的置信度阈值,可以在不明显损失分类性能的情况下,使得大约40%-80%的图像可以在边缘设备上提前完成分类,显著减少推理延迟和网络负载。
  4. 在使用边缘服务器与AWS EC2云实例构建的实际边缘计算场景中,与完全在云端进行推理相比,使用提前退出的MobileNetV2可以将图像分类任务的平均推理时间减少27%到61%。
  5. 还发现添加过多分支会导致推理时间增长但提前退出率提升有限;而先前分支由于获得的特征较原始输入相似,提前退出效果很差。
  6. 整体而言,该方法为需要低延迟的计算机视觉应用提供了一种有效的加速方案。

1.5 个人思考

  • 关于模型压缩:经过了解,发现模型压缩是一个宽泛的任务概念,主要是指对于DNNs的模型的压缩优化。PapersWithCode上的专题页面为https://paperswithcode.com/task/model-compression (Benchmarks、Datasets & Codes)。本文基于Early-Exit实现的分支神经网络也属于这一大任务之下。模型压缩的次级概念整理如下:

    • 专注于减小模型比特大小的比特压缩(Bit Compression)
    • 专注于减少模型参数数量的参数压缩(Parameter Compression)
    • 关注减小模型计算量的计算压缩(Computational Compression)
    • 专注于优化模型结构的结构压缩(Structural Compression)
  • 关于分支神经网络:分支神经网络通常在中间主干层同层添加并行的分支,输出层综合考虑每个分支计算得到的置信度给出最后的输出结果。从分支子模型的角度来看,分支神经网络与随机森林有一定相似性,都综合了各个子模型的意见/结果来得最终输出。而使用Early-Exit实现的分支神经网络具备了减少计算量和通信量、易于训练部署重要特点,非常契合边缘计算的应用场景。

添加新评论