孔某人的低维认知 01月30日
尝试在更一般的领域为LLM RL构建Reward Model
index_new5.html
../../../zaker_core/zaker_tpl_static/wap/tpl_guoji1.html

 

本文探讨了在LLM训练中如何构建和利用不完美的ORM(Outcome-supervised Reward Model)。文章指出,当前许多领域缺乏量化指标来评估结果,传统的reward model构建方式存在数据不足和规则粗糙的问题。针对此,文章提出一种新的解决思路,即让LLM对齐人类对不同结果的偏好,并保留评价的多个维度信息。通过构建独立的reward model,并引入前置控制token,实现多目标优化。此外,文章还讨论了如何进行结果比较和排序,并给出了整合方法。最后,文章建议优先探索容易构建reward的领域,并考虑与领域客户合作,共同定制模型。

💡 针对传统reward model的不足,提出让LLM对齐人类对不同结果的偏好,而非直接拟合reward结果,这是一种更贴近人类认知的方式。

📊 在多维度评价方面,建议保留内容长度、易读性、准确性等多个维度信息,并为每个维度构建独立的reward model,实现多目标优化,同时引入前置控制token,以便用户在推理时进行干预。

⚖️ 在结果比较上,利用较强的LLM模型作为判别模型,对任意两个结果在指定维度下进行比较,并通过采样计算和建模方式对比较结果进行拟合,从而为整个结果集排序,这种方式能够更有效地评估结果的优劣。

🧩 整合方面,文章梳理了DeepSeek R1的RL过程,强调了在不同领域预先思考设计,确定主要维度,并为每个维度选择合适的打分prompt的重要性。同时,文章也指出了需要人工抽样监控自动过程结果,并及时迭代reward方案,以确保结果符合预期。

原创 孔某人 2025-01-27 19:12 北京

如何构建和利用不完美的ORM

0、前言

一周之内,DeepSeek R1让LLM post-training阶段的RL方式广为人知。我在 语义计算机中没有Token 一文中讨论了我对这个范式的思考。而本文是在这个范式中讨论一个问题:如何为更一般的领域中构建(Outcome-supervised)Reward Model。

1、LLM训练中的RL与ORM

DeepSeek R1是在pretrain模型的基础上直接针对ORM(Outcome-supervised Reward Model)进行RL训练的,依赖RL基于pretrain模型中已经学到人类的典型思考工具来学习独立完整求解问题的方式。pretrain阶段的数据短时间内还不能显著的扩展,那么另一个可以探索的方向就是 ORM。

目前前沿研究者推崇的方式是,寻找哪些领域可以构造出完美的reward model,即判定正确率100%的方案,例如目前数学和代码领域这方面相对容易。o1和DeepSeek R1的成功已经证明靠数学和代码已经能够在更一般的领域取得不错的泛化效果,但我们仍然不能指望只靠它们就能长时间的继续指导模型来进一步增加通用能力。

建议优先探索有完美ORM的领域,是因为在RL阶段容易过拟合ORM的缺陷,也就是所谓的reward hacking问题。之前的reward model多基于一定量的样例回答和人工设定的reward打分规则合成数据进行训练,但从实践来看,这种方式得到的reward model的问题较多,一方面数据量可能距离一个理想的规模远远不够,另外人工设定的reward打分方式也很可能不足以刻画大量的数据。

而本文就是为这些问题提供新的解决思路,希望能更快地让RL方案适用于更多领域。

2、构建思路

2.1、问题分析

很多领域最大的问题是,没有足够好的量化的指标来评价不同的结果。人工可以设定一些粗略的reward规则,但这种规则太过粗糙,不能进行细粒度的区分,并且经常有很多错误标定reward的地方。

考虑到在很多领域中,LLM的输出空间极其庞大、结果也极为多样,我们只能使用一种函数来进行reward评价,而不能使用有限的数据进行匹配。目前我们可以处理各种文本/语义的工具只有LLM本身。

但传统的reward model构造方式已经失效,我们要放弃直接指定reward结果并让模型去拟合的方式。

对于人来说,虽然很多时候无法量化和客观的评价一个事物有多好,但在两个结果之间做相对比较是更容易的,也是相对更明确的。所以我们可以尝试让LLM去对齐人类对于不同结果之间的比较偏好。

2.2、评价的维度

在很多场景下,人群有多个不同的评价维度,例如:内容长度、对于特定知识背景人群的易读性、准确性/专业性、幽默度等。当两个待比较的结果各有优势时,更难进行更客观的比较。以及这些维度很可能在模型推理阶段由于具体用户的偏好不同而需要进行不同的侧重。

所以这些维度的好坏信息都应该保留,特别是用户会想要干预的维度更需要保留。这是一个多目标优化的问题,不过我们可以分别为不同维度构建独立的reward model,让RL过程独立地同时学习这些不同的目标下哪些较好的回答,或区分该维度下的不同程度。例如可以引入前置控制token,例如[幽默度:低]、[幽默度:高]等来让模型能够在推理时根据不同的控制token来产生用户希望的结果。

2.3、如何进行结果比较

在特定的维度中,我们可以使用prompt(或SFT等其他方式),让LLM能够对齐人类的偏好。

这里使用的LLM一般来讲不能太差,否则reward model给出错误信号的比例会太高,导致RL过程中的reward hacking问题变重。考虑到实践中的简洁性,我认为一般需要使用最强的LLM模型(或明显比候选模型强的模型)来作为reward prompt的执行模型。也就是说在现阶段,要继续训练o1,至少应该用一个固定参数的o1自己来作为判别模型。如果希望降低reward本身的计算成本,可以在人工检查的结果下,逐步替换至成本和效果都可接受的其他模型,但这个过程很不scale,也不太被模型层的人喜欢,我认为就默认都用最强模型就好了。不过如果组织前期对此信心不足时,可以尝试有一个成本低一些模型进行试水,但要留意不要过拟合reward hacking。

同级别的模型确实可以对同级别的模型结果进行审查,Self-Critique方式在实践中已经被确认有效,只不过它也仍然不完美。

这样我们就有了一个自动的方式来对任意两个结果在指定维度下进行比较。这里的reward prompt是人工基于该领域的需求进行撰写的,但它未必要很复杂,本质上它还是在调用模型本身在这方面的能力。

2.4、排序整个候选集

上节构造了在指定维度下的两个结果的比较方式,如果这个方式是完美的,且该维度是线性可排序的话,那么就可以直接利用传统排序算法进行排序。但实际上这个方式并不完美,该维度也未必是线性可排序的。

我们可以在候选的结果集中对于所有两两比较对进行采样计算,结合一些建模方式对比较结果进行拟合,来为整个结果集(在该维度上)进行排序。大家经常听到的Elo就是类似的排序方式,这个方面有一些传统方式,有兴趣的读者可以向o1进行咨询和学习,本文不再展开。

2.5、整合

现在我们集齐了所有的拼图块,重新梳理一下过程。

3、领域的选择

模型的能力能够实现一些跨领域泛化,从模型厂的角度来说,并不需要独立的为所有领域都构建方案。所以一个优化点是,思考哪些领域的哪些能力是普遍需要的,且RL需要的种子prompt和reward更容易构建的。

除了技术预判外,商业战略上的决策也是一个重要选择来源。例如可能有些团队就会先使用这种方式来优化角色扮演方面的能力。类似的方向可能还有:教育、陪伴、轻度心理疗愈等,不过这些方面可能还不好靠单轮对话来进行reward评价,可能需要引入用户模拟agent,在多轮对话上进行总体reward。

另外,模型厂的团队大多不熟悉具体领域,而这方面领域客户是更熟悉的。所以可以将这个过程以RFT的方式开放给客户来定制模型,并从所有客户中选择适合的方式集成到主线模型中。或直接与领域客户进行合作。

交流与合作

如果希望和我交流讨论,或参与相关的讨论群,或者建立合作,请加微信,联系方式请点击 -> 联系方式

本文于2025.1.27首发于微信公众号和知乎,知乎链接:

https://zhuanlan.zhihu.com/p/20517851623

阅读原文

跳转微信打开

Fish AI Reader

Fish AI Reader

AI辅助创作,多种专业模板,深度分析,高质量内容生成。从观点提取到深度思考,FishAI为您提供全方位的创作支持。新版本引入自定义参数,让您的创作更加个性化和精准。

FishAI

FishAI

鱼阅,AI 时代的下一个智能信息助手,助你摆脱信息焦虑

联系邮箱 441953276@qq.com

相关标签

ORM Reward Model 多目标优化 LLM RL
相关文章