首页  >  文章  >  科技周边  >  十行代码媲美RLHF,用社交游戏数据训练社会对齐模型

十行代码媲美RLHF,用社交游戏数据训练社会对齐模型

王林
王林转载
2023-06-06 17:16:061242浏览

让语言模型的行为符合人类社会价值观是当前语言模型开发的重要环节。相应的训练也被称为价值对齐 (value alignment)。

当前主流的方案是 ChatGPT 所采用的 RLHF (Reinforcenment Learning from Human Feedback),也就是在人类反馈上进行强化学习。这一方案首先先训练一个 reward model (价值模型)作为人类判断的代理。代理模型在强化学习阶段为生成式语言模型的提供奖励作为监督信号。

这一方法存在如下痛点:

1.代理模型产生的奖励很容易被破除或者篡改。

2. 在训练过程中,代理模型需要和生成式模型进行不断交互,而这一过程可能非常耗时且效率不高。为了保证高质量的监督信号,代理模型不应小于生成式模型,这也就意味着在强化学习优化过程中,至少有两个比较大的模型需要交替进行推理(判断得到的奖励)和参数更新(生成式模型参数优化)。这样的设定在大规模分布式训练中可能会非常不便。

3. 价值模型本身并无和人类思考模型上明显的对应。我们脑海中并没有一个单独的打分模型,而且实际上长期维护一个固定的打分标准也非常困难。相反,我们的成长过程中价值判断的形成大部分来自每天的社交 —— 通过对相似场景的不同社交反馈的分析,我们逐渐意识到什么是会被鼓励的,什么是不允许的。这些通过大量 “社交 — 反馈 — 改进” 而逐渐积累的经验和共识成为了人类社会共同的价值判断。

最近一项来自达特茅斯,斯坦福,谷歌 DeepMind 等机构的研究表明,利用社交游戏构造的高质量数据配合简单高效的对齐算法,也许才是实现 alignment 的关键所在。

十行代码媲美RLHF,用社交游戏数据训练社会对齐模型

  • 文章地址:https://arxiv.org/pdf/2305.16960.pdf
  • 代码地址:https://github.com/agi-templar/Stable-Alignment
  • 模型下载(包含基座,SFT,和对齐模型):https://huggingface.co/agi-css

作者提出一种在多智能体游戏数据上训练的对齐方法。基本思想可以理解为将训练阶段的奖励模型和生成式模型的在线交互,转移到游戏中大量自主智能体之间的离线交互之中(高采样率,提前预演博弈)。游戏环境的运行独立于训练,并且可以大量并行。监督信号从取决于代理奖励模型的性能变成取决于大量自主智能体的集体智慧。

十行代码媲美RLHF,用社交游戏数据训练社会对齐模型

为此作者设计了一个虚拟社会模型,称之为沙盒 Sandbox。沙盒是一个格点构成的世界,每一个格点是一个 social agent (社交体)。社交体具有记忆系统,用于存储每一次交互的问题,回答,反馈等各种信息。在社交体每一次对于问题做出回答时,都要先从记忆系统中检索并返回和问题最相关的 N 条历史问答,作为这一次回复的上下文参考。通过这一设计,社交体能在多轮互动中的立场不断更新,且更新的立场能和过去保持一定延续性。初始化阶段每一个社交体都有不同的预设立场。

十行代码媲美RLHF,用社交游戏数据训练社会对齐模型

将游戏数据转化为 alignment 数据

在实验中作者使用 10x10 的格点沙盒(一共 100 个社交体)进行社会仿真,且制定了一个社会规则(即所谓 Sandbox Rule):所有社交体必须通过使自己对于问题的回答更加 socially aligned (社交对齐)来给其它社交体留下好的印象。此外沙盒还部署了没有记忆的观察者,在每一次社交前后,给社交体的答复做出打分。打分基于 alignment 和 engagement 两个维度。

十行代码媲美RLHF,用社交游戏数据训练社会对齐模型

使用不同模型在沙盒中的模拟人类社会

作者利用沙盒 Sandbox 测试了不同大小,以及不同训练阶段的语言模型。整体而言,经过 alignment 训练的模型 (即所谓 “对齐后的模型”),比如 davinci-003, GPT-4,和 ChatGPT,能在更少的交互轮次中就能生成符合社会规范的回复。换句话说,alignment 训练的意义就在于让模型在 “开箱即用” 的场景下更加安全,而不需要特别的多轮对话引导。而未经 alignment 训练的模型,不仅需要更多的交互次数使回复达到 alignment 和 engagement 的整体最优,而且这种整体最优的上限显著低于对齐后的模型。

十行代码媲美RLHF,用社交游戏数据训练社会对齐模型

作者同时提出一种简便易行的对齐算法,称为 Stable Alignment (稳定对齐),用于从沙盒的历史数据中学习 alignment。稳定对齐算法在每一个 mini-batch (小批次)中进行打分调制的对比学习 —— 回复的得分越低,对比学习的边界值就会被设定的越大 —— 换句话说,稳定对齐通过不断采样小批次数据,鼓励模型生成更接近高分回复,更不接近低分回复。稳定对齐最终会收敛于 SFT 损失。作者还对稳定对齐和 SFT,RLHF 的差异进行了讨论。

十行代码媲美RLHF,用社交游戏数据训练社会对齐模型

作者特别强调来自沙盒 Sandbox 的游戏的数据,由于机制的设定,大量包含通过修订 (revision)而成为符合社会价值观的数据。作者通过消融实验证明这种大量自带渐进式 (step-by-step)改进的数据是稳定训练的关键。

十行代码媲美RLHF,用社交游戏数据训练社会对齐模型

十行代码媲美RLHF,用社交游戏数据训练社会对齐模型

作者还和当前主流对齐算法性能和训练稳定性进行了性能上的比较,证明稳定对齐不仅比 reward modeling 更稳定,而且在通用性能和 alignment 性能上都足以媲美 RLHF (由于 ChatGPT 使用未公开的模型,数据和算法,因此仅作为参考)。

实例生成结果:

十行代码媲美RLHF,用社交游戏数据训练社会对齐模型

更多细节请参考论文。

以上是十行代码媲美RLHF,用社交游戏数据训练社会对齐模型的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文转载于:51cto.com。如有侵权,请联系admin@php.cn删除