破局的忘却におけるモデルと事前学習スケールの効果
3つの要点
✔️ 事前学習モデルの破局的忘却について調査
✔️ 大規模な事前学習モデルほど破局的忘却への耐性があることを実証
✔️ モデルのクラス表現の類似性と事前学習モデルの関係を実証
Effect of scale on catastrophic forgetting in neural networks
written by Vinay Venkatesh Ramasesh, Aitor Lewkowycz, Ethan Dyer
(Submitted on 29 Sep 2021)
Comments: ICLR2022
code:
本記事で使用している画像は論文中のもの、紹介スライドのもの、またはそれを参考に作成したものを使用しております。
はじめに
大規模な事前学習モデルは、コンピュータビジョンや自然言語処理の分野で活発に研究されています。
では、機械学習における大きな問題である破局的忘却は、このような事前学習モデルに対してどのような影響をもたらすでしょうか?
本記事では、大規模な事前学習モデルについて、破局的忘却がモデルやデータセットサイズによってどれだけ変化するのかなどについて調査を行った研究について紹介します。
実験設定
タスクについて
実験では、CIFAR-10、CIFAR-100データセットを利用し、標準的なタスク分割設定で評価を行います。CIFAR-10では、5つのクラスからなる2つのタスクで順次学習を行います。CIFAR-100では10クラス、50クラスに分割して学習します。また、入力分布シフト型の設定についても実験を行います。この場合では、20のスーパークラス固定部分集合のうち、各タスクごとにサブクラスを変更してサンプリングを行います。
言語モデルを用いる実験では、次トークンを予測する生成タスクについて、IMDb Reviewsと英語版Wikipediaデータセットを利用します。
モデルについて
破局的忘却の調査を行うモデルはVision Transformer(ViT)とResNetで、パラメータ等の設定は以下の通りです。
学習時の設定について
各モデルの事前学習時には、Adam optimizerを用いて、約26000のカテゴリからなり、約1400万枚の画像を含むImageNet21kデータセットを利用します。fine-tuning時には、β=0.9のSGD optimizerを用いて学習を行います。最初のタスクでは線形ウォームアップとcosine decayスケジュールを採用し、以降は固定の学習率で学習します。
実験結果
モデルのスケールと破局的忘却
はじめに、事前学習済みモデルの大きさと破局的忘却の関係について調査します。結果は以下の通りです。
この図では、異なる大きさのモデルについて、Split CIFAR-10の一つ目のタスク(Task A)と二つ目のタスク(Task B)の性能がプロットされています。
図の通り、Vision TransformerとResNet両方について、パラメータ数が大きいモデルほど性能低下が小さい傾向が見られました。例えば、パラメータ数5.7MのVit-xSでは約6.5%精度が低下した一方で、パラメータ数86.7MのVit-Bでは0.5%以下の精度低下に抑えられています。また、Split CIFAR-100の場合(10クラス×10タスク、50クラス×2タスク)は以下のようになります。
左図では、ViT-Bモデルを10タスク学習させた時の各タスク精度が示されており、各タスクの平均精度低下は1.8%、最大精度低下は2.9%となりました。右図ではCIFAR-100(2タスク)での各ViTの精度低下が示されており、やはりモデルが大きいほど精度低下は抑えられています。
入力分布シフト設定では以下の通りです。
総じて、事前学習モデルのスケールが大きいほど、破局的忘却への耐性が高いことがわかりました。
fine-tuningデータセットと破局的忘却
次に、fine-tuningデータセットが異なる場合、上記のようなモデルスケールと破局的忘却の耐性の関係がどうなるかについて調査します。結果は以下の通りです。
この図では、CIFAR以外のデータセットで2タスクの学習を行った場合の、ViTとResNetのパラメータ数と性能の関係が示されています。
各タスクごとのより詳細な結果は次のようになります。
プロットの分布はタスクごとに少々異なりますが、モデルスケールが大きいほど破局的忘却が小さい傾向は全タスクについて同様に見られました。
事前学習モデルとゼロから学習したモデルの比較
次に、これまでの実験で見られた破局的忘却とモデルスケールの関係は、事前学習済みモデルではなくゼロから学習したモデルの場合にはどうなるかについて実験を行います。具体的には、ゼロから学習したモデルの精度と、事前学習済みモデルの精度が同一になるよう、事前学習済みモデルにハンディキャップを与えた状態で比較を行います。
結果は以下の通りです。
図の通り、ゼロから学習したモデル(グレーの丸)では、事前学習済みモデル(色付きの丸)の結果と比べて破局的忘却が大きくなっています。
さらに、モデルスケールに関係なく、この破局的忘却の傾向は同様になっています。このことから、モデルスケールの増大による破局的忘却の耐性は、事前学習済みモデルの特性であることがわかりました。
なお、ViTモデルが画像分類タスクで適切な性能を発揮するには大規模な事前学習を経る必要があるため、この実験ではResNetのみに焦点が当てられています。
事前学習の時間、データセットサイズ、fine-tuning時間と破局的忘却
上記の実験により、事前学習モデルが破局的忘却への耐性を高めることがわかりました。ここで、事前学習時間やデータセットサイズ、fine-tuning時のステップ数が、破局的忘却とどのような関係にあるかについて調査します。
はじめに、事前学習時のステップ数と破局的忘却の関係は以下のようになりました。
右図では、事前学習ステップ数が大きいほど、より濃い色でプロットされています。この結果から、事前学習時間が長いほど、下流タスクでの性能と破局的忘却への耐性が高まることがわかりました。
次に、事前学習時のデータセットサイズとfine-tuning時のステップ数を変更した場合の結果は以下の通りです。
左図では、学習時のデータセットサイズを等倍から1/16倍まで変化させた場合の結果が示されており、データセットサイズが減少しても、破局的忘却の度合いはそれほど大きく変化しないことがわかりました。例えばデータセットサイズが1/16倍の場合、性能低下は3%程度に抑えられています。
このことから、破局的忘却を抑えたい場合、事前学習時のデータセットサイズはそれほど重要ではないと考えられます。また、fine-tuning時のステップ数を変更した場合が中央・右図で示されています。総じて、fine-tuningステップ数を増やしても、破局的忘却が大きくなることは示されませんでした。
表現の重複と破局的忘却
では、モデルスケールが大きい事前学習モデルが破局的忘却に強い傾向はどうして生じるのでしょうか?ここで、タスクAとタスクBにおけるモデル表現間の類似性を測定する指標として、trace overlapを導入します(詳細は省略)。まず、事前学習モデルとゼロから学習させたモデル(ResNet)とで、trace overlapにより求めたクラス表現間の類似性がどのように異なるかについて確認します。結果は以下の通りです。
図の通り、ゼロから学習させた場合(scratch)ではクラス間表現の類似性が高くなっている一方、事前学習モデルでは有意に低い数値が得られています。このことは、事前学習モデルは、異なるクラスの表現を、互いの類似性が低い(オーバーラップが少ない)形で保存することができることが示唆しています。
また、モデルスケールとクラス間表現の平均オーバーラップは以下の通りです。
この図では、事前学習モデルでは、モデルスケールが増大するほどオーバーラップは低下している一方、ゼロから学習させたモデルでは減少傾向が見られません。このことから、事前学習モデルでは、モデルスケールが大きいほど、よりクラス間表現のオーバーラップを減少させることができると思われます。
言語モデルにおける破局的忘却
最後に、画像分類タスクではなく言語モデルについて、破局的忘却の傾向を調べた結果は以下の通りです。
実験の結果、モデルスケールが大きいほど、破局的忘却を抑えながら二つのタスクの性能を高めることが示されました。ただし、性能の分布は画像分類タスクと大きく異なり、これは画像分類と自然言語モデリングタスクとの間でスケーリング動作が異なる可能性を示唆しています。
まとめ
本記事で紹介した論文では、広範な実験の結果、事前学習モデルスケールの増大が破局的忘却の抑制に繋がることが示されました。
また、事前学習モデルとゼロから学習させたモデルの差異として、クラス間表現の類似性(オーバーラップ)の傾向が異なること、このオーバーラップはモデルスケールの増大に伴い減少することがわかりました。
実験は2つのタスクを連続で学習する設定について多く紹介しましたが、元論文の付録ではより詳細な実験結果が記載されているため、興味がある方は御覧ください。
この記事に関するカテゴリー