一、简介
1、为什么需要使用非强化学习对齐方法,因为RLHF有以下缺点
- 需要同时维护更新多个模型,资源占用多,执行过程复杂
- 近端策略优化算法在优化过程中稳定性较差,对超参数取值较为敏感,增加了训练的难度和不确定性
2、改进
- 改进方式:直接基于监督微调的对齐方法,利用高质量数据集,通过特定监督学习算法对大模型进行微调
- 改进后的优点:更简洁、更直接、避免复杂的强化学习算法带来的种种问题
- 监督微调算法过程:在优化过程中使得模型能够区分对齐的数据和未对齐的数据(或者对齐质量的高低),进而从数据中学习到人类期望对齐的行为模式
- 监督微调对齐两要素
- 高质量对齐数据集
- 设计监督微调算法
二、对齐数据的收集
1、具体方式
- 基于奖励模型构建
- 利用经过对齐的大模型来构建
2、基于奖励模型的方法
- 训练过程
1、大模型基于输入生成输出
2、奖励模型打分、分组、生成对齐数据
3、监督微调待对齐大模型
3、基于大模型的方法
- 训练过程
1、使用自然语言指令与相关示例让大模型对自己输出进行评价、检查,并对有害内容进行修正,最终生成对齐数据
2、两个模型不停对话,不停修正,生成对齐数据
三、代表性监督微调算法DPO
1、DPO
- 简介:直接偏好优化算法,通过有监督微调相似的复杂度实现模型对齐,不需要训练中采样,超参数选择也很容易
- 思想:在强化学习的目标函数中建立决策函数与奖励函数之间的关系,以规避奖励建模的过程
- 特点:
1、不仅训练模型生成人类偏好内容,同时会降低生成不符合人类偏好内容的概率
2、只需要加载策略模型和参考模型,不用加载奖励模型和评价模型,占用资源少,运行效率高,对齐性能好
四、其他有监督微调算法
1、思想
- 基于对齐数据,使用传统的序列到序列生成目标(交叉熵损失)来优化
- 搭配一些辅助优化慕白哦,增加对齐数据的学习利用效率
2、基于质量提示的训练目标
使用提示技术帮助模型区分正负例
3、基于质量对比的训练目标
使用针对质量排过序的输出内容协助模型进行训练
五、SFT、RLHF
- 指令微调在有的理论里面是属于监督微调(SFT)的一部分,SFT是RLHF的第一个流程
- SFT作用是解锁大模型能力,不能扩充大模型能力,如果微调时有一些输入超过大模型能力,大模型容易出现幻象
- RLHF能增加模型的综合能力,增强有用性和无害性,但是RLHF的训练过程不稳定,经过SFT之后再RLHF会好很多