この記事では、ChatGPT を強化する機械学習モデルを主に紹介します。大規模な言語モデルの紹介から始まり、GPT-3 のトレーニングを可能にする革新的な自己注意メカニズムを詳しく掘り下げ、次に、からの強化学習を詳しく掘り下げます。ヒューマンフィードバックは、ChatGPT を優れたものにする新しいテクノロジーです。
ChatGPT は、大規模言語モデル (LLM) と呼ばれる、推論用の機械学習自然言語処理モデルの一種です。 LLM は、大量のテキスト データをダイジェストし、テキスト内の単語間の関係を推測します。過去数年間、コンピューティング能力の進歩に伴い、これらのモデルは進化を続けてきました。入力データセットとパラメータ空間のサイズが増加するにつれて、LLM の機能も増加します。
言語モデルの最も基本的なトレーニングには、一連の単語の中の単語を予測することが含まれます。最も一般的に、これは次のトークンの予測とマスキング言語モデルで観察されます。
生成された次のトークン予測とマスクされた言語モデルの任意の例
この基本的なランキング手法では、通常はロングショートメモリ (LSTM) モデルを使用します。環境とコンテキストを考慮して、統計的に最も可能性の高い単語でギャップを埋めます。この逐次モデリング構造には、主に 2 つの制限があります。
この問題に対処するために、2017 年に Google Brain のチームはコンバーターを導入しました。 LSTM とは異なり、トランスフォーマーはすべての入力データを同時に処理できます。セルフ アテンション メカニズムを使用して、モデルは言語シーケンス内の任意の位置を基準にして、入力データのさまざまな部分にさまざまな重みを割り当てることができます。この機能により、LLM への意味の注入と、より大きなデータ セットを処理する機能の大規模な改善が可能になります。
Generative Pretrained Transformer (GPT) モデルは、2018 年に OpenAI によって初めて発表され、GPT -1 と呼ばれています。 。これらのモデルは、2019 年に GPT-2、2020 年に GPT-3、そして最近では 2022 年に InstructGPT と ChatGPT と進化を続けました。人間のフィードバックをシステムに組み込む前、GPT モデルの進化における最大の進歩は、計算効率の達成によってもたらされました。これにより、GPT-3 は GPT-2 よりもはるかに多くのデータでトレーニングできるようになり、より多様な知識ベースと実行能力が得られました。より幅広いタスク。
GPT-2 (左) と GPT-3 (右) の比較。
すべての GPT モデルはトランスフォーマー構造を利用しています。これは、入力シーケンスを処理するエンコーダーと出力シーケンスを生成するデコーダーを備えていることを意味します。エンコーダーとデコーダーはどちらもマルチヘッドのセルフ アテンション メカニズムを備えており、モデルがシーケンスのさまざまな部分に異なる重み付けをして、意味とコンテキストを推測できるようになります。さらに、エンコーダーはマスクされた言語モデルを利用して単語間の関係を理解し、よりわかりやすい応答を生成します。
GPT を駆動するセルフ アテンション メカニズムは、トークン (単語、文、その他のテキスト グループであるテキストの断片) を、そのトークンの重要性を表すベクトルに変換することによって機能します。入力シーケンスです。これを行うには、このモデル:
query
、key
、および value
ベクトルを作成します。 query
ベクトルと他のタグの key
ベクトルの間の類似性を、2 つのベクトルの内積を計算して計算します。 softmax
関数に入力して、正規化された重みを生成します。 value
ベクトルを乗算することにより、シーケンス内のトークンの重要性を表す最終ベクトルが生成されます。 GPT で使用される「マルチヘッド
」注意メカニズムは、自己注意の進化です。ステップ 1 ~ 4 を一度に実行する代わりに、モデルはこのメカニズムを複数回並行して繰り返し、そのたびに新しい query
、key
、および value
を生成します。ベクトルの線形投影。このように自己注意を拡張することにより、モデルは入力データ内の部分的な意味やより複雑な関係を把握できるようになります。
ChatGPT から生成されたスクリーンショット。
GPT-3 は自然言語処理に大幅な進歩をもたらしましたが、ユーザーの意図に合わせる能力には限界があります。たとえば、GPT-3 は次の出力を生成する場合があります:
ChatGPT には、標準 LLM に固有の問題の一部を相殺するために、革新的なトレーニング方法が導入されています。
ChatGPT は、人間のフィードバックをトレーニング プロセスに組み込んでモデルを作成する新しい方法を導入する InstructGPT の派生です。ユーザーの意図とよりよく統合されます。ヒューマン フィードバックからの強化学習 (RLHF) については、openAI の 2022 年の論文「ヒューマン フィードバックによる指示に従う言語モデルのトレーニング」で詳しく説明されており、以下で簡単に説明します。
最初の開発では、40 を使用した GPT-3 モデルの微調整が行われました。請負業者は、入力にモデルの学習対象となる既知の出力が含まれる教師ありトレーニング データセットを作成します。入力またはプロンプトは、オープン API への実際のユーザー入力から収集されます。次に、タガーはプロンプトに対して適切な応答を書き込み、各入力に対して既知の出力を作成します。次に、この新しい教師付きデータセットを使用して GPT-3 モデルを微調整し、SFT モデルとしても知られる GPT-3.5 を作成します。
プロンプト データセットの多様性を最大限に高めるために、特定のユーザー ID から取得できるプロンプトは 200 個のみであり、長い共通プレフィックスを共有するプロンプトは削除されます。最後に、個人を特定できる情報 (PII) を含むヒントはすべて削除されました。
OpenAI API からのプロンプト情報を集約した後、ラベル作成者は、ごく少数の実際のサンプル データでこれらのカテゴリを埋めるためのプロンプト情報サンプルを作成することも求められました。興味のあるカテゴリは次のとおりです:
応答を生成するとき、タグ付け者はユーザーの指示が何であったかを推測するために最善を尽くす必要があります。このドキュメントでは、プロンプトが情報を要求する 3 つの主な方法について説明します。
OpenAI API からのプロンプトとラベラーからの手書きのプロンプトを編集したもので、教師ありモデルで使用するための 13,000 の入出力サンプルが生成されます。
画像 (左) は、「人間のフィードバックを使用した指示に従う言語モデルのトレーニング」OpenAI et al.、2022 https://arxiv.org/pdf/2203.02155 から挿入されました。 pdf。 (右) 赤色で追加された追加のコンテキスト。
ステップ 1 で SFT モデルをトレーニングした後、モデルはユーザーに対してより適切なプロンプトと一貫した応答を生成します。次の改善は、報酬モデルのトレーニングの形で行われました。モデルへの入力は一連のキューと応答であり、出力は報酬と呼ばれるスケーリングされた値です。強化学習を利用するには報酬モデルが必要です。強化学習では、モデルは報酬を最大化する出力を生成するように学習します (ステップ 3 を参照)。
報酬モデルをトレーニングするために、ラベラーは 1 つの入力プロンプトに対して 4 ~ 9 つの SFT モデル出力を提供します。被験者は、これらの出力を最良から最悪の順にランク付けして、次のような出力ランクの組み合わせを作成するように依頼されました。
応答ランクの組み合わせの例。
各組み合わせを個別のデータ ポイントとしてモデルに含めると、過剰適合 (表示されたデータの先にあるものを推測できないこと) が発生します。この問題を解決するために、ランキングの各セットをデータ ポイントの個別のバッチとして使用してモデルを構築します。
画像 (左) は、「人間のフィードバックを使用した指示に従う言語モデルのトレーニング」OpenAI et al.、2022 https://arxiv.org/pdf/2203.02155 から挿入されました。 pdf。 (右) 赤色で追加された追加のコンテキスト。
最終段階では、モデルにランダムなプロンプトが表示され、応答が返されます。応答は、ステップ 2 でモデルによって学習された「ポリシー」を使用して生成されます。ポリシーは、マシンが目標を達成するために使用する方法を学習した戦略を表します (この場合は報酬を最大化します)。ステップ 2 で開発された報酬モデルに基づいて、キューと応答のペアに対してスケーリングされた報酬値が決定されます。その後、報酬は戦略を開発するためにモデルにフィードバックされます。
2017 年に Schulman らは、応答が生成されるたびにモデルのポリシーを更新する手法である Proximal Policy Optimization (PPO) を導入しました。 PPO は、SFT モデルにカルバック・ライブラー (KL) ペナルティを組み込みます。 KL ダイバージェンスは 2 つの分布関数の類似性を測定し、極端な距離にペナルティを課します。この場合、KL ペナルティを使用すると、ステップ 1 でトレーニングされた SFT モデルの出力からの応答の距離を縮め、報酬モデルが過剰に最適化されて人間の意図のデータセットから大きく逸脱することを回避できます。
画像 (左) は、「人間のフィードバックを使用した指示に従う言語モデルのトレーニング」OpenAI et al.、2022 https://arxiv.org/pdf/2203.02155 から挿入されました。 pdf。 (右) 赤色で追加された追加のコンテキスト。
プロセスのステップ 2 と 3 は何度も繰り返すことができますが、実際にはまだ広く行われていません。
ChatGPT から生成されたスクリーンショット。
モデルの評価は、トレーニング中にモデルがまだ見なかったテスト セットを予約することによって実行されます。テスト セットでは、モデルのパフォーマンスが以前の GPT-3 よりも優れているかどうかを判断するために一連の評価が実行されます。
有用性: ユーザーの指示を推論して従うモデルの機能。ラベラーは、85±3% の確率で InstructGPT の出力を GPT-3 に優先しました。
本物性: モデルが幻覚を見る傾向。 TruthfulQA
データセットを使用して評価すると、PPO モデルは真実性と有益性の両方がわずかに増加した出力を生成します。
無害性: 不適切、軽蔑的、中傷的なコンテンツを回避するモデルの能力。無害性は、RealToxicityPrompts
データセットを使用してテストされます。試験は 3 つの条件で実施されました。
ChatGPT と InstructGPT の作成に使用されるメソッドの詳細については、OpenAI によって公開された元の論文「人間のフィードバックによる指示に従う言語モデルのトレーニング」 (2022 https://) をお読みください。 arxiv .org/pdf/2203.02155.pdf。
ChatGPT から生成されたスクリーンショット。
以上がChatGPT: 強力なモデル、注意メカニズム、強化学習の融合の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。