レビュー— SimSiam:単純なシャム表現学習の調査
負のサンプルペア、大規模なバッチ、およびモメンタムエンコーダを使用しない自己監視学習
シンプルなシャム表現学習の探求
SimSiam、Facebook AI Research(FAIR)
2021 CVPR、500以上の引用(Sik-Ho Tsang @ Medium)
自己監視学習、教師なし学習、表現学習、画像分類
- MoCoやSimCLRなど、自己監視学習用に提案されたさまざまなフレームワークがありますが、いくつかの制約があります。
- 単純なサイアムネットワークであるSimSiamが提案されています。これは、(i)負のサンプルペア、(ii)大きなバッチ、(iii)運動量エンコーダーを使用しなくても意味のある表現を学習できます。
- 停止勾配操作は、崩壊を防ぐ上で重要な役割を果たします。
- (すばやく読むには、1、2、5をお読みください。)
- SimSiamフレームワーク
- ストップグラジエントの重要性
- 他の設定のための実証的研究
- 仮説
- SOTAの比較

1.1。動機
- いくつかの従来技術では、大量のバッチを必要とする大量の負のサンプルペア、これは非常に高い計算およびメモリ要件につながる。
- これに遭遇するために、いくつかの従来技術は、回避策として運動量エンコーダを使用するので、大きなバッチは必要とされない。
1.2。フレームワーク
- SimSiamは、画像xからランダムに拡張された2つのビューx1とx2を入力として受け取ります。2つのビューは、バックボーン(ResNetなど)と投影MLPヘッドで構成されるエンコーダネットワークfによって処理されます。
- エンコーダーf は、2つのビュー間で重みを共有します。
- hで示される予測MLPヘッドは、一方のビューの出力を変換し、それをもう一方のビューと照合します。
- 2つの出力ベクトルを示します。
- 負のコサイン類似性は最小化されます:
- BYOLに続いて、対称損失が使用されます。
- これは画像ごとに定義され、合計損失はすべての画像で平均化されます。可能な最小値は-1です。




- これは、この用語ではz2が定数として扱われることを意味します。
- したがって、対称損失は次のようになります。
- ここで、 x 2のエンコーダーは、第1項でz 2から勾配を受け取りませんが、第2項でp 2から勾配を受け取ります( x 1の場合はその逆です)。

- ResNet- 50はバックボーンエンコーダーfとして使用されます。
- バッチサイズは512で、8GPUが使用されています。バッチ正規化(BN)はデバイス間で同期されます。
- 100エポックの事前トレーニングが実行されます。
- 投影MLP(f)には、出力fcを含む完全に接続された各(fc)レイヤーにBNが適用されます。 その出力fcにはReLUがありません。非表示のfcは2048-dです。このMLPには3つのレイヤーがあります。
- 予測MLP(h)には、隠れたfcレイヤーにBNが適用されています。その出力fcにはBNまたはReLU がありません。このMLPには2つのレイヤーがあります。
- hの入力と出力(zとp)の次元はd = 2048であり、hの 隠れ層の次元は512であり、hをボトルネック構造にします。

左のプロット:停止勾配がない場合、オプティマイザーは縮退した解をすばやく見つけ、可能な最小損失-1に達します。
- 中央のプロット:ℓ2で正規化された出力のチャネルごとの標準を示し、すべてのチャネルの平均標準としてプロットされます。それは、退化が崩壊によって引き起こされていることを示しています。
- 右のプロット:停止勾配を使用すると、kNNモニターは着実に改善された精度を示します。
- 右表:線形評価結果を示します。SimSiamは、67.7%の重要な精度を達成します。停止勾配を削除するだけで、精度は0.1%になります。これは、ImageNetの確率レベルの推測です。
崩壊ソリューションの存在は、SimSiamがアーキテクチャ設計(たとえば、予測子、BN、ℓ2-ノルム)だけで崩壊を防ぐには不十分であることを意味します。言い換えると、停止勾配が削除されても、アーキテクチャ設計は崩壊を防ぎません。
3.1。予測子

- (a) : hを削除するとモデルは機能しません(つまり、恒等写像)。損失は次のようになります。

3.2。バッチサイズ

128または64のバッチサイズでも適切に機能し、精度は0.8%または2.0%低下します。バッチサイズが256〜2048の場合も、同様に良好な結果が得られます。
- ただし、SimCLRとSwAVはどちらも、正常に機能するために大きなバッチ(たとえば、4096)を必要とします。

- BNを削除しても折りたたみは発生しませんが、34.6%のaccが発生します。
3.4。類似度関数

- SimSiamは、クロスエントロピーの類似性でも機能しますが、このバリアントには最適ではない可能性があります。

3.5。対称化

非対称バリアントは、妥当な結果を達成します。対称化は精度を高めるのに役立ちますが、崩壊防止とは関係ありません。
4.仮説
- このセクションでは、著者は理論式を使用して、停止勾配と予測子のニーズを説明しようとします。
SimSiamは、期待値最大化(EM)のような アルゴリズムの実装です。これは暗黙的に2セットの変数を含み、2つの根本的なサブ問題を解決します。停止勾配の存在は、変数の追加セットを導入した結果です。
- 損失関数は次のとおりです。
- ここで、Fはθによってパラメータ化されたネットワークです。Tは増強です。xは画像です。期待値E[・]は、画像と拡張の分布を超えています。簡単にするために平均二乗誤差が使用されます。これは、ベクトルがℓ2で正規化されている場合の余弦の類似性に相当します。
- ここでは、予測子はまだ考慮されていません。見てのとおり、ηは別の変数のセットとして導入されています。そして、私たちは解決することを検討します:
- ここで問題はθとηの両方です。この定式化は、k-meansクラスタリングに類似しています。ここで、θはクラスタリング中心に類似しており、ηはxの表現です。
- また、k-meansと同様に、この問題は、変数の1つのセットを修正し、他のセットを解決する交互のアルゴリズムによって解決できます。正式には、これら2つのサブ問題の解決を交互に行うことができます。



- ここで、 tは交替のインデックスであり、「←」は割り当てを意味します。SGDを使用してサブ問題を解決できます。勾配がこの問題の定数であるηt -1に逆伝播しないため、停止勾配操作は自然な結果になります。
- また、ηtのサブ問題は、ηxごとに個別に解決できます。ここで問題となるのは、各画像xについて以下の期待値を最小化することです。
- 平均二乗誤差のため、次の方法で簡単に解決できます。
- これは、ηxが拡張の分布全体にわたるxの平均表現で割り当てられていることを示しています。



- SimSiamは、1ステップの交互で近似できます。
- まず、T 'として示され、 ET [・]を無視して、最初のサブ問題を近似するために、拡張が1回だけサンプリングされます。
- それを2番目のサブ問題に挿入すると、次のようになります。
- ここで、 θtはこのサブ問題の定数であり、T 'はそのランダムな性質のために別のビューを意味します。


4.5。予測子の包含
- 予測子も考慮することにより、予測子hは次の値を最小化することが期待されます。
- hの最適解は、任意の画像xに対して満たす必要があります。
- 4.4の近似と同様に、期待値ET [・]は無視されます。そして実際には、期待値ETを実際に計算することは非現実的です。hを使用すると、このギャップを埋めることができます。



- 1エポック内のkステップSGDをθと見なす場合、「1ステップ」はSimSiamと同等であり、「1エポック」は1エポックに必要なkステップを示します。
5.SOTAの比較
5.1。ImageNet線形評価

SimSiamは、負のサンプルも運動量エンコーダーも使用せずに、256のバッチサイズでトレーニングされています。その単純さにもかかわらず、SimSiamは競争力のある結果を達成します。100エポックの事前トレーニングの下ですべての方法の中で最高の精度がありますが、より長いトレーニングのゲインは小さくなります。
- また、すべての場合でSimCLRよりも優れた結果が得られます。

- すべての方法は、ImageNetでの200エポックの事前トレーニングに基づいています。
- SimSiamの表現は、ImageNetタスクを超えて転送可能です。これらの方法はすべて、転移学習に非常に成功しており、すべてのタスクでImageNetの監視対象の事前トレーニングの対応物を上回るか同等にすることができます。シャムの構造は、彼らの一般的な成功の核となる要素です。

- SimCLRは、崩壊を防ぐためにネガティブサンプル(「非類似性」)に依存しています。SimSiamは、「ネガのないSimCLR 」と考えることができます。
- SimSiamは、概念的には「オンラインクラスタリングなしのSwAV」に類似しています。
- SimSiamは、「モメンタムエンコーダなしのBYOL」と考えることもできます。
[2021CVPR][SimSiam]
単純なシャム表現学習の探索
教師なし/自己監視学習
1993 [ de Sa NIPS'93 ] 2008–2010 [ Stacked Denoising Autoencoders ] 2014 [ Exemplar-CNN ] 2015 [ Context Prediction ] [ Wang ICCV'15 ] 2016 [ Context Encoders ] [ Colorization ] [ Jigsaw Puzzles ] 2017 [ L³-Net ][スプリットブレインオート][モーションマスク][ DoerschICCV'17 ] 2018 [ RotNet / Image Rotations ] [ DeepCluster ] [ CPC / CPCv1][インスタンスの識別] 2019 [ Ye CVPR'19 ] 2020 [ CMC ] [ MoCo ] [ CPCv2 ] [ PIRL ] [ SimCLR ] [ MoCo v2 ] [ iGPT ] [ BoWNet ] [ BYOL ] [ SimCLRv2 ] 2021 [ MoCo v3 ] [ SimSiam]