人工智能
Zephyr-7B:语言模型中直接蒸馏对齐的介绍

近年来,小型开放语言模型的能力和性能有了显著的提高,我们见证了从早期的GPT-2模型到更紧凑、准确和有效的LLM框架的进步,这些框架利用了远超“计算最优”数量的令牌,这是由Chinchilla缩放法则推荐的。另外,开发人员已经证明,这些小型LLM框架可以使用专有模型的dSFT或蒸馏监督微调方法进一步训练,该方法使用有效的教师模型的输出作为学生模型的监督数据,以提高准确性。这种蒸馏策略已被证明是一种非常有效和有用的工具,可以最大限度地发挥开放模型在广泛任务中的潜力,尽管它仍然无法复制教师模型的性能。另外,用户经常报告说,这些模型通常会显示“意图不对齐”,这意味着模型不会以符合最终用户要求的方式行为,导致输出不正确,无法提供正确的输出或响应用户输入或查询。
在本文中,我们将讨论Zephyr-7B框架,一种针对7B参数模型的最新聊天基准,它不需要人类注释。该框架的主要目标是使开发人员能够生产出比以往更接近用户意图的小型大型语言模型。Zephyr-7B框架不仅检查了当前方法的应用,如dSFT,还探索了使用其他方法来学习具有更好用户意图对齐的聊天模型的可能性。我们将更深入地探讨Zephyr框架,探索其架构、工作原理和结果。让我们开始吧。
Zephyr-7B:语言模型中直接蒸馏对齐的介绍
如前所述,语言模型在近年来已经迅速发展,从早期的GPT-2框架到当前的GPT-4和MiniGPT-5 LLM框架,这些框架虽然令牌耗尽,但现在更准确、更高效。这些先进LLM框架的一个主要亮点是,它们包含的令牌数量远远超过了以前被认为是计算最优的令牌数量,这是由Chinchilla缩放法则推荐的。另外,LLM框架的开发人员和研究人员已经了解到,这些小型LLM框架可以使用专有模型的dSFT或蒸馏监督微调方法进一步训练,该方法使用有效的教师模型的输出作为学生模型的监督数据,以提高准确性。这种蒸馏策略已被证明是一种非常有效和有用的工具,可以最大限度地发挥开放模型在广泛任务中的潜力,尽管它仍然无法复制教师模型的性能。另外,用户经常报告说,这些模型通常会显示“意图不对齐”,这意味着模型不会以符合最终用户要求的方式行为,导致输出不正确,无法提供正确的输出或响应用户输入或查询。
意图对齐一直是开发人员面临的一个重大挑战,最近的工作重点是开发基准,如AlpacaEval和MT-Bench,旨在解决不对齐问题。开发Zephyr框架的动机可以归因于使用蒸馏来对齐一个小型开放LLM框架的全部内容的挑战,其中的主要步骤是使用AIF或人工智能反馈来从教师模型的集合中获取偏好数据,然后直接将蒸馏偏好优化作为主要学习目标,这种方法被称为dDPO或去噪扩散策略优化。dDPO方法的主要亮点是,与其前身如PPO或近似策略优化不同,它不需要人类采样或注释,并且还减少了训练语言模型所需的时间。另外,它还允许开发人员通过关注从开始到结束的去噪步骤序列来最大化最终样本的奖励,即在其整个过程中。
开发人员已经开发了Zephyr-7B框架来验证这种方法,在某些方面,它是当前最先进的Mistral-7B框架的对齐版本。该框架首先使用基于UltraChat数据集的dSFT或蒸馏监督微调,然后使用反馈数据应用dDPO或去噪扩散策略优化方法。实验表明,Zephyr-7B框架具有7亿参数,能够提供与具有超过70亿参数的人类反馈对齐聊天模型相似的结果。另外,实验还表明,结果可以通过考虑对话能力的基准以及标准学术基准来提高,并且使用偏好学习对于实现所需的结果至关重要。

上图展示了各种语言模型在MT-Bench基准上的性能。使用dDPO方法训练的Zephyr-7B框架被与使用额外强化学习和大量人类反馈训练的专有和开放的大型语言模型(如GPT-3.5 Turbo、Llama-2-70B等)进行比较。如图所示,尽管这些框架使用的参数数量有很大差异,但Zephyr-7B框架仍能提供可比的结果,并在不同领域中超越了多个框架。
Zephyr-7B:方法、工作原理和架构
Zephyr-7B框架的主要目标是帮助开放源码的大型语言模型与用户意图尽可能接近,并在整个过程中,Zephyr-7B框架假设可以访问一个大型教师模型,该模型使用提示生成进行查询。Zephyr-7B框架遵循一种类似于InstructGPT框架中使用的方法,旨在生成一个有效且准确的学生模型。
以下图表简要展示了Zephyr-7B框架工作原理中的三个主要步骤。
- 使用自我指示风格的大规模数据集构建dSFT。
- 使用完成聊天模型的集合收集AIF,然后使用GPT-4进行偏好二元化和评分。
- 使用反馈数据对dSFT模型进行dPO。

dSFT或蒸馏监督微调
该框架首先使用一个原始的大型语言模型,该模型首先需要被训练以响应用户提示。传统上,训练这些LLM框架以响应用户提示是使用SFT或监督微调在高质量指令和相应响应的数据集上完成的。由于Zephyr-7B框架可以访问一个教师语言模型,因此该框架可以生成指令和响应,并直接在这些指令和响应上训练模型,这种方法被称为dSFT或蒸馏SFT。以下图表展示了SFT执行的蒸馏过程,其中x表示用于代表各种主题域的种子提示集,y表示使用新样本指令x1精炼的样本响应,C表示最终数据集的终点。

AI反馈通过偏好
人类反馈用于为大型语言模型提供额外的信号,这些反馈传统上是通过对生成的响应质量的偏好提供的。然而,Zephyr框架使用来自教师模型的AI反馈,而不是人类反馈,用于蒸馏目的。Zephyr框架遵循的方法受UltraFeedback框架的影响,后者使用教师模型为模型的输出提供偏好。
与SFT或监督微调方法类似,它首先使用一组提示,其中x表示每个单独的提示,然后将这些提示输入到像Llama、Falcon、Claude等四个模型中,每个模型生成自己的响应。然后将这些响应作为输入提供给教师模型,如GPT-3或GPT-4,模型输出输入响应的评分。收集输出评分后,模型保存评分最高的响应。
dDPO或蒸馏直接偏好优化
dDPO是Zephyr框架的最后一步,其主要目标是通过最大化偏好模型中首选响应的概率来优化dSFT教师模型,偏好模型由奖励函数确定,使用学生语言模型。前一步骤中使用AI反馈主要关注使用强化学习方法,如PPO或近似策略优化,来实现最大优化,相对于生成的奖励。 在此步骤中,奖励首先被训练,然后从当前策略中采样以计算更新,从而最大化优化。DPO或直接偏好优化遵循类似的方法直接使用静态数据优化偏好模型。将奖励函数插入偏好模型后,目标可以写成

Zephyr-7B:实验、基准和结果
Zephyr框架在当前最先进的Mistral-7B框架上进行了微调实验,该框架在广泛的自然语言处理任务中提供了与更大语言模型相当的性能。
数据集
Zephyr框架使用两种对话数据集,这些数据集是从专有和开放模型的混合中蒸馏出来的,这些模型以前已被证明在生成有效的聊天模型方面是有效的。
UltraChat
UltraChat是一个自我完善的数据集,包含近150万个多回合对话,涵盖30个主题和20个文本材料,由GPT-3.5-Turbo框架生成。为了解决UltraChat数据集中的大写问题,框架应用了真正的语法推理方法来消除语法错误。
UltraFeedback
UltraFeedback是一个提示数据集,包含超过64k个提示,每个提示都有四个单独的LLM响应。Zephyr框架使用UltraFeedback数据集中获得的最高平均评分来构建二元偏好,并将剩余三个LLM响应中的一个作为随机拒绝。
评估
为了评估Zephyr框架的性能,开发人员选择了两个聊天基准,一个单回合,一个多回合,以评估模型遵循用户指令和响应的能力。
MT-Bench
MT-Bench评估基准由8个独特知识领域中的160个问题组成,在MT-Bench基准下,模型必须回答初始问题并提供后续问题的响应。
AlpacaEval
AlpacaEval是一个单回合基准,在该基准下,模型或框架生成用户响应,涵盖不同主题的800个问题,主要关注有用性。
除了这两个主要基准外,Zephyr-7B框架还在开放LLM排行榜上进行了多类分类任务、ARC、HellaSwag、MMLU等的评估。另外,无论Zephyr-7B框架在哪个基准上进行评估,它都与一系列专有和开放模型进行比较,这些模型的对齐过程是唯一的区别。
结果
让我们来看看Zephyr-7B框架的性能和与当前最先进语言模型的比较。
dDPO方法提高聊天能力
以下表格比较了Zephyr-7B框架在AlpacaEval和MT-Bench基准上的性能与当前最先进语言模型的比较。

如图所示,当与开放7B模型进行比较时,Zephyr-7B框架不仅在两个基准上显著超越了dSFT模型,而且还设定了新的最先进标准。另外,Zephyr-7B框架还超越了XWIN-LM-7B框架,该框架是使用蒸馏PPO方法训练的少数模型之一。另外,Zephyr-7B框架的性能与具有超过70亿参数的更大语言模型(如Llama2-Chat)相当。
dDPO提高学术任务性能
以下图表比较了Zephyr-7B框架的性能与广泛的开放源和专有LLM框架的性能。

如图所示,Zephyr-7B框架显著超越了具有7B参数的LLM框架,Zephyr-7B框架与最好的dSFT模型之间的性能差距也很显著。随着参数数量的增加,Zephyr-7B框架确实会落后,但它仍然能够与具有40亿参数的框架的性能相匹配。
偏好优化
在以下图表中,我们评估了对齐过程中不同步骤对性能的影响。如图所示,dDPO方法与dSFT相结合,显著提高了MT-Bench和AlpacaEval数据集上的性能。

最后,在以下图表中,我们可以看到DPO实现过程中的测试和训练准确率。如图所示,DPO方法不会影响模型在下游任务中的性能。

结论
在本文中,我们讨论了Zephyr-7B框架,该框架基于当前最先进的Mistral-7B框架,旨在解决大型语言模型到小型预训练框架的对齐蒸馏的当前挑战。该框架的主要目标是使开发人员能够生产出比以往更接近用户意图的小型大型语言模型。Zephyr-7B框架不仅检查了当前方法的应用,如dSFT,还探索了使用其他方法来学习具有更好用户意图对齐的聊天模型的可能性。
然而,尽管结果很有希望,但Zephyr-7B框架并非完美,仍需要一些工作。一个明显的限制是使用GPT-4框架来评估MT-Bench和AlpacaEval基准,这种框架往往偏向于它自己蒸馏的模型。然而,Zephyr-7B框架希望为探索能够与用户意图和交互对齐的小型开放模型的能力开辟一条道路。












