[논문 리뷰] Apprentice: Using Knowledge Distillation Techniques To Improve Low-Precision Network Accuracy
Apprentice는 양자화와 지식 증류를 결합하여 저정밀 DNN의 정확도를 높이고, ImageNet에서 ResNet 변형을 사용한 3진(ternary) 및 4비트 정밀도에서 최첨단 성능을 달성합니다.
Deep learning networks have achieved state-of-the-art accuracies on computer vision workloads like image classification and object detection. The performant systems, however, typically involve big models with numerous parameters. Once trained, a challenging aspect for such top performing models is deployment on resource constrained inference systems - the models (often deep networks or wide networks or both) are compute and memory intensive. Low-precision numerics and model compression using knowledge distillation are popular techniques to lower both the compute requirements and memory footprint of these deployed models. In this paper, we study the combination of these two techniques and show that the performance of low-precision networks can be significantly improved by using knowledge distillation techniques. Our approach, Apprentice, achieves state-of-the-art accuracies using ternary precision and 4-bit precision for variants of ResNet architecture on ImageNet dataset. We present three schemes using which one can apply knowledge distillation techniques to various stages of the train-and-deploy pipeline.
연구 동기 및 목표
- 제약된 추론 시스템에서 가중치 및 활성화 정밀도를 줄여 고정밀 DNN를 배치하는 것을 목표로 한다.
- 지식 증류가 저정밀 모델의 정확도 손실을 보상할 수 있는지 조사한다.
- 고정밀 프리트레이드 상태에서 시작하여 다양한 단계에서 증류를 적용하는 세 가지 실용적 스킴을 제안하여 고정밀 저정밀 모델을 산출한다.
제안 방법
- 교사-학생(apprentice) 프레임워크를 사용하되 교사는 고정밀이고 학생은 저정밀이다.
- 세 가지 스킴 제안: 스킴-A 교사와 학생의 공동 학습; 스킴-B 사전 학습된 교사로부터 학생을 처음부터 학습시키는 증류; 스킴-C 고정밀 사전 학습 상태에서 시작하여 저정밀 학생을 미세 조정하는 방식.
- 손실 함수 L(x; WT, WA) = α H(y, p^T) + β H(y, p^A) + γ H(z^T, p^A)로서 α=1, β=0.5, γ=0.5, 교사의 로짓(logits)에서 학습한다.
- apprentice에서 첫 번째 및 마지막 층은 전체 정밀도로 유지하고, 은닉층의 가중치와 활성화는 양자화한다(4-또는 8비트에 대해 WRPN).
- 저정밀 변형에 대해 ResNet-18/34/50를 학생으로, ResNet-34/50/101을 교사로 사용; 저정밀 변형은 3진 가중치나 8비트 활성화로 4비트 가중치를 사용한다.
실험 결과
연구 질문
- RQ1지식 증류가 ImageNet에서 저정밀(3진 및 4비트) 네트워크의 정확도를 향상시킬 수 있는가?
- RQ2세 가지 증류 스킴은 최종 정확도와 학습 효율성 측면에서 어떻게 비교되는가?
- RQ3교사-학생의 깊이 및 정밀도 구성의 변화가 최첨단 저정밀 성능을 달성하는 데 어떤 영향을 미치는가?
- RQ4공유된 고정밀 사전 학습 상태에서 시작해 스킴-A의 공동 학습이 스킴-B의 사전 학습 교사로부터의 증류나 스킴-C의 미세 조정보다 저정밀 네트워크에 더 우수한가?
주요 결과
- 세 가지 Apprentice 스킴 모두 ImageNet-1K에서 ResNet-18/34/50에 대해 이전의 저정밀 방법들보다 정확도를 향상시킨다.
- 스킴-A와 스킴-C는 여러 ResNet 변형에서 텐어리 및 4비트 가중치 구성에 대해 최첨단 결과를 달성하며 일부 경우에는 풀정밀 기준선에 근접하거나 이를 상회한다.
- ResNet-34 및 ResNet-50에서 8비트 활성화와 함께 훈련된 4비트 가중치가 Apprentice를 통해 적절한 교사를 사용하면 ImageNet의 Top-1 에러에서 약 0.5–1.5 퍼센트포인트 이내에 도달한다.
- 더 큰 교사를 사용하면 저정밀 학생의 정확도가 향상될 수 있으며, 특정 교사 크기를 넘어서면 효과가 감소한다.
- 스킴-B는 스킴-A에 비해 비교 가능한 정확도에 도달하는 데 필요한 학습 에포크를 줄이고, 스킴-C는 일부 구성에서 스킴-A에 비해 약간의 이점을 줄 수 있다.
더 나은 연구,지금 바로 시작하세요
연구 설계부터 논문 작성까지, 연구 시간을 획기적으로 줄여보세요.
카드 등록 없음 · 무료 플랜 제공
이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.