強化学習ファインチューニングのハイパーパラメータ

ハイパーパラメータは、強化学習ファインチューニング中にモデルの重みが更新される方法を制御します。デフォルト値はほとんどのワークロードで適切に機能するように調整されていますが、 Cloud de Confiance コンソール(チューニング済みモデルの作成時に [モデルの詳細] > [詳細オプション] > [チューニング設定])または REST API でチューニング ジョブを作成するときにリクエスト本文で、これらの値をオーバーライドできます。

使用可能なハイパーパラメータ

これらのパラメータの API 定義については、ReinforcementTuningHyperParameters API リファレンスをご覧ください。

epochCount

データセットが反復処理された回数。これはトレーニング ステップの数とは異なります。各エポックで生成されるトレーニング ステップの数は異なる場合があります。

  • デフォルト: 空のままにした場合は min(110 * promptsPerBatch / promptsInDataset, 10)。デフォルトは動的に計算されます。これにより、モデルは各プロンプトを複数回認識します。小さいデータセットでの過学習を防ぐため、エポック数は 10 に制限されます。
  • 最大: 安定したチューニングのために、トレーニング実行の合計は 500 ステップに制限されます。

learningRateMultiplier

アダプタ レイヤの基本学習率に適用される乗数。

  • デフォルト: 1
  • 許容範囲: [1/4, 4]

thinkingLevel

生成時に使用される内部の思考連鎖処理の長さと深さを制御します。

  • デフォルト: HIGH
  • 使用できる値: MINIMAL、HIGH(動的思考)

batchSize と samplesPerPrompt

これらの 2 つのハイパーパラメータは、プロンプトのバッチ処理方法と、各トレーニング ステップでモデルがプロンプトごとに生成するレスポンスの数を制御します。

  • batchSize - バッチあたりのプロンプト数(promptsPerBatch とも呼ばれます)。バッチサイズが大きいほどチューニングは遅くなりますが、各ステップでより安定した更新を生成できます。
    • デフォルト: 32
  • samplesPerPrompt - 1 回のトレーニング ステップで、モデルが各プロンプトに対して生成するさまざまなレスポンスの数。samplesPerPrompt が大きいほど、チューニングの速度は遅くなりますが、モデルが探索するレスポンスの多様性は高まります。
    • デフォルト: 16

プロダクト batchSize * samplesPerPrompt には、モダリティ固有の制限が適用されます。

モダリティ batchSize * samplesPerPrompt の制限
テキスト 16 で割り切れる 8,192 以下の値にする必要があります
マルチモーダル(画像、音声、動画) 16 で割り切れる 1,024 以下の値にする必要があります

evaluateInterval

チューニング中にモデルが評価される頻度。間隔はエポックではなくステップで測定されます。

checkpointInterval

復元や後で使用するために、モデルのチューニングの進行状況がチェックポイントとして保存される頻度。間隔はエポックではなくステップで測定されます。

  • 推奨事項: checkpointInterval = evaluateInterval * N を設定します。ここで、N は正の整数です。

maxOutputTokens

チューニング済みモデルの最大出力生成長。

  • デフォルトの上限: 32,768

adapterSize

LoRA アダプタのサイズ。アダプタサイズが大きいほど、複雑なタスクの学習容量が大きくなりますが、トレーニング時間とメモリが追加で必要になります。

  • デフォルト: ADAPTER_SIZE_SIXTEEN

次のステップ