赞
踩
Llama 2是Meta在LLaMA基础上升级的一系列从 7B到 70B 参数的大语言模型。Llama2 在各个榜单上精度全面超过 LLaMA1,Llama 2 作为开源界表现最好的模型之一,目前被广泛使用。
对于Llama 2模型架构、 预训练、SFT的内容详解,请参考详解各种LLM系列|(2)LLaMA 2模型架构、 预训练、SFT内容详解 (PART-1)-CSDN博客
这一篇继续详细深入Llama 2的 RLHF内容,以及其实现的实验结果。
RLHF是一种模型训练程序,应用于微调的语言模型,以进一步使模型行为与人类偏好和指令遵循保持一致。
(对于RL 不了解的小伙伴,可以参考这篇一文看懂什么是强化学习?(基本概念+应用场景+主流算法))
Llama 2的RLHF的主要过程为:人类偏好数据收集 -> 根据数据训练Reward Model -> 用RL的方式迭代式微调(使用PPO和Rejection Sampling)
(笔者NOTE: 简而言之,RLHF 就是先通过获取人类偏好的数据来训练一个reward model,这个reward model学习了人类对于语言的偏好;然后这个model会用于对LLM输出打分,根据所获取的每一步的分数,训练LLM往最终产生的整体回复能获取最大分数的方向靠拢)
奖励模型将模型回复及其相应的提示(包括来自前一个回合的上下文)作为输入,并输出一个标量分数来指示模型生成的质量(例如,有用性和安全性)。利用这样的反馈分数作为奖励,我们可以在RLHF期间优化Llama 2-Chat,以更好地调整人类的偏好,提高帮助和安全性。
当训练完奖励模型,能够获取对英语LLM的输出的奖励之后,为了模型不对某些提示的特定分布过拟合,研究团队使用了迭代式微调的策略,为 RLHF 模型训练了连续版本,这里称为 RLHF-V1, ..., RLHF-V5 等。
研究团队尝试了两种 RLHF 微调算法:
PPO是一种off-policy的手段,使用奖励模型作为真实奖励函数(人类偏好)的估计,使用预训练的语言模型作为policy进行优化。
在对话设置中,有些指令应该适用于所有对话回合,例如要简洁回复,或者“扮演”某个公众人物。当向 Llama 2-Chat 提供这样的指令时,后续的回复应始终遵守这些限制。
然而,最初的 RLHF 模型在对话进行几个回合后往往会忘记初始指令,如下图(左图)所示。为了解决这些问题,研究团队提出了 Ghost Attention(GAtt)方法。GAtt 使得对话在多个回合内能够保持控制,如下图(右图)所示:
这是一个受 Context Distillation 启发的非常简单的方法,通过对微调数据进行干预来帮助注意力在多阶段的过程中聚焦。GAtt 使得对话在多个回合内能够保持控制。
具体流程:
GAtt 评测:为了说明 GAtt 如何帮助在微调期间重塑注意力,在下图中展示了模型的最大注意力激活(与没有GAtt的模型(左)相比,配备GAtt的模型(右)在更大的对话部分中保持了与系统消息相关的大量注意力):
笔者NOTE:由于篇幅原因,本篇详细地介绍了RLHF的内容,简短地带过了Llama RLHF实现的结果。Llama原文中对大模型研发的每个环境都讲解地非常详细,对于其他内容(模型、数据的安全性,GQA的优势、训练数据的分析以及其他开放问题的探讨),有兴趣的小伙伴可以去看下原文,或者参考Llama2 详解:开源世界最优秀的大语言模型 - 知乎
我们下期见~
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。