RLHF を使用した大規模モデルの最適化: パフォーマンスとアプリケーション能力の向上

データサイエンスの継続的な発展の過程で、大規模モデルは自然言語処理、画像認識、財務予測などのさまざまな分野でますます広く使用されています。しかし、大規模モデルのトレーニングと最適化は、過剰なデータ量、不十分なコンピューティング リソース、ハイパーパラメータ調整の難しさなど、ますます多くの課題にも直面しています。従来の機械学習アルゴリズムではこれらの問題に対処することが難しいことが多いため、これらの問題に対処するには、より効率的でインテリジェントなアルゴリズムが必要です。強化学習アルゴリズムとしての RLHF (Reinforcement Learning from Human Feedback) は、人間から与えられたフィードバック情報を効果的に使用して、大規模なモデルをトレーニングし、パフォーマンスを向上させることができます。この記事では、RLHF を使用して大規模モデルを最適化し、アプリケーションにより強力なサポートを提供する方法を紹介します。

記事の構成は以下の通りです

言語モデル (LM) を事前トレーニングする

事前トレーニングの目的は、言語モデルに言語に関する統計情報を提供し、文脈に応じて単語の出現確率を予測できるようにすることです。言語モデルは、プロンプト テキストが与えられると、プロンプトを完成させるための応答テキストを生成できる「補完マシン」と考えることができます。事前トレーニングを通じて、事前トレーニング モデルとも呼ばれる大規模言語モデル (LLM) を取得します。

事前トレーニングされた言語モデルを取得したら、教師あり微調整 (STF) という追加のオプションのステップを実行できます。教師あり微調整では、人間が注釈を付けた (入力、出力) テキストのペアを使用して、事前トレーニングされたモデルを微調整し、特定のタスクにより適したものにします。STF は RLHF の高品質な初期化と見なされ、後続の RLHF プロセスの優れた基盤を築きます。

このステップの最後には、メインモデルであるトレーニング済みの言語モデルが完成します。このマスター モデルは、RLHF でさらにトレーニングすることを期待しており、これにより、人間のフィードバックに基づいて生成機能が継続的に改善されます。
ここに画像の説明を挿入

事前トレーニング段階では、異なる研究機関が異なるモデルや手法を採用する可能性があることに注意してください。たとえば、OpenAI は人気のある RLHF モデル InstructGPT で GPT-3 の小型バージョンを使用し、Anthropic は多数のパラメーターを含む Transformer モデルを使用し、DeepMind は独自の巨大なパラメーター モデル Gopher を使用します。さらに、事前トレーニングされたモデルを微調整するときに、一部の機関は追加のテキストや条件を使用する場合があります。たとえば、OpenAI は人工的に生成された「好ましい」テキストを微調整しますが、Anthropic は「有用、正直、無害」という基準を使用します。 in context 元のモデルはスレッド上で抽出されます。これらの微調整ステップには高価な拡張データが含まれる場合がありますが、RLHF には必要ありません。RLHF はまだ未開拓の分野であるため、どのモデルが RLHF の出発点として適切であるかについて明確な答えはなく、さまざまな機関がさまざまなアプローチを実験する可能性があります。

対話の教師あり微調整 (SFT)

教師あり微調整 (SFT) の目標は、ユーザーが期待する応答を生成できるように、事前トレーニングされたモデルを最適化することです。事前トレーニング段階では、モデルは大量の言語データを学習することで、完成したテキストの予測能力を最適化します。これは、事前トレーニングされたモデルに「プログラミングを学ぶ方法」などの質問を与えると、次のような複数のもっともらしい方法を生成できることを意味します。

  1. 質問コンテキストの追加: 初心者向け
  2. フォローアップの質問を追加しました: どのプログラミング言語を学ぶ必要がありますか? プログラミングを学ぶのにどれくらい時間がかかりますか?
  3. 直接答えてください。プログラミングを学ぶには、プログラミング構文とアルゴリズムを習得する必要があります。

本当に答えが必要な場合は、これらのオプションのうち、3 番目が最も適切です。教師あり微調整の目標は、事前トレーニングされたモデルを最適化して、ユーザーが期待する答えをより生成しやすくすることです。

教師あり微調整を実装するときは、さまざまなユースケース (質問応答、要約、翻訳など) の言語モデルの例を示し、これらの手がかりに適切に応答する方法をモデルに伝えます。これらの例の形式は (プロンプト、応答) であり、多くの場合、デモ データと呼ばれます。OpenAI は、この教師あり微調整アプローチを「動作クローン作成」と呼んでいます。つまり、モデルがどのように動作するかを示すと、モデルがその動作をクローンします。

例として、事前トレーニングされた言語モデルがあり、質問応答シナリオでそのパフォーマンスを最適化したいとします。次のようなさまざまな質問応答の例をモデルに与えることができます。

  • プロンプト:「ブラウニーの作り方を教えてください。」
  • 回答:「まずチョコレート、小麦粉、卵、牛乳を用意します。次にレシピに従って、最後に30分ほど焼きます。」
  • プロンプト: 「太陽系で最大の惑星は何ですか?」
  • 答え: 「太陽系で最大の惑星は木星です。」

このような例を使用して、さまざまな種類の質問に正しく答えるようにモデルを教えます。教師付き微調整により、モデルはプロンプトからユーザーが望む応答を生成する方法を徐々に学習し、それによって特定のタスクやユースケースによりよく適応します。このステップを通じて、メイン モデルは徐々にインテリジェントで正確になり、後続の RLHF ステージの基礎を築きます。下の図は、教師あり微調整を簡単に示したものです。

ここに画像の説明を挿入

報酬モデルをトレーニングする

ここに画像の説明を挿入
このステップの目標は、(入力テキスト、出力テキスト、報酬) トリプルを含むデータセットを収集することです。

上の図に示すように、入力テキスト データ (できれば本番データ) を使用し、モデルを通じて対応する出力テキストを生成し、人間によって生成された出力テキストに報酬値を割り当てます。

報酬値は通常 0 ~ 5 であり、0/1 で表すこともできます。

報酬モデル (RM) のタスクは、ペア (プロンプト、応答) と報酬スコアを使用してモデルをトレーニングすることです。指定された入力に対してスコアを出力することは、機械学習では非常に一般的なタスクであり、分類として見ることができます。または帰還ミッション。モデルは、テキスト入力からテキスト出力までの各結果をスコアリングして、モデルのパフォーマンスを評価します

最適な報酬モデルを計算するために、異なるパラメーター (異なる微調整ありまたは微調整なし) を持つ大規模なモデルを使用して、異なる応答を出力し、報酬スコアが異なる場合があります。報酬モデルを最適化する目的は、異なる大規模モデルで可能な限り同じプロンプト入力を応答出力に作成し、最終的に得られる報酬が同様になるようにすることです。

假设: r θ r_\theta rトレーニング中の報酬モデルの場合、モデル パラメーターはθ \thetaです。

xxx:プロンプト
yw y_wy: 勝ちの応答は、これらの大規模なモデル出力の中で最高の報酬を持つ応答を示します。
y: 応答が失われるということは、これらの大規模なモデルの出力が最低の報酬で応答を取得することを意味します

各トレーニング サンプル( x 、 yw 、 yl ) (x、y_w、y_l)( x ,yy)、次の場合:

sw = r θ ( x , yw ) s_w=r_\theta(x,y_w)s=r( x ,y) : 勝利応答の報酬モデルのスコア
sl = r θ ( x , yl ) s_l=r_\theta(x,y_l)s=r( x ,y) : 負けた応答の報酬モデルのスコア

損失値: − log ( σ ( sw − sl ) ) −log(\sigma(s_w−s_l))l o g ( σ ( ss))

この損失関数が何を行うのかをよりよく理解するために、視覚化してみましょう。d = sw − sld=s_w−s_lとします。d=ss以下はf ( d ) = − log ( σ ( d ) ) f(d)=−log(\sigma(d)) です。f ( d )=l o g ( σ ( d ))のグラフ。負の d の場合、損失値は大きくなり、報酬モデルが勝利応答のスコアを敗北応答のスコアより低くしないようにすることができます。

トレーニング報酬の価値に関しては、LM によって生成された回答を手動でランク付けする必要があります。

特定のランキング方法については、同じプロンプトを与えられた異なる LM の出力を比較し、Elo システムを使用して完全なランキングを構築するのが成功するアプローチです。これらのさまざまなランキング結果は、トレーニングのスカラー報酬値に正規化されます。

王の栄光を奏でるELoの仕組み、リーグ・オブ・レジェンドではおなじみのはず

報酬モデルを導き出すことで、その後の RLHF プロセスの信頼できる尺度を提供します。

強化学習による微調整

強化学習の微調整は、RLHF の重要なステップの 1 つです。これは、ユーザー プロンプトに対してより適切な応答を生成できるように言語モデルをトレーニングするのに役立ちます。ただし、出力報酬自体は微分可能ではないため、強化学習 (RL) を使用して、LM を逆伝播できるように損失関数を構築する必要があります。

大手企業は、カルバック・ライブラー (KL) 発散と近接ポリシー最適化 (PPO) を通じて強化学習手法を実装しています。

強化学習が LM に適用できる理由をよりよく説明するために、まず微調整タスクを RL 問題として定式化します。

このポリシーは、ヒントを取得して一連のテキスト (またはテキストの確率分布) を返す LM です。この戦略のアクション空間は、LM 語彙 (一般に 50k 程度) に対応するすべてのトークンであり、観測空間は、比較的大きい (語彙 ^ 入力トークン量) 可能な入力トークン シーケンスです。報酬関数は、選好モデルとポリシー シフト制約を組み合わせたものです。

下図のように、一般的な強化学習と比較するとわかりやすいと思いますが、
ここに画像の説明を挿入ここに画像の説明を挿入
学習開始時に学習可能な重みを固定したLMと全く同じLMを作成します。このモデルは、トレーニング可能な LM が重みを完全に変更して、報酬モデルを満たすために意味のないテキストを出力し始めるのを防ぐのに役立ちます。

これは、凍結された LM 値と凍結されていない LM 値の間の一連のテキスト出力分布 (確率分布) の KL 発散を損失関数として計算することによって行われます。

報酬と KL 損失を設定したので、強化学習を適用して報酬損失を微分可能にすることができます。

損失を微分可能にするために、近接ポリシー最適化 (PPO) アルゴリズムを採用しています。微調整全体の詳細な手順は次のとおりです。

  • ステップ 1: 報酬モデルを活用する

まず、ユーザー入力またはプロンプトが RL ポリシーに送信されます。これは実質的に LM の調整されたバージョンです。RL ポリシーは、初期 LM の出力とともに報酬モデルによって評価される応答を生成します。次に、報酬モデルは、応答の品質に対応するスカラー報酬値を生成します。

  • ステップ 2: フィードバック ループを導入する

このプロセスはフィードバック ループで繰り返され、報酬モデルはリソースが許す限り多くのサンプルに報酬を割り当てます。時間の経過とともに、より高い報酬を受け取る応答が RL ポリシーを導き、人間の期待により沿った応答を生成するのに役立ちます。

  • ステップ 3: KL 発散を使用して差を測定する

ここでは、2 つの確率分布の差の統計的尺度であるカルバック ライブラー (KL) 発散が重要な役割を果たします。RLHF では、KL ダイバージェンスを使用して、RL ポリシーの現在の応答の確率分布と、人間が望む理想的または最良の応答を表す参照分布との差を比較します。

  • ステップ 4: 近接ポリシー最適化を使用した微調整

微調整の重要な部分は、近接ポリシー最適化 (PPO) です。PPO は、高次元の状態空間とアクション空間を持つ複雑な環境でポリシーを最適化する際の有効性で知られる、よく知られた強化学習アルゴリズムです。PPO は、トレーニング中の探索と活用のバランスを効果的にとれるため、RLHF の微調整中に特に役立ちます。RLHF エージェントにとって、このバランスは、人間のフィードバックと試行錯誤による探索から学習するために重要です。したがって、PPO を統合すると、より高速かつ堅牢な学習が可能になります。

  • ステップ 5: 不適切な応答を避ける

微調整プロセスは、言語モデルが不適切または無意味な出力を生成するのを防ぐのに役立ちます。報酬が低い応答は繰り返される可能性が低いため、言語モデルは人間の期待により一致する出力を生成するように駆動されます。

PPO アルゴリズムは、損失公式と図の説明 (LM への小規模な更新の場合) を次のように計算します。

  1. 「Initial probs」を「New probs」に設定して初期化します。
  2. 新しい出力テキスト確率と初期出力テキスト確率の比率を計算します。
  3. 電流損失 = r θ ( y ∣ x ) − λ KLDKL ( π ppo ( y ∣ x ) ∣ ∣ π ベース ( y ∣ x ) ) 損失 = r_\theta(y|x)- \lambda_{KL}D_{ KL }(\pi_{ppo}(y|x)||\pi_{base}(y|x))ロス_=r( y x )KL _DKL _( ppp o( y x ) ∣∣ πベース_( y x )) は損失を計算します
  4. LM の重みは逆伝播によって更新されます。
  5. 「新しい確率」(つまり、新しい出力テキストの確率)は、新しく更新された LM を使用して計算されます。
  6. 手順 2 ~ 5 を N 回繰り返します (通常は N=4)。

ここでの確率は、LM モデルのテキスト出力確率π ( y ∣ x ) \pi(y|x)です。π ( y x )

ここに画像の説明を挿入

RLHF の利点と限界

ヒューマン フィードバックからの強化学習 (RLHF) は、AI システムを改良するための強力な方法論を提供します。ただし、他のアプローチと同様に、明らかな利点と潜在的な課題の両方があります。

RLHF の利点:

  1. 適応性: RLHF は、受け取ったフィードバックに基づいて適応できる動的学習戦略です。この適応性により、さまざまなタスクに最適であり、リアルタイムの対話とフィードバックに基づいて動作を適応させることができます。
  2. バイアスの低減: 理論上、RLHF はモデルのバイアスを低減するのに役立ちます。慎重に選択された多様な人間のフィードバックにより、これらのモデルはより広範でより代表的な観点から学習することができ、初期トレーニング データに内在する過度の一般化やバイアスを軽減できます。
  3. 継続的改善: RLHF モデルには継続的改善の機能があります。これらのモデルがユーザーと対話してより多くのフィードバックを得るにつれて、モデルは学習して適応し、パフォーマンスとユーザー エクスペリエンスを向上させることができます。
  4. セキュリティ: RLHF は、AI システムのセキュリティを強化する上で重要な役割を果たします。人間のフィードバックを通じて、これらのシステムは潜在的に有害または不適切な動作を回避し、相互作用や使用をより安全にすることができます。

RLHF の課題と限界:

1.スケーラビリティ: RLHF にとってスケーラビリティは依然として大きな課題です。これらのモデルは学習のために人間のフィードバックに依存しているため、大規模またはより複雑なタスクのためにモデルをスケールアップすると、リソースと時間が大量に消費される可能性があります。
2.人的要因への依存: RLHF モデルは、人的フィードバックの質に大きく依存しています。非効果的または不十分なフィードバックはパフォーマンスの低下につながる可能性があり、さらにはモデル内で有害な動作を意図せず助長する可能性があります。
3.人間の偏見: 偏見によってもたらされる潜在的な問題は、RLHF の主要な懸念事項です。人間の評価者によって提供されるフィードバックには本質的に偏りがあり、偏った学習につながる可能性があります。これらのバイアスは、選択バイアス、確証バイアス、評価者間の変動性、限定的なフィードバックなど、さまざまな形をとる可能性があります。

ただし、これらのバイアスを軽減する効果的な戦略が存在することは注目に値します。多様な評価者の選択、コンセンサス評価、評価者の調整、フィードバックプロセスとエージェントのパフォーマンスの定期的な評価、他の情報源とのフィードバックのバランスをとる方法はすべて、RLHF におけるバイアスの影響を軽減するのに役立ちます。これらの戦略は、RLHF の思慮深く体系的なアプローチを強調し、プロセス中の継続的な評価と調整の重要性を強調しています。

RLHF が進化し続けるにつれて、対処する必要のある追加の課題や制限が数多くあります。

  1. 解釈と透明性: 大規模な言語モデルは、モデルのサイズと複雑さが増大するにつれて、より不透明になる傾向があります。これにより、特に RLHF による微調整後のモデルの意思決定プロセスを説明することが困難になります。一部のアプリケーション シナリオ、特に解釈可能性と透明性が必要な分野では、これが制限要因になる可能性があります。
  2. 報酬の設計: 効率的な報酬関数を設計することは、RLHF における重要な問題です。報酬関数はモデルのパフォーマンスを正確に反映し、さまざまな応答をランク付けするのに十分な識別力を備えている必要があります。ただし、特に複雑なタスクや多様な応答の場合、報酬関数の設計は必ずしも直観的かつ単純であるとは限りません。
  3. 敵対的な例: 強化学習は、多くの場合、敵対的な例の攻撃に対して脆弱です。RLHF では、モデルがターゲットにされると、望ましくない応答が生成される可能性があります。これには、敵対的な攻撃を防ぐために、RLHF トレーニング中にモデルの堅牢性とセキュリティを考慮する必要があります。
  4. トレーニングの効率: 大規模なモデルのトレーニングには多くのコンピューティング リソースと時間が必要なため、RLHF のトレーニング コストは高くなる可能性があります。これは、リソースに制約のある一部の環境やアプリケーション シナリオにとっては課題となる可能性があります。

これらの課題にもかかわらず、RLHF は強力な学習方法として進化し、改善し続けています。研究者と開発者は、RLHF の応用と開発をさらに促進するために、これらの問題を解決するために懸命に取り組んでいます。同時に、人工知能システムの社会の信頼性と制御性も高まっており、RLHFの開発では、解釈可能性、透明性、説明可能性の要件もより注目されることになります。

将来的には、RLHF をより一般的で信頼性の高い方法にし、さまざまな分野のアプリケーションに対する強力なサポートを提供し、人工知能技術の継続的な進歩を促進するためのさらなる革新と改善が期待されます。

エピローグ

データサイエンスと人工知能の分野が発展し続けるにつれて、強力なツールとしての大規模言語モデルとRLHFは、さまざまな分野で徐々に重要なコンポーネントになりつつあります。事前トレーニングと微調整を通じて、大規模な言語モデルは豊富な言語表現機能を備えることができる一方、RLHF は人間のフィードバックに基づいてモデルのパフォーマンスを継続的に向上させ、よりインテリジェントでさまざまなタスクに適応できるようにすることができます。

ただし、RLHF にはスケーラビリティ、人間の偏見、解釈可能性などのいくつかの課題がまだ残っていることも認識する必要があります。これらの問題に対処するには、RLHF を確実に適用して現実世界の課題に安全、確実、効率的に対処するための学際的な研究と協力が必要です。

将来的には、技術の継続的な進歩と人工知能の深い理解により、RLHF は成長を続け、人間社会により多くの利益と革新をもたらすと信じる理由があります。同時に、その開発の過程で生じ得る道徳的・社会的問題にも細心の注意を払い、技術開発と社会的価値とのバランスを引き続き推進していく必要があります。この方法によってのみ、RLHF は真に人工知能技術の発展を後押しし、人類により良い未来を創造することができます。

おすすめ

転載: blog.csdn.net/weixin_42010722/article/details/131895074