DepthShrinker: A New Compression Paradigm Towards Boosting Real-Hardware Efficiency of Compact Neural Networks

TL;DR

提出DepthShrinker,通过移除激活函数并融合层,提升紧凑网络硬件利用率,性能优于SOTA方法。

cs.LG 🔴 高级 2022-06-02 43 次浏览
Yonggan Fu Haichuan Yang Jiayi Yuan Meng Li Cheng Wan Raghuraman Krishnamoorthi Vikas Chandra Yingyan Celine Lin
深度学习 模型压缩 硬件优化 神经网络架构 效率提升

核心发现

方法论

本文提出DepthShrinker框架,基于观察激活函数在训练中有益但可在推理后移除的现象,采用可微搜索学习激活重要性,移除无关激活后融合连续线性层,生成密集计算模式。通过在MobileNetV2、EfficientNet-Lite0等模型上验证,结合fine-tuning和融合策略,有效提升硬件利用率。具体步骤包括:识别冗余激活函数、移除并微调模型、层融合成密集卷积,确保模型精度不降低。

关键结果

  • 在Tesla V100上,深度压缩模型准确率提升3.06%,吞吐量提高1.53倍,优于MetaPruning等SOTA剪枝方法。
  • 在MobileNetV2和ResNet系列上,深度融合后硬件利用率显著提高,GPU端吞吐提升达4倍,且保持原有准确率。
  • 消融实验验证激活函数移除与融合策略的有效性,显示该方法在模型压缩与硬件效率间取得良好平衡。

研究意义

该研究突破了现有高效网络在实际硬件上的利用瓶颈,提出通过结构软剪枝实现密集计算,从而充分发挥现代GPU、TPU等平台的并行能力。为紧凑模型在边缘设备和高性能计算平台的部署提供新思路,有望推动深度学习模型的实际应用普及。

技术贡献

创新点在于:1) 发现激活函数可在训练后移除,简化模型结构;2) 提出基于可微搜索的激活重要性学习机制;3) 设计层融合算法,将多个线性操作合并为单一密集卷积,显著提升硬件利用率。该方法兼容多种高效网络架构,具有良好的泛化能力。

新颖性

本研究首次系统性提出激活函数移除与层融合结合的软剪枝策略,区别于传统硬剪枝和结构搜索,强调在保持模型表达能力的同时优化硬件效率。创新在于利用激活函数的可移除性实现层级融合,突破了深度网络层次不可合并的限制。

局限性

  • 方法依赖预训练模型,迁移到训练从零的场景可能效果有限。
  • 融合策略在极端压缩比下可能导致微小精度损失,需进一步优化激活重要性判定。
  • 平台依赖性较强,需针对不同硬件调优融合策略,增加应用复杂度。

未来方向

未来将探索自适应激活重要性学习机制,结合硬件感知的动态融合策略,提升模型在不同设备上的泛化能力。同时,结合神经架构搜索,自动设计更高效的密集网络架构,推动模型压缩与硬件优化的深度融合。

AI 总览摘要

深度神经网络(DNN)在许多应用中表现出卓越性能,但其庞大的模型规模和计算复杂度限制了在实际硬件上的部署效率。现有的压缩技术如剪枝、量化和结构优化,虽然在理论上减轻了模型负担,却未能充分利用现代GPU和TPU的并行计算能力,导致硬件利用率低下。为解决这一瓶颈,本文提出了DepthShrinker框架,基于对激活函数在训练中的作用与推理中可移除的观察,设计了一种软剪枝策略。该策略通过可微学习激活重要性,识别并移除对模型性能影响微小的激活函数,然后将连续线性操作融合成单一密集卷积,从而大幅提升硬件利用率和推理速度。实验证明,在MobileNetV2和EfficientNet-Lite0等模型上,该方法实现了准确率提升3.06%,吞吐量提高1.53倍,优于传统剪枝方法。此技术不仅优化了模型的硬件适应性,也为未来深度学习模型的硬件友好设计提供了新思路。尽管如此,方法仍依赖预训练模型,平台适应性和极端压缩比下的精度保持仍需进一步研究。未来,结合神经架构搜索和动态融合策略,有望实现更智能、更高效的硬件友好型深度网络。

深度分析

研究背景

近年来,深度神经网络在图像识别、自然语言处理等领域取得巨大突破,代表模型如ResNet、MobileNet、EfficientNet等不断优化架构以兼顾性能与效率。深度压缩技术如剪枝(Han et al., 2015)、量化(Zhu et al., 2016)和结构优化(Howard et al., 2017)极大减轻模型复杂度,但在硬件实际部署中仍存在利用率低的问题,尤其是深层网络中的稀疏或不规则操作难以充分发挥GPU、TPU的并行优势。近年来,研究者关注硬件友好的模型设计,试图通过简化操作或融合层来提升硬件利用率,但现有方法多依赖硬剪枝或架构搜索,难以兼顾模型表达能力与硬件效率。

核心问题

尽管高效网络如MobileNetV2采用深度可分离卷积极大减轻模型规模,但其在实际硬件上的利用率仍受限,特别是深度卷积和稀疏操作导致的数据重用不足。传统剪枝和量化虽能减小模型体积,却未能有效提升硬件吞吐,反而因不规则操作增加数据传输成本。如何在保证模型精度的同时,最大化硬件利用率,成为当前研究难题。

核心创新

本研究的核心创新在于:1) 发现激活函数在训练中有益,但可在推理后移除,减少模型复杂度;2) 提出基于可微搜索的激活重要性学习机制,有效识别冗余激活;3) 设计层融合算法,将连续线性层合并为单一密集卷积,显著提升硬件利用率。该方法突破了传统深层网络不可合并的限制,强调结构软剪枝的潜力,为模型压缩与硬件优化提供新思路。

方法详解

  • �� 识别冗余激活函数:利用可微搜索学习每个激活的重要性分数,通过优化目标在保持模型性能的同时,筛选出对推理影响微小的激活。• 移除无关激活:根据重要性阈值,将低重要性激活函数置零,移除后微调模型以恢复精度。• 层融合:将连续线性操作(卷积、全连接)合并成单一密集卷积,利用数学公式(如Eq.6)计算融合核,实现操作数的压缩。• 训练与微调:在预训练模型基础上,进行激活重要性学习和微调,确保模型性能。• 最终融合:将多个线性层合并,形成硬件友好的密集结构,提升并行效率。

实验设计

在ImageNet数据集(224×224)上,使用MobileNetV2、EfficientNet-Lite0等模型,比较原始模型、剪枝模型和深度压缩模型的准确率与硬件吞吐。采用Tesla V100、RTX 2080Ti和Jetson TX2硬件平台,测量实际FPS和FLOPs利用率。通过消融实验验证激活重要性学习、微调和层融合的效果,分析不同压缩比下模型性能变化。

结果分析

在Tesla V100平台,深度融合模型的准确率比原模型提升3.06%,吞吐量达1.53倍,明显优于MetaPruning的剪枝方案。MobileNetV2的吞吐提升达4倍,ResNet系列也获得显著改善。消融实验显示,激活函数移除与融合策略共同作用,显著提升硬件利用率,验证了方法的有效性。

应用场景

该技术适用于边缘设备、移动端和云端加速器,能在保持模型精度的同时,大幅提升推理速度和能效。特别适合需要低延迟、高吞吐的场景,如实时视频分析、自动驾驶和智能监控。实现条件包括预训练模型和硬件平台支持融合算法。

局限与展望

当前方法依赖预训练模型,迁移到从零训练环境效果有限。极端压缩比可能引起微小精度下降,融合策略需针对不同硬件平台调优。此外,融合过程增加了模型设计复杂度,未来需简化流程并增强平台适应性。

通俗解读 非专业人士也能看懂

想象你在厨房准备一顿大餐,很多食材和工具都很繁琐。传统做法是每次都用全部工具和所有食材,虽然做得丰富,但耗时耗力。现在,厨师发现一些工具其实可以省略,比如不用每次都用多余的调料,只用最关键的调味料就能做出一样的味道。再比如,把几个步骤合并成一步,节省时间和空间。这个方法就像在做菜时去掉不必要的步骤和工具,让厨房变得更高效。深度学习中的激活函数就像调味料,很多时候可以省略或合并,最终让模型变得更快、更节省资源,却不影响味道(模型性能)。通过聪明的设计,模型变得像一个高效的厨房,既能保持原有的味道,又能节省时间和空间。

简单解释 像给14岁少年讲一样

想象你在准备一份大餐,厨房里有很多工具和步骤。有时候,厨师会发现一些调料其实用不到,或者可以把几个步骤合并成一个,这样做饭就更快了。深度学习模型也是一样,里面有很多“调料”和“步骤”,比如激活函数和层。研究发现,有些激活函数其实可以在模型训练好后去掉,不会影响最终的“味道”——也就是模型的准确性。然后,把一些连续的操作合成一个更大的“工具”,让模型运行得更快、更高效。就像厨房变得更整洁、做饭更快一样,这个方法让深度学习模型在硬件上跑得更快、更省资源。未来,这样的设计可以让手机、边缘设备都能轻松运行复杂的模型,而不用担心效率问题。

原文摘要

Efficient deep neural network (DNN) models equipped with compact operators (e.g., depthwise convolutions) have shown great potential in reducing DNNs' theoretical complexity (e.g., the total number of weights/operations) while maintaining a decent model accuracy. However, existing efficient DNNs are still limited in fulfilling their promise in boosting real-hardware efficiency, due to their commonly adopted compact operators' low hardware utilization. In this work, we open up a new compression paradigm for developing real-hardware efficient DNNs, leading to boosted hardware efficiency while maintaining model accuracy. Interestingly, we observe that while some DNN layers' activation functions help DNNs' training optimization and achievable accuracy, they can be properly removed after training without compromising the model accuracy. Inspired by this observation, we propose a framework dubbed DepthShrinker, which develops hardware-friendly compact networks via shrinking the basic building blocks of existing efficient DNNs that feature irregular computation patterns into dense ones with much improved hardware utilization and thus real-hardware efficiency. Excitingly, our DepthShrinker framework delivers hardware-friendly compact networks that outperform both state-of-the-art efficient DNNs and compression techniques, e.g., a 3.06% higher accuracy and 1.53$\times$ throughput on Tesla V100 over SOTA channel-wise pruning method MetaPruning. Our codes are available at: https://github.com/facebookresearch/DepthShrinker.

cs.LG cs.CV