paper https://arxiv.org/abs/1804.06332

그림은 Object Detector인 Yolo v2에 KD를 적용한 논문입니다. 아이디어는 간단합니다. Backbone에서 나온 Faeture Map간의 L2 Loss를 Conv 마다 구하여 학습시키는 방법입니다. 이때 Model을 압축하기 위해 첫번째, 두번째, 세번째 Layer에 대해 BWN(Binary Weight Network)기법을 적용하는데, 이는 Sign Function을 통해 -1과 1로 인코딩하는 방법을 적용합니다. 이는 위에서 살펴본 AB와 유사하다고 볼 수 있습니다. AB의 경우 Teacher의 Decision Boudnary를 Zero인지 아닌지로 정의했다면 본 논문에서 제안하는 BWN은 음수인지 양수인지로 Decision Boundary를 정했다고 볼 수도 있을것같습니다. 본 논문에서는 이러한 KD 방법을 이용하여 약 mAP가 2%낮으나, 28배 가벼운 Detector를 구현하였습니다. 자세한 성능지표는 아래에서 확인할 수 있습니다.

이때 FP는 Full Precision Model이며, M0,M1,M2는 각각 첫번째, 두번째, 세번째 Layer에 대해 BWN이 적용된 Network입니다. 그리고 KT는 M0로부터 초기화되고 Train된 Network입니다. 이때 성능이 약 2% 낮아졌지만 성능 감소 대비 모델의 압축률은 매우 높은것으로 확인할 수 있습니다.

참고

https://ezobear.github.io/model compression/2020/01/02/KD-post.html