赞
踩
原创 王庆法 清熙 2023-12-30 17:00
构建安全、高效和可控的AI系统至关重要。
极简介绍RLHF中提到 RLHF 通过人类反馈做强化学习,让大模型对齐人类偏好。典型做法是:
SFT 有监督微调,构建人类偏好数据集,训练reward 奖励模型,依据奖励模型通过强化学习引导LLM 匹配人类偏好。
类似人类幼崽学习过程:反复考试、评卷、打分,通过老师反馈(Teacher Feedback)强化学生学习。客观题易,主观题难。最后通过中高考给出归一化的奖励分数。
SFT 模型作为初始化基础,RLHF 的奖励函数训练相当于在最后一层 transformer层后添加了一个线性层,以获得reward 的标量归一化的预测。但这是一个复杂,且通常不稳定的过程。
斯坦福学者提出一种称为DPO(Direct Preference Optimization)的新方法。
DPO计算轻量稳定,无需显式的奖励建模或强化学习过程,通过一个简单的二元交叉熵(Binary Cross-Entropy, BCE ) 目标来优化,大大简化偏好学习过程。
其核心思想是利用从奖励函数到最优策略的解析映射,将奖励函数的损失转化为策略的损失。 这里的“解析映射”是通过Bradley-Terry 模型或更一般形式(Plackett-Luce 模型)来实现的。
Bradley-Terry模型是一种建立在对数几率(Log-odds)上的偏好或者排序模型。
如NBA 球赛,两两比赛,但场次不定,主客场安排等因素,决定了不能用简单比赛胜利场次排序,但如何做到队伍的排名呢?
Bradley-Terry模型将 i 队打败 j队的概率视为一个独立的伯努利随机变量,分布为伯努利(Pij)分布,其对数几率定义为:赢和输之比的对数 log ( Pij / 1- Pij ) 。
相对于 “问题 - 专家答案”的人类偏好数据集,“问题 - LLM 答案 - 用户评议‘好/不好’”相对容易采样获取。ChatGPT 会询问用户的选择,难道已经用了DPO?
DPO 方法的相对对数比率 Log ( 好/不好),结合了一个动态的,针对每个样本的重要性权重,可防止朴素概率比率(naïve probability ratio ) 可能导致的模型褪化。
从DPO 给出的损失函数的梯度,可以直观看到,其增加了"好的生成结果"可能性,降低了"不好的生成结果"的可能性。
这个损失函数,是负对数似然损失:信息熵增,偏向无序,有序结构化降低,信息量减少,信息损失。损失函数参数化后,就可以采用最大似然的方法估计参数。
整个DPO 优化训练流水线非常简单:1.采集用户偏好数据集:提示prompt x, 搜集好的产出 yw, 差的产出 yl, 采用Bradley-Terry模型解析化表达最大似然损失函数,最小化损失优化LLM。
其中涉及Reparameterization 重参数化,而且理论上可以证明未损失普遍性或一般性。
根据笔者整理的大模型的数理认知框架及应用分析,DPO对生成或推理过程的对齐,本质上是按照人类偏好,修正LLM采样策略与变分推断的路径。
也就是 DPO 其实是学到了人类偏好的范畴采样策略和变分推断方式,如何给定初始分布,如何变分推断等,所以少量偏好数据集,理想情况下却可以很好地泛化到其他任务。
参考文献:
1.Direct Preference Optimization: Your Language Model is Secretly a Reward Model https://arxiv.org/pdf/2305.18290.pdf
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。