論文:勾配集中化:ディープニューラルネットワークのための新しい最適化手法
- 論文のアドレスarxiv.org/abs/2004.01
- 論文コードgithub.com/Yonghongwei
Introduction
オプティマイザは、SGDやSGDMのような大規模データセット上のディープニューラルネットワークの学習にとって重要であり、オプティマイザの目標は、学習プロセスを高速化することとモデルの汎化性を向上させることの2つです。現在、SGDのようなオプティマイザーの性能を向上させる方法として、学習における勾配消失や勾配爆発問題の克服、効果的なトリックエンタイメントの初期化、活性化関数、勾配トリミング、適応学習率などが研究されています。また、固有マップ正規化法BNや重み正規化法WNのように、統計的な観点から学習をより安定させるために重みと固有値を正規化する研究もあります。
重みや固有値での正規化アプローチとは対照的に、本論文では、ネットワークの学習を加速し、汎化能力を向上させるだけでなく、モデルの微調整との互換性を高めることができる、重みの勾配に作用する高性能ネットワーク最適化アルゴリズム勾配中心性(GC)を提案します。本論文の主な貢献は以下の通りです:
- 新しい一般的なネットワーク最適化手法である勾配中心性(gradient centrality)を提案し、学習プロセスを平滑化、高速化するだけでなく、モデルの汎化能力を向上させます。
- GC の理論的特性を分析し、GC が損失関数を制約し、重み空間と固有値空間を標準化し、 モデルの汎化能力を向上させることができることを示します。さらに、制約された損失関数は、より良いリプシッツ性(摂動に対する能力、関数の傾きがリプシッツ定数より小さい定数であること)を持ち、学習をより安定かつ効率的にします。
Gradient Centralization
Motivation
BNとWSはそれぞれ特徴量と重みを操作するためにZスコア正規化を使用しており、これは実際に重みの勾配を間接的に拘束し、最適化中の損失関数のリプシッツ特性を改善します。これにヒントを得て、本論文では勾配を直接操作し、まずZスコア正規化を試みましたが、実験では学習の安定性が向上しないことがわかりました。その後、勾配ベクトルの平均を計算し、勾配ベクトルをゼロ平均化することを試み、効果的に損失関数のリプシッツ特性を改善し、ネットワーク学習をより安定で一般化し、勾配中心のアルゴリズムを得ることができることを実験で発見しました。
Notations
Formulation of GC
畳み込み層または完全連結層の重みベクトルwiwiに対して、逆伝播によってその勾配 ∇wiL∇wiLを求め、その平均値jLμ∇wiを図 bL=M1∑j=1M∇wi,jLとなり、GC演算ΦΦは次のように定義されます:
式1を行列形式に変換することも可能です:
PPは単位行列と単位ベクトル形成行列で構成され、それぞれ元の値を保存し、平均を求める役割を果たします。
Embedding of GC to SGDM/Adam
GC は、ゼロ平均勾配ΦGCを使用して重みを直接更新するために、SGDM や Adam のような現在の主流のネットワーク最適化アルゴリズムに単純に組み込むことができます。
アルゴリズム 1 とアルゴリズム 2 は、それぞれ、SGDM と Adam に GC を組み込んだもので、元の最適化アルゴリズムに本質的な変更はありません。
Properties of GC
以下は、GC がモデルの汎化を向上させ、学習を加速させる理由の理論的分析です。
Improving Generalization Performance
GCは、主に重み空間正則化と固有値空間正則化のおかげで、モデルの汎化を改善するという重要な利点があります。
Weight space regularization
まず、外挿によって得られるPPの物理的意味を紹介します:
すなわち、PPは空間ベクトルの法線ベクトルeeを持つ超平面に∇WLを写像する写像行列と見なすことができ、∇WLP∇WLは写像勾配です。
SGD最適化を例にとると、重み勾配のマッピングは、図2に示すように、重み空間を超平面またはリーマン多様体に拘束することができます。e
これは重み空間wwにおける制約付き最適化問題です。wwの解空間を正則化することで、オーバーフィッティングの可能性を減らし、特に学習サンプルが少ない場合にネットワークの汎化能力を向上させることができます。
WSは重みにeTw=eTw=0の制約を課し、初期重みが制約を満たさない場合、重みは制約を満たすように直接修正されます。微調整学習を仮定すると、WS は事前学習モデルの利点を完全に捨て去りますが、GC は任意の初期重み=eT=0に適応することができます。
Output feature space regularization
ResNet50の異なる初期重みを視覚化すると、重みはすべて非常に小さく、GCを使用して訓練した場合、出力特徴が入力特徴の変化に対して過度に敏感ではないことがわかります。この特性は、出力特徴空間を正則化し、ネットワーク学習の汎化を改善します。
Accelerating Training Process
BN も WS も、損失関数がリプシッツ特性を満たすように間接的に重み勾配を制約し、∣∇wL∣∣wL∣∣2と∣∣L∣∣wL∣2がともに上界を持つことは前述の通り。GC は勾配を直接境界とし、BN や WS と同様の性質を持ち、元の損失関数を比較して以下の定理を満たします:
GCのもう1つの利点は、勾配が爆発するのを防ぎ、学習をより安定させることであり、勾配トリミングと同様の働きをします。過剰な勾配は損失の激しい振動を引き起こし、収束を困難にしますが、勾配トリミングは大きな勾配を抑制し、学習をより安定させ、より速くします。
LL2 ノルムと勾配の最大値が可視化され、GC使用後の値はすべて元の関数より小さくなっていることがわかります。これは定理4.2とも一致し、GCはよりスムーズで高速な学習プロセスを可能にします。
Experiment
BNとWSを併用した場合の性能比較。
Mini-ImageNetでの比較実験。
CIFAR100の比較実験。
ImageNetでの比較実験。
きめ細かいデータセットでの性能比較。
検出タスクとセグメンテーションタスクの性能比較。
結論
勾配中心のGCは、重みの勾配をゼロにすることで、ネットワークの学習をより安定させることができ、ネットワークの汎化能力を向上させることができ、アルゴリズムは単純な考えで、論文の理論的分析は非常に適切で、GCの役割の原理を非常によく説明することができます。