通过改变神经网络滤器修剪优化智能边缘加速器

138 阅读2分钟

一起养成写作习惯!这是我参与「掘金日新计划 · 4 月更文挑战」的第5天,点击查看活动详情

956db23d851f24c297f3bdfe9026a0ff.jpg

虽然深度学习在各种智能任务中表现出卓越的性能,但在资源有限的边缘设备上部署复杂的模型仍然是一个具有挑战性的问题。

过滤器修剪执行与系统无关的优化,将神经网络模型缩小为更薄的模型,为高效的设备推理提供有吸引力的解决方案。

流行的方法通常对整个神经网络模型使用固定的剪枝率,以减少过滤器剪枝的优化空间。 然而,这是不合适的。

因为不同层的过滤器可能对模型推理具有不同的敏感性,因此灵活的剪枝比率设置可以进一步提高压缩模型的准确性。

我们提出了 FlexPruner,这是一种通过灵活比率过滤器修剪来压缩和加速神经网络模型的新方法。我们的方法遵循基于贪心的策略来选择要修剪的过滤器并执行迭代的损失感知修剪过程,从而在修剪大量过滤器时实现对现有方法的显着准确性改进。

卷积神经网络

深度卷积神经网络 (CNN) 在各种智能任务中取得了显着进步,例如图像分析、语音识别和自然语言处理

然而,由于这些模型的计算成本、存储空间、内存占用和能源消耗非常昂贵,因此在资源受限的边缘设备上部署复杂的神经网络很困难。

举个栗子,常用的 ResNet-152 模型 涉及超过 6000 万个参数和超过 110 亿次 FLOP(浮点运算)来对单个图像进行分类。虽然我们可以将推理过程从边缘设备卸载到云服务器,但这种解决方案受到互联网环境和隐私问题的限制,无法在许多现实场景中应用。

为了实现有效的设备上推理,模型压缩经常发挥作用,因为它简化了深度神经网络模型,具有可容忍的精度损失。

下面会介绍压缩模型。