微信扫码
与创始人交个朋友
我要投稿
假设我们有一个数学问题:
小明有 5 个苹果,小红给了他 3 个苹果。小明现在有多少个苹果?
模型可能生成以下几种 P-CoT(程序型思维链):
情况 1: 正确的 CoT,答案可提取且为正确值
def solution():"""小明有 5 个苹果,小红给了他 3 个苹果。小明现在有多少个苹果?"""initial_apples = 5given_apples = 3total_apples = initial_apples + given_applesresult = total_applesreturn result
在这个例子中,答案8可以通过执行return result语句轻松提取,并且是一个数值。 因此,该 CoT 符合 "答案为正确并且可提取" 的条件,可以获得完整的奖励(奖励值为 1)。
情况 2: 错误的 CoT,答案可提取但非正确值
def solution():"""小明有 5 个苹果,小红给了他 3 个苹果。小明现在有多少个苹果?"""initial_apples = 5given_apples = 3total_apples = initial_apples + given_applesresult = "小明现在有" + str(total_apples) + "个苹果"return result
在这个例子中,虽然答案"小明现在有8个苹果"可以被提取,但它是一个字符串,而不是数值。 因此,该 CoT 不符合 "答案为正确" 的条件,只能获得部分奖励(奖励值为 0.1)。
情况 3: 错误的 CoT,答案不可提取
def solution():"""小明有 5 个苹果,小红给了他 3 个苹果。小明现在有多少个苹果?"""initial_apples = 5given_apples = 3total_apples = initial_apples + given_applesprint("小明现在有" + str(total_apples) + "个苹果")
在这个例子中,答案8虽然存在于代码中,但它并没有被return语句返回,因此无法被提取。 该 CoT 不符合 "答案可提取" 的条件,无法获得任何奖励(奖励值为 0)。
总结:
"答案为数值并且可提取" 意味着模型生成的 CoT 必须能够清晰地表达答案,并且答案必须对。 只有满足这两个条件,ReFT 算法才能根据答案的正确性来计算奖励,从而有效地训练模型。
1.当提取的答案(EXTRACT(st+1))与 ground-truth 答案(y)相同时,奖励为 1。
2.当提取的答案不为空(EXTRACT(st+1) ̸= null)并且与 ground-truth 答案不同(̸= y)时,奖励为 0.1 (部分奖励)。
3.当提取的答案为空(EXTRACT(st+1) = null)时,奖励为 0。
其实这是个很好的问题,因为它触及了强化学习中奖励机制设计的核心。在 ReFT(强化微调)中,部分正确奖励机制的引入主要出于以下几个原因:
1. 应对稀疏奖励问题:
●在数学问题解答等任务中,模型生成的答案往往只有完全正确才能获得奖励,而稍微偏差一点就会被判定为错误,从而得不到任何奖励。 这种奖励信号过于稀疏,会导致模型难以学习。(当然连续就更麻烦了,又不是电信号或者热力学,很难连续)
●部分正确奖励机制可以缓解这个问题,因为它允许模型在答案接近正确时获得部分奖励,从而鼓励模型朝着正确的方向探索。
2. 鼓励模型探索更多样的推理路径:
●如果只给予完全正确或完全错误的奖励,模型可能会倾向于保守地模仿训练数据中的 CoT,而不敢探索其他可能更有效的推理路径。(给一定的探索空间,别老用贪婪)
●部分正确奖励机制可以鼓励模型尝试不同的推理方法,即使它们不能立即得到完美的答案,只要答案朝着正确的方向发展,就能获得部分奖励,从而促进模型的创新能力。(泛化了吧)
3.稳定性:
●完全正确或完全错误的二元奖励信号会导致奖励函数的梯度变化剧烈,不利于模型的稳定训练。
●部分正确奖励机制可以平滑奖励信号,使其更加连续,从而提高训练的稳定性和效率
53AI,企业落地大模型首选服务商
产品:场景落地咨询+大模型应用平台+行业解决方案
承诺:免费场景POC验证,效果验证后签署服务协议。零风险落地应用大模型,已交付160+中大型企业
2025-02-05
3步,0代码!一键部署DeepSeek-V3、DeepSeek-R1
2025-02-05
别被Deepseek低成本冲昏头!本地化部署后续的“甜蜜陷阱”,你真能扛住吗?
2025-02-05
DeepSeek-llm-7B-Chat微调教程
2025-02-05
如何用CAMEL从DeepSeek-R1蒸馏数学推理数据?手把手教你实现!
2025-02-05
完整的671B MoE DeepSeek R1怎么塞进本地化部署?详尽教程大放送!
2025-02-05
基于GiteeAI快速搭建自有DeepSeek
2025-02-04
DeepSeek R1 671B 完整版本地部署教程来了!!!
2025-02-04
一文读懂DeepSeek-R1本地部署配置要求(建议收藏)
2024-09-18
2024-07-11
2024-07-11
2024-07-26
2024-07-09
2024-12-29
2025-02-04
2024-06-11
2024-10-20
2024-09-06