Logit Scale Bias(Logit 放縮偏置)
- 定義:
Logit scale 偏置指的是,不同模型(如 Actor 與 Reference)之間輸出的 logit 的數量級(scale)不一致,導致 log-prob 或 log-ratio 計算偏差。 - 舉例說明
- 當前策略模型(Actor)輸出:logits ≈ [3.2, 1.1, 0.4, …] → 比較 confident
- Reference 模型輸出: logits ≈ [0.6, 0.5, 0.2, …] → 比較均勻
- 則兩者的 log prob 差異會很大,但實際上可能只是 softmax 溫度不同或 batch norm 不一致
- 結果
- log(πactor)/πref=log?ratio被人為的放大log(\pi_{actor})/\pi_{ref}=log-ratio 被人為的放大log(πactor?)/πref?=log?ratio被人為的放大
- DPO loss 變得過于激進或震蕩
- 導致訓練不穩定或”熵崩潰“ (Entropy collapse)
Reward Shift Bias(獎勵偏移問題)
- 定義
指的是由于數據分布、模型參數或 batch 樣本差異,導致 每批次樣本的 log-ratio 平均值有顯著偏移 - 舉例說明:
- 某個 batch 的 log(π_actor / π_ref) 偏向全為正值,表示 actor 極度偏向 chosen,損失變得極低或無梯度。
- 另一個 batch 偏向負值,DPO loss 會變得極高
- 后果
- 模型更新過快或者過慢(learning rate mismatch)
- loss variance 大,收斂變慢甚至崩潰
- learning signal 不穩定,影響模型泛化能力
在DPO中如何出現的
DPO中,bias 來源的關鍵點
來源 | 說明 |
---|---|
模型初始化差異 | Actor 初始化可能是微調過的,Reference 是 SFT,logits 分布不同。 |
Softmax 溫度不一致 | 不同模型輸出概率分布 sharpness 不一樣。 |
訓練 batch 之間樣本分布不均 | 某 batch 里 response 長、另一個短,影響 reward sum。 |
過擬合或獎勵驅動過強 | Actor 學得太快,偏好 chosen 太多。 |
應對策略
項目 | 含義 | 在 DPO 中表現 | 應對方法 |
---|---|---|---|
Logit scale bias | 不同模型 logits 范圍差異大 | log prob ratio 被放大或縮小,訓練過激或鈍化 | 限制溫度、使用 delta、對抗訓練 |
Reward shift bias | 不同 batch 中平均 reward 偏移 | 訓練波動大,容易過擬合某些 batch | 使用移動平均 delta,或 normalized loss |
解決方案
- BCO-Pair(Bias-Corrected Optimization)