ICLR2017, 1611.06440v2, Pruning Convolutional Neural Networks for Resource Efficient Inference
Background -> CNN은 Computer Vision에서 뛰어난 성능을 보이지만 Inference 비용이 매우 높아서 모바일, 임베디드와 같은 저사양 장치에서 실시간 Application으로 배포하기 어렵다. 특히 Transfer Learning 상황에서 ImageNet 대규모 데이터로 Pre-Trained 된 대형 (i.g., VGG16, AlexNet) 모델을 작은 도메인 데이터 셋(Birds200, Flower102)으로 Fine-Turning하는 경우가 많다.
전체 FeatureMap을 구조적으로 Pruning하여 계산량(FLOPs)와 Inference time을 크게 줄이면서 정확도의 손실을 낮추자는게 이 연구의 목표이다.
Problem -> Unstructured pruning(Han et al., 2015): Irregular sparsity 일반 하드웨어에서 speedup이 제한적이다. -> Regularization-based pruning: 학습이 오래 걸리고(원래 학습보다 3배 이상), Layer-wise sensitivity의 분석이 필요하다. -> Second-order methods: ->
Method -> Greedy Iterative Pruning + Taylor Expansion 기반 Saliency Criterion. 제안
Pruning Procedure -. Target task로 Network fine-tuning until convergence. -. Pruning+Fine-Turning을 번갈아 가면서 반복한다(한번에 하나의 FeatureMap만 제거) -. 목표로하는 Flops, Accuracy에 도달하면 종료한다.