原文地址:the-importance-of-granular-data-design-for-fine-tuning
利用数据设计来训练LLM,以充分利用上下文,同时解决“Lost-In-The-Middle”的挑战。
2024 年 5 月 2 日
介绍
对话设计师难道不是杰出的数据设计师吗?
请允许我详细阐述,我一直强调数据策略应当涵盖以下几个关键环节:数据的探索与发现、数据的设计与规划、数据的开发与处理,以及数据的最终交付与应用。
考虑到 RAG 和其他交付策略,数据交付已被广泛讨论。数据发现也得到了一定程度的解决,例如 XO 平台的意图发现。
来到数据设计……在本文中,我讨论了最近的三项研究,重点是教授语言模型(无论大小)的某些行为。虽然不一定要向模型灌输特定的世界知识,但可以改善模型的行为和能力。
这些能力可以包括自我纠正、推理能力、提高短期和长期的情境理解等等。
Taking A Step Back
大型语言模型研究发生了转变,重点转向以这种方式设计训练数据,以极大地提高特别是小型语言模型(SLM)的推理能力。
这种新方法不仅可以被描述为人工智能的数据优先方法,而且可以被描述为数据设计方法。
最近,人们非常重视语言模型(LLM 和 SLM 等)的数据交付方面。具体来说,焦点集中在如何在推理过程中将专有数据合并到语言模型中。
数据传输的过程可以分为两种主要方法:梯度和非梯度。与梯度和微调技术的不透明性质相比,非梯度方法因其透明性而引起了广泛关注。
在非梯度方法中,RAG是最广泛采用的数据交付方法,体现在各种迭代中。
有趣的是,某些微调和梯度技术的主要目的并不是将特定领域的数据注入语言模型。
相反,他们的主要目标是改变模型的行为,并通过微调数据的设计和结构来指导其执行特定任务。这些任务包含推理、自我纠正和更好地处理大上下文等功能。
用于微调数据的数据设计
最近有两项数据设计研究引人注目,第一项是微软研究院在训练名为 Orca-2 的小语言模型 (SLM) 时遵循的方法。
提示词擦除
Orca-2 是一种擅长推理的开源小语言模型 (SLM) 。这是通过分解问题并逐步解决它来实现的,这增加了可观察性和可解释性。
这种推理技能是在 SLM 的微调过程中通过精细细致的微调而发展起来的。
创建了细致入微的培训数据,向LLMs提出了复杂的提示,其设计目的是引出策略推理模式,从而产生更准确的结果。
在训练数据的训练阶段,较小的模型将接受任务以及LLMs的后续输出。LLMs的输出数据定义了LLM如何解决问题。
然而,训练数据的设计(更改)是为了隐藏或删除原始提示。因此,原始提示不会显示给 SLM。
这被称为提示词擦除的方法。它训练 Orca-2 成为一个谨慎的推理者,因为该模型不仅必须学习如何执行特定的推理步骤,还要在更高层次上制定如何完成特定任务的策略。
LLMs不是天真地模仿强大的LLM,而是被用作行为的储存库,从中为当前任务的方法做出明智的选择。
部分答案屏蔽 (PAM)
最近的一项研究通过提出一种称为部分答案屏蔽(PAM)的方法引入了设计和生成自校正训练数据的管道,目的是使模型能够通过微调进行内部自校正。
部分答案屏蔽的目的是引导语言模型进行自我纠正。
在微调过程中,我们提出部分答案屏蔽(PAM),使模型具有自我验证的能力。 ~来源
该研究使用参数大小从 60 亿到 130 亿不等的语言模型在两项任务中进行了实验。
为了增强小语言模型的自我纠正能力,研究引入了内在自我纠正(ISC),它依赖于两个核心能力:自我验证和自我修改。
在微调过程中,引入部分答案屏蔽(PAM)以在模型中注入自我验证功能。
这标志着首次证明,即使是参数只有 60 亿个的小型语言模型,在响应生成过程中也具有固有的自我校正能力,无需依赖地面实况数据。
所提出的内在自我纠正旨在将自我纠正作为一种自然模式嵌入到语言模型中,涉及自主和自发的自我纠正机制,与现有的即时工程方法不同。
为了使小语言模型具有自校正功能,设计了一个管道来生成自校正数据并建立适用于自校正任务的通用数据格式。
针对大型上下文训练的训练数据设
简而言之
微软的研究人员和合作者设计了一种方法来克服lost-in-the-middle的问题。
当代大型语言模型(LLM)可以处理冗长的输入,但常常难以在长上下文中充分利用信息,这被称为“lost-in-the-middle”挑战。
Microsoft 研究人员和合作者提出了一种称为信息密集型 (IN2)训练的方法来解决此问题。
IN2训练使用合成的长上下文问答数据集,重点关注:
- 细粒度的信息感知
- 在短片段内
- 长上下文
- 并整合来自多个细分市场的信息。
该训练应用于 Mistral-7B,创建了 FILM-7B(FIL1-in-the-Middle)。
根据该研究,FILM-7B 在其 32K 上下文窗口中的不同位置、跨各种上下文样式和检索模式显示出强大的信息检索能力。
它还提高了现实世界长上下文任务(例如 NarrativeQA)的性能,同时保持短上下文任务的性能。