强化自训练(ReST):让大语言模型更懂你的“心”
强化自我训练(Reinforced Self-Training,ReST)是一种简单的算法,它能让大语言模型(LLM)的输出更符合人类的偏好。这种算法的灵感来源于不断发展的批量强化学习(RL)。简单来说,先给大语言模型设定一个初始策略,ReST就可以根据这个策略生成样本,从而创建一个数据集。然后,利用离线强化学习算法,借助这个数据集来优化大语言模型的策略。
ReST方法
和传统的在线或离线强化学习人类反馈优化(RLHF)方法相比,ReST有不少厉害的地方:
- 计算负担小:ReST在多个改进(Improve)步骤中利用了增长(Grow)步骤的输出结果,不像在线强化学习那样计算量巨大,大大减轻了计算负担。
- 不受原始数据局限:在离线强化学习里,策略的好坏常常受原始数据集质量的限制。但ReST不一样,在Grow步骤中,新的训练数据是从优化后的策略里采样得到的,所以策略质量不受原始数据的束缚。
- 便于检查数据与诊断问题:由于Grow和Improve步骤相互独立,检查数据质量、诊断对齐问题(比如奖励黑客攻击)就变得容易多了。
- 方法简单稳定:ReST算法简单、运行稳定,需要调整的超参数也很少。
ReST包含两个循环
- 内循环(Improve):在这个循环里,策略会在固定的数据集上进行优化。
- 外循环(Grow):通过从最新的策略中采样数据,让数据集不断扩充。
具体的步骤如下:
- 增长(Grow,简称G):一开始,语言模型采用监督策略,针对每个上下文生成多个输出预测,以此扩充训练数据集。
- 改进(Improve,简称I):用评分函数给扩充后的数据集进行排序和筛选。在实验中,研究人员会根据人类偏好训练一个奖励模型,用它来作为评分函数。接着,用离线强化学习的目标,在筛选后的数据集上对语言模型进行微调。这个微调的过程可以通过不断提高筛选阈值来重复进行。最后优化好的策略会被用于下一个Grow步骤。
ReST算法
ReST算法把传统强化学习流程里的数据集增长和策略改进拆分成了独立的离线阶段。首先,研究人员会在给定的序列对数据集$D$上,用负对数似然损失(NLL loss)训练一个初始模型$\pi_{\theta}(y|x)$,这个模型的作用是把输入序列$x$映射成输出序列$y$。然后,进入Grow步骤,创建一个新的数据集$D_g$,它会用模型生成的样本扩充初始训练数据集。
Grow步骤就相当于强化学习里的行动或数据生成步骤。研究人员从当前策略$\pi_{\theta}$中采样出许多输出序列,即对于$x \sim D$,有$y \sim \pi_{\theta}(y|x)$,从而创建出一个轨迹增强数据集$D_g$。接着,用奖励函数$R(x, y)$给新的序列数据集打分,把奖励分数高于阈值的数据点挑出来,用它们来更新策略。策略优化后,又可以生成质量更好的新样本数据集。
在Improve步骤中,目标是用新的数据集$D_g$来微调策略$\pi_{\theta}$。先定义一个过滤函数,只保留奖励高于特定阈值$\tau$的样本。然后,用监督学习损失或离线强化学习损失$L(x, y;\theta)$在筛选后的数据上微调当前最优策略。
在多次执行Improve步骤时,不断提高过滤阈值,即$\tau_1 < \cdots < \tau_{N - 1} < \tau_N$。随着阈值升高,筛选出的数据子集质量会提高,但规模会变小。因为大语言模型很容易在小数据集上出现过拟合,所以每次微调新策略时,都会在前一个策略的基础上,用更低的学习率进行。在高质量的数据子集上连续微调策略$\{\pi_{\theta_k}\}_{k\geq1}$,就能保证在固定数据集$D_g$上实现策略的优化。如果从策略$\{\pi_{\theta_k}\}_{k\geq1}$中采样,生成样本的平均奖励会不断增加。由于在Grow步骤中从策略采样的计算成本很高,所以每次Grow步骤之后,会执行多个Improve步骤,这样就能把单次数据集生成的成本分摊到多个Improve步骤中。
实验
研究人员用ReST在机器翻译任务上进行了实验,使用了三个数据集:IWSLT 2014、WMT 2020和Web Domain数据集。通过验证集上的平均奖励分数和人工评估来衡量模型的性能。同时,在ReST框架内测试了不同的离线强化学习损失。
- 多个改进步骤的ReST:在所有数据集上,ReST中的多个改进步骤都能持续提高奖励模型的分数。
- 两个增长步骤的ReST:额外的增长步骤可以进一步提升奖励模型的分数,这充分体现了迭代扩展训练数据的优势。
- WMT 2020中文到英文(测试):在不同的数据集和语言对任务中,ReST的表现都远超监督学习,哪怕只经过一个增长步骤也是如此。
- BC损失:在ReST框架里,BC损失的表现通常比其他离线强化学习损失更好。
- 推理时的N次最佳采样:和监督模型类似,ReST在推理时采用N次最佳采样的方式也能获益,这说明它能保持样本的多样性。
- IWSLT 2014的在线RL:在训练数据量相近的情况下,ReST获得的奖励比在线强化学习(PPO)更高,而且避免了在线强化学习中BLEU分数大幅下降的问题,说明它受到“奖励黑客攻击”的影响更小。
- 基于学习奖励和人工评估的性能比较:人工评估显示,所有ReST变体的表现都优于基线BC模型。不过,基于人工评估和奖励模型分数的模型排名存在差异。这表明,学习得到的奖励模型并不能完美代表人类的偏好,尤其是随着增长/改进步骤的增加,策略与行为模型的差异越来越大时,这种不完美就更明显了。
论文 Reinforced Self-Training (ReST) for Language Modeling
https://arxiv.org/abs/2308.08998近日热文:全网最全的神经网络数学原理(代码和公式)直观解释
欢迎关注知乎和公众号的专栏内容
LLM架构专栏
知乎LLM专栏
知乎【柏企】
公众号【柏企科技说】【柏企阅文】
本文由mdnice多平台发布
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。