SimCLR(視覚表現の対照学習のための単純フレームワーク)の元論文を解説

AI論文解説

はじめに

本研究で発表されたSimCLRは、自己教師あり学習アルゴリズムを、特殊なアーキテクチャやメモリを必要とせずに、単純化したものです。ヒントン氏のグループから発表されたこの研究の成果により、従来の自己教師あり学習、半教師あり学習、転移学習の仕組みは大幅に改善され、世界中の研究機関での実装や実用化が進んでいます。

この研究の中で明らかになったこと

下記の知見を組み合わせることで、Imagenet上での自己教師あり学習および半教師あり学習について、従来の手法を大幅に上回る結果を得ることができました。

  • 効果的な予測タスクを定義するために、強力なData augmentationが重要である
  • 表現とContrasitive loss(対照損失)の間に学習可能な非線形変換を入れることで性能向上
  • 教師あり学習と比較して、より大きなバッチサイズと、多くの学習ステップの恩恵が大きい

背景

これまで教師なしの視覚表現は、generativeまたは、discrinativeのどちらかが用いられていました。generativeアプローチは不要な計算量が多すぎること、discrinativeアプローチは経験則に依存することが問題でした。

自己教師あり学習とは?

現在のAIのほとんどが、人間が準備した正解ラベルを学習することで訓練されますが、これを教師あり学習と呼びます。一方で「自己」教師あり学習は、正解ラベルを必要とせずに、自ら学ぶことが可能な仕組みです。

モデルの詳細

Chen et al. A Simple Framework for Contrastive Learning of Visual Representation

まず画像xに、2種類の異なるData augmentation(図中のt~Tと、t’~T)が施されます。Data augmentation(データ拡張)は、もとのデータに処理を加えて変種を作り出していくことで、データ量を水増しする、AI分野でよく用いられる手法です。

 その後それぞれが関数fと、続いて関数gに代入されます。計算の結果、2種類の zi と zj が得られますので、これらの一致度が高くなるように学習させます。これにより画像の特徴的な要素(Representation)を抽出します。ちなみに関数fはベースエンコーダネットワーク、関数gはプロジェクションヘッドと呼ばれます。

 例えば、10枚の画像があるとすると、2種類のData augmentationにより20枚が生成されます。そこからある1枚を取り出したととき、残りの19枚のうち、同じ画像を起源とするものは1枚のみで、残りの18枚は、異なる画像から生成されたものになります。この、同じ画像を起源とする1枚と共通する特徴を抽出していきます。逆に、残りの18枚と共通する要素は抽出しないようにします。これによりそれぞれの画像の特徴の抽出が進みます。

訓練

LARSというオプティマイザーを使用。32~128のコアを有する、クラウドTPUで訓練されました。同じ画像を起源とする2枚のペアが、どうしても同じデバイス内に位置してしまうので、モデルはこれを利用してカンニングをしてしまします。これを防ぐため、デバイスごとのバッチ正規化ではなく、全デバイスでのバッチ正規化の平均と分散を使用しました。

 データにはImageNet ILSVRC-2012データセットを使用。バッチが大きい方が成績が良かったためバッチサイズを4096に設定。100エポック訓練されました。

SimCLRの驚くべき精度とは?

Chen et al. A Simple Framework for Contrastive Learning of Visual Representation

上図の星印は画像分類問題における自己教師あり学習の精度を表します。左上の×印は教師ありのResNet-50の成績です。自己教師あり学習は、正解ラベルを与えられなかったにもかかわらず、なんと教師ありのResNet-50と同等の成績を示しました。

 また、1%のみにラベルを与えてFine-tuningしてあげるだけで、既存の教師あり学習の成績を上回りました!

まとめ

これまでのAIでは、教師あり学習が主流であり、大量の訓練データを使うためには、大量の正解ラベルを人間が準備する必要があり、これに莫大な労力と時間がかかりました。自己教師あり学習によりラベリングの負担を減らせれば、AIの進歩は加速度的に進む可能性があります。

 思ったよりも単純な数式で成り立っており、アイデアが革新的であることが伺えます。今後も発展が期待される自己教師あり学習をしっかり理解して、今後のAIの進歩に食らいついていきたいですね。

 この記事が、少しでも読んでいただいた方の参考になれば嬉しいです。

コメント

タイトルとURLをコピーしました