Q star?

“大家应该还记得去年 11 月底爆出来的 Q* 项目吧?这是传说中 OpenAI 正在秘密开展、或将带来颠覆性变革的 AI 项目。如果大家想要回忆一下,可以自行参考当时互联网上有关的很多相关报道与猜想,可参考塔罗烩之前原创发表的文章《融合RL与LLM思想,探寻世界模型以迈向AGI「 上篇/ 中下篇/ 合集」的相关内容 》或知乎历史文章。
其中在「 上篇」中的后半部分,提及了相关“由Mistral 基于其微调的Zephyr 7B论文中的AIF+DPO(不同于RLHF PPO的算法)算法的延展性思考”。
在「 中篇 其中的RL与LLM本质探寻过程中尝试对这一问题进行了一些更深刻背后理论的阐释,包括从回顾AI历史、当前的RLAIF再到self-play下的超级对齐..并最终给出了基于“tokenize世界中关于数据复杂分布互映射上,并抽象其底层数学概念中的数据流形分布再到认知流形分布的阐释。”
在简而言之,现在产业界或学术界普遍认为Q* 很可能是 Q 强化学习和 A* 搜索这两种 AI 方法的结合。”

正文如下:

近日,斯坦福大学一个团队的一项新研究似乎为这一研究方向的潜力提供了佐证,其声称现在已经取得非凡成就的「语言模型不是一个奖励函数,而是一个 Q 函数!」由此发散思维猜想一下,也许 OpenAI 秘密的 Q* 项目或许真的是造就 AGI 的正确方向(或之一)。

在对齐大型语言模型(LLM)与人类意图方面,最常用的方法必然是根据人类反馈的强化学习(RLHF)。通过学习基于人类标注的比较的奖励函数,RLHF 能够捕获实践中难以描述的复杂目标。研究者们也在不断探索使用强化学习技术来开发训练和采样模型的新算法。尤其是直接对齐方案(比如直接偏好优化,即 DPO)凭借其简洁性收获了不少拥趸。

直接对齐方法的操作不是学习奖励函数然后使用强化学习,而是在上下文多臂赌博机设置(bandit setting)中使用奖励函数与策略之间的关系来同时优化这两者。类似的思想已经被用在了视觉 - 语言模型和图像生成模型中。

尽管有人说这样的直接对齐方法与使用 PPO 等策略梯度算法的经典 RLHF 方法一样,但它们之间还是存在根本性差异。

举个例子,经典 RLHF 方法是使用终点状态下的稀疏奖励来优化 token 层面的价值函数。另一方面,DPO 则仅在上下文多臂赌博机设置中执行操作,其是将整个响应当成单条臂处理。这是因为,虽然事实上 token 是一次性只生成一个,但研究强化学习的人都知道,密集型奖励是有益的。

尽管直接对齐算法颇引人注意,但目前人们还不清楚它们能否像经典强化学习算法那样用于序列。

为了搞清楚这一点,斯坦福这个团队近日开展了一项研究:在大型语言模型中 token 层面的 MDP 设置中,使用二元偏好反馈的常见形式推导了 DPO。

他们的研究表明,DPO 训练会隐含地学习到一个 token 层面的奖励函数,其中语言模型 logit 定义最优 Q 函数或预期的总未来奖励。然后,他们进一步表明 DPO 有能力在 token MDP 内灵活地建模任意可能的密集奖励函数。

这是什么意思呢?

简单来说,该团队表明可以将 LLM 表示成 Q 函数并且研究表明 DPO 可以将其与隐式的人类奖励对齐(根据贝尔曼方程),即在轨迹上的 DPO 损失。

并且他们证明这种表示可以拟合任何在轨迹上的反馈奖励,包括稀疏信号(如智能体应用)。

实验

他们也进行了实验,论证了三个可能对 AI 社区有用的实用见解。

第一,他们的研究表明尽管 DPO 是作为上下文多臂赌博机而派生出来的,但 DPO 模型的隐含奖励可在每个 token 层面上进行解释。

在实验中,他们以定性方式评估了 DPO 训练的模型是否能够根据轨迹反馈学习 credit assignment。有一个代表性示例是商讨工作就职的场景,图 1 给出了两个答案。

其中左边是正确的基础摘要,右边是经过修改的版本 —— 有更高层的职位和相应更高的工资。他们计算了这两个答案的每个 token 的 DPO 等价的奖励。图 1 中的每个 token 标注的颜色就正比于该奖励。

可以看到,模型能够成功识别对应于错误陈述的 token,同时其它 token 的值依然相差不大,这表明模型可以执行 credit assignment。

此外,还可以看到在第一个错误(250K 工资)的上下文中,模型依然为其余 token 分配了合理的值,并识别出了第二个错误(management position)。这也许表明模型具备「缝合(stitching)」能力,即根据离线数据进行组合泛化的能力。该团队表示,如果事实如此,那么这一发现将有助于强化学习和 RLHF 在 LLM 中的应用。

第二,研究表明对 DPO 模型进行似然搜索类似于现在很多研究中在解码期间搜索奖励函数。也就是说,他们证明在 token 层面的阐述方式下,经典的基于搜索的算法(比如 MCTS)等价于在 DPO 策略上的基于似然的搜索。他们的实验表明,一种简单的波束搜索能为基础 DPO 策略带来有意义的提升,见图 2。

第三,他们确定初始策略和参考分布的选择对于确定训练期间隐性奖励的轨迹非常重要。

从图 3 可以看出,当在 DPO 之前执行 SFT 时,被选取和被拒绝的响应的隐含奖励都会下降,但它们的差距会变大。

当然,该团队最后也表示,这些研究结果还需要更大规模的实验加以检验,他们也给出了一些值得探索的方向,包括使用 DPO 让 LLM 学会基于反馈学习推理、执行多轮对话、充当智能体、生成图像和视频等。


以下引入融合RL与LLM思想,探寻世界模型以迈向AGI「上篇」中关于引入DPO的回顾:

...首先我们从Self-Play或Synthetic Data本身的意义上尝试进行一下思考的延展,这里由于Synthetic Data本身是建立在Self-Play的机制之上形成的,而Synthetic Data有很多种途径(RLAIF方法中的AI Generate与AI feedback即是其中一种途径),其中Self-Play即是一种看似带有目标场景性的数据生成途径,这个目标场景即是Self-Play中所处的带有一定目标性的模拟环境。而Synthetic Data最终会在后续过程中用于AMIE模型的Fine-Tuning。而为了更深入的理解Fine-Tuning的意义,则需要一步步回溯到合成的数据意义再到如何合成的数据,即数据的合成目标所带来的合成数据对整个模型用于模拟环境中的医学知识与能力空间Fine-Tuning的价值与意义。因此接下来我们将目标聚焦在核心的Self-Play之上。

在本篇论文中,Self-Play采用了类似Multi-Agent的思想,包括Patient Agent、Doctor Agent、Critic以及Moderator等角色,在整个自循环self-play过程中,我们发现经过多角色交互过程,在数据层面会合成扩展更多围绕诊疗环境的多种医疗条件和医学要素,而这些复杂的条件和要素又会作为模型非原始信息作为输入通过多角色进行进一步的模型生成、决策、反思或评判,是的,这里的关键就是这些「合成扩展的非原始信息作为输入 即 上下文提示」,它将在一步步的推理链条中将模型按照规定的情景引导至最终更标准、精确、更高泛化性的结果之上,而最终将模拟的对话结果用于模型的Fine-Tuning当中来,以保证对模型结果输出的正确性。这里可能大家会问,为什么需要如此繁琐的过程来合成数据呢?LLM自己不能直接在推理中解决问题吗?难道在采用大量的数据LLM预训练过程中并没有见到过这些数据?如果没见到,为什么模型还能通过在多角色的交互中合成出来?如果见到了这些数据,为什么还需要SFT,为什么还需要Multi-Agent、COT、TOT这一过程?当然要要完全回答上述这些问题,可能需要对LLM的预训练机制和原理进行展开和剖析,在了解了其训练本质后,也许会逐步找到解决上述疑问的办法。

在这里尝试再进行一些延申,试想一下,在LLM预训练过程中真实世界数据样本是真正足够的吗?与某个领域的任务对应的真实世界数据样本的组织和分布是合理的吗?即用于LLM pre-training的人类认知下的训练样本空间的「token」序列组织形态是天然COT的吗?LLM在预训练过程中所预测的下一个token学会的是什么?预训练时是否能够覆盖空间所有的复杂情况?模型提示词工程 Prompt Engineering与模型参数的Fine-Tuning的本质普遍性?基于Multi-Agent环境下,是否能达成类AlphaGO这样的self-play博弈环境的学习?等等这一系列问题似乎将会将我们带入到一个更本质的探寻空间。

在进行上述问题思考和探寻的过程中,刚好也联想到去年了解到的Mistral 7B,而由Mistral 7B也进一步了解到基于其微调的Zephyr 7B论文中的AIF+DPO(不同于RLHF PPO的算法)算法的思考,包括从Anthropic的RLHF到Cluade的RAILF,。在这里除了让大众眼前一亮的DPO算法(DPO利用从奖励行数到最优策略的解析映射,使得将奖励函数上的偏好损失函数转换为策略上的损失函数)之外,我想在AIF这一环节所带来的意义也是非常重大的。

在Zephyr中,如下图所示,其三步骤的训练方式与chatGPT的三阶段训练方式有着看似较大的差异:

Step1 - sSFT:通过大规模、自指导式数据集(UltraChat)做精炼的监督微调(dSFT)

Step2 - AIF:通过集成收集AI反馈(AIF)聊天模型完成情况,然后通过GPT-4(UltraFeedback)进行评分并二值化为偏好

Step3 - dDPO:利用反馈数据对dSFT模型进行直接偏好优化·DPO

其中这里的Step2 - AIF,即某种程度上的一种self-play,也是通过多模型prompt生成来进行的一种RL,试想,通过其中的AIF,对于模型最终所采用的DPO算法的SFT过程里,其用于最终模型的SFT所训练的AIF数据集在与原始pre-training数据集在数据(tokens)序列组织构象上应该有着一些差异,而这种差异是之前原始数据集在用于模型pre-training中很难找到的,而这也是一种Synthetic Data的路径,关键是这种Synthetic Data与原始Data上述中的那些特征与知识分布差异。

DPO算法:如下公式的解析通俗来讲就是:当一个答案是好的答案时,模型要尽可能增大其被策略模型生成的概率,而当一个答案是差的答案时,模型则需要尽可能降低其被策略模型生成的概率。

以上,我们在RL×LLM上开了一个小头,了解到了一些两种算法或训练模式的融合例子,并尝试做出了一些探索性思考,接下来,将上述模型case以及延展的思考进行一下沉淀,回归第一性原理进行更进一步的本质探寻,以求找到两者之间所隐含的的共性、差异以及之所以呈现出当前技术发展路径与现状的必然性..

大家如果有兴趣可以继续参考如下来自于DPO的简要概述:

DPO方法的定义与工作原理

直接偏好优化(DPO)是一种新兴的机器学习方法,它旨在直接通过用户反馈来优化语言模型的输出。与传统的强化学习方法不同,DPO不依赖于一个预先定义的奖励函数。相反,它使用从用户反馈中提取的信号来调整模型的行为,使其更加符合用户的偏好。与经典的RLHF不同,DPO(如Rafailov等人在2023年推导的)完全保持在上下文bandit设置中,并且还使用了基于bandit的偏好模型。为了避免使用RL算法,DPO使用了KL-contextual bandit版本的RL问题的众所周知的闭式解:

其中π∗是最优策略,Z(x)是归一化的分区函数。DPO重新排列这个方程,以解出奖励:

将这个关系代入用于奖励建模的标准二进制交叉熵损失函数中,得到DPO的损失方程,因为分区函数Z(x)从Bradley Terry模型中消除。

在DPO中,模型的每个输出都被视为一个“臂”,而用户的反馈则被用作评估这些“臂”的“奖励”。通过这种方式,模型学习哪些类型的输出更可能获得正面的用户反馈,并倾向于在未来的预测中生成类似的输出。

DPO与传统强化学习方法的对比

传统的强化学习方法通常依赖于一个明确的奖励函数来指导模型的学习过程。这个奖励函数定义了在给定的状态和行动下应该获得的奖励。但是定义一个能够准确反映复杂任务目标的奖励函数往往是非常困难的。DPO方法的一个关键优势在于它不需要这样的奖励函数。它直接利用用户的反馈来指导模型的学习,这使得它在处理那些难以用传统奖励函数描述的任务时更加有效。

DPO在实际应用中的优势

DPO方法在实际应用中的一个主要优势是它的灵活性和适应性。由于它直接依赖于用户反馈,DPO能够适应用户的变化偏好,并且能够在没有明确奖励函数的情况下进行优化。此外DPO还能够处理那些传统强化学习方法难以处理的任务,如那些需要细粒度评估和长期策略规划的任务。通过直接从用户反馈中学习,DPO能够在这些复杂的任务中找到有效的策略。DPO为优化语言模型提供了一个直接、灵活且高效的方法,特别是在那些传统强化学习方法难以应用的领域。

令牌级别的奖励函数与策略优化

直接偏好优化(DPO)方法在令牌级别的应用中,展现了其独特的优势。在这个层面上,每个令牌(即单词或字符)都被视为一个决策点,模型需要在这些决策点上做出最优选择以生成最终的文本输出。DPO通过评估每个令牌对整体输出质量的贡献来优化策略,这种方法允许模型在生成文本时进行更精细的调整。在令牌级别上,奖励函数的作用是为每个可能的令牌选择提供一个评分,这个评分反映了该选择对于达成目标的贡献程度。DPO方法通过用户反馈来动态调整这些评分,使得模型能够学习到哪些令牌选择更能满足用户的偏好。

DPO在组合泛化中的应用

组合泛化是指模型的能力,能够将学到的知识和模式应用到新的、未见过的情境中。DPO通过在令牌级别上进行优化,为模型提供了学习如何将不同的令牌组合成有意义和符合用户偏好的输出的能力。在实际应用中,这意味着DPO训练的模型能够更好地处理新的用户查询和任务,即使这些任务在训练数据中没有直接的例子。通过这种方式,DPO有助于创建更灵活、更适应性强的语言模型,这些模型能够在多变的真实世界情境中表现出色。DPO在令牌级别的解释能力为语言模型的优化提供了一个强大的工具,它通过精细的信用分配和组合泛化能力,使模型能够更好地适应用户的具体需求和偏好。这种方法的应用前景广阔,从提高对话系统的互动质量到创建更准确的文本生成模型,DPO都显示出了巨大的潜力。

经典搜索算法的原理

经典搜索算法在人工智能领域中扮演着重要角色,特别是在决策问题和规划任务中。这些算法旨在在大规模的状态空间中寻找最优解或接近最优解的策略。1.深度优先搜索(DFS):从根节点开始,沿着一个分支一直探索到底,然后回溯到上一层,继续探索其他分支。DFS通常用于树结构或图搜索。2.广度优先搜索(BFS):从根节点开始,逐层探索,先探索所有相邻节点,然后再探索下一层。BFS通常用于图搜索和状态空间搜索。3.A*搜索:结合了启发式信息和实际代价的搜索算法。它使用估计的最优路径成本(启发式函数)来指导搜索,以便更快地找到目标状态。


往期精选内容回顾:

融合RL与LLM思想,探寻世界模型以迈向AGI「上篇」

融合RL与LLM思想,探寻世界模型以迈向AGI「中/下篇」

融合RL与LLM思想,探寻世界模型以迈向AGI「合集」

 

另外,最终合集版针对本篇更新又做了v6.0版更新,大家可访问百度网盘地址自行下载:

链接: https://pan.baidu.com/s/1FA9TgvbFJOjuPJUtcM5aBQ?pwd=lm51

提取码: lm51

或扫码下载:

 

  • 34
    点赞
  • 27
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值