大規模言語モデルと画像-言語モデルの技術動向

# 1. はじめに
　近年、自然言語処理、画像処理、画像-言語マルチモーダル処理の分野における深層学習モデルは、モデルサイズやデータセットの大規模化により大幅な性能向上を遂げており、技術開発とアプリケーションの両面において多くの期待を集めています。本記事では、それら深層学習モデルの大規模化に関するこれまでの技術動向について触れ、その流れの中で自然言語、画像、画像-言語の各分野において注目を集めたモデルを幾つか紹介します。

 # 2. 深層学習モデルの大規模化
　2022年は、リリース開始からわずか1週間で100万人のユーザー登録を達成した対話型AI「ChatGPT」や、ソースコードが一般公開された高性能な画像生成AI「Stable Diffusion」など、様々な生成モデルが登場し話題となりました。これらのモデルは大規模なパラメータ数を持ち、大規模な量のデータセットで学習されています。ここでは、上記のような深層学習モデルの大規模化に大きな影響を与えた技術について紹介します。

 ## 2.1. Transformerの発明
 　研究コミュニティでは、2017年ごろから、パラメータ数やデータセットサイズの大規模化を通して、高い汎化性能を持つ深層学習モデルの開発が盛んに取り組まれてきました。中でも、 Transformer[^1]という深層学習モデルの発明は、そのトレンドを作った大きな要因の一つと言えます。
　TransformerはVaswaniらによって提案された自然言語処理用のモデルですが、その発明以前、自然言語の取り扱いにはRNNをベースとしたLSTMと呼ばれるモデルの適用が主流でした。しかし、LSTMは以下2つの大きな課題を抱えていることが指摘されていました。
 
1.	文章を入力とするとき、単語毎に逐次処理を行う必要があるため、学習時の並列化が困難であること
2. 単語の並びを逐次的に処理するに従い、以前に入力した単語の情報が失われていくため、位置が離れるほど単語間の依存関係を捉えづらくなること

　これら課題に対して、TransformerではSelf-Attention機構のみを用いることで、距離が離れた単語間の依存性の考慮と、並列計算に適した構造による学習の効率化を実現しました。
結果として、Transformerは、英独・英仏翻訳タスクにおいてSoTAを達成するだけでなく、英語の構文解析タスクにおいても高い性能を発揮し、広く様々な自然言語処理タスクにおいて強力なツールになり得ることを示しました。現在では、自然言語処理分野だけでなく、画像処理や画像-言語マルチモーダル処理分野においてもTransformerの機構を組み込んだモデルが盛んに開発されており、大規模化と汎化性能の向上が進んでいます。

## 2.2. 大規模言語モデルと汎化性能の向上
　Transformerの発明以降、自然言語処理の分野ではGPT[^2]やBERT[^3]、そしてそれらの派生モデルなど、Transformerベースの大規模言語モデルが多く提案されました。図１に大規模言語モデルのパラメータ数の変化を示します。パラメータ数は年々増加し、2022年にGoogleから発表されたPaLMではパラメータ数が5400億にも達しています。
 
![fig1.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2990701/da419e09-22d7-5d40-5bfd-85cac256d5d3.png)
図１　大規模言語モデルのパラメータ数の変化

　図1に示す流れのなかで、大規模言語モデルは様々な個別のタスク（下流タスク）に対して汎化性能を向上させましたが、そのタスクに対するチューニング手法にも大きな変化が見られました。
GPTやBERTの発明以前は、言語の性質を捉えた特徴量を学習しておき、その特徴量を用いて下流タスクに特化したモデルを個別に構築・学習させるアプローチが主流でした。そのため、共通の事前学習モデルをFine-tuningすることで様々なタスクに転用可能なGPTやBERTは、自然言語処理タスクへの新しいアプローチを示す技術として多くの注目を集めました。そして更に大規模化が進んだGPT-2やGPT-3、PaLMでは、モデルパラメータの更新すら行わないIn-Context Learningによって下流タスクへの対応が可能となりました。参考として、表2-1にFine-tuningとIn-Context Learning のうちのFew-shot Learning、Zero-shot Learningについて示します。

表2-1　チューニング手法の比較
| チューニング手法 | 説明 |
|:-:|:-|
| Fine-tuning | タスク用のデータを用いて、事前学習モデルのパラメータを更新させることでチューニングする。 |
| Few-shot Learning | タスクの説明と幾つかの回答例をプロンプト※に入力することでチューニングする。モデルのパラメータ更新は行わない。 |
| Zero-shot Learning | タスクの説明のみをプロンプトに入力することでチューニングする。モデルのパラメータ更新は行わない。 |

※プロンプト：モデルに入力する指示文や質問文のこと

## 2.3. Transformerのスケーリング則
　Transformerの発明によって新しい大規模言語モデルの開発競争は活発化しましたが、それと同時に、大規模モデルの学習にあたっては費用や時間の面で多くのコストが必要になることが問題視され、効率的なモデル構築が1つの重要な研究テーマとなっていきました。
　2020年にOpenAIのKaplanらは、Transformerベースの自己回帰モデルにおいて、テストデータでの損失Lとモデルのパラメータ数N、学習データセットのサイズD、学習の計算量Cの3変数の間に以下のようなスケーリング則があることを明らかにしました[^4]。

```math
\displaylines{
L(N) \propto N^{-0.076}\\
L(D) \propto D^{-0.095}\\
L(C) \propto C^{-0.050}
}
```
そしてこのスケーリング則が、あるパラメータ数Nの大規模言語モデルを学習する際の最適なデータセットサイズや学習ステップ数などを予測するフレームワークとして活用可能であることを報告しました。
　さらに同年、OpenAIのHenighanらは動画生成モデルや文章からの画像生成モデル、数学の回答文生成モデルなど、自然言語以外の自己回帰モデルにおいても同様のスケーリング則が成り立つことを明らかにし[^5]、以降これらのスケーリング則による知見をもとに、文章生成モデルであるGPT-3や、文章を入力とした画像生成モデルのDALL-E、画像からそのキャプションを予測するモデルのCLIPなどが開発されていきました。
　また、これらの報告においての非常に興味深い点として、パラメータ数やデータセットサイズ、計算量に関するスケーリング則に対して、実証実験で確認した範囲内では明確な適用限界が示されなかったことが挙げられます。このことは、モデルを大規模化するほど性能が向上することを示唆し、現在の大規模化トレンドを後押しする大きな要因になったと考えられます。

# 3. 自然言語処理分野における大規模モデル
　機械翻訳タスクを対象に提案されたTransformer[^1]は、それ以降の様々なモデルに組み込まれました。ここでは、自然言語処理分野におけるTransformerベースモデルの中で、代表的なモデルをいくつか紹介します。

 ## 3.1. GPT
 (1) 概要
　GPT（Generative Pretrained Transformer）はOpenAIのRadfordらによって提案された、自己回帰型の大規模言語モデルです[^2]。それまで、自然言語処理タスクに対するアプローチとしては、タスク毎にモデルを構築し学習する方法が一般的でしたが、GPTでは事前学習を通した1つの基盤的なモデルの構築とそれを元にしたタスク毎のFine-tuningという2段階のトレーニングフレームワークを採用することで、多くの下流タスクにおいて当時のSoTAを達成するという成果をあげました。

 (2) 学習タスク
　GPTでは、与えられたトークン列の次にくるトークンを予測する自己回帰タスクを通して事前学習モデルを構築します。学習データセットとしては、BookCorpusという7000冊以上の未発表書籍からなる大規模なコーパスデータを用いています。
　構築した事前学習モデルをもとに、自然言語推論、質問応答、文章類似性評価、文章分類の下流タスクでFine-tuningを行い、幾つかのデータセットで評価されました。結果として、多くのデータセットにおいて当時SoTAであったLSTMベースのモデルを超える予測精度が得られ、大規模なデータセットによる自己教師あり学習と下流タスクへのFine-tuningという2段階のトレーニングフレームワークの有効性を示しました。

(3) 後続モデル
　GPTの発表以降、後続のモデルとしてGPT-2、GPT-3がOpenAIから発表されています。バージョンアップによる変化に目を向けたとき、実はネットワーク構造の仕組み自体は大きく変わっておらず、学習タスクも一貫しています。しかしながら、モデルサイズと学習データセットサイズの大幅な大規模化（GPT-2とGPT-3ではパラメータ数に100倍以上の差がある）を通して、自然言語処理タスクへの汎化性能やモデルチューニング方法の観点において大きな変化を見せました。
　大規模化によって大幅な性能向上をみせたものの、GPT-3の論文の中ではアルゴリズム的な制約や事前学習の限界についても考察されています。具体的には、GPTシリーズのモデルでは事前学習タスクとして単方向のトークン予測（トークン列 $[t_0, t_1, … t_{n-1}]$ が与えられたときのtnの予測）を学習していますが、双方向的な学習（トークン列 $[t_0, t_1, … t_{i-1}, t_{i+1}, …, t_{n-1}, t_n]$ が与えられたときのtiの予測）は考慮されていないため、双方向的な意味理解が有効なタスクにおいての性能低下に繋がることが指摘されています。また、コーパスデータに基づく事前学習では、映像に対する理解や実世界での物理的な相互作用に対する理解など様々なコンテキストが取り込めていない問題についても触れられており、人間からのフィードバックに基づく強化学習や、画像情報も含めたマルチモーダルな学習の必要性が示唆されました。

 # 3.2. BERT
 (1) 概要
　BERT（Bidirectional Encoder Representations from Transformers）は、GPT発表の数か月後にGoogleのDevlinらによって提案された、双方向的な学習を取り入れた大規模言語モデルです[^3]。性能評価を行った11種のタスク全てでSoTAを達成し、話題となりました。また、その内9つはGPTがSoTAであったタスクであり、双方向学習によって大きく性能が向上することが示されました。

(2) 学習タスク
　BERTも、GPT同様に、大規模なコーパスデータによる事前学習モデルの構築と下流タスクにおけるFine-tuningという2段階のトレーニングフレームワークから成ります。事前学習では、表3-1に示すMasked Language Model (MLM) とNext Sentence Prediction (NSP) と呼ばれる2種類のタスクを学習させており、学習データセットとしては、BookCorpusに加えて英語Wikipediaのコーパスデータも用いています。

 表3-1 BERTの事前学習タスク
 | タスク | 説明 |
|:-:|:-|
| Masked Language Model (MLM) | 入力トークンの何割かをランダムにマスクし、そのマスクされたトークンを予測するタスク |
| Next Sentence Prediction (NSP) | 文章AとBが入力されたとき、AとBが連続する文章か関係ない文章かを予測するタスク |

　BERTは多くの下流タスクにおいてGPTを超える精度を示したことでその性能の高さが広く認められ、発表以降、自然言語処理タスクに取り組む際のデファクトスタンダードなモデルとなりました。一方で、事前学習タスクに関する妥当性の検証が不十分である点や、モデルサイズが大きい点については課題が残るとされ、改良モデルの開発も数多く取り組まれました。

 (3) 後続モデル
　BERTに関しては、事前学習タスクの改良やモデルの軽量化の観点から、非常に短期間で多くの改良モデルが考案されました。表3-2に改良モデルの一部を示します。また、これら改良モデルの他、科学技術分野の文献を学習させたSciBERTや生物医学分野の文献を学習させたBioBERTなど、ドメイン特化されたBERTも数多く考案されており、利用者の多さがうかがえるモデルとなっています。

 表3-2 BERTの改良モデル例
 | モデル名 | 特徴 |
|:-:|:-|
| XLNet (Jun 2019) | MLMの代わりにマスク不使用の双方向学習を採用。また、NSPを廃止。 |
| RoBERTa (Jul 2019) | MLMのマスクキング方法を改良し、NSPを廃止。また、より大きなデータセットで学習。 |
| ALBERT (Sep 2019) | BERTを大幅に軽量化したモデル。また、NSPの代わりに、連続する2文の順番を予測するタスクを採用。 |
| BART (Oct 2019) | BERTのような双方向型の事前学習とGPTのような単方向の事前学習を組み合わせ、学習。 |

# 3.3. InstructGPTとChatGPT
### (1) 概要
　大規模なコーパスデータを用いて構築されたGPT-3では、信頼性の低い文章や有害な文章など、ユーザーの意図に沿わない出力が生成される点が課題として認識されていました。InstructGPTは、OpenAIのOuyangらによって提案されたGPT-3の改良モデルであり、人間のフィードバックに基づく強化学習（Reinforcement Learning from Human Feedback, RLHF）を用いてGPT-3をFine-tuningすることで、上記課題が改善されることを示しました[^6]。

### (2) 学習タスク
　RLHFは、以下3つのステップから構成されています。

 #### Step1. 教師データの作成とFine-tuning
GPT-3に入力されたプロンプトを収集し、それらに対して望ましい回答を人間が作成する。そうして作成した教師データをもとにGPT-3をFine-tuningする。このときのモデルをSFT (Supervised Fine-tuning) モデルと呼ぶ。

 #### Step2. 報酬モデルの構築
入力プロンプトに対する回答をモデルに複数個出力させ、人間が回答の順位付けを行う。こうして得られたプロンプト、回答、順位のセットを教師データとして、プロンプトに対する回答がどれくらい良いかを答える報酬モデルを構築する。

 #### Step3. モデルの評価と更新
Step2で構築した報酬モデルが出力する報酬を最大化するように、Step1で構築したSFTモデルを更新する。ここで、報酬モデルへの過剰適合によって破綻した文章が出力されないように、トークンの出力分布が最初のSFTモデルの分布から離れすぎないようなペナルティ項を加える。

　上記ステップで構築されたInstructGPTとGPT-3の出力を比較した結果、InstructGPTの方が信頼性の高い文章を出力すると評価され、また、入力プロンプトに対してユーザーの意図に沿った回答を出力しやすくなることが分かりました。一方、出力の有害性に関してはわずかに改善する結果にとどまり、さらに偏見については改善が見られないなどの課題も明らかになりました。

 ### (3) 後続モデル
　OpenAI は、モデルの改善手法としての有効性が示されたRLHFを対話文生成モデルに適用することでGPT-3.5を構築し、現在多くの話題を呼んでいるChatGPTをリリースしました。さらに2023年にはGPT-4が発表されましたが、その学習にあたってはスケーリング則が活用されており、完成に要した学習量の10000分の1の時点で、最終的なモデル性能が予測できていたことが報告されています[^7]。

 # 4. 画像処理分野における大規模モデル
  現在では、Transformerの機構は画像処理の分野においても効果を発揮することが知られており、画像分類モデルや物体検出モデルにも採用されています。ここでは、画像処理分野においてTransformerが強力なツールとなることを示すきっかけとなったVision Transformer (ViT)について紹介します。

## 4.1. Vision Transformer

### (1) 概要
　Vision Transformer（ViT）は、GoogleのDosovitskiyらによって提案された画像認識モデルであり、これまで自然言語処理にのみ使用されていたTransformerを画像分類タスクに適用したものです[^8]。ViTは、それまで主流であったCNNを一切使わずにTransformerのみを使用することで高い計算効率を示し、また、大規模なデータセットによる事前学習が性能向上において重要となることを示しました。

 ### (2) 学習タスク
　自然言語処理においてTransformerがトークン間の依存関係を計算することと対比して、ViTでは図4-1に示すように画像を複数のパッチに分割し、分割したパッチ間の依存関係を計算することで特徴量に変換します。離れたパッチ間の依存関係を考慮することができるTransformerの性質によって、CNNと比べて大域的な画像の特徴を捉えることが可能となりました。

 ![fig2.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2990701/36dcdb4b-58a9-ef2d-ea44-4ee342334e3e.png)
図4-1 Vision Transformerの概要(文献[^8]より引用)

　実験では、表4-1に示すデータセットを用いて様々なデータ規模での事前学習モデルを構築し、その性能が評価されました。

 表4-1 ViTの事前学習データセット
 | データセット | 説明 |
|:-:|:-|
| ILSVRC-2012ImageNet | 1000 クラス、130万枚の画像からなるデータセット |
| ImageNet-21k | 21000クラス、1400万枚の画像からなるデータセット |
| JFT-300M | 18000クラス、3億枚の画像からなるデータセット |

　結果として、JFT-300Mのような大規模データセットで事前学習したViTでは、複数の画像認識ベンチマークにおいて当時のSoTAモデルと同等かそれ以上の性能が示されました。さらに、この実験においてはスケーリングによるViTの性能の限界が確認されておらず、今後の更なる大規模化による性能向上が期待される結果となりました。

# 5. 画像-言語マルチモーダル処理分野における大規模モデル
　近年、画像と言語のマルチモーダルモデルに関する研究開発が数多く取り組まれています。特に2022年は、DALL-E2やImagen、Midjourney、Stable Diffusionなど、文章を入力とした画像生成モデルが様々提案され、画像生成AI元年とも呼ばれました。ここでは、画像と言語のマルチモーダルモデルの発展に貢献したCLIPと、その関連モデルについて紹介します。

 ## 5.1. CLIP
 ### (1) 概要
　CLIP（Contrastive Language-Image Pre-training）は、OpenAIのRanfordらによって提案された、TransformerとViTを組み込んだ画像分類モデルです[^9]。
　通常、画像分類タスクでは各クラスに対してラベル付けされたデータセットを学習させますが、データセットのラベルが変わってしまうと学習モデルによる分類が成り立たなくなってしまうため、汎化性能の高いモデルの構築に課題がありました。そのような課題を背景として、未知の画像に対して学習なしで予測するZero-shot画像分類手法の研究も取り組まれていましたが、十分な精度は出ていない状況でした。
　CLIPは、Web上から収集した4億組のキャプション付き画像をデータセットとして構築し、画像とキャプションが特徴量空間上で近くなるように学習させることで、高精度なZero-shot画像分類を可能にしました。また、CLIPでは文章がそのまま学習に使用されるため、新たにラベル付けをするコストも削減されるというメリットもあります。

### (2) 学習タスク
　CLIPでは、ある画像を入力としたとき、対応するキャプションとランダムに用意した非対応のキャプションの中から対応するキャプションを予測するタスクを学習させます。このとき、キャプションにTransformerを、画像にViTを適用することでそれぞれを特徴量に変換し、対応するペアの特徴量同士は類似度が高くなるように、対応しないペアの特徴量同士は類似度が小さくなるようにモデルを更新（対照学習）させます。
　性能評価では、最初期のZero-shot画像分類手法として知られるVisual N-Grams[^10]と、未知のデータセットを3種に対して精度比較を行い、全てのデータセットにおいて大幅な精度向上を示しました。また、ResNet50の精度比較に関しては、27種のデータセット中16種において、Zero-shotでのCLIPがLinear ProbeのResNet50を上回る結果となりました。論文内では、CLIPがZero-shot画像分類の分野において重要な成果を示した一方で、分類精度に関してはResNet50のLinear Probeと同程度に留まったことについて触れられており、Zero-shot画像分類が広範なデータセットでSoTAを達成するには約1000倍の学習量が必要であることや、そのためにはCLIP自体の学習効率を上げる必要があること等、今後の課題が示されました。

## (3) 関連モデル
　2021年にOpenAIは入力された文章を元に画像を生成するモデルとしてDALL-Eを発表しましたが、DALL-Eでは、生成された画像が入力文章に沿っているかどうかCLIPを用いてランク付けをし、ランク上位の画像を出力するという仕組みを採用しています。また、2022年にはDALL-Eの後続モデルとしてDALL-E 2が発表されました。DALL-E 2では、アーキテクチャにCLIPが組み込まれており、文章と画像の対応付けを特徴量空間で行うことで、連続的で多様な画像が生成可能となっています。

 # 6. 大規模モデルの課題と対策
　Bommasaniらによってまとめられたレポートでは、本稿にて大規模モデルと呼んでいた、広範なデータによって学習された汎用性の高いモデルを「基盤モデル」と呼んでおり、今後解決すべき多くの課題がまとめられています[^11]。ここでは、2つ紹介します。

##### ① モデルの安全性
基盤モデルでは大規模なデータセットを用いた事前学習が必要となるが、そのデータセットには有害な情報や偏見を含む情報が混ざってしまう可能性があるため、構築された基盤モデルの安全性には注意が必要である。

##### ② クローズドな開発と参入障壁の上昇
これまで、深層学習の研究開発に関してはソースコードやデータセットを公開することが広く受け入れられてきたが、最近ではクローズドな大規模モデル開発が進んでいる。また、大規模モデルを独自に構築するにあたっては、十分な計算資源と十分な学習データが必須となるため、高い参入障壁が存在する。

　①の課題については、InstructGPTの研究において、人間からのフィードバックがモデルの安全性を向上させる1つの有望な改善策になることが示されました。また、同研究では、RLHFでFine-tuningされたパラメータ数1.3Bのモデルの方が175BのGPT-3よりも望ましい出力をするという結果も示されました。RLHFのように人間のフィードバックを効果的にモデルに反映させる手法を開発することが、小規模且つ高性能なモデルの構築につながり、②の課題として挙げていた参入障壁を乗り越える1つの有効な方法になると考えられます。

 # 7. おわりに
　本記事では、自然言語処理、画像処理、画像-言語マルチモーダル処理における大規模モデルの技術動向について紹介しました。具体的には、近年急速に進んでいる大規模化の流れを踏まえ、その流れをつくるきっかけの一つとなったTransformerモデルとそのスケーリングに関する性質について述べ、自然言語処理や画像処理、画像-言語マルチモーダル処理の各分野において提案された代表的なTransformerベースモデルを紹介しました。そして最後に、大規模モデルが抱える課題について触れ、計算資源やデータの低コスト化につながる学習手法開発の重要性について触れました。
　当社では、自然言語処理、画像処理、データ分析などの広い分野で、最新の技術にキャッチアップしつつ、独自技術の開発にも取り組んでいます。今後も、分野を跨いだ広い視野を持ち続け、社会の課題解決に有効な技術開発に励んでいきたいと思います。

AI Powerhouse　根本 裕也

# 参考文献
[^1]: Ashish Vaswani, Noam Shazeer, Niki Parmar, Jakob Uszkoreit, Llion Jones, Aidan N Gomez, Łukasz Kaiser, et al. Attention Is All You Need. in Advances in neural information processing systems, 2017.
[^2]: Alec Radford, Karthik Narasimhan, Tim Salimans, and Ilya Sutskever. Improving Language Understanding by Generative Pre-Training. 2018.
[^3]: Jacob Devlin, Ming-Wei Chang, Kenton Lee, and Kristina Toutanova. BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding. arXiv preprint arXiv:1810.04805, 2018.
[^4]: Jared Kaplan, Sam McCandlish, Tom Henighan, Tom B. Brown, Benjamin Chess, Rewon Child, Scott Gray, et al. Scaling Laws for Neural Language Models. arXiv preprint arXiv:2001.08361, 2020.
[^5]: Tom Henighan, Jared Kaplan, Mor Katz, Mark Chen, Christopher Hesse, Jacob Jackson, Heewoo Jun, et al. Scaling Laws for Autoregressive Generative Modeling. arXiv preprint arXiv:2010.14701, 2020.
[^6]: Long Ouyang, Jeff Wu, Xu Jiang, Diogo Almeida, Carroll L. Wainwright, Pamela Mishkin, Chong Zhang, et al. Training language models to follow instructions with human feedback. 2022.
[^7]: OpenAI. GPT-4 Technical Report. arXiv preprint arXiv:2303.08774, 2023.
[^8]: Alexey Dosovitskiy, Lucas Beyer, Alexander Kolesnikov, Dirk Weissenborn, Xiaohua Zhai, Thomas Unterthiner, Mostafa Dehghani, et al. An Image is Worth 16x16 Words: Transformers for Image Recognition at Scale. arXiv preprint arXiv:2010.11929, 2020.
[^9]: Alec Radford, Jong Wook Kim, Chris Hallacy, Aditya Ramesh, Gabriel Goh, Sandhini Agarwal, Girish Sastry, et al. Learning Transferable Visual Models From Natural Language Supervision. arXiv preprint arXiv:2103.00020, 2021.
[^10]: Ang Li, Allan Jabri, Armand Joulin, and Laurens van der Maaten. Learning Visual N-Grams from Web Data. arXiv preprint arXiv:1612.09161,2016.
[^11]: Rishi Bommasani, Drew A. Hudson, Ehsan Adeli, Russ Altman, Simran Arora, Sydney von Arx, Michael S. Bernstein, et al. On the Opportunities and Risks of Foundation Models. arXiv preprint arXiv:2108.07258, 2021.