視覚知能のための知識の蒸留と生徒と教師の学習: レビューと新たな展望

論文アドレス: http://arxiv.org/abs/2004.05937
github アドレス: なし

知識の蒸留に関するレビュー記事です。知識の蒸留は、モデル圧縮に非常に効果的な方法であると考えられています。この論文の著者は、モデル圧縮と知識伝達という 2 つのアプリケーション シナリオから、近年の知識蒸留に関する研究を要約しています。

概要

知識の蒸留の定義

Hinton らによって提案されたこの手法は、小規模な生徒ネットワークのトレーニング プロセスが大規模な教師ネットワークによって監督されることを意味します。その目的関数は次のように表すことができます。
目的関数
ここで、H は損失関数のタイプ、y は実数ラベル、σ \sigmaσは温度制御係数TTTのソフトマックス関数、zs 、 zt z_s、 z_tzszは、それぞれ生徒ネットワークと教師ネットワークのロジット ベクトルです。

KD理論分析

ベイズ基準に基づいて、2 つの特徴表現間の相互情報量は次のように表すことができます。
相互情報
ここで、R ( T ) 、 R ( S ) R(T)、 R(S)R ( T ) R ( S )は生徒ネットワークと教師ネットワークの特徴表現ベクトル、H ( ⋅ ) H( )( )はエントロピー関数です。理論的にはET を最大化することで、 S [ log p ( ( R ( T ) ∣ R ( S ) ) ] E_{T,S}[\text{log }p((R(T)|R(S))]ET S[ log  p ( ( R ( T ) R ( S ) ) ]対応する学生ネットワーク パラメーターは相互情報量の下限を改善できますが、実際のp ( ( R ( T ) ∣ R ( S ) ) ] p((R ( T)|R(S))]p ( ( R ( T ) R ( S ) ) ]の実際の分布は不明なので、既存の変数分布を使用して項目を推定します。上記の式は
変化
次のようこの式は、変形
教師ネットワークから学習した知識の量を定量化します。( )は生徒ネットワークの最適化されるパラメータとは関係がなく、定数であるため、qq をq は下限値を取得できます。モデリングは通常、ガウス分布、モンテカルロ推定、またはノイズ コントラスト推定によって取得できます。
上の式から、教師ネットワークと生徒ネットワークの特徴表現間のつながりが、学習される知識の量において重要な役割を果たしていることがわかります。

分類

  • 教師のネットワークから抽出する
  1. 物流から得た知識

    ラベルのソフト化と正則化
    ラベルのソフト化は、カテゴリ間のより豊富な固有の関連情報を抽出すると同時に、学生の知識の過剰学習を防止するために使用されます。さらに、教師のトレーニングに正則化制約を追加すると、生徒ネットワークの過剰適合を防ぐこともできます。

    ノイズラベル学習 より
    良い視覚的特徴と対応する分類子を学習するために、サンプルにノイズを追加することで、元の小さくクリーンなデータセットが強化されます。

    厳密な蒸留は、
    知識の拡張など、知識の蒸留をさらに要求することで、さまざまな知識の学習を強化し、生徒の過剰適合を回避し、より良いパフォーマンスを達成します。

    アンサンブルの蒸留
    単一の教師モデルの知識には不確実性がありますが、これは複数の教師モデルの知識を使用することで除去できるため、複数の教師モデルの平均的な知識を使用して生徒モデルを蒸留すると、より良いパフォーマンスを達成できます。

  2. 中層からの蒸留

    教師の知識の変換 蒸留は、
    教師ネットワークの中間層の情報次元を生徒モデルの関連する次元と一致させることによって実行されます。この時点で知識は歪められます。

    生徒情報の変換
    蒸留は、生徒の中間レベル情報の次元を教師モデルの関連する次元と一致させることによって実行されます。別の変換方法は、生徒ネットワークのローカル中間層情報を抽出し、それを教師ネットワークの対応する特徴表現と照合することです。

    蒸留層の場所の選択
    現在、蒸留層の場所には、任意の選択、各畳み込みグループの最後の出力層、および最後の畳み込みグループの最後の出力層の 3 つのオプションがあります。異なる位置の選択により、最終的な蒸留効果に大きな違いが生じます。

    蒸留のメトリック
    一般的なメトリックは L1 メトリックと L2 メトリックですが、蒸留に対するメトリックもいくつかあります。

  • 対立的な方法で蒸留する
  1. 従来のGANに基づく蒸留

    決定器は知識の分布を学習するために使用され、生徒ネットワークのロジットベクトルと教師ネットワークのロジットベクトルが識別のための決定器の入力として使用されます。出力層でよく使用されます

  2. CGANベースの蒸留

    意思

  3. TripleGAN に基づく蒸留

    アップグレード保留中

  • グラフ表現の蒸留
  1. 意味

    アップグレード保留中

  2. グラフ表現に基づく蒸留

    アップグレード保留中

  • 複数の教師ネットワークから抽出

    アップグレード保留中

  • オンライン蒸留

    アップグレード保留中

  • データフリー蒸留

    アップグレード保留中

  • 少量のサンプルの蒸留

    アップグレード保留中

  • 自己蒸留

    アップグレード保留中

  • モデル間の蒸留

    アップグレード保留中

  • 半教師あり/自己教師あり学習における蒸留

    アップグレード保留中

  • 新しい学習スタイルによる蒸留

    アップグレード保留中

アプリケーションシナリオ

アップグレード保留中

議論

アップグレード保留中

展望

アップグレード保留中

おすすめ

転載: blog.csdn.net/qq_43812519/article/details/106608998