人工知能
GPT-3: フェアショット学習による言語モデルの進化

近年、AIおよびML業界では、NLPシステムの開発と応用が急速に進展しており、研究者はNLPの実践を、ダウンストリームのタスクに転送するための柔軟でタスクに依存しない方法で実装することができました。
当初は、単層の表現が使用され、ワードベクトルが使用され、タスク固有のアーキテクチャにフィードされました。次に、RNNアーキテクチャが使用され、多層の表現とコンテキスト状態が使用され、より良い表現を形成しました。さらに最近では、タスク固有のアーキテクチャの必要性を完全に排除した、転送言語モデルまたは事前トレーニング済みの再帰モデルが登場しました。
転送言語モデルは、NLP業界における重要な転換点となり、質問回答、読解、テキスト包含、テキスト的含意などの課題的なタスクで大きな進歩をもたらしました。
しかし、転送言語モデルの大きな制限は、タスク固有のファインチューニングまたはタスク固有のデータセットが必要であることです。さらに、転送言語モデルは、特定のタスクに数十万のラベル付き例が必要です。
タスク固有のデータセットとタスク固有のファインチューニングの必要性を排除することは、NLP業界にとって非常に望ましいことであり、数多くの理由から有益であることは明らかです。
既存の事前トレーニング済み転送言語モデルまたは再帰モデルの問題
- 実用性と適用性の制限
まず、各タスクにラベル付きデータを含む大規模なデータセットの必要性は、言語モデルの実用性と適用性を制限します。言語モデルは、短いストーリーを生成することから、文法の誤りを修正することまで、幅広いタスクに適用されます。ただし、各タスクにラベル付きデータを収集することは、特にこのプロセスを各タスクに繰り返す必要がある場合、課題となることがあります。
- トレーニングデータのスパリアスな相関の利用
トレーニング分布の限界とモデルの表現力の高さは、トレーニングデータのスパリアスな相関を利用する可能性を高めます。トレーニングデータを利用する可能性は、転送言語モデルが大量の情報を吸収するように設計されているため、ファインチューニングと事前トレーニングのパラダイムで問題を引き起こす可能性があります。
さらに、以前のモデルに関する研究では、大きなモデルは常に外部データセットで優れた結果をもたらさないことが示されています。さらに、スパリアスな相関を利用することで得られる汎化は、モデルのトレーニングデータに特化しているため、トレーニングデータの外部の状況では劣ったパフォーマンスにつながる可能性があります。
- 人間の学習との比較
最後に、転送言語モデルと比較して、人間は言語タスクの多くを学習するために大規模なトレーニングデータセットを必要としません。通常、自然言語で簡単な指示や言語タスクの短いデモンストレーションがあれば、人間はある程度の競争力で言語タスクを実行することができます。
人間の適応能力には、スキルセットを切り替えたり組み合わせたりして、方言や他のタスクをより良く実行できるという実際的な利点があります。これは、現在のNLPシステムの能力を超えています。
メタ学習とGPT-3を使用した問題の解決
上記の課題に対する可能な解決策は、メタ学習の使用です。メタ学習は、モデルがトレーニング中により広いスキルセットとパターン認識能力を開発し、インターフェンス中にこれらの学習した能力を使用して迅速に適応することを可能にする、現代のMLにおける概念です。
メタ学習は、事前トレーニング済み言語モデルのテキスト入力としてタスク仕様を使用する「コンテキスト内学習」というテクニックを使用して、言語モデルのアーキテクチャに実装されています。プロセスでは、モデルは自然言語の指示に条件付けられ、デモンストレーションを使用する場合があり、モデルはタスクの残りの部分を予測するために次のステップを予測することが期待されます。
メタ学習の唯一の大きな問題は、潜在的に肯定的な結果を示しているにもかかわらず、自然言語アーキテクチャではまだファインチューニングアプローチに劣っていることです。さらに改善が必要です。
メタ学習に加えて、トランスフォーマ言語モデルの容量を増やすという別の方法も人気を博しています。過去数年間で、転送モデルは容量の顕著な増加を経験しており、100百万パラメータのRNSS18モデル、300百万パラメータのDCLT18モデル、15億パラメータのRWC19モデル、80億パラメータのSSP19モデル、110億パラメータのRSR19モデル、170億パラメータのTUR20モデルがあります。
モデルの容量またはパラメータを増やすと、テキスト合成が改善され、ダウンストリームタスクと相関するロスも改善されることが歴史的に示されてきました。
これにより、175億パラメータ以上を持つGPT-3モデルに至ります。GPT-3モデルがリリースされたとき、転送言語モデルの中で最も大きな容量を持つモデルでした。GPT-3モデルについて詳しく見てみましょう。
GPT-3モデルの概要
GPT-3は、175億パラメータ以上を持つ自己回帰言語モデルで、2020年にOpenAIによってリリースされました。GPT-3は、事前トレーニング済み言語モデルの大きなカテゴリに分類され、GPT-2モデルのように、デコーダー専用の深層学習トランスフォーマモデルです。
GPT-3モデルは、コンテキスト学習能力を評価し、2ダース以上のNLPデータセットと複数の新しいタスクで評価されます。各タスクについて、GPT-3モデルは3つの条件で評価されます。
- フェアショット学習またはコンテキスト内学習:フェアショット学習では、GPT-3モデルはコンテキストウィンドウに収まるだけの分布を許可します。
- ワンショット学習:ワンショット学習では、モデルは1つのデモンストレーションだけを許可します。
- ゼロショット学習:ゼロショット学習では、デモンストレーションはありません。モデルは自然言語の指示だけを受け取ります。

一般に言えば、GPT-3モデルは、ゼロショットとワンショットの設定で望ましいパフォーマンスを達成し、フェアショットの設定ではほとんどの場合で最先端の転送モデルを上回ります。さらに、GPT-3モデルは、即座の推論や新しい単語の使用などの自然言語タスクで優れています。

GPT-3モデル:アプローチ
GPT-3モデルは、モデル、データ、トレーニングを含む従来の事前トレーニングアプローチを使用し、RWC-19転送言語モデルの事前トレーニングプロセスに似ています。GPT-3モデルは、モデルのサイズ、データセットのサイズ、データセットの多様性、トレーニング期間の長さを拡大します。
モデルは、RWC-19モデルのアプローチと似たコンテキスト内学習アプローチを使用しますが、データセットのコンテキスト内でパターンを学習するためのさまざまな設定を体系的に探索することで、少し異なります。
したがって、これらの設定を調べて、GPT-3モデルがさまざまな設定でどのようにパフォーマンスするかを評価してみましょう。
ファインチューニング
転送言語モデルの従来のアプローチはファインチューニングであり、事前トレーニング済みモデルの重みを、望ましいタスクに特化した監督データセットでトレーニングすることを含みます。ファインチューニングでは、数十万のラベル付き例が使用されます。
ファインチューニングアプローチは、数多くのベンチマークで強力なパフォーマンスをもたらします。ただし、ファインチューニングアプローチの主な制限は、各タスクに新しい大規模なデータセットが必要であり、トレーニングデータセットのスパリアスな特徴を利用する可能性があり、人間のパフォーマンスとの不公平な比較につながり、外部データセットでは汎化が劣る可能性があることです。
GPT-3モデルの現在のスコープでは、タスクに依存しないパフォーマンスのため、ファインチューニングアプローチは実装されていませんが、将来はGPT-3モデルにファインチューニングを適用することができます。
フェアショット
フェアショットとは、GPT-3モデルが条件付けとしてタスクのいくつかのデモンストレーションを受け取り、モデルの重みは更新されない設定を指します。フェアショットの設定では、データセットは通常、コンテキストと望ましい完了(例:フランス語の文とその英語訳)を持つ例を含みます。
フェアショットの設定では、モデルはコンテキストと完了のK例を受け取り、最後にコンテキストだけを受け取り、完了を生成することが期待されます。
フェアショット設定を使用することの主な利点は、タスクに依存しないデータの必要性が大幅に削減され、ファインチューニングで学習される狭い分布の可能性も削減されることです。一方、フェアショット学習の主な欠点は、結果が他の最先端モデルに比べてかなり劣ることです。
ワンショット
ワンショットの設定では、モデルは1つのデモンストレーションだけを受け取り、フェアショットの設定と同じです。ワンショットの設定は、タスクが人間に伝えられる方法に最もよく似ているため、転送言語モデルの重要な設定です。
ゼロショット
ゼロショットの設定では、デモンストレーションはありません。モデルは自然言語の指示だけを受け取ります。ゼロショットの方法は、最も便利で堅牢で、スパリアスな相関を回避しますが、最も挑戦的な設定です。
しかし、ゼロショットの設定は、人間が自然言語タスクを実行する方法に最もよく似ています。

上記の図は、自然言語タスクの英語の文をフランス語に翻訳する際の、フェアショット、ワンショット、ゼロショットの設定を比較しています。
GPT-3:モデルアーキテクチャ
GPT-3モデルは、GPT-2モデルと同じアーキテクチャを使用し、事前正規化、修正された初期化、可逆なトークン化テクニックを含みます。ただし、ローカルにバンド化されたスパースな注意パターンとトランスフォーマ層の交互な密な層に対する代替戦略を使用します。
モデルのパフォーマンスがモデルのサイズに依存することを調べるために、開発者は、125百万から175億パラメータまでの3つの異なるオーダーにわたる8つの異なるモデルのサイズをトレーニングしました。以前のLLMモデルに関する研究では、十分なトレーニングデータがあれば、検証ロスのスケーリングはモデルのサイズの関数として滑らかなパワーローであるべきであると示唆しています。さまざまなサイズのモデルをトレーニングすることで、開発者は、ダウンストリーム言語タスクと検証ロスの両方でこの仮説をテストすることができます。

上記の図は、GPT-3の開発に使用された8つの異なるモデルのサイズとアーキテクチャを比較しています。ここで、n(params)はトレーニング可能なパラメータの合計数、n(layers)はモデルの層の合計数、d(model)はボトルネックの各層のユニット数、d(head)は各注意ヘッドの次元を定義します。各モデルのコンテキストウィンドウは、2048トークンで同じです。
さらに、ノード間のデータ転送を最小限に抑えるために、モデルはGPUの深さと幅の次元にわたってパーティション化されます。各モデルのアーキテクチャパラメータは、計算効率とGPUでのモデル配置のロードバランスを最大化するために選択されました。
トレーニングデータセット
大きな言語モデルは、最近の開発で大幅に拡大したデータセットを使用し、コモンクロールデータセットに集約され、1兆以上の単語を含みます。データセットのサイズは、GPT-3モデルをトレーニングするのに十分です。ただし、研究とパフォーマンス分析では、コモンクロールデータセットの軽くフィルタリングされたバージョンやフィルタリングされていないバージョンは、よりキュレーションされたデータセットに比べて品質が低いことが示されています。
データセットの平均品質の問題に対処するために、開発者は3つのステップを実施しました。
- 開発者は、コモンクロールデータセットのバージョンを、高品質の参考コーパスに似た範囲でダウンロードしてフィルタリングしました。
- 開発者は、過剰なコピーを防ぎ、オーバーフィッティングの有効な尺度として保持するために、データセット全体でドキュメントレベルのファジー複製を実行しました。
- 開発者は、高品質の参考コーパスをトレーニングデータに追加して、コモンクロールデータセットの多様性をさらに高めました。
次の図は、GPT-3モデルのトレーニングに使用されたデータセットの最終的な混合比を示しています。コモンクロールデータは、フィルタリング前のプレーンテキストで45TBで、フィルタリング後に約570GB、つまり400億以上のバイトペアエンコードトークンに相当します。データセットのサイズに比例してではなく、より高品質のデータセットはトレーニング中に頻繁にサンプリングされます。したがって、Books2やコモンクロールなどのデータセットはトレーニング中に1回以下しかサンプリングされませんが、他のデータセットは複数回サンプリングされます。これにより、モデルはトレーニングデータの品質が高い場合に少しのオーバーフィッティングを許容する代わりに、高品質のトレーニングデータでトレーニングすることができます。

大きな言語モデルは、インターネットデータを大量に学習し、多くのコンテンツを記憶する能力があるため、ダウンストリームタスクの開発またはテストセットが事前トレーニング中に見られた場合に、汚染される可能性があります。这种汚染の可能性を減らすために、開発者は、GPT-3を評価するベンチマークの開発およびテストセットとの重複を検索し、重複を除去しようとしました。

上記の画像は、GPT-3モデルのトレーニングに使用された合計コンピューティングパワーを示しています。モデルは、Scaling Laws for Neural Language Modelsを使用して、典型的なモデルよりもはるかに少ないトークンで、はるかに大きなモデルをトレーニングします。結果として、GPT-3とRoBERTa-Largeモデル(GPT-3モデルの約10分の1のサイズ)は、事前トレーニング中に約50ペタフロップ/日のコンピューティングパワーを使用しました。
評価
フェアショット学習の場合、モデルは、評価データセットの各例を、タスクのトレーニングデータセットからランダムにK例を条件付けとして抽出して評価し、1または2つの新しい行で区切ります(タスクによって異なります)。StoryclozeとLAMBADAの場合、モデルは開発セットから条件付けの例を抽出し、テストセットで評価します。Winogradの場合、開発セットはありません。したがって、条件付けのサンプルは直接データセットから抽出されます。
Kは、モデルのコンテキストウィンドウによって許可される最大値(すべてのモデルでnext = 2048)から0までの任意の値になります。Kの値は、約10から100の例を収容できます。Kの値が大きいと、結果が良くなることが多いですが、常にそうではありません。したがって、モデルにテストセットと開発セットが利用できる場合、開発セットでKのいくつかの値を実験し、結果に基づいてテストセットで最適な値を実行します。
さらに、複数の選択肢から正しい完了を選択するタスクの場合、開発者は、Kの正しい完了とコンテキストの例を提供し、それにコンテキストのみの例を続け、タスクは各完了の言語モデル確率に基づいて比較されます。二項分類タスクの場合、モデルは、より意味のある名前を持つ選択肢を提供し、多肢選択として扱い、時にはRSRモデルとアーキテクチャで行われるようにタスクをフレーミングします。
自由形式の完了が必要なタスクの場合、モデルは、RSRフレームワークで使用されているのと同じパラメータで、ビーム検索を使用します。ビームの長さは4、ペナルティは0.6です。モデルは、F1の類似度、正確な一致、またはBLEUのスコアを使用してスコア付けされ、データセットの標準によって異なります。
結果

上記の図は、GPT-3モデルのアーキテクチャで説明されている8つのモデルのトレーニング曲線を示しています。KMH言語モデルの結果と同様に、GPT-3モデルのパフォーマンスは、トレーニングコンピューティングを効果的に使用することで適切な法則に従います。法則からわずかに外れるのは、トレンドを2つのオーダーで拡張したときのみです。トレーニングコーパスのスパリアスな詳細をモデル化することによるものであると考えられる、クロスエントロピーロスの改善は、幅広いNLPタスクのパフォーマンスの改善につながります。
評価の前に、データセットは、似たタスクを表す8つのカテゴリにグループ化されます。これらのカテゴリは、
- 伝統的な言語モデリングタスクと言語モデリングに似たタスク(クローズタスクまたは文/段落の完了タスク)での評価。
- 「クローズドブック」質問回答タスクでの評価。
- 言語間の翻訳(特にワンショットとフェアショット)での評価。
- ウィノグラード・スキーマのようなタスクでの評価。
- 常識的な推論または質問回答を必要とするデータセットでの評価。
- 読解タスクでの評価。
- SuperGLUEベンチマークスイートでの評価。
- NLIの探索。
言語モデリング、完了、クローズタスク
このセクションでは、GPT-3モデルのパフォーマンスが、伝統的な言語モデリングタスクと、単語またはテキストの完了の予測が必要なタスクで評価されます。詳しく見てみましょう。
言語モデリング
GPT-3モデルは、PTB(ペンントリーバンク)データセットでゼロショットの困惑度を計算します。モデルは、ウィキペディア関連のタスクを省略します。なぜなら、モデルはすでにトレーニングデータに含まれているからです。1億ワードのベンチマークも省略します。なぜなら、データセットがトレーニングデータに含まれているからです。ただし、PTBデータセットは、これらの問題を解決するために使用されます。PTBデータセットは、現代のインターネットの前に存在します。
LAMBADA
LAMBADAデータセットは、テキストまたは段落の長距離依存関係をモデル化するモデルの能力をテストするために使用されます。つまり、段落のコンテキストを読んだ後、文の最後の単語を予測する必要があります。さらに、言語モデルのスケーリングは、LAMBADAベンチマークで減少する収穫に伴います。

GPT-3モデルは、LAMBADAで76%の精度を達成し、以前のベストモデルよりも8%以上の改善を実現しています。さらに、LAMBADAモデルは、フェアショット学習の柔軟性を示しています。モデルは、クラシックな方法でデータセットを解決します。
さらに、GPT-3モデルに与えられる例が特定の方法で変更されると、モデルは86%以上の精度を達成し、以前のモデルよりも18%以上の改善を実現します。さらに、結果は、フェアショット設定でのモデルのパフォーマンスが、モデルのサイズの増加とともに比例して改善されることを示しています。ただし、この戦略により、GPT-3アーキテクチャの最小モデルは20%低下しますが、175億パラメータの主要GPT-3モデルは10%改善されます。
クローズドブック質問回答
クローズドブック質問回答は、GPT-3モデルの広範な事実の知識に基づいて質問に答える能力を測定する試みです。質問は多数あるため、通常は、モデルが関連するテキストを見つける情報検索システムと、与えられた質問と検索されたテキストに基づいて回答を生成するモデルを組み合わせて、タスクを実行します。

上記の画像は、GPT-3モデルとさまざまなモデルをさまざまなデータセットで実行した結果を比較しています。TriviaQAデータセットでは、ゼロショット設定で64.3%の精度を達成し、ワンショットとフェアショットの設定でそれぞれ68%と71.2%の精度を達成します。
明らかに、GPT-3モデルはゼロショット設定で、ファインチューニングされたT5-11Bモデルを14%以上上回ります。

上記の図は、GPT-3モデルのパフォーマンスがモデルのサイズの増加とともにスムーズに増加することを示しています。パフォーマンスは、言語モデルの容量が増加するにつれて、データセットから継続的に学習できることを示しています。
最終的な考察
GPT-3は、LLM業界における革命的な段階であり、言語モデルの可能性の限界を押し広げ、GPT-3が克服した開発と障害が、現在最も先進的で正確な大規模言語モデルのGPT-4の道を切り開いたと言えるでしょう。












