Self-Rewarding Language Model(セルフリワーディングランゲージモデル)
Meta AI が 2024年に発表した手法で、LLM 自身が報酬モデル(Reward Model)として機能し、自分の応答を自己評価してアライメント学習データを自動生成する「LLM-as-a-Judge + Self-Play」の統合アプローチ。
Self-Rewarding Language Model とは
Self-Rewarding Language Model は、Meta AI の Yuan ら(2024年1月)が発表した手法で、LLM 自身が報酬モデルの役割を兼ね、自分の応答品質を自己評価することでアライメント学習データを自動的に生成するアプローチである。従来の RLHF が別途の報酬モデルを必要としたのに対し、1つのモデルが「応答生成」と「品質評価」の両方を担う。
動機と従来手法の限界
RLHF の標準パイプラインでは以下の問題があった:
- 報酬モデルのボトルネック: 報酬モデルの品質が学習の上限を決定する(Reward Hacking)
- 分離された学習: ポリシーモデルと報酬モデルが別々に学習されるため、一貫性が担保しにくい
- スケーリングの壁: 報酬モデルの改善には追加の人間データが必要
Self-Rewarding LM は「報酬モデルも Self-Play で改善できれば、両方が同時に向上する」という洞察に基づく。
Self-Rewarding のフロー
| ステップ | 処理内容 | 入出力 |
|---|---|---|
| 1. 応答生成 | モデルが質問に対して N 個の候補応答を生成 | 質問 → N 応答 |
| 2. 自己評価 | LLM-as-a-Judge プロンプトで各応答にスコア付与 | N 応答 → N スコア |
| 3. ペア構築 | 高スコア応答 = chosen、低スコア応答 = rejected のペアを構築 | (chosen, rejected) ペア |
| 4. DPO 学習 | 構築したペアで DPO(Direct Preference Optimization)を実行 | モデル更新 |
| 5. 反復 | 更新後のモデルで 1-4 を繰り返し(3-5 イテレーション) | 改善モデル |
自己評価プロンプトの設計
以下の質問に対する回答を 1-5 のスケールで評価してください。
質問: {question}
回答: {response}
評価基準:
5: 完璧 - 正確、包括的、明確で、質問に完全に答えている
4: 良い - ほぼ正確で有用だが、軽微な改善の余地がある
3: 普通 - 基本的な情報は含むが、深さや正確性に不足がある
2: 不十分 - 重要な誤りまたは大幅な情報不足がある
1: 不適切 - 質問に答えていない、または有害な内容を含む
スコア: [1-5]
理由: [評価の根拠を簡潔に]
実験結果と性能
Meta の論文では Llama-2-70B をベースに実験を実施:
| 指標 | ベースライン(SFT) | Self-Rewarding(Iter 1) | Self-Rewarding(Iter 3) |
|---|---|---|---|
| AlpacaEval 2.0 Win Rate | 9.8% | 15.2% | 20.4% |
| MT-Bench スコア | 6.1 | 6.8 | 7.5 |
| 自己評価の Cohen's κ | - | 0.42 | 0.58 |
| 人間評価との相関 | - | 0.61 | 0.72 |
注目すべきは 自己評価の品質も イテレーションとともに向上 する点。Cohen's κ が 0.42 → 0.58 に改善され、報酬モデルとしての信頼性が自動的に高まっている。
SPIN との比較
| 特性 | SPIN | Self-Rewarding LM |
|---|---|---|
| 正解データ | 人間の Ground Truth 必須 | 不要(自己評価のみ) |
| 報酬信号 | 人間データとの比較 | LLM-as-a-Judge スコア |
| イテレーション効率 | 高い(明確な勝敗) | 中程度(自己評価の精度に依存) |
| モデル規模 | 7B でも効果あり | 70B 推奨(自己評価の精度に規模が影響) |
| 拡張性 | 人間データに制約 | 計算資源のみに依存 |
実装上の注意点
- 温度設定: 応答生成時は temperature=0.7-1.0(多様性確保)、評価時は temperature=0.1(一貫性確保)
- 候補数 N: 4-8 が推奨。少なすぎると DPO ペアの品質が低下、多すぎると計算コスト増大
- 評価バイアス対策: 応答の順序をシャッフルし、位置バイアスを軽減
- イテレーション数: 3-5 回が最適。それ以上はモード崩壊のリスクが増大
2025-2026年の発展
- Self-Rewarding + Tool Use: ツール呼び出しの品質も自己評価で改善(2025, Google DeepMind)
- Multi-Aspect Self-Rewarding: 正確性・有用性・安全性を別々に自己評価してスコアを統合
- Iterative DPO(IDPO): Self-Rewarding のフレームワークで DPO を反復適用する手法が標準化
よくある質問(FAQ)
Q1: Self-Rewarding で自己評価が甘くなる(お手盛り)リスクはないか? A: 存在する。対策として (1) 複数プロンプトでの評価アンサンブル (2) 外部ベンチマークでの定期検証 (3) 過去イテレーションのモデルとの交差評価 が推奨される。Meta の実験では 3 イテレーション以降で評価の信頼性低下が観測された。
Q2: 7B モデルでも Self-Rewarding は使えるか? A: 効果はあるが、70B に比べて自己評価の精度が低い。7B の場合は SPIN の方が効率的な場合が多い。目安として 13B 以上で Self-Rewarding の優位性が現れる。
Q3: Self-Rewarding と RLAIF の違いは? A: RLAIF(RL from AI Feedback)は別の AI モデルがフィードバックを提供するのに対し、Self-Rewarding は同一モデルが自己評価する点が異なる。Self-Rewarding は追加モデルのコストが不要だが、自己バイアスのリスクが高い。
まとめ
- Self-Rewarding LM は LLM 自身が報酬モデルとして機能し、応答品質を自己評価して学習データを自動生成
- Llama-2-70B で AlpacaEval 2.0 Win Rate を 9.8% → 20.4% に改善(3イテレーション)
- 自己評価の品質もイテレーションとともに向上(Cohen's κ: 0.42 → 0.58)
- 70B 以上のモデルで最も効果的、7B-13B では SPIN の方が効率的な場合がある