编辑推荐:
深度学习模型在实际应用中面临资源受限问题,为解决此,研究人员开展 DyCE(Dynamically Configurable Exiting)相关研究。结果显示,DyCE 能显著降低计算复杂度,如 ResNet152降低 26.2% 等,且精度损失小于 0.5% ,为模型优化提供新途径。
在科技飞速发展的今天,深度学习(DL)模型宛如一把神奇的钥匙,打开了众多领域创新发展的大门,在计算机视觉、自然语言处理等诸多方面都取得了令人瞩目的成就。然而,这把 “钥匙” 也存在一些烦恼。DL 模型的计算量十分庞大,在资源受限的设备上,比如物联网(IoT)设备和智能手机,它们就像被束缚住手脚的巨人,难以施展全部实力。即使在资源相对丰富的数据中心,能耗问题也成了一大困扰。就好比一辆超级跑车,性能超强,但油耗高得离谱,在普通加油站难以持续 “奔跑”。
为了解决这些问题,众多研究人员纷纷投身于模型压缩和优化的研究中。传统的模型压缩方法,像量化、剪枝等,虽然在一定程度上缓解了问题,但它们就像 “一刀切” 的方案,没有考虑到输入数据的难度差异。这就好比给所有学生布置同样难度的作业,不管学生基础如何,既浪费了优秀学生的时间,也让基础薄弱的学生压力倍增。早期退出策略作为一种动态技术,本可以根据样本难度分配计算资源,却因为自身设计的缺陷,如组件耦合度高、缺乏灵活性等,无法很好地发挥作用。而且,大多数 DL 系统一旦部署,就如同被固定在轨道上的列车,难以根据实际需求调整性能。
在这样的背景下,研究人员开启了新的探索之旅。他们开展了关于 DyCE(Dynamically Configurable Exiting,动态可配置退出)的研究。这项研究成果意义重大,相关论文发表在《Future Generation Computer Systems》上。DyCE 就像是给深度学习模型注入了 “智慧因子”,让模型能够在运行时根据样本难度动态调整计算资源,实现性能和复杂度的灵活平衡。
研究人员为开展这项研究,运用了多个关键技术方法。首先,在模型构建方面,通过在基础模型的中间层添加退出网络(exit networks),为早期退出提供了可能。其次,设计了专门的搜索算法,用于寻找最优的退出配置,以满足不同的性能和复杂度目标。在实验中,使用了经典的 ImageNet 数据集对模型进行训练和验证。
下面来详细看看研究结果:
- 推理过程:DyCE 通过动态路由样本降低整体计算量。当推理到达退出点时,若模型的置信度超过预定义阈值,推理就会提前结束;否则,计算会继续进入下一个骨干网络段。这就像在一场考试中,简单的题目学生很快就能完成并交卷,而难题则需要花费更多时间思考。
- 设计和训练:在退出设计上,采用简单的多层感知器(MLP)作为退出网络,并使用平均池化层进行特征聚合。训练时,冻结原始骨干网络,只训练退出网络,采用软交叉熵损失函数,让每个退出网络模仿原始网络的输出。这样的设计就像给模型的不同阶段安排了 “小助手”,各自独立又能协同工作。
- 配置搜索:研究提出了两种搜索算法来生成配置。一种是迭代搜索算法,通过多次遍历不同层和退出类型来确定最优配置;另一种是单通道搜索算法,从第一个可能的退出位置开始,依次寻找能使配置达到最低目标函数值的选项。实验表明,两种算法都有效,单通道算法速度更快,迭代算法效果更好。
- 仿真实验:在 ImageNet 数据集上对 ResNet、ConvNeXtv2 和 DaViT 等模型进行仿真。结果显示,DyCE 能显著降低计算复杂度,ResNet152降低 26.2%,ConvNextv2tiny降低 26.6%,DaViTbase降低 32.0% ,同时精度损失小于 0.5%。与其他方法相比,DyCE 在保持较低计算复杂度的同时,能达到更高的准确率。
研究结论和讨论部分指出,DyCE 为深度学习模型的压缩和缩放提供了一种创新且有效的方法。它简化了早期退出系统的设计过程,通过优化退出网络的协作,能够高效地满足各种压缩目标。同时,DyCE 支持实时、细粒度的压缩目标调整,使应用程序能够更好地适应不同的实际需求。不过,DyCE 也存在一些局限性,比如对动态计算图的支持在某些软件库和硬件加速器中不够完善,引入的额外参数可能受到限制等。但这并不影响 DyCE 在深度学习领域的重要意义,它为后续研究指明了方向,有望在更多领域和任务中得到应用和拓展,为深度学习的发展注入新的活力。