DOT: A Distillation-Oriented Trainer

Borui Zhao, Quan Cui, Renjie Song, Jiajun Liang
7/1/2023

No official code found. Best implementation: megvii-research/mdistiller (898 stars, PyTorch, last commit 2023-11-05).

Abstract

Knowledge distillation transfers knowledge from a large model to a small one via task and distillation losses. In this paper, we observe a trade-off between task and distillation losses, i.e., introducing distillation loss limits the convergence of task loss. We believe that the trade-off results from the insufficient optimization of distillation loss. The reason is: The teacher has a lower task loss than the student, and a lower distillation loss drives the student more similar to the teacher, then a better-converged task loss could be obtained. To break the trade-off, we propose the Distillation-Oriented Trainer (DOT). DOT separately considers gradients of task and distillation losses, then applies a larger momentum to distillation loss to accelerate its optimization. We empirically prove that DOT breaks the trade-off, i.e., both losses are sufficiently optimized. Extensive experiments validate the superiority of DOT. Notably, DOT achieves a +2.59% accuracy improvement on ImageNet-1k for the ResNet50-MobileNetV1 pair. Conclusively, DOT greatly benefits the student’s optimization properties in terms of loss convergence and model generalization. https://github.com/megvii-research/mdistiller.

View on arXivView PDF

Code Implementations(1)

PyTorch

The official implementation of [CVPR2022] Decoupled Knowledge Distillation https://arxiv.org/abs/2203.08679 and [ICCV2023] DOT: A Distillation-Oriented Trainer https://openaccess.thecvf.com/content/ICCV2023/papers/Zhao_DOT_A_Distillation-Oriented_Trainer_ICCV_2023_paper.pdf

898132PythonMar 16, 20222 years ago
cifarcococomputer-visioncvpr2022deep-learning+4 more

Similar Papers

Cite this paper

@article{zhao2023dot,
  title  = {DOT: A Distillation-Oriented Trainer},
  author = {Borui Zhao and Quan Cui and Renjie Song and Jiajun Liang},
  year   = {2023},
  eprint = {2307.08436},
  archivePrefix = {arXiv},
  url    = {https://arxiv.org/pdf/2307.08436},
  journal = {ICCV 2023 2023}
}

Add a badge to your README

Shows whether official code is linked for this paper.

Code of Paper badge
[![Code of Paper](https://codeofpaper.com/badge/2307.08436.svg)](https://codeofpaper.com/paper/2307.08436)

Discussion