[論文レビュー] Apprentice: Using Knowledge Distillation Techniques To Improve Low-Precision Network Accuracy
Apprenticeは量子化と知識蒸留を組み合わせて低精度DNNの精度を向上させ、ResNet系でImageNetの三値量子化および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の展開を促進する。
- 知識蒸留が低精度モデルの精度低下を補えるかを調査する。
- トレーニングの異なる段階で蒸留を適用する3つの実用的なスキームを提案し、高精度の低精度モデルを作成する。
提案手法
- 教師-学生(アプレンティス)フレームワークを用い、教師は高精度、学生は低精度とする。
- 3つのスキームを提案: scheme-A 教師と学生の共同訓練; scheme-B 事前学習済みの教師からの蒸留で学生をゼロから訓練; scheme-C 事前学習済みの高精度状態から開始して低精度の学生を微調整。
- 損失関数L(x; WT, WA) = α H(y, p^T) + β H(y, p^A) + γ H(z^T, p^A) を α=1, β=0.5, γ=0.5 として、教師のロジットを用いて訓練する。
- アプレンティスでは最初の層と最後の層をフル精度のままにし、隠れ層の重みと活性化は量子化する(4ビットまたは8ビットのWRPN)。
- ResNet-18/34/50を学生として、ResNet-34/50/101を教師として実験する。低精度 varianteには三値重みまたは8ビット活性化を用いた4ビット重みを使用する。
実験結果
リサーチクエスチョン
- RQ1知識蒸留はImageNet上の低精度(三値および4ビット)ネットワークの精度を向上させることができるか?
- RQ23つの蒸留スキームは最終的な精度と訓練効率の観点でどう比較されるか?
- RQ3教師-学生の深さと精度設定が、最先端の低精度性能の達成にどんな影響を与えるか?
- RQ4共同訓練(scheme-A)は、事前学習済み教師からの蒸留(scheme-B)または微調整(scheme-C)より低精度ネットワークにおいて優れているか?
主な発見
- 3つのApprenticeスキームは、ImageNet-1KにおけるResNet-18/34/50で従来の低精度手法より精度を改善する。
- Scheme-AとScheme-Cは、いくつかのResNet系で三値および4-bit重みの構成において最先端の結果を達成し、場合によってはフル精度ベースラインに近づく、または一致する。
- ResNet-34およびResNet-50について、Apprenticeを介して訓練された8-bit活性化付き4-bit重みは、適切な教師を用いるとImageNetのフル精度Top-1誤差との差が約0.5〜1.5ポイント程度に達する。
- より大きな教師を用いると低精度の学生の精度が向上するが、ある教師サイズを超えると利益が低減する。
- Scheme-BはScheme-Aと同等の精度に達するために必要な訓練エポック数を削減し、Scheme-Cは一部の構成でScheme-Aより僅かな向上をもたらすことがある。
より良い研究を、今すぐ始めましょう
論文設計から論文執筆まで、研究時間を劇的に削減しましょう。
クレジットカード登録不要
このレビューはAIが作成し、人間の編集者が確認しました。