Skip to main content
QUICK REVIEW

[论文解读] SGAD: Soft-Guided Adaptively-Dropped Neural Network

Zhisheng Wang, Fangxuan Sun|arXiv (Cornell University)|Jul 4, 2018
Data Stream Mining Techniques参考文献 19被引用 8
一句话总结

本文提出SGAD,一种软引导自适应丢弃神经网络,通过根据输入样本的难度动态跳过残差块来降低计算成本。利用可学习的软引导机制和直通估计,SGAD在CIFAR-10上相比ResNet-32实现了77%的FLOP减少,且精度损失不足1%。

ABSTRACT

Deep neural networks (DNNs) have been proven to have many redundancies. Hence, many efforts have been made to compress DNNs. However, the existing model compression methods treat all the input samples equally while ignoring the fact that the difficulties of various input samples being correctly classified are different. To address this problem, DNNs with adaptive dropping mechanism are well explored in this work. To inform the DNNs how difficult the input samples can be classified, a guideline that contains the information of input samples is introduced to improve the performance. Based on the developed guideline and adaptive dropping mechanism, an innovative soft-guided adaptively-dropped (SGAD) neural network is proposed in this paper. Compared with the 32 layers residual neural networks, the presented SGAD can reduce the FLOPs by 77% with less than 1% drop in accuracy on CIFAR-10.

研究动机与目标

  • 解决现有模型压缩方法对所有输入样本一视同仁的低效问题,忽略其分类难度的差异。
  • 通过实现输入特定的自适应计算,减少深度神经网络中的计算冗余。
  • 开发一种可训练机制,根据样本难度动态跳过残差块,同时不损失精度。
  • 提出一种软引导端到端可训练框架,即使在离散跳过决策下也能实现高效的梯度反向传播。
  • 探索并验证学习到的跳过行为,确保对困难样本仍保留高模型容量。

提出的方法

  • 引入一种源自软max层输出的软指导,用于量化每个输入样本的分类难度。
  • 采用可学习的映射策略,在训练过程中将样本难度与期望的模块跳过率对齐。
  • 使用带有直通估计器(STE)的二值掩码生成器,近似不可微的四舍五入函数,以实现梯度反向传播。
  • 端到端训练网络,其中模块根据软指导和学习到的阈值决定是否跳过。
  • 在推理阶段移除软指导,实现低延迟推理且无额外开销。
  • 以残差网络(ResNet)架构为基础,利用其残差模块结构实现高效的模块跳过。

实验结果

研究问题

  • RQ1软引导机制能否有效量化深度神经网络中单个输入样本的分类难度?
  • RQ2当跳过决策为离散且不可微时,如何实现自适应模块跳过的端到端训练?
  • RQ3通过输入特定计算,计算成本可降低到何种程度,同时保持或提升模型精度?
  • RQ4哪些残差模块最可能被跳过,这种行为是否与它们对模型容量的贡献相关?
  • RQ5与现有自适应推理技术相比,所提方法在FLOP减少和精度方面是否表现更优?

主要发现

  • 与ResNet-32相比,SGAD在CIFAR-10上实现77%的FLOP减少,且精度损失不足1%。
  • 在CIFAR-100上,SGAD相比ResNet-32实现0.47%的精度提升,同时FLOPs减少23%。
  • 在CIFAR-10和CIFAR-100上,所提方法在精度和FLOP效率方面均优于SACT、ACT、SkipNet和BlockDrop。
  • 梯度幅值较小的模块更可能被跳过,表明较不关键的层优先被丢弃。
  • 训练后部分模块在所有输入上均变为非活跃状态(FLOPs为零),支持模型剪枝并减少内存占用。
  • 学习到的跳过行为通过保留梯度幅值较高的模块,有效维持了模型容量,而这些模块与分类精度的贡献高度相关。

更好的研究,从现在开始

从阅读论文到最终审阅,大幅缩短您的研究时间。

无需绑定信用卡

本解读由 AI 生成,并经人工编辑审核。