スタブ GPT-3 : 言語モデルの少数ショット学習? - Unite.AI
私達と接続

Artificial Intelligence

GPT-3 : 言語モデルの少数ショット学習?

mm

公開済み

 on

過去数年間、AI および ML 業界では、研究者が非常に柔軟でタスクに依存しない方法で下流のタスクを転送するための NLP プラクティスを実装できるようになり、NLP システムの開発と応用が飛躍的に増加しました。 

当初はワード ベクトルを使用する単層表現でしたが、その後、タスク固有のアーキテクチャに供給されました。次に、より良い表現を形成するために多層表現とコンテキスト状態を使用する RNN アーキテクチャでした。そして最近では、これらのネットワークを微調整することでタスク固有のアーキテクチャの必要性を完全に排除した転送言語モデルまたは事前トレーニングされたリカレント モデルが登場しました。 

転送言語モデルは、質問への回答、テキストの読解やブロック、テキストの含意などの困難なタスクで大きな進歩をもたらしたため、NLP 業界の大きな転換点であることが証明されています。 

ただし、転送言語モデルにはその利点にもかかわらず、タスクで望ましいパフォーマンスを達成するにはタスク固有の微調整またはタスク固有のデータセットが必要であるため、大きな制限があります。 さらに、転送言語モデルでは、開発者が特定のタスクに固有の数十万の例に合わせてデータセットを微調整する必要もあります。 

言うまでもなく、タスク固有のデータセットとタスク固有の微調整の要件を取り除くことは非常に望ましく、さまざまな理由から NLP 業界にとって有益です。 

既存の事前トレーニング済み転送言語モデルまたはリカレント モデルの問題

  • 実用性と適用性の制限

何よりもまず、タスクごとにラベル付きデータを含む大規模なデータセットが必要なため、言語モデルの適用性と実用性が制限されます。 言語モデルは、短編小説の作成から文法上の誤りの修正、概念に関する例の生成まで、幅広いタスクに応用できます。 場合によっては、ラベル付きデータを含む大規模な教師付きデータセットを収集することは、特に個々のタスクごとにプロセスを繰り返す必要がある場合に、困難な作業となることがあります。 

  • トレーニング データ内の偽の相関を悪用する

モデルの表現力と結合したトレーニング分布の制限と狭さにより、トレーニング データ内の偽の相関を悪用する可能性が根本的に増大する可能性があります。 転送言語モデルは事前トレーニング中に大量の情報を吸収するように設計されているため、トレーニング データが悪用される可能性があると、微調整および事前トレーニング パラダイム中に問題が発生する可能性があります。 

さらに、以前のモデルの研究では、大規模なモデルが毎回より良い分布外結果をもたらすわけではないことが示されています。 さらに、そのようなパラダイムの下で達成される一般化は、主にモデルがトレーニング データに非常に固有であり、トレーニング データの範囲を超えた状況では適切にパフォーマンスを発揮できないため、パフォーマンスが低下する可能性があることも示されています。 

  • 人間の学習との比較

最後に、転移言語モデルと比較すると、人間は言語タスクの大部分を学習する際に大規模なトレーニング データセットを必要としません。 ほとんどの場合、人間が一定レベルの競争力を持って言語タスクを理解し、実行するには、人の自然言語による短い指示や、言語タスクの小さなデモンストレーションで十分です。 

人間の適応能力には、さまざまなスキルセットを切り替えたり、それらを組み合わせて方言の中でより良いパフォーマンスを発揮できるため、多くの実用的な利点があります。これは現在の NLP システムの能力を超えています。 

メタラーニングと GPT-3 で問題に取り組む

上記の課題に対する考えられる解決策は、メタ学習の使用です。これは、モデルがトレーニング中にパターンを認識するためのより大規模かつ広範なスキルと能力を開発できるようにする現代の ML の概念であり、その後、干渉中に学習したこれらの能力を使用して適応します。迅速に、または必要なタスクを認識します。 

メタ学習は、「」と呼ばれる手法を介して言語モデル アーキテクチャに実装されています。インコンテキスト学習」は、タスク仕様として事前トレーニングされた言語モデルのテキスト入力を使用します。 そのプロセスでは、モデルは自然言語命令を条件とし、いくつかのデモンストレーションを使用することもあります。その後、モデルは次のステップを予測することで残りのタスクを完了することが期待されます。 

メタ学習の唯一の大きな問題は、メタ学習には前向きな可能性が示されているものの、自然言語アーキテクチャにおける微調整アプローチにはまだ劣っており、言語タスクを克服する実用的な方法となるためにはさらなる改善が必要であるということです。 

メタ学習に加えて、人気を集めているもう XNUMX つの方法は、トランスフォーマー言語モデルの容量を増やすことです。 過去数年間で、転送モデルの容量は大幅に増加しました。 RNSS18 100億個のパラメータを持つモデル、 DCLT18 300億個のパラメータを持つモデル、 RWC19 1.5 億のパラメータを持つモデル、 SSP19 8 億のパラメータを持つモデル、 RSR19 11億個のパラメータを持つモデル、そして TUR20 17億のパラメータを持つモデル。 

歴史的に、モデルの容量を増やすかパラメータを増やすとテキスト合成が改善され、下流のタスクと相関する対数損失もスケールに応じて順調に改善する傾向にあることが示されています。 

そこで、3 億を超えるパラメータを持つ GPT-175 モデルが登場しました。これは、発売当時、最も容量の大きい転送言語モデルでした。 次に GPT-3 モデルについて話しましょう。 

GPT-3 モデルの概要

GPT-3 は、175 年に OpenAI によってリリースされた、2020 億を超えるパラメーターを備えた自己攻撃的な言語モデルです。GPT-3 は、 大規模な言語モデル GPT-2 モデルは、前モデルと同様に、畳み込みベースのアーキテクチャを使用してテキスト データを生成するデコーダ専用の深層学習トランスフォーマー モデルです。 

GPT-3 モデルは、独自のコンテキスト学習能力を測定し、3 を超える NLP データセットと複数の新しいタスクで評価されます。 個々のタスクごとに、GPT-3 モデルは XNUMX つの条件の下で評価されます。

  • 少数のショット学習またはコンテキスト内学習: 少数ショット学習では、GPT-3 モデルは、モデルのコンテキスト ウィンドウに適切に適合できる限り多くの分布を許可します。 
  • ワンショット学習: ワンショット学習では、モデルはデモンストレーションを XNUMX 回だけ許可します。 
  • ゼロショット学習: ゼロ ショット学習では、デモンストレーションはなく、モデルに与えられる自然言語による命令のみがあります。 

大まかに言えば、 GPT-3 モデル ゼロショットおよびワンショット設定では望ましいパフォーマンスを達成し、数ショット設定ではほとんどの場合、最先端の転送モデルを上回ります。 さらに、GPT-3 モデルは、オンザフライ推論をテストするように設計された自然言語タスクや、文の後に新しい単語を使用したり、単語のスクランブルを解除したり、算術演算を実行したりするなど、迅速な注意を必要とする自然言語タスクにおいて、ワンショットおよびゼロショット設定で良好なパフォーマンスを発揮します。オペレーション。 一方、GPT-3 モデルを少数ショット設定で操作すると、人間の評価者を通過すると、人間の執筆に似た合成ニュース記事が生成されます。 

GPT-3 モデル: アプローチ

GPT-3 モデルは、モデル、データ、トレーニングで構成される従来の事前トレーニング アプローチを使用しており、RWC-19 転送言語モデルに続く事前トレーニング プロセスに似ています。 GPT-3 モデルは、モデル サイズ、データセット サイズ、データセットの多様性をスケールアップし、トレーニング期間の長さを延長します。 

このモデルはまた、RWC-19 モデルのアプローチに再び似ているコンテキスト内学習アプローチも使用しますが、データセットのコンテキスト内で学習パターンのさまざまな設定を系統的に探索することで、少し調整しています。 

したがって、これらの設定を調べることから始めて、GTP-3 モデルがさまざまな設定でどのように動作するかを評価しましょう。 

微調整

モデルの微調整は転送における従来のアプローチでした 言語モデルこのアプローチには、目的のタスクに固有の教師ありデータセットでモデルをトレーニングすることによって、事前トレーニングされたモデルの重みを更新することが含まれており、そのプロセス中に数十万のラベル付きサンプルが使用されます。 

微調整アプローチは、多数のベンチマークにわたって優れたパフォーマンスを返すため、有益です。 一方、微調整アプローチを使用する場合の主な制限は、個々のタスクごとに新しい大規模なデータセットが必要であり、トレーニング データセットの偽の特徴を悪用する可能性があり、人間のパフォーマンスと不公平な比較が行われる可能性があることです。 、および配布外の一般化が不十分です。 

GPT-3 モデルの現在のスコープでは、タスクに依存しないパフォーマンスのため、微調整アプローチは実装されていませんが、将来的には微調整が GPT-3 モデルに適用される可能性があります。 

フューショット

フューショットとは、コンディショニングとして干渉中に GPT-3 モデルにタスクのデモンストレーションが数回与えられるが、モデルの重みは更新されない設定を指す用語です。 少数のショット設定では、データセットには通常、コンテキストと必要な補完を含む例 (フランス語の文とその英語翻訳など) が含まれます。 数ショット設定により、モデルに次のような効果が得られます。 K コンテキストと補完の例を作成し、モデルに最後のコンテキストを XNUMX つ提供し、モデルが補完を提供することを期待します。 

少数ショット設定を使用する主な利点は、タスク固有のデータの必要性が大幅に減り、狭く微調整された大規模なデータセットから狭い分布を学習する可能性が減ることです。 一方、少数ショット学習を使用することの主な欠点は、少数ショット設定で得られる結果が基準に達しておらず、微調整された他の最先端のモデルと比較した場合に著しく劣ることです。 

ワンショット

ワンショット設定では、モデルには XNUMX 回のデモのみが提供され、残りは数ショット設定と同様です。 ワンショット設定が転送言語モデルに関連する理由は、XNUMX つの設定すべての中で、タスクが人間に伝達される方法に最もよく似ているのがワンショットであるためです。 ほとんどのタスクでは、タスクのデモンストレーションを XNUMX 回行うのが一般的であり、そうしないとタスクのコンテキストを理解するのが難しくなる可能性があるためです。 

ゼロショット

ゼロショット設定では、デモンストレーションはなく、モデルにはタスクを説明する自然言語の指示が与えられます。 ゼロ ショット方法は、最大限の利便性を提供し、堅牢で、誤った相関も回避する方法ですが、XNUMX つの設定すべての中で最も難しい方法でもあります。 なぜなら、場合によっては、私たち人間でも、最初にデモンストレーションを見ずにタスクのコンテキストを理解するのが難しい場合があるからです。 

いずれにせよ、一部のタスクでは、ゼロショット設定が、人間が自然言語タスクを実行する方法に最も近いものになります。 

上の図は、英語の文を取得してフランス語に翻訳するという自然言語タスクを実行するときの、少数ショット、ワンショット、およびゼロショット設定を比較しています。 

GPT-3: モデル アーキテクチャ

GPT-3 モデルは、GPT-2 モデルで使用されているものと同じアーキテクチャを使用しており、代替の使用を除いて、GPT モデルで使用されている事前正規化、修正された初期化、および可逆トークン化手法が含まれています。 Sparse Transformer と同様に、局所的にバンド化された疎なアテンション パターンと、トランス層内の交互の密な層に対する戦略。 

モデルのパフォーマンスのモデル サイズへの依存性を研究するために、開発者は 8 億 125 万から 175 億を超えるパラメーターまで、3 桁以上にわたる XNUMX つの異なるモデル サイズをトレーニングしました。そのうちの最後のモデルは GPT-XNUMX モデルと呼ばれています。 。 LLM モデルに関連するこれまでの研究では、十分な量のトレーニング データによる検証損失のスケーリングは、サイズの関数としての近似的な滑らかなべき乗則である必要があることが示されています。 さまざまなサイズのトレーニング モデルを使用すると、開発者は下流の言語タスクと検証損失の両方について仮説をテストできます。 

上の図は、GPT-8 の開発に使用された 3 つの異なるモデルのサイズとアーキテクチャを比較しています。 ここで、n(params) はトレーニング可能なパターンの総数を定義し、n(layers) はモデル内の層の総数を定義し、d(model) はボトルネックの各層のユニットの数を定義し、d(head) は各アテンションヘッドの寸法。 各モデルのコンテキスト ウィンドウは 2048 トークンと同じです。 

さらに、ノード間のデータ転送を最小限に抑えるために、モデルは次元の深さと幅に沿って GPU 間で分割されます。 各モデルのアーキテクチャ パラメーターは、GPU 全体でのモデルのレイアウトの精度を最大化するための計算効率と負荷分散に基づいて選択されています。 

トレーニング データセット

通常、大規模な言語モデルでは、最近の開発により大幅に拡張されたデータセットが使用され、最終的には 3 兆を超える異なる単語で構成される Common Crawl データセットになります。 データセットのサイズは、同じシーケンスを複数回更新することなく GPT-XNUMX モデルをトレーニングするのに十分な大きさです。 ただし、研究とパフォーマンス分析によると、共通クロール データセットの軽くフィルタリングされたバージョンまたはフィルタリングされていないバージョンは、より厳選されたデータセットと比較すると品質が低いことが示されています。 

データセットの平均品質の問題に取り組むために、開発者はデータセットの品質を高めるために 3 つの手順を実行しました。 

  1. 開発者は、高品質のリファレンス コーパスと同様の範囲に基づいて、Common Crawl データセットのバージョンをダウンロードしてフィルタリングしました。 
  2. 開発者は、過剰適合の効果的な測定として保持された検証セットの整合性を維持し、冗長性を防ぐために、データセット全体にわたってドキュメント レベルでファジー複製を実行しました。 
  3. 開発者はまた、高品質のリファレンス コーパスをトレーニング データに追加して、Common Crawl データセットを強化し、データセットの多様性をさらに高めました。 

次の図は、GPT-3 モデルのトレーニングに使用されるデータセットの最終的な割合または混合を示しています。 Common Crawl データは、フィルタリング前の 45 TB を超える平文で構成されていましたが、フィルタリング後は 570 GB のデータに減少しました。これは、およそ 400 億バイト ペアを超えるエンコードされたトークンに相当します。 高品質とみなされるトレーニング内のデータセットは、サイズに比例してデータセットをサンプリングするのではなく、より多くの頻度でサンプリングされることに注意してください。 その結果、Books2 や Common Crawl などのデータセットはトレーニング中に XNUMX 回未満サンプリングされますが、他のデータセットは複数回サンプリングされます。 これにより、モデルは、より高品質のトレーニング データでのトレーニングと引き換えに、少量の過学習を受け入れることができます。 

大量のコンテンツを記憶および学習する能力を備えた、大量のインターネット データで事前トレーニングされた大規模な言語モデルに関する重大な懸念は、事前の実行中に開発セットやテスト セットが見られることで、下流のタスクが汚染される可能性があることです。トレーニングのプロセス。 このような潜在的な汚染を減らすために、開発者は GPT-3 について調査されたベンチマークのテストおよび開発セットとの重複を検索し、これらの重複を削除することを試みました。 

上の画像は、GPT-3 モデルのトレーニング中に使用される合計コンピューティングを示しています。 このモデルは、ニューラル言語モデルのスケーリング則を使用して、通常よりも少ないトークンではるかに大規模なモデルをトレーニングします。 その結果、GPT-3 モデルと GPT-10 モデルの 3 分の 50 である RoBERTa-Large モデルの両方で、事前トレーニング プロセス中に XNUMX ペタフロップス/日近くのコンピューティングが必要でした。 

評価

少数ショット学習の場合、モデルは、条件付けとしてそのタスクのトレーニング データセットからランダムに K 個の例を抽出することによって、評価データセットに存在する各例を評価し、タスクに応じて 1 つまたは 2 つの改行で区切ります。 Storycloze と LAMBADA の場合、教師ありトレーニング セットが利用できないため、モデルは開発セットからコンディショニング サンプルを抽出し、テスト セットで評価します。 Winograd の場合、データセットは XNUMX つだけ存在するため、コンディショニング サンプルはそこから直接抽出されます。 

K には、0 からモデルのコンテキスト ウィンドウで許可される最大量 (n) までの範囲の任意の値を指定できます。EXT すべてのモデルで = 2048 であり、通常は約 10 ~ 100 個の例に適合します。 K の値が大きいほど良い結果が得られることがよくありますが、常にそうとは限りません。モデルにテスト セットと利用可能な別の開発セットがある場合、モデルは開発セット上の K のいくつかの値を実験し、その結果に基づいて実験を行います。 、テスト セットで最良の値を実行します。 

さらに、複数の選択肢から正しい補完を選択する必要があるタスクについて、開発者は修正とコンテキスト補完の K 個の例を提供し、その後、コンテキストのみの XNUMX つの例を提供してフォローアップし、タスクは LM 尤度に基づいて比較されます。それぞれの完成度。 バイナリ分類が必要なタスクの場合、モデルは多くの場合、より意味的に、より意味のある名前を付けてオプションを提供し、そのタスクを複数の選択肢として扱います。また、場合によっては、RSR モデルとアーキテクチャによって実行されるものと同様にタスクをフレーム化することもあります。 

自由形式の完了を必要とするタスクの場合、モデルは、RSR フレームワークで使用されているものと同じパラメーター (ビームの長さ 4、ペナルティ 0.6) を使用してビーム検索を使用します。 次に、データセットの標準に応じて、F1 類似性スコア、完全一致、または BLEU のいずれかを使用してモデルにスコアが付けられます。 

結果

上の図は、前のセクションで説明したように、GPT-8 モデル アーキテクチャで使用される 3 つのモデルのトレーニング カーブを示しています。 KMH 言語モデルの結果と同様に、トレーニング コンピューティングを効果的に使用すると、GPT-3 モデルのパフォーマンスは適切な法則に従います。 傾向がさらに XNUMX 桁拡大する場合にのみ、法則とのわずかな違いが生じます。 クロスエントロピー損失の改善は、トレーニング コーパスの偽の詳細をモデル化した結果であるかもしれないと人々は思うかもしれません。 ただし、クロスエントロピー損失の改善により、さまざまな NLP タスクの広範囲にわたって全体的なパフォーマンスが一貫して向上します。 

広範囲のトレーニング データで 8 つの異なるモデルを評価する前に、データセットは同様のタスクを表す 8 つの異なるカテゴリにグループ化されます。 これらのカテゴリは、

  1. 従来の言語モデリング タスク、および Cloze タスクや文/段落補完タスクなどの言語モデリングに似たタスクの評価。 
  2. 「クローズドブック」質問応答タスクの評価。 
  3. モデルの言語間翻訳能力の評価 (特にワンショットとフューショット)
  4. Winograd スキーマのようなタスクでのモデルのパフォーマンスを評価します。 
  5. 常識的な推論や質問への回答を含むデータセットの評価。 
  6. 読解課題の評価を行います。 
  7. SuperGLUE ベンチマーク スイートで評価しています。 
  8. NLI を探索する。 

言語モデリング、補完、および Cloze タスク

このセクションでは、GPT-3 モデルのパフォーマンスを、従来の言語モデリング タスクだけでなく、関心のある XNUMX つの単語の予測、段落や文の完成、またはテキストの一部の完成を必要とするタスクでも評価します。 それらについて簡単に詳しく説明しましょう。 

言語モデリング

GPT-3 モデルは、PTB または Penn Tree Bank データセットのゼロショット パープレキシティを計算します。 ウィキペディア関連のタスクはモデルのトレーニング データに既に含まれているため、モデルでは省略されています。また、トレーニング データ内のデータセットにかなりの摩擦が生じるため、3 億単語のベンチマークも省略されています。 ただし、PTB データセットは現代のインターネットよりも古いものである可能性があるため、これらの問題に取り組んでいます。 GPT-15 モデル アーキテクチャの最大のモデルは、注目すべき 20.50 ポイントの差で PTB データセットに新しい SOTA を設定し、XNUMX の複雑度を達成します。 

ランバダ

LAMBADA データセットは、段落またはテキスト内の長距離依存関係に関するモデルのモデリングをテストするために使用されます。 これは、モデルがコンテキストの段落を読んだ後、文の最後の単語を予測するように求められることを意味します。 さらに、言語モデルを継続的にスケーリングすると、ベンチマークの収益が減少します。 

GPT-3 モデルは LAMBADA で 76% の精度を達成し、以前の最高のモデルと比較して 8% 以上の向上があります。 さらに、LAMBADA モデルは、データセットで古典的に発生する方法で問題に対処したため、少数ショット学習の柔軟性を示しています。 LAMBADA での文の完了は通常、文の最後の単語ですが、言語モデルはそれを認識できないため、正しい終わりだけでなく、段落内の他の継続にも確率を割り当てます。 

さらに、GPT-3 モデルに入力されたサンプルが特定の方法で変更されると、モデルは 86% 以上の精度を返します。これは、以前のモデルに比べて 18% 以上増加しました。 さらに、結果は、数ショット設定におけるモデルのパフォーマンスがモデル サイズの増加に比例して向上することも示しました。 この戦略により、GPT-3 アーキテクチャの最小モデルは 20% 削減されますが、3 億個のパラメータを持つ主要な GPT-175 モデルの精度は 10% 向上します。 

クローズドブックの質問への回答

クローズドブック質問回答は、広範な事実知識に基づいて質問に回答する GPT-3 モデルの能力を測定する試みです。 このような質問には大量のクエリが含まれることが多いため、このタスクは通常、モデルが関連するテキストを見つけられるようにする情報検索システムと、取得したテキストから回答に対する応答を生成する方法を学習するモデルを組み合わせて使用​​して達成されます。質問。 

上の画像は、GPT-3 モデルの結果をさまざまなモデルと比較し、さまざまなデータセットで実行したものです。 TriviaQA データセットでは、モデルはゼロショット設定で 64.3% の精度スコアを達成し、ワンショット設定と少数ショット設定ではそれぞれ 68% と 71.2% の精度スコアを達成しました。 

ゼロショット設定の GPT-3 モデルが、微調整された T5-11B モデルよりも 14% 以上優れていることが明らかにわかります。 

上の図は、GPT-3 モデルのパフォーマンスがモデル サイズの増加に伴って順調に向上していることを示しています。 このパフォーマンスは、言語モデルの容量が増加するにつれて、データセットから学習し続けていることを示唆しています。 

最終的な考え

GPT-3 は、言語モデルができることの限界を押し広げることに貢献したため、GPT-3 は LLM 業界における革命的な段階であったと言っても過言ではありません。 GPT-3 によって行われた開発と克服された障害によって、これまでで最も先進的で正確な大規模言語モデルである GPT-4 への道が開かれました。 

「職業はエンジニア、心は作家」。 Kunal は、AI と ML に対する深い愛情と理解を備えたテクニカル ライターであり、魅力的で有益なドキュメントを通じてこれらの分野の複雑な概念を簡素化することに専念しています。