RLHF综述-GRPO之前
10 综述
论文标题:A Comprehensive Survey of LLM Alignment Techniques: RLHF, RLAIF, PPO, DPO and More
论文地址:https://arxiv.org/pdf/2407.16216
奖励模型的子主题包括:1. 显式奖励模型与隐式奖励模型;2. 逐点奖励模型与偏好模型;3. 响应层面的奖励与 token 层面的奖励;4. 负偏好优化。
反馈的子主题包括:1. 偏好反馈与二元反馈;2. 成对反馈与列表反馈;3. 人类反馈与 AI 反馈
强化学习的子主题包括:1. 基于参考的强化学习与无参考的强化学习;2. 长度控制式强化学习;3. 强化学习中的不同分支;4. 在线策略强化学习与离线策略强化学习。
优化的子主题包括:1. 在线 / 迭代式偏好优化与离线 / 非迭代式偏好优化;2. 分离 SFT 和对齐与合并 SFT 和对齐。
10.1 直接人类偏好优化
传统 RLHF 方法通常涉及到优化源自人类偏好的奖励函数。该方法虽有效,但也可能带来一些难题,比如增大计算复杂度以及在估计和优化奖励时需要考虑偏置 - 方差权衡。参阅论文《High-dimensional continuous control using generalized advantage estimation》。
近期有研究探索了其它一些旨在根据人类偏好(无需依赖某个标量的奖励信号)来直接优化 LLM 策略的方法。
这些方法的目标是通过更直接地使用偏好数据来简化对齐流程、降低计算开销以及实现更稳健的优化。通过将该问题描述为一个偏好优化问题,而不是奖励估计和最大化问题,这些方法能提供一种将语言模型与人类判断对齐的不同视角:
SliC-HF,使用人类反馈进行序列似然校准,参阅论文《SliC-HF: Sequence likelihood calibration with human feedback》。
RSO,拒绝采样优化,参阅论文《Statistical rejection sampling improves preference optimization》。
DPO,直接偏好优化,参阅论文《Direct preference optimization: Your language model is secretly a reward model》。
DPOP,DPO-positive,参阅论文《Smaug: Fixing failure modes of preference optimisation with DPO-positive》。
β-DPO,参阅论文《β-DPO: Direct preference optimization with dynamic β》。
IPO,身份偏好优化,参阅论文《A general theoretical paradigm to understand learning from human preferences》。
sDPO,逐步 DPO,参阅论文《sDPO: Don’t use your data all at once》。
GPO,广义偏好优化,参阅论文《Generalized preference optimization: A unified approach to offline alignment》。
10.1 token 级 DPO
使用 DPO 时,奖励会被一起分配给 prompt 和响应。相反,使用 MDP 时,奖励会被分配给各个动作。后续的两篇论文在 token 层面阐述了 DPO 并将其应用扩展到了 token 级的分析。
DPO 可以执行 token 级信用分配的研究,参阅论文《From r to Q∗: Your language model is secretly a Q-function》,报道《这就是 OpenAI 神秘的 Q*?斯坦福:语言模型就是 Q 函数》。
TDPO,token 级 DPO,参阅论文《Token-level direct preference optimization》。
10.2 迭代式 / 在线 DPO
使用 DPO 时,会使用所有可用的偏好数据集来对齐 LLM。为了持续提升 LLM,应当实现迭代式 / 在线 DPO。这就引出了一个有趣的问题:如何高效地收集新的偏好数据集。下面两篇论文深入探讨了这一主题。
自我奖励式语言模型,参阅论文《Self-rewarding language models》。
CRINGE,参阅论文《The cringe loss: Learning what language not to model》。
10.3 二元反馈
事实证明,收集偏好反馈比收集二元反馈(比如点赞或点踩)的难度大,因此后者可促进对齐过程的扩展。KTO 和 DRO 这两项研究关注的便是使用二元反馈来对齐 LLM。
KTO,Kahneman-Tversky 优化,参阅论文《KTO: Model alignment as prospect theoretic optimization》。
DRO,直接奖励优化,参阅论文《Offline regularised reinforcement learning for large language models alignment》。
10.4 融合 SFT 和对齐
之前的研究主要还是按顺序执行 SFT 和对齐,但事实证明这种方法很费力,并会导致灾难性遗忘。后续的研究有两个方向:一是将这两个过程整合成单一步骤;二是并行地微调两个模型,最终再进行融合。
ORPO,比值比偏好优化,参阅论文《ORPO: Monolithic preference optimization without reference model》。
PAFT,并行微调,参阅论文《PAFT: A parallel training paradigm for effective llm fine-tuning》。
10.5 长度控制式 DPO 和无参考 DPO
之前有研究表明,LLM 的输出往往过于冗长。为了解决这个问题,R-DPO 和 SimPO 的关注重心是在不影响生成性能的前提下实现对响应长度的控制。
此外,DPO 必需参考策略来确保已对齐模型不会与参考模型有太大偏差。相较之下,SimPO 和 RLOO 提出了一些方法,可以在不影响 LLM 效果的情况下消除对参考模型的需求。
R-DPO,正则化 DPO,参阅论文《Disentangling length from quality in direct preference optimization》。
SimPO,简单偏好优化,参阅论文《SimPO: Simple preference optimization with a reference-free reward》,报道《全面超越 DPO:陈丹琦团队提出简单偏好优化 SimPO,还炼出最强 8B 开源模型》。
RLOO,REINFORCE Leave-One-Out,参阅论文《Back to basics: Revisiting reinforce style optimization for learning from human feedback in LLMs》。
10.6 逐列表的偏好优化
之前在 PPO 和 DPO 方面的研究关注的是成对偏好,而 RLHF 方面的研究则是收集逐列表的偏好来加速数据收集过程,之后再将它们转换成成对偏好。尽管如此,为了提升 LLM 的性能,直接使用逐列表的数据集来执行偏好优化是可行的。以下三篇论文专门讨论了这种方法。
LiPO,逐列表偏好优化,参阅论文《LIPO: Listwise preference optimization through learning-to-rank》。
RRHF,参阅论文《RRHF: Rank responses to align language models with human feedback without tears》。
PRO,偏好排名优化,参阅论文《Preference ranking optimization for human alignment》。
10.7 负偏好优化
这些研究有一个共同前提:当前这一代 LLM 已经在翻译和总结等任务上超越了人类性能。因此,可以将 LLM 的输出视为期望响应,而无需依靠将人类标注的数据视为偏好响应;这样做是有好处的。反过来,不期望得到的响应依然也可被用于对齐 LLM,这个过程就是所谓的负偏好优化(NPO)。
NN,否定负例方法,参阅论文《Negating negatives: Alignment without human positive samples via distributional dispreference optimization》。
NPO,负例偏好优化,参阅论文《Negative preference optimization: From catastrophic collapse to effective unlearning》。
CPO,对比偏好优化,参阅论文《Contrastive preference optimization: Pushing the boundaries of llm performance in machine translation》。
10.8 纳什学习
之前的研究通常是使用逐点奖励和 BT 模型来得到成对偏好。但是,这种方法比不上直接成对偏好建模并且无法解决成对偏好中的不一致问题。为了克服这些局限,一些研究提出了纳什学习方法。
根据人类反馈的纳什学习,参阅论文《Nash learning from human feedback》。
SPPO,自博弈偏好优化,参阅论文《A minimaximalist approach to reinforcement learning from human feedback》。
DNO,直接纳什优化,参阅论文《Direct nash optimization: Teaching language models to self-improve with general preferences》。
10.9 不同方法的比较
一些研究则是为了比较这些不同方法。这类研究可以阐释每种方法各自的优缺点。
- 评估 DPO 及其变体
论文《Insights into alignment: Evaluating dpo and its variants across multiple tasks》在推理、数学问题求解、可信度、问答和多任务理解等多种任务上全面评估了隐式奖励模型,即无强化学习算法,包括 DPO、KTO、IPO 和 CPO。这些评估涉及三个不同场景:1) 微调监督式微调(SFT)模型、2) 微调预训练模型、3) 微调指令模型。
该研究发现,在大多数基准上,KTO 比其它对齐方法更优。此外,研究表明,对齐并不会显著提升模型的推理和问答性能,但确实能大幅提升模型的数学问题求解能力。该研究还注意到了数据量的重要性,对齐方法在较小的数据子集上的性能最佳。此外,研究发现 KTO 和 CPO 能有效绕过 SFT 阶段,在不影响性能的前提下直接进入对齐阶段。相比之下,当绕过 SFT 阶段,直接进入对齐阶段时,
DPO 和 IPO 会表现出明显的性能下降。
- DPO 是比 PPO 更好的 LLM 对齐方法吗?
论文《Is DPO superior to PPO for LLM alignment? A comprehensive study》表明,DPO 可能存在固有局限,可能会产生有偏差的解答,并可能由于分布变化而导致性能下降,
他们发现,DPO 训练出的策略倾向于未曾见过的响应,尤其是分布外的样本。而迭代式 / 在线 DPO 则能缓解这个问题,其做法是广泛探索响应空间并不断更新参考模型。相较之下,RLHF/PPO 则是通过优势归一化、大批量大小以及对参考模型使用指数移动平均来解决这些挑战。最终,这些发现表明 PPO 优于迭代式 / 在线 DPO,而这又进一步优于标准 DPO。