The Beautiful Future
PRUNING FILTERS FOR EFFICIENT CONVNETS, ICLR2017 본문
1. 저자
Hao Li, University of Maryland
Asim Kadav, NEC Labs America
2. 요약
3. 프루닝의 민감도 영향력
커널(2D) < 필터(3D) < 컨볼루션 레이어
가로축 필터개수의 비율, 세로축 필터의 L1 norm. 필터를 L1 norm에 따라 정렬 후 레이어마다 비교.
슬로프가 가파를 수록(a) 필터를 제거해도 성능이 적게 떨어진다(b).
논문 저자도 경험적으로 필터개수를 줄여서 프루닝했다.
같은 단계 -> 같은 feature map 크기를 가지는 단계 -> 풀링 또는 스트라이드 2 이상 등으로 같은 크기.
같은 단계에 있는 레이어들은 유사한 민감도를 가지고 있다. -> (a)를 보면 상단 레이어(8-13)가 슬로프가 가파르고 하단 레이어들이 슬로브가 완만함
논문 저자는 같은 단계에 있는 레이어들에게 같은 비율로 프루닝을 했다.
프루닝에 민감한 레이어는 적은 부분 또는 아예 프루닝을 하지 않았다.
4. 멀티레이어에서 프루닝 적용방법
- 전체를 한번에 프루닝하는 것이 좋은 이유
1 레이어 하나씩 프룬닝 후 재학습 -> 시간이 굉장히 오래걸림
2 전체 레이어를 프루닝 후 재학습
3 ResNet 같은 경우는 레이어 디펜던시 때문에 연결되어있기 때문에 다 같이 해줘야한다.
- L1 norm을 종속적 또는 독립적으로 계산 할 것이냐
- Independent pruning: 각레이어에서 L1 norm을 계산후 프룬필터 결정
- Greedy pruning: 하단 층에서 제거된 필터의 영향으로 제거 되는 채널을 배제하고 L1 norm을 계산
아래 그림에서 노랑색영역이 포함되고 안되고의 차이.
Greedy pruning은 전체적으로 최적은 아니지만 전체론적이며 많은 필터를 프르닝할때 보다 높은 성능을 보인다.
- Residual block 프루닝 방법
5. 재학습
- 크리티컬한 필터를 건들지 않앗다면 원 성능에 가깝게 복원된다.
1. 한번에 전체 프루닝
2. 레이어 단위로 프루닝
- 보다 좋은 결과를 보일 수도 있다. 그러나 조금씩 진행하기 때문에 오래 걸린다.
-Residual Net
같은 단계의 Residual Block의 시작과 끝을 프르닝하면 성능이 떨어지는 현상이 있다.(ResNet18초과부터는 2번 이상 반복됨)
'논문' 카테고리의 다른 글
OpenPose: Real-time Multi-Person 2D Pose Estimation using Part Affinity Fields (0) | 2020.06.07 |
---|---|
ICCV 2019 (0) | 2019.11.14 |
SSD (0) | 2017.12.14 |
MDM (0) | 2017.03.16 |
Residual Net (0) | 2016.12.12 |