SNIP

分类: 剪枝与稀疏化

SNIP

定义

SNIP (Single-shot Network Pruning based on Connection Sensitivity) 是 Lee et al. (2019) 提出的训练前剪枝方法,在训练开始前通过一次前向-反向传播确定网络连接的重要性并进行剪枝。

数学形式

sj=L(cθ;D)cjs_j = \left| \frac{\partial \mathcal{L}(\mathbf{c} \odot \boldsymbol{\theta}; \mathcal{D})}{\partial c_j} \right|

其中 cj{0,1}c_j \in \{0, 1\} 为连接掩码,sjs_j 为连接敏感度。保留 sjs_j 最大的 top-kk 连接。

核心要点

训练前(at initialization)剪枝的先驱工作

基于梯度的连接敏感度作为重要性指标

GraSP 互补:SNIP 关注梯度幅值,GraSP 关注梯度流

证明了网络在初始化阶段就包含结构信息

代表工作

Lee et al. “SNIP: Single-shot Network Pruning based on Connection Sensitivity” (ICLR 2019)

相关概念

GraSP

Taylor pruning

结构化剪枝

SparseGPT