主に人間が生成したデータに依存して大規模なモデルを微調整するという現在の一般的な慣行に直面して、Google DeepMind はこの依存性を軽減するより効率的な方法を模索しました。 あなたも私もお分かりのとおり、大規模言語モデル (LLM) は深層学習の状況を変え、人間品質のテキストを生成し、さまざまな言語タスクを解決する優れた機能を実証しています。業界は人間が収集したデータを監視しながら微調整することで特定のタスクのパフォーマンスをさらに向上させてきましたが、高品質の人間データを取得することは大きなボトルネックに直面しています。これは、多大なリソースと専門知識を必要とする複雑な問題の解決を伴うタスクに特に当てはまります。 どうやって解決しますか?モデルによって生成された合成データは、データの品質が維持されている限り、スケーラブルでコスト効率の高い有望な代替手段です。 LLM は生成されたデータを自己評価できますが、この論文では、Google DeepMind が、生成された各サンプルの品質指標として外部スカラー フィードバック信号を使用する、より単純なセットアップを検討します。 論文アドレス: https://arxiv.org/pdf/2312.06585.pdfモデル生成データのトレーニングを研究するために、研究者らは、シンプルだが強力な言語モデルの自己トレーニングを検討しました。このメソッドに必要な機能は 2 つだけです。1 つはモデルに基づいてサンプルを生成すること、もう 1 つはスコアリング メカニズムを使用してこれらのサンプルを評価することです。 明確さと一貫性を確保するために、研究者らは強化自己学習法 ReST^?? を採用し、この方法が強化学習に期待値最大化 (EM) を使用できることを証明しました。具体的には、ReST^?? は期待ステップと最大化ステップを交互に行います。 生成 (E ステップ): 言語モデルは、入力コンテキストごとに複数の出力サンプルを生成し、バイナリ報酬を使用してこれらのサンプルをフィルター処理して、トレーニング データセットを収集します。 改善 (M ステップ): 元の言語モデルは、前の E ステップからのトレーニング データセットに基づいて微調整され、次の E ステップで使用されます。 研究者らは、ReST^?? とその亜種が、機械翻訳、意味分析、好みの調整、基本的な推論などのさまざまな分野で言語モデルの強化に成功していることを確認しました。 さらに、以前の研究では主に比較的小規模なモデル (最大 70 億のパラメータ) に ReST^?? を使用し、より大きなモデルのスケーラビリティには制限がありました。したがって、このホワイトペーパーは、競争レベルでの数学的問題解決 (MATH) とコード生成 (APPS) という、困難だがあまり研究されていない 2 つの領域において、モデル生成の合成データと人間生成のデータの有効性とスケーラビリティを調査することを目的としています。 実験結果は、異なるサイズの PaLM 2 モデルに ReST^?? を使用すると、数学的推論とコード生成タスクで大幅なパフォーマンスの向上が達成されることを示しています。モデルによって生成された合成データに基づいて微調整されたモデルは、人間が作成したデータに基づいてトレーニングされたモデルよりも大きなパフォーマンスの向上を達成しました。興味深いことに、一定の ReST^?? 反復回数を超えるとパフォーマンスが低下し、少数のトレーニング問題で過剰適合が発生する可能性が示されています。 さらに、モデルは ReST^?? を使用して微調整され、 pass@k メトリクスと多数決のパフォーマンスが向上しました。これらの微調整されたモデルは、数学 (GSM8K およびハンガリーの HS 決勝)、コーディング (HumanEval)、ビッグベンチ ハード タスクなど、関連するものの保留されているベンチマークでもパフォーマンスの向上を示しています。 要約すると、この論文の結果は、フィードバックによる自己トレーニングが人間のデータへの依存を減らす有望な方法であることを示しています。 強化自己訓練のための期待最大値(EM)まず、この研究は、ダヤンとヒントンの以前の研究に基づいており、言語モデルを使用してEMベースの強化学習フレームワークを記述しています。 。具体的には、まず、?(?= 1|?,?)∝?(?(?,?)) となるようなバイナリ最適変数 O を定義し、次に非減少関数 ?: ℝ → ℝ+ に対して、最大化を達成しました。観測?= 1 (高い報酬を得る) とすると、次の式が得られます: ただし、上記の方程式の数列の和を解くのは難しいです。したがって、この論文では、log ?(? = 1; ?) を最大化する代わりに、パラメータ ? および変分分布 ?( ?|?) に関してその ELBO ?( ??, ?) を最大化することを検討します。具体的には: 式 (2) の EM アルゴリズムは、E ステップ (期待値) と M ステップ (最大化) を交互に実行します。 ReST^??: EM フレームワークに触発された次の論文では、Gulcehre らによって提案された ReST メソッドの簡易バージョンについて説明します。わかりやすくするために、この記事ではこのアプローチを ReST^?? と呼びます。これは、RL パイプラインのデータ収集 (E ステップ) とポリシーの最適化 (M ステップ) を分離します。アルゴリズム 1: 生成 (E ステップ) : このステップでは、スタディは現在のポリシー から出力シーケンスをサンプリングすることでデータセット を生成します。ここでは、入力は元のデータセット からリサンプリングされています。 の出力シーケンスは、バイナリ報酬関数 ?(?, ?) を使用してスコア付けされます。 改善 (M ステップ) : ? 反復では、研究は E ステップで新しいデータセット を使用して戦略 ?? を微調整します。 Gulcehre 氏の研究とは異なり、彼らは基本的な事前トレーニング済み言語モデルを微調整して、タスク固有の過剰適合を最小限に抑え、基本モデルからの逸脱を最小限に抑えます。微調整のために、研究では報酬で重み付けされた負の対数尤度損失 を最小限に抑えます。戦略が改善されると、より高品質のサンプルを含む新しいデータセットを再度作成できます。 実験と分析 この論文で実験を行う主な目的は、次の質問に答えることです: ReST^ は微調整と比較してどの程度効果的ですか??人間が生成したデータについて? 最高のパフォーマンスを得るには何回の反復が必要ですか? ReST^??トレーニング セットをオーバーフィットするのにどれくらい時間がかかりますか? ReST^??pass@k と多数決のパフォーマンスにどのような影響がありますか? ユーザーがモデルによって生成されたデータを特定のタスクの微調整に使用した場合、そのデータは他のタスクに移行されますか?さまざまなタスクで微調整されたモデルを評価する場合、基本モデルと比較してパフォーマンスは低下しますか? ReST によるパフォーマンスの向上を最大限に得るために必要な入力データの量はおよそどのくらいですか^??? ReST^ を 1 回繰り返すだけで十分ですか? この調査では、PaLM 2 モデルと、PaLM 2-S (Bison)、PaLM 2-S* (Codey)、PaLM 2-L (Unicorn) などの Google Cloud 上のパブリック API を使用した実験を実施しました。トレーニング データ セットは、MATH データ セットと APPS データ セットを使用します。 図 2 と図 3 は、それぞれ MATH データセットと APPS データセットでトレーニングされた ReST^?? のパフォーマンスを示しています。 MATH は、MATH テスト セットでのパフォーマンスと GSM8K への移行の両方の観点から、ReST^?? を複数回繰り返すことによって恩恵を受けると結論付けることができます。一方、APPS の利点のほとんどは最初の反復から得られる一方、反復をさらに実行すると、APPS と HumanEval の両方のパフォーマンスが低下することがわかります。 トレーニングとテストの成績の間のギャップ。図 4 は、トレーニング セットのパフォーマンスが ReST^?? の反復回数に応じて直線的に増加する一方で、テスト セットのパフォーマンスは増加しないことを示しています。 MATH の場合、最初の反復後にテスト パフォーマンスの向上はほとんど観察されませんでしたが、APPS の場合、2 回目の反復でパフォーマンスの低下が観察されました。この研究では、パフォーマンスの低下は過学習によるものである可能性があると推測しています。 APPS データセットのサイズは MATH データセットの約 3 分の 1 であるため、この問題の影響を受けやすくなります。 図 5 は、pass@K メトリクスにおける Palm-2-L モデルのパフォーマンスを示しています。結果は、微調整後に得られた ReST^?? モデルが K のすべての値に対してより強力であり、パフォーマンスのギャップは一般に K=1 で最大であることを示しています。