From Quantity to Quality: Boosting LLM Performance with Self-Guided Data Selection for Instruction Tuning
TL;DR 精炼摘要
本文提出了一种自引导方法,帮助大型语言模型(LLM)从开源数据集中自动选择高质量的“精选样本”,以提升指令微调效果。核心创新是引入指令遵循难度(IFD)指标,识别模型预期与生成能力的差异,从而显著提高训练效率。实证研究表明,仅使用原始数据的10%即可获得改进效果,标志着LLM指令微调领域的进步。
摘要
In the realm of Large Language Models (LLMs), the balance between instruction data quality and quantity is a focal point. Recognizing this, we introduce a self-guided methodology for LLMs to autonomously discern and select cherry samples from open-source datasets, effectively minimizing manual curation and potential cost for instruction tuning an LLM. Our key innovation, the Instruction-Following Difficulty (IFD) metric, emerges as a pivotal metric to identify discrepancies between a model’s expected responses and its intrinsic generation capability. Through the application of IFD, cherry samples can be pinpointed, leading to a marked uptick in model training efficiency. Empirical validations on datasets like Alpaca and WizardLM underpin our findings; with a mere 10% of original data input, our strategy showcases improved results. This synthesis of self-guided cherry-picking and the IFD metric signifies a transformative leap in the instruction tuning of LLMs, promising both efficiency and resource-conscious advancements. Codes, data, and models are available.
思维导图
论文精读
中文精读
1. 论文基本信息
1.1. 标题
从数量到质量:通过自引导数据选择提升指令微调中的大型语言模型性能 (From Quantity to Quality: Boosting LLM Performance with Self-Guided Data Selection for Instruction Tuning)
1.2. 作者
Ming Li, Yong Zhang, Zhitao Li, Jiuhai Chen, Lichang Chen, Ning Cheng, Jianzong Wang, Tianyi Zhou, Jing Xiao。 作者团队主要来自平安科技(深圳)有限公司 (Ping An Technology (Shenzhen) Co., Ltd., China) 和马里兰大学 (University of Maryland)。
1.3. 发表期刊/会议
该论文作为预印本发表于 ArXiv。尽管尚未经过同行评审,但 ArXiv 是计算机科学领域重要的预印本平台,许多前沿研究成果在此首发。
1.4. 发表年份
2024年1月1日 (UTC)
1.5. 摘要
大型语言模型 (LLM) 的指令数据 (instruction data) 质量与数量之间的平衡是当前研究的重点。本文提出了一种自引导方法,使 LLM 能够自主识别并选择开源数据集中的“精选样本” (cherry samples),从而有效减少人工策展 (manual curation) 和指令微调 (instruction tuning) 的潜在成本。论文的核心创新是提出了指令遵循难度 (Instruction-Following Difficulty, IFD) 指标,该指标能够识别模型预期响应与其内在生成能力之间的差异。通过应用 IFD,可以精确识别精选样本,显著提高模型训练效率。在 Alpaca 和 WizardLM 数据集上的实证验证支持了这一发现:仅使用原始数据输入的 10%,该策略就展示了改进的结果。这种自引导的精选样本选择与 IFD 指标的结合,标志着 LLM 指令微调领域的变革性飞跃,预示着效率和资源节约的进步。论文的代码、数据和模型均已公开。
1.6. 原文链接
/files/papers/695333960394820b7e46522f/paper.pdf (发布状态:预印本,未正式发表)
2. 整体概括
2.1. 研究背景与动机
大型语言模型 (LLM) 在人工智能领域取得了革命性进展,展现出强大的文本理解和生成能力。指令微调 (instruction tuning) 是提升 LLM 性能的关键方法,通过提供特定的指导或指令来训练模型,使其生成更符合预期的输出。传统观点认为,指令微调需要大量的指令数据。然而,LIMA (Less Is More for Alignment) 等研究指出,数据质量而非数量才是决定模型性能的关键。LIMA 强调了少量高质量人工策展 (manual curation) 数据的重要性,但如何从海量数据中自动识别高质量数据仍然是一个未充分探索的问题。
本文的动机在于解决这一挑战。当前手动策展高质量数据成本高昂且耗时。因此,研究一个能够自动、高效地从现有开源数据集中筛选出最有效训练样本(即“精选数据” (cherry data))的方法变得至关重要。作者假设 LLM 在初步训练少量指令数据后,能够学习识别并遵循指令,进而评估指令数据的难度。
2.2. 核心贡献/主要发现
本文的核心贡献和主要发现如下:
- 提出自引导数据选择方法: 引入了一种创新的自引导方法,使 LLM 能够自主从大规模开源数据集中选择“精选数据”。这显著减少了对人工策展的依赖,优化了现有数据资源的使用,从而降低了成本并简化了训练流程。
- 引入指令遵循难度 (IFD) 指标: 提出了一个名为
Instruction-Following Difficulty (IFD)的新指标。该指标通过比较模型在有指令上下文和无指令上下文下生成响应的损失 (loss),量化了指令对响应生成的帮助程度,从而揭示了给定数据样本的模型特定难度。高 IFD 分数表明模型难以根据指令生成对齐的响应,即指令难度较高。 - 经验证的数据筛选效率: 在 Alpaca 和 WizardLM 等指令微调数据集上的广泛实验验证了该方法的有效性。结果显示,仅使用原始数据输入的 10%(或更少),通过该策略训练的模型就能超越使用全部数据训练的基线模型,强调了方法在效率和资源节约方面的变革性影响。
- 提供模型特定难度视角: 提出的 IFD 指标为衡量新指令难度提供了一个不同的、模型特定的视角,这可能对未来的指令数据生成工作有所裨益。
- 分析精选数据特征: 对通过 IFD 选择的精选数据进行了深入分析,发现高 IFD 分数的数据样本主要涉及创造性、复杂性、深度和所需知识较多的任务(如“写故事”、“解释概念”),而非简单的编辑或规则遵循任务。这进一步解释了 IFD 作为数据过滤指标的有效性。
3. 预备知识与相关工作
本节将为读者铺垫理解论文所需的基本概念,并总结相关的前人研究,分析本文工作在技术演进中的位置及其与现有方法的差异。
3.1. 基础概念
- 大型语言模型 (Large Language Models, LLMs): LLM 是指拥有数亿甚至数千亿参数,并在海量文本数据上进行预训练的深度学习模型。它们能够理解、生成和处理人类语言,执行各种自然语言处理 (NLP) 任务,如文本摘要、问答、翻译和代码生成等。本文主要关注如何通过指令微调提升 LLM 的性能。
- 指令微调 (Instruction Tuning): 是一种用于提高 LLM 遵循用户指令能力的训练方法。它通过在模型训练阶段提供结构化的“指令-输入-输出”对 (instruction-input-output pairs),使模型学习如何理解并响应特定任务的指令,从而生成更符合用户意图的输出。例如,给定“总结以下文本”的指令和一段文本作为输入,模型应生成该文本的摘要。
- 交叉熵损失 (Cross-Entropy Loss): 在分类任务中常用的一种损失函数,衡量模型预测的概率分布与真实标签分布之间的差异。在语言模型中,它通常用于衡量模型预测下一个词元 (token) 的概率分布与真实下一个词元之间的差异。目标是最小化该损失,使模型能够更准确地预测序列中的下一个词元。
对于一个序列 和模型预测的概率 ,交叉熵损失通常计算为:
其中, 是序列中的词元数量, 是在给定前
i-1个词元和模型参数 的情况下,预测第 个词元为 的概率。 - 词元 (Token): 语言模型处理文本的基本单位。词元可以是单词、子词 (subword) 或字符。例如,“unbelievable”可能被分解为“un”、“believe”和“able”等子词词元。
- 预训练基础模型 (Pre-trained Base Model): 指在海量通用文本数据上进行大规模无监督学习的 LLM,例如 LLaMA。这些模型在预训练阶段学习了广泛的语言知识和模式,但通常不擅长遵循特定指令。指令微调是在此基础上进行的进一步训练。
- 自回归 (Autoregressive): 语言模型的一种常见生成范式,指模型在生成序列中的每个词元时,都依赖于前面已生成的所有词元。例如,在预测句子中的下一个词时,模型会考虑之前所有词的上下文。
- 共识选择 (Coreset Selection): 在机器学习中,共识选择旨在从大型数据集中识别一个具有代表性的小型子集,以便在不显著牺牲模型性能的情况下加速训练过程。这对于大数据集上的高效模型训练至关重要。
- 点互信息 (Pointwise Mutual Information, PMI): 是一种用于衡量两个事件(如两个词元)之间关联强度的指标。它量化了一个事件的发生对于另一个事件发生的概率的增加或减少程度。PMI 越高,表示两个事件共同出现的频率比它们独立出现的频率高,关联性越强。
PMI 的计算公式为:
其中
P(x, y)是 和 同时发生的概率,P(x)和P(y)分别是 和 独立发生的概率。
3.2. 前人工作
- 数据驱动的指令微调 (Data-driven Instruction Tuning):
- 早期工作: 传统指令微调数据集通常是手工制作或任务相关的,例如
Khashabi et al. (2020)、、、Wang et al. (2022)、、Honovich et al. (2023)。 - Self-Instruct (Wang et al., 2023b): 首次利用 GPT-3 自动生成了 52k 个不同的指令,开创了通过蒸馏 (distilling) 教师模型来生成指令数据集的方法。
- LLaMA 家族与开源数据集的兴起: 随着 Meta LLaMA (Touvron et al., 2023a) 的发布,涌现了一系列开源指令微调数据集和 LLM,如 Alpaca (Taori et al., 2023)、Vicuna (Chiang et al., 2023)、WizardLM (Xu et al., 2023)、Koala (Vu et al., 2023) 等。
- 早期工作: 传统指令微调数据集通常是手工制作或任务相关的,例如
- 指令数据选择 (Instruction Data Selection):
- LIMA (Zhou et al., 2023): 强调了指令微调中“质量至上”的原则,指出少量高质量的人工策展数据足以显著提升模型性能,而非单纯依赖数据量。这为本文的数据筛选工作提供了重要启发。
- Instruction Mining (Cao et al., 2023): 通过评估各种指标并训练多个模型,应用统计回归模型进行数据选择。这种方法依赖于训练多个模型进行评估,计算成本较高。
- ALPAGASUS (Chen et al., 2023a): 利用一个外部的、完全训练好的 LLM (例如 ChatGPT) 来对每个数据样本进行评分,从而筛选高质量数据。虽然有效,但这种方法可能忽视基础模型本身的内在能力,过度依赖外部模型。
- Superfiltering (Li et al., 2024b): 扩展了 IFD 分数的使用,表明良好的提示 (prompting) 可以减轻训练预经验模型的负担,并且弱语言模型计算的 IFD 分数与强模型一致,使得使用小型模型进行过滤成为可能,进一步提高了数据过滤的效率。本文作者在相关工作中也探索了这一方向。
3.3. 技术演进
LLM 的发展经历了从大规模预训练到指令微调的演进。早期研究主要集中在构建更大规模的模型和更庞大的预训练数据集。随着模型规模的增大,其涌现能力 (emergent abilities) 逐渐显现。然而,基础 LLM 往往不擅长遵循复杂或开放域的用户指令。指令微调的出现弥补了这一差距,使得预训练模型能够更好地与人类意图对齐。
最初的指令微调依赖于手工构建高质量的指令数据集,但这种方式成本高昂且难以扩展。Self-Instruct 等工作开始探索自动或半自动生成指令数据的方法,大大扩展了可用指令数据的规模。随后,LIMA 的发现将焦点重新引向了数据质量的重要性,而非仅仅是数量。
本文的工作正是在这一背景下展开。它认识到人工策展的高质量数据稀缺且昂贵,而现有自动生成的数据集(如 Alpaca、WizardLM)虽然量大,但质量参差不齐。因此,本文旨在开发一种自动化、自引导的数据选择机制,能够在不依赖昂贵的人工策展或外部强模型评分的情况下,从现有大规模数据集中高效地筛选出对指令微调最有价值的“精选数据”,从而在效率和性能之间找到最佳平衡。这代表了指令微调数据准备从“大规模生成”向“高质量筛选”的进一步演进,并尝试将筛选过程内化到模型自身的学习机制中。
3.4. 差异化分析
本文的方法与相关工作的主要区别和创新点如下:
- 自引导与模型内在能力: 与 ALPAGASUS (Chen et al., 2023a) 等依赖外部强模型进行数据评分的方法不同,本文提出的方法是“自引导”的。它利用目标 LLM 自身的表示特征和预经验模型来计算 IFD 分数,从而识别高质量数据。这意味着数据选择过程更贴近目标模型的实际学习需求,减少了对额外外部资源的依赖。
- IFD 指标的创新性: 提出的
Instruction-Following Difficulty (IFD)指标是一个新颖的度量。它通过比较模型在有无指令上下文下的响应生成损失,有效地分离了指令本身的难度和答案字符串固有的生成难度。这使得 IFD 能够更准确地衡量“指令遵循”的难度,而不是简单地衡量“答案生成”的难度,解决了传统上仅使用条件回答分数 (Conditioned Answer Score) 作为难度指标的局限性。 - 效率与资源节约: 通过 IFD 筛选,本文方法仅使用少量(例如 5% 或 10%)原始数据即可达到甚至超越使用全部数据训练的基线模型的性能。这在计算资源和时间上都带来了显著的节约。
- 非均匀分布的“精选数据”: 对精选数据的分布特征分析显示,高 IFD 分数的数据并非均匀分布,而是集中在需要更深层次理解和创造性任务的指令上。这与一些假设数据多样性应覆盖整个指令空间的传统观念有所不同,为指令微调数据选择提供了新的见解。
4. 方法论
本文提出的方法论旨在通过自引导的方式,让 LLM 能够自主识别并选择对指令微调最有价值的“精选样本”。整个方法分为三个核心阶段:从简短经验中学习 (Learning from Brief Experience)、基于经验进行评估 (Evaluating Based on Experience) 和 从自我指导经验中再训练 (Retraining from Self-Guided Experience)。
4.1. 方法原理
该方法的核心思想是:首先让一个基础 LLM 通过少量多样化的指令数据获得初步的指令遵循能力(“简短经验”)。接着,利用这个“预经验模型”来评估数据集中每个样本的指令遵循难度,通过比较模型在给定指令和未给定指令两种情况下生成答案的难度。难度较高的样本被认为是“精选样本”,对模型学习更复杂的指令遵循能力更有价值。最后,用这些精选样本对模型进行最终的微调。
4.2. 核心方法详解 (逐层深入)
4.2.1. 阶段一:从简短经验中学习 (Learning from Brief Experience)
这个初始阶段的目标是为模型提供基本的指令遵循能力,使其能够对后续的数据进行难度评估。
-
数据准备:
- 给定初始的完整目标数据集 ,其中包含 个三元组 。
- 将
Instruction和可选的[Input]组合成一个完整的指令字符串Question(Q)。映射函数与原始目标数据集对齐。 Question() 和Answer() 中的每个词元 (word) 分别表示为 和 。
-
指令嵌入 (Instruction Embeddings):
- 使用预训练的基础 LLM 模型 (其中 代表模型的权重)来获取每个指令的词元嵌入 (word embeddings)。
- 对于每个样本 ,其指令 的词元 通过 得到对应的隐藏状态 (last hidden states) 。
- 然后,通过平均这些词元隐藏状态来获得整个指令的平均嵌入 (averaged embedding) :
其中, 表示第 个
Question的第 个词元, 是相应的最终隐藏状态, 是指令中的词元数量。
-
多样性采样 (Diversity Sampling):
- 为了确保初始模型接触到多样化的指令,对这些指令嵌入 执行 K-Means 聚类 (KMeans clustering)。
- 本研究生成 100 个簇 (clusters),并从每个簇中采样 10 个实例,形成“预经验样本” (pre-experienced samples)。这种采样策略旨在覆盖指令空间的广度。
-
模型预训练 (Brief Pre-training):
- 使用这些少量且多样化的预经验样本,对初始基础 LLM 仅进行 1 个 epoch 的微调训练。
- 通过此训练,获得一个具备基本指令遵循能力的“简短预经验模型” (brief pre-experienced model)。
4.2.2. 阶段二:基于经验进行评估 (Evaluating Based on Experience)
在此阶段,引入了指令遵循难度 (Instruction-Following Difficulty, IFD) 分数,用于评估每个指令样本的难度。
-
条件回答分数 (Conditioned Answer Score, ):
- 在指令微调过程中,给定一个样本对
(Q, A),模型预测下一个词元 (next tokens) 的损失计算为: 其中 是真实答案 中的词元数量, 是答案中的第 个词元, 是在给定指令 和之前已生成的词元的情况下,模型预测下一个词元为 的概率。 - 这个平均交叉熵损失被定义为条件回答分数 。它衡量模型在给定指令指导下生成正确答案的能力。
- 在指令微调过程中,给定一个样本对
-
直接回答分数 (Direct Answer Score, ):
- 为了分离指令的影响,引入了直接回答分数。它衡量 LLM 在没有指令上下文的情况下,单独生成该答案的能力。 其中, 和 的定义同上, 是在没有指令 的情况下,仅根据之前已生成的词元,模型预测下一个词元为 的概率。
- 高直接回答分数可能表明该答案本身对模型而言更难生成。
-
指令遵循难度 (Instruction-Following Difficulty, IFD) 分数:
- 为了估计给定样本
(Q, A)的指令遵循难度,通过计算直接回答分数和条件回答分数之间的比率来定义 IFD 分数: - IFD 分数衡量了给定指令对响应生成的对齐效益。通过这种比率,部分减轻了 LLM 拟合答案字符串固有能力的影响。
- IFD 解释:
- 高 IFD 分数意味着 相对于 较高,表明模型在有指令时生成答案的难度并未显著降低,甚至更高。这指示了指令遵循的难度较高,或者指令对生成答案的帮助有限。
- 低 IFD 分数意味着 相对于 较低,表明指令极大地帮助了答案的生成。
- 这个 是一个模型特定的值,并且使用前面训练得到的“简短预经验模型”来计算目标数据集中所有样本的 IFD 值。
- 为了估计给定样本
-
误对齐样本过滤 (Misaligned Sample Filtering):
- 设置阈值 1 来进一步过滤指令与响应之间可能存在的误对齐样本。
- 通常情况下,由于下一个词元预测的内在特性,给定上下文(指令)后,预测后续词元应该更容易,因此条件回答分数 应小于直接回答分数 。
- 如果 IFD 分数大于 1,则意味着条件回答分数甚至高于直接回答分数,这表示给定指令对响应的预测没有提供有用的上下文。在这种情况下,作者认为指令与相应响应之间存在误对齐 (misalignment)。
4.2.3. 阶段三:从自我指导经验中再训练 (Retraining from Self-Guided Experience)
在获得目标数据集中所有样本的 IFD 分数后,进行最终的模型训练。
-
精选样本选择 (Cherry Sample Selection):
- 选择具有相对较高 IFD 分数的数据样本作为“精选数据” (cherry data) 来训练最终模型。这些样本被认为是对模型学习指令遵循能力最有挑战性且最有价值的。
- 具体选择策略通常是选取 IFD 分数最高的 top K% 样本。
-
“精选模型”训练 (Cherry Model Training):
-
使用这些选定的“精选数据”对基础 LLM 进行指令微调训练,最终得到“精选模型” (cherry models)。
-
这种方法强调数据质量而非数量,旨在用更少的数据实现更好的性能。
下图(原文 Figure 1)展示了我们提出的方法概览:
该图像是示意图,展示了我们提出的方法概览。分为三个部分:1) 从简短经验中学习,2) 基于经验进行评估,3) 从自我指导经验中进行再训练。每部分描述了LLM与指令数据之间的关系,以及如何优化模型训练过程。
-
5. 实验设置
本节详细描述了研究所使用的各种数据集、评估指标、对比基线以及具体的实现细节。
5.1. 数据集
5.1.1. 训练数据集 (Training Datasets)
- Alpaca 数据集 (Taori et al., 2023):
- 来源与规模: 包含 52002 个指令遵循样本,通过
self-instruct(Wang et al., 2023b) 方法,利用text-davinci-003模型生成。 - 特点: 虽然在发布之初具有竞争力,但由于其对
text-davinci-003的依赖,数据质量存在潜在问题。
- 来源与规模: 包含 52002 个指令遵循样本,通过
- WizardLM 数据集 (Xu et al., 2023):
- 来源与规模: 利用
EvolInstruct算法生成,该算法旨在通过指令的不断演化来提高指令数据的质量。在重构过程中结合了ChatGPT,保证了数据的高保真度。本文使用了WizardLM70K进行实验。 - 特点: 相较于 Alpaca,WizardLM 旨在提供更复杂和多样化的指令。由于硬件限制,原始 WizardLM 使用 2048 的输入长度,而本文实验中选择 1024。此外,为了解决“AI 审查”问题,根据 Vicuna 的策略过滤了部分样本,最终形成一个包含 63655 个条目的精简版 WizardLM 子集。
- 来源与规模: 利用
5.1.2. 测试数据集 (Test Datasets)
为了确保评估的全面性和无偏性,研究采用了 5 个多样化的测试集,这些测试集包含大约 1000 个人工策展的指令,涵盖开放域或封闭域的不同任务和来源。
- Vicuna (Chiang et al., 2023): 一个高质量的聊天机器人基准测试集,其指令通常从用户对话中收集,包含多种任务类型。Vicuna 提供了每个指令的具体子类别,便于深入分析。
- Koala (Vu et al., 2023): 另一个评估聊天机器人性能的数据集,通常用于衡量模型在开放域对话中的表现。
- WizardLM (Xu et al., 2023): 除了作为训练集,WizardLM 也提供了测试集,其中包含复杂且多样化的指令,用于评估模型遵循复杂指令的能力。WizardLM 也提供了具体的子类别。
- Self-instruct (Wang et al., 2023b): 原始的
self-instruct方法生成的指令集,其多样性较广,但质量可能参差不齐。 - LIMA (Zhou et al., 2023): 一个高质量、少量的人工策展指令数据集,用于评估模型在学习少量高质量数据后的指令遵循能力。
5.1.3. 数据样本示例
以下是原文附录 F 中提供的精选示例分析中的数据样本:
正例 (高 IFD 分数样本)
- 指令: 设计一份针对给定受众的健康计划。 输入: 孕妇 响应: 这份针对孕妇的健康计划应包括身体、情感和心理健康策略。身体健康应包括运动、健康饮食和充足休息。孕妇每天应努力进行至少 30 分钟的中等强度运动,如散步或游泳。营养饮食应包括各种水果、蔬菜和蛋白质。充足的睡眠对于身体和心灵的充电至关重要,所以每晚要保证七到八小时的睡眠。... 直接回答分数 (DA): 3.970 条件回答分数 (CA): 3.337 IFD 分数: 0.928
- 指令: 简要描述冠状病毒。 输入: (空) 响应: 冠状病毒是一种可以引起从普通感冒到严重疾病(如中东呼吸综合征 (MERS) 和严重急性呼吸综合征 (SARS))的病毒。该病毒因其表面冠状的刺突而得名。它主要通过与感染者密切接触、通过咳嗽或打喷嚏后鼻或口中的小飞沫传播。症状可能包括发烧、疲劳和干咳。在严重情况下,它可能导致呼吸困难、肺炎、肾功能衰竭,甚至死亡。 直接回答分数 (DA): 0.761 条件回答分数 (CA): 0.696 IFD 分数: 0.914
负例 (低 IFD 分数样本)
- 指令: 这条推文表达了什么情绪? 输入: 我现在太沮丧了!! 响应: 沮丧 直接回答分数 (DA): 6.593 条件回答分数 (CA): 0.601 IFD 分数: 0.091
- 指令: 从给定的书中识别一句名言。 输入: 书籍:简·奥斯汀的《傲慢与偏见》 响应: “这是一条普遍公认的真理,一个拥有巨额财富的单身汉,必定想要一位妻子。” 直接回答分数 (DA): 0.497 条件回答分数 (CA): 0.026 IFD 分数: 0.053
5.2. 评估指标
5.2.1. 成对比较 (Pair-wise Comparison)
- 概念定义: 评估 LLM 指令遵循能力的一项具有挑战性的任务。鉴于人工评估成本高昂且可能存在主观偏差,本文利用 GPT-4 和 ChatGPT 等强大的 LLM 作为裁判,进行自动化的比较评估。对于测试数据集中的每条指令,将待比较模型的响应和其竞争对手的响应同时呈现给裁判模型,由裁判模型进行评分和比较。
- 判断逻辑: 裁判模型(GPT-4 或 ChatGPT)会根据相关性、准确性等属性,对每个模型的响应打分(1到10分)。为了解决位置偏差 (positional bias)(即响应呈现顺序可能影响判断),每个模型的响应会以不同顺序发送给裁判两次。一个模型被判定为“获胜” (Wins) 当且仅当它在两种顺序下都没有输。具体定义如下:
- 胜 (Wins): 在两种顺序下都表现更好,或者在一种顺序下胜出,在另一种顺序下打平。
- 平 (Tie): 在两种顺序下都打平,或者在一种顺序下胜出,在另一种顺序下落败。
- 负 (Loses): 在两种顺序下都表现较差,或者在一种顺序下打平,在另一种顺序下落败。
- 整体获胜分数 (Overall Winning Score): 用于量化模型在所有测试集上的总体表现,其计算公式为:
其中, 是模型获胜的次数, 是模型失败的次数, 是总比较次数。当
Winning Score大于 1.0 时,表示该模型总体上表现优于对比模型。
5.2.2. 基准测试 (Benchmarks)
- Huggingface Open LLM Leaderboard:
- 概念定义: 一个评估 LLM 性能的公开排行榜,使用 EleutherAI 的
lm-evaluation-harness(Gao et al., 2021) 统一框架,测试生成式语言模型在大量不同评估任务上的表现。 - 评估子任务:
- ARC (Clark et al., 2018): AI2 Reasoning Challenge,一个科学问答数据集,要求模型具备多步推理能力。
- HellaSwag (Zellers et al., 2019): 一个常识推理任务,要求模型从四个选项中选择最合理的句子结尾。
- MMLU (Hendrycks et al., 2021): Massive Multitask Language Understanding,一个包含 57 个学科(如历史、法律、伦理等)的多任务选择题集合,用于衡量模型在广泛知识领域和推理能力。
- TruthfulQA (Lin et al., 2022): 旨在评估模型生成真实陈述的能力,而不是仅仅复制互联网上常见的错误信息。
- 概念定义: 一个评估 LLM 性能的公开排行榜,使用 EleutherAI 的
- AlpacaEval Leaderboard (Dubois et al., 2023):
- 概念定义: 基于 AlpacaFarm 评估集,提供了一个基于 LLM 的自动化评估框架。
- 评估方式: 在 AlpacaEval 中,模型响应与
Davinci003的响应进行比较,由 GPT-4 作为裁判进行评估。
5.2.3. 人工评估 (Human Evaluation)
- 概念定义: 为了更直观地验证方法效果,进行了人工评估。
- 评估方式: 从每个测试集中随机抽取 20 条指令,总共组成 100 条指令的新随机测试集。3 名人类参与者被要求比较待评估模型生成的响应。每个比较提供 3 个选项(胜、平、负),最终结果由参与者的多数投票决定。
5.3. 对比基线 (Baselines)
本文将自己的方法与以下基线模型进行了比较:
- 官方 Alpaca 模型 (Official Alpaca): 使用完整 Alpaca 数据集训练的原始模型。
- 重实现 WizardLM 模型 (Reimplemented WizardLM): 在与本文相同的训练配置下,使用完整 WizardLM 数据集重新实现的模型。这为公平比较提供了基础,排除了配置差异的影响。
- 随机选择数据 (Data Randomly Selected): 从原始数据集中随机选择一定比例(例如 5%、10%、15%)的数据进行训练。这用于证明本文的智能选择策略优于随机采样。
- 多样性选择数据 (Data with Diversity): 仅考虑数据样本的多样性进行选择。具体是使用 K-means 算法对指令嵌入进行聚类,然后从每个簇中采样数据进行训练。这用于验证仅考虑多样性是否足够。
- 低 IFD 分数数据 (Data with Low IFD Score): 选择 IFD 分数较低的数据进行训练,与本文方法的主张(选择高 IFD 分数数据)形成对比。这旨在直接验证 IFD 指标的有效性方向。
- 高 CA 分数数据 (Data with High CA Scores): 选择条件回答分数 (Conditioned Answer Score, CA) 较高的数据进行训练。CA 分数等同于损失或困惑度 (perplexity),是常见的基线选择策略。这用于证明排除直接回答分数 (Direct Answer Score) 的影响是必要的。
5.4. 实现细节 (Implementation Details)
- 基础模型:
- LLaMA-7B 预训练模型。
- LLaMA2-7B 和 LLaMA2-13B 模型。
- 训练框架:
- LLaMA-7B 实验遵循原始 Alpaca 和 WizardLM 的训练配置,使用 Alpaca 代码库。
- LLaMA2-7B 和 LLaMA2-13B 实验使用 Vicuna 代码库。
- 优化器: Adam 优化器 (Kingma and Ba, 2017)。
- 学习率: 。
- 批大小 (Batch Size): 128。
- 训练轮次 (Epochs):
- 主力模型训练:3 个 epoch。
- 预经验模型训练:仅 1 个 epoch。
- 最大输入长度 (Max Input Length):
- Alpaca 数据集:512。
- WizardLM 数据集:1024(原始 WizardLM 模型使用 2048,此处为硬件约束下的调整)。
- LLaMA2 模型:2048 (得益于 Flash Attention 机制 (Dao et al., 2022))。
- WizardLM 数据过滤: 过滤了 WizardLM 数据集中的“AI 审查”实例,导致其子集包含 63655 个条目。
- LLaMA2 提示: 在 LLaMA2 模型的实验中,使用 Vicuna (Chiang et al., 2023) 提供的指令提示 (instruction prompt)。
6. 实验结果与分析
本节将深入探讨实验结果,包括主要性能对比、消融实验、预经验数据的影响、LLaMA2 模型上的验证以及对“精选数据”特征的分析。
6.1. 核心结果分析
6.1.1. 主要成对评估结果
下图(原文 Figure 2)展示了我们的模型与使用全数据训练的模型之间的主要成对评估结果。
该图像是图表,展示了我们的方法与 Alpaca(100%)和 WizardLM(100%)的比较。图(a)比较我们使用5% Alpaca数据与官方模型的结果,图(b)比较我们使用10% WizardLM数据与重实现的模型的结果。每个水平条代表特定测试集的比较。
图 2 展示了以下两组关键比较:
-
图 2(a):我们的模型仅使用大约 5% 的原始 Alpaca 数据进行训练,但其性能超越了使用完整数据训练的官方 Alpaca 模型。
-
图 2(b):我们的模型仅使用大约 10% 的原始 WizardLM 数据进行训练,其性能超越了在相同训练配置下重实现的 WizardLM 模型。
这些结果强有力地验证了本文数据选择策略的效率和有效性,表明通过精选数据,可以在显著减少数据量的情况下获得更好的模型性能。
6.1.2. 性能随数据量增长的变化
下图(原文 Figure 3)展示了我们的模型与全数据模型相比,获胜分数随数据增长的变化。
该图像是图表,展示了在不同训练数据百分比下,我们的模型与全数据模型的获胜分数变化。获胜分数计算为 ,当值大于1时,意味着该模型表现优于对比模型。
图 3 描绘了在 Alpaca 和 WizardLM 数据集上,当分别使用 5%、10%、15% 和 20% 的精选数据训练模型时,模型相对于使用完整数据集训练的模型,其整体获胜分数 (Winning Score) 的变化。
- Alpaca 数据集: 我们的模型在使用约 5% 的精选数据时,获胜分数已经超过 1.0,表明其性能已优于使用全部数据训练的模型。随着数据量的增加,性能进一步提升。
- WizardLM 数据集: 同样,我们的模型在使用约 10% 的精选数据时,获胜分数也超过 1.0,展示了在更复杂数据集上的效率。 一致的观察结果是,仅使用 10% 的精选数据,我们的模型就能够超越使用全部数据集训练的模型。这突出了数据选择策略的效率以及在显著降低数据需求的同时训练出强大模型的潜力。
6.1.3. Huggingface Open LLM Leaderboard 和 AlpacaEval Leaderboard 结果
以下是原文 Table 1 的结果,比较了我们的精选模型与基线模型在两个主流排行榜上的表现:
| Huggingface Open LLM Leaderboard | AlpacaEval AlpacaEval | |||||
| Average | ARC | HellaSwag | MMLU | TruthfulQA | ||
| Official Alpaca | 50.21 | 42.65 | 76.91 | 41.73 | 39.55 | 26.46 |
| Ours (5% Alpaca) Reimplemented WizardLM* | 52.06 | 53.92 | 79.49 | 36.51 | 38.33 | 34.74 |
| 52.79 | 53.07 | 77.44 | 37.75 | 42.90 | 61.99 | |
| Ours (10% WizardLM) | 51.59 | 52.90 | 78.95 | 33.08 | 41.41 | 61.44 |
- Huggingface Open LLM Leaderboard:
- 我们的
Cherry Alpaca (5%)模型在平均分 (Average)、ARC 和 HellaSwag 上均优于Official Alpaca,但在 MMLU 和 TruthfulQA 上略有下降。 - 我们的
Cherry WizardLM (10%)模型在 ARC、HellaSwag 和 TruthfulQA 上表现与Reimplemented WizardLM相近,平均分略低。
- 我们的
- AlpacaEval Leaderboard:
-
Cherry Alpaca (5%)模型显著优于Official Alpaca(34.74 vs 26.46)。 -
Cherry WizardLM (10%)模型与Reimplemented WizardLM表现非常接近 (61.44 vs 61.99)。这些结果进一步证明了自动选择数据的有效性,即使在公共基准测试中也能保持竞争力。
-
6.1.4. 人工评估结果
- Cherry Alpaca (5%) vs. Alpaca (100%): 我们的
Cherry Alpaca获胜 49 次,平局 25 次,失败 26 次(总计 100 次比较)。这表明我们的模型在人工判断中也倾向于表现更好。 - Cherry WizardLM (10%) vs. Reimplemented WizardLM (100%): 我们的
Cherry WizardLM获胜 37 次,平局 32 次,失败 31 次(总计 100 次比较)。同样,我们的模型在减少数据量的情况下,在人工评估中也取得了可比较甚至略优的性能。
6.2. 消融实验/参数分析
6.2.1. 数据选择机制的消融研究
本节比较了我们的方法与其他数据选择机制。评估基于 ChatGPT 作为裁判,对所有 5 个测试数据集进行。下图(原文 Figure 4)展示了不同数据选择策略的模型与官方 Alpaca 模型相比的整体获胜分数变化。
该图像是图表,展示了不同模型与官方Alpaca模型的获胜分数变化。随着训练数据百分比的增加,各种数据选择策略模型的表现差异显著,特别是使用自我引导选择策略的模型(蓝色线)在低数据量时表现优越。文中数据表明,该策略在节省数据的同时提升了模型性能。
图 4 清晰地展示了不同数据选择策略的有效性。
-
随机选择数据 (Random): 使用 5%、10% 或 15% 的随机数据训练的模型,其性能始终低于官方 Alpaca 模型(获胜分数低于 1.0)。这证实了简单随机采样不足以有效提升模型性能。
-
多样性数据 (Diversity): 仅考虑数据多样性进行选择的模型(通过 K-means 聚类采样),其性能与随机训练模型相似,也表现不佳。这表明仅考虑多样性不足以进行有效的指令微调数据过滤。
-
低 IFD 分数数据 (Low IFD Score): 使用低 IFD 分数数据训练的模型表现最差,其获胜分数远低于 1.0,在所有方法中性能最低。这直接强调了高 IFD 分数对于筛选高质量数据的重要性,并验证了 IFD 指标的有效性方向。
-
高 CA 分数数据 (High CA Scores): 使用高条件回答分数 (Conditioned Answer Score) 选择数据训练的模型,性能显著落后于官方 Alpaca 模型。这表明仅仅依赖 CA 分数(即模型的损失或困惑度)并不能有效衡量指令遵循的难度,因为它没有考虑预训练 LLM 对原始答案文本的内在理解。
这些消融实验有力地证明了 IFD 分数在数据过滤中的独特优势和有效性,远优于其他直观或常见的基线数据选择方法。
以下是原文 Table 5 的结果,补充了 Open LLM Leaderboard 和人工评估的消融结果:
| Huggingface Open LLM Leaderboard | Human Evaluation | ||||||||
| Avg | ARC | HellaSwag | MMLU | TruthfulQA | Win | Tie | Lose | Winning Score | |
| Ours 5% | 52.06 | 53.92 | 79.49 | 36.51 | 38.33 | - | - | - | - |
| Random 5% | 50.61 | 53.52 | 79.33 | 32.90 | 36.67 | 58 | 23 | 19 | 1.39 |
| Diversity 5% | 49.48 | 53.41 | 79.29 | 29.19 | 36.04 | 61 | 21 | 18 | 1.43 |
| Low IFD 5% | 50.77 | 53.92 | 79.09 | 34.83 | 35.25 | 87 | 8 | 5 | 1.82 |
| High CA 5% | 47.51 | 51.45 | 75.50 | 35.41 | 26.67 | 76 | 15 | 9 | 1.67 |
- 在 Open LLM Leaderboard 上,
Ours 5%在平均分上优于所有消融基线。 - 在人工评估中,
Random 5%、Diversity 5%、Low IFD 5%和High CA 5%报告了各自的胜/平/负次数。请注意,这些基线的获胜分数计算方式可能与主要结果略有不同,需要根据上下文理解。例如Low IFD 5%报告了高胜率,这可能意味着其与 Alpaca 相比的胜率,但整体性能在 Open LLM Leaderboard 上仍较低。
6.2.2. 预经验数据量的消融研究
本节分析了预经验模型的必要性以及预经验数据数量对最终模型性能的影响。实验中,分别使用 0、100、300 和 500 个预经验样本训练预经验模型。0 样本表示直接使用初始原始模型作为预经验模型。然后,利用这些不同的预经验模型计算 IFD 分数,并选择前 5%、10% 和 15% 的样本进行训练。
下图(原文 Figure 5)展示了不同数量预经验样本的模型与官方 Alpaca 模型相比的整体获胜分数变化。
该图像是图表,展示了不同预先经验样本数与官方Alpaca模型的整体获胜得分变化。横轴为训练数据百分比,纵轴为获胜得分。每条线代表不同数量的预先经验样本,随着训练数据增加,得分表现具有一定波动。
-
0 预经验样本: 当不使用预经验模型时,对应的精选模型性能最差。然而,即使在这种情况下,IFD 分数在识别好的训练数据子集方面仍然有效,在使用 10% 数据时仍优于 Alpaca 模型。
-
100 预经验样本: 对应的精选模型略好于 0 样本的情况,但趋势相似,表明 100 样本不足以让模型获得基本的指令遵循能力。
-
300 预经验样本: 性能明显提升,对应的精选模型表现更好。
-
500 预经验样本: 进一步增加样本量(到 500)并未使对应精选模型的性能进一步提升。这表明模型可能在 300 样本左右就获得了基本的指令遵循能力。
结论是,预经验过程是重要的,且存在一个“甜点”数量(大约 300 个样本),在此数量下模型能够获得足够的基础指令遵循能力,从而实现最佳的数据选择效果。
6.2.3. 预经验数据分布的消融研究
为了更好地说明预经验过程中所需的数据分布,研究考虑了“难度”、“多样性”和“随机”三种数据选择策略来选择 1000 个预经验样本。
-
难度 (Difficulty): 根据初始原始模型计算 IFD 分数,选择 1000 个高 IFD 样本。
-
多样性 (Diversity): 通过 K-means 算法选择 1000 个多样性样本。
-
随机 (Random): 直接随机选择 1000 个预经验数据。
然后,使用这些不同分布的预经验数据训练预经验模型,再用于选择后续的精选数据。以下是原文 Table 2 的结果,比较了使用 5%、10% 和 15% 精选数据训练的模型与 Alpaca 模型的性能:
5% 10% 15% 100 % Difficulty (1000) 1.057 1.072 1.096 1 Diversity (1000) 1.050 1.097 1.064 1 Random (1000) 1.007 1.047 1.077 1
所有三种策略(难度、多样性、随机)选择的预经验样本训练出的模型,在使用 5%、10% 和 15% 的精选数据后,其获胜分数均超越了 Alpaca 模型,并且彼此表现相当。这表明,关键在于预经验过程本身,而非选择预经验样本的具体策略。只要模型获得了一定的基础指令遵循能力,IFD 指标就能稳健地发挥作用。
6.3. LLaMA2 模型上的结果
本节在较新的 LLaMA2-7B 和 LLaMA2-13B 模型上进行了实验。这些实验中,每个样本的 IFD 分数直接基于相应的 LLaMA2 预训练模型计算,并使用 Vicuna 的提示。以下是原文 Table 3 的结果:
| Huggingface Open LLM Leaderboard | AlpacaEval AlpacaEval | |||||
| Average | ARC | HellaSwag | MMLU | TruthfulQA | ||
| Alpaca llama2 7b | 55.25 | 54.35 | 78.65 | 47.02 | 40.98 | 27.75 |
| Ours (5% Alpaca) | 55.78 | 57.94 | 80.37 | 44.19 | 40.62 | 36.78 |
| Ours (10% Alpaca) | 56.31 | 58.02 | 80.42 | 46.64 | 40.18 | |
| Ours (15% Alpaca) | 56.37 | 57.42 | 80.68 | 46.40 | 40.95 | - |
| Alpaca llama2 13b | 58.78 | 57.59 | 81.98 | 54.05 | 41.49 | 35.00 |
| Ours (5% Alpaca) | 61.21 | 62.37 | 84.00 | 55.65 | 42.82 | 46.82 |
| Ours (10% Alpaca) | 61.02 | 62.97 | 83.88 | 55.29 | 41.93 | - |
| Ours (15% Alpaca) | 61.23 | 62.37 | 83.48 | 55.56 | 43.42 | - |
在 LLaMA2-7B 和 LLaMA2-13B 模型上,我们的精选模型在仅使用少量数据(例如 5% Alpaca 数据)的情况下,在 Huggingface Open LLM Leaderboard 的平均分和 AlpacaEval 上均显著优于使用原始全数据训练的模型。这些结果证明了本文方法的通用性和在不同基础模型上的稳定优势。
6.4. 精选数据特征
6.4.1. 分布特性
本节分析了精选数据在原始数据集中的分布情况。下图(原文 Figure 6)使用 t-SNE 对 Alpaca 数据集中的指令嵌入进行了可视化:
该图像是使用 t-SNE 可视化的指令嵌入图。红色点代表 IFD 分数最高的 样本,蓝色点则表示 IFD 分数最低的 样本,灰色点为其他样本。
图 6 显示了 Alpaca 数据集指令嵌入的 t-SNE 可视化结果。红色点代表 IFD 分数最高的 5% 样本,蓝色点代表 IFD 分数最低的 5% 样本,灰色点为其余样本。
- 非均匀分布: 与传统观念认为选择的数据应尽可能覆盖整个指令谱系并最大化多样性不同,我们的精选数据并非均匀散布。高难度和低难度样本之间存在明显的边界。
- 难度与任务类型: 手动检查发现,低 IFD 分数簇主要包含编辑标点、词语或句子等基本任务。相反,高 IFD 分数簇则以讲故事、现象阐释等更深层次、更复杂的任务为特征。研究推测,这些深度任务对于对齐大型语言模型至关重要,因为它们迫使模型重新组织和访问其内在知识库。
6.4.2. 模式特性
为了更好地理解精选数据的模式特性,研究利用 Berkeley Neural Parser 来识别每个数据样本指令中的动词-名词结构。这有助于深入了解哪些类型的指令更容易被分配较高的 IFD 分数。以下是原文 Table 4 的结果,展示了 Alpaca 数据集中 IFD 分数最高 5% 和最低 5% 数据中最常出现的 10 个动词-名词对:
| Top 5% IFD | Lease 5% IFD | ||||
| Verb | Noun | Count | Verb | Noun | Count |
| Write | Story | 119 | Rewrite | Sentence | 155 |
| Generate | Story | 98 | Edit | Sentence | 89 |
| Generate | List | 66 | Change | Sentence | 37 |
| Explain | Concept | 48 | Classify | Sentence | 36 |
| Create | Story | 44 | Convert | Sentence | 27 |
| Write | Essay | 42 | Edit | Text | 25 |
| Create | List | 28 | Translate | Sentence | 24 |
| Write | Post | 27 | Replace | Word | 16 |
| Write | Paragraph | 27 | Rearrange | Word | 15 |
| Create | Poem | 25 | Arrange | Word | 14 |
- 高 IFD 数据特征: 主要涉及创造性、复杂性高的指令,如“写故事 (Write Story)”、“生成列表 (Generate List)”、“解释概念 (Explain Concept)”。这些任务需要模型具备大量的创造力、思考能力和深度理解。
- 低 IFD 数据特征: 更多是关于遵循规则、需要较少创造性的指令,如“重写句子 (Rewrite Sentence)”、“编辑句子 (Edit Sentence)”、“替换单词 (Replace Word)”。 这清晰地揭示了高 IFD 数据与低 IFD 数据之间在模式特性上的差异。IFD 的有效性在于它能够找到那些需要更多创造力和深度理解的指令,这正是对齐大型语言模型所必需的。
6.4.3. 精选数据通用特性
本节旨在确定基于 IFD 分数选择的数据是否符合已知的高质量训练数据特征。研究随机抽取了 IFD 分数最高 5% 和最低 5% 的各 100 个样本,并使用 ChatGPT 对每条指令的以下六个方面进行评估:范围 (Scope)、复杂性 (Complexity)、清晰度 (Clarity)、深度 (Depth)、简单性 (Simplicity) 和所需知识 (Knowledge Required)。下图(原文 Figure 8)展示了结果:
该图像是图表,展示了Alpaca数据中评分最高5%和最低5% IFD分数的数据实例在范围、复杂性、清晰度、深度、简单性和知识需求六个维度上的对比情况。图中红色和蓝色线分别代表最高和最低评分群体在各维度的表现。
图 8 显示了 IFD 分数最高 5% 和最低 5% 的数据实例在六个维度上的对比。
- 高 IFD 分数样本: 在“范围”、“复杂性”、“深度”和“所需知识”方面得分普遍较高。
- 低 IFD 分数样本: 在“清晰度”和“简单性”方面得分较高,特别是在“简单性”方面差异最为显著。 这支持了 IFD 分数能够准确衡量指令复杂性的论断。因此,本文的方法倾向于选择更复杂的样本进行训练,这与高质量数据应具备的特征相符。
6.4.4. 精选示例分析
原文附录 F 提供了几个正例(高 IFD 分数)和负例(低 IFD 分数)来进一步说明该方法选择的数据特性。这些例子与前面“5.1.3. 数据样本示例”中已呈现。
- 高 IFD 正例分析:
- 例子一 (生成诗歌): 直接回答分数 (DA) 和条件回答分数 (CA) 都相对较高。高 DA 意味着初始预训练 LLM 很难独立生成这首诗,而高 CA 意味着即使给定指令,生成这首诗也没有变得容易多少。这表明该样本对于 LLM 学习此类指令具有很高的价值。
- 例子二 (描述冠状病毒): DA 分数和 CA 分数都相对较低。低 DA 分数意味着 LLM 已经掌握了相关知识,生成该句子相对容易。但提供相应指令后,情况并未显著改变,表明模型在遵循该特定指令方面的能力不足。
- 低 IFD 负例分析:
- 例子一 (识别推文情绪): 响应非常短。由于下一个词元预测的内在特性,较长的文本往往具有较低的困惑度 (perplexity)。短响应导致 DA 分数相对较高,进而导致 IFD 分数较低。这被认为是该方法的一个优点,可以过滤掉过于简单的任务。
- 例子二 (识别书摘): DA 分数和 CA 分数都相对较小。响应是从 LLM 肯定读过的书中引用的已知知识,因此模型很容易重现该句子。但当包含指令时,CA 分数变得更低,表明 LLM 在遵循该指令方面具有很好的能力。这代表指令难度不高,模型已经掌握。
- 例子三 (总结对话): 指令本身不够复杂。
6.5. 附加讨论
6.5.1. 完全训练模型作为预经验模型?
研究探讨了是否可以使用完全训练好的模型作为预经验模型来选择精选样本。原文 Table 9 展示了将完全训练好的 Alpaca 模型用作预经验模型,然后选择 5%、10% 和 15% 的精选数据进行训练的结果:
| 5% | 10% | 15% | 100% | |
| Ours | 1.050 | 1.097 | 1.064 | 1 |
| Fully-trained Alpaca | 0.968 | 0.999 | 1.005 | 1 |
结果显示,使用完全训练好的 Alpaca 模型作为预经验模型时,其性能(获胜分数)很难超越 Alpaca 模型自身或本文提出的模型。这表明,完全训练好的模型不适合用于为初始原始模型选择样本,这可能是由于完全训练好的模型与原始模型之间存在过大的分布差距。预经验阶段的目的在于赋予基础模型“基本的”指令遵循能力,而不是“完全的”能力。
6.5.2. 需要多少精选样本?
尽管本文方法在 Alpaca 和 WizardLM 上证明了其有效性,但最佳的精选数据量仍有待探索。与某些方法(例如 ALPAGASUS)中目标样本分数稀疏不同,本文方法生成的密集 IFD 分数提供了更大的灵活性。然而,这种灵活性也使得确定最佳选择数量变得困难,因为这受到 IFD 分数的绝对值、困难样本的分布以及原始数据集中数据量等多种因素的影响。但根据经验研究,作者认为选择 IFD 分数最高的 top 10% 样本是一个安全且合理的选择。
6.6. 详细比较(附录)
6.6.1. 与官方 Alpaca 的详细比较
下图(原文 Figure 11)展示了我们的精选模型与官方 Alpaca (7B) 模型在不同测试集上使用 5% 到 15% 的精选数据时的详细比较,以 ChatGPT 作为裁判。
该图像是图表,展示了在不同数据量下(5%, 10%, 15%)我们的模型与官方Alpaca模型在多种测试集上的比较。每个水平条形表示特定测试集中模型的表现,显示我们的模型在许多情况下优于Alpaca。
从图 11 可以看出,在 5%、10% 和 15% 的数据量下,我们的精选模型在所有测试集上几乎都优于官方 Alpaca 模型,这进一步证实了方法的有效性。
6.6.2. 与重实现 WizardLM 的详细比较
下图(原文 Figure 12)展示了我们的精选模型与重实现 WizardLM (7B) 模型在不同测试集上使用 5% 到 15% 的精选数据时的详细比较,以 ChatGPT 作为裁判。
该图像是图表,展示了我们的方法与重实施的WizardLM模型在不同数据量(5%和15%)下的比较。每个水平条代表在特定测试集中的对比结果,衡量了各模型的胜出情况。
图 12 显示,我们的精选模型从 10% 数据量开始,在大多数测试集上超越了重实现的 WizardLM 模型,突显了在更复杂数据集上的效率。
6.6.3. 与官方 WizardLM 的详细比较
下图(原文 Figure 13)展示了我们的精选模型与官方 WizardLM (7B) 模型在不同测试集上使用 5% 到 40% 的精选数据时的详细比较,以 ChatGPT 作为裁判。
该图像是图表,展示了我们的方法与官方WizardLM模型在不同数据比例(5%、10%、15%、30%、40%)下的性能比较。每个水平条形代表在特定测试集中的比较结果。
图 13 显示,尽管存在训练配置上的固有劣势(例如最大词元长度),但我们的精选模型在使用 40% 的 WizardLM 数据时,与官方 WizardLM 模型达到了可比较的性能,再次强调了方法的有效性。
6.6.4. 数据随机选择的详细消融比较
下图(原文 Figure 14)展示了我们的精选模型与使用随机选择数据训练的模型在不同测试集上使用 5% 到 15% 数据时的详细比较,以 ChatGPT 作为裁判。
该图像是图表,比较了我们的模型与采用随机选择数据的模型在不同数据比例下的表现。图中包含三组比较,分别为 ours (5%) vs. Random (5%)、ours (10%) vs. Random (10%) 和 ours (15%) vs. Random (15%),显示了不同模型的胜出次数及平局情况。
图 14 清晰地表明,在 5% 到 15% 的数据量下,我们的精选模型始终优于随机选择数据训练的模型。
6.6.5. 低 IFD 分数数据的详细消融比较
下图(原文 Figure 15)展示了我们的精选模型与使用低 IFD 分数数据训练的模型在不同测试集上使用 5% 到 15% 数据时的详细比较,以 ChatGPT 作为裁判。
该图像是图表,展示了与低IFD评分模型进行比较的三组实验结果,分别为5%、10%和15%的数据选择(图(a)、(b)、(c))。每个水平条形图表示在特定测试集中的对比结果,橙色和蓝色块表示不同模型的胜负情况,表明我们的模型在不同数据量下的表现优势。
图 15 进一步证实,在 5% 到 15% 的数据量下,我们的精选模型始终表现更优,再次强调了 IFD 指标在筛选高质量数据方面的有效性。
6.6.6. 高 CA 分数数据的详细消融比较
下图(原文 Figure 16)展示了我们的精选模型与使用高条件回答分数数据训练的模型在不同测试集上使用 5% 到 15% 数据时的详细比较,以 ChatGPT 作为裁判。
该图像是图表,展示了不同模型在不同条件下的得分比较,包括我们的模型(5%)与高条件回答分数(5%、10%、15%)的比较。每个水平条形图表示在特定测试集中的结果,橙色表示我们的模型获胜,黄色表示平局,蓝色表示高条件回答分数获胜。
图 16 表明,在 5% 到 15% 的数据量下,我们的精选模型始终表现更好,证明了仅依赖 CA 分数不足以捕捉指令遵循的复杂性。
6.6.7. 预经验数据量的详细消融比较
下图(原文 Figure 17)展示了在不同数量预经验样本(0、100、300 和 500)下,我们的精选模型与 Alpaca 模型的比较,以 ChatGPT 作为裁判。
该图像是一个图表,展示了在不同数量的预经验样本下(0、100、300和500),多个模型与Alpaca模型的对比结果。图中分别标注了各个模型在不同样本下的胜负情况,彰显了样本数量对模型表现的影响。
图 17 详细展示了预经验样本数量对模型性能的影响,证实了存在一个最优的预经验样本量(约 300),在此之后性能提升趋于平稳。
6.6.8. 预经验数据分布的详细消融比较
下图(原文 Figure 18)展示了将 IFD 分数作为策略选择预经验数据时,模型与 Alpaca 模型的比较,以 ChatGPT 作为裁判。
该图像是图表,展示了不同模型在不同选择难度下的表现对比。通过比较预先经验选择的难度(%)与 Alpaca(100%)的胜率,结果表明,如 Vicuna、Koala 和 LIMA 等模型在不同数据量下的效果差异显著。
图 18 进一步说明,选择预经验数据的方式(难度、多样性、随机)对最终模型性能的影响相对较小,关键在于存在一个预经验过程。
6.6.9. 完全训练模型作为预经验模型的详细消融比较
下图(原文 Figure 19)展示了当使用完全训练好的官方 Alpaca 模型作为预经验模型选择精选数据时,模型与 Alpaca 模型的详细比较。
该图像是直方图,展示了不同模型在 Alpaca (5%、10% 和 15%)与其原始数据(100%)的预期体验比较。数据揭示了各模型的表现,其中,Alpaca(100%)的获胜次数与其他模型的输出进行对比,形成明显的竞争态势。
图 19 证实了完全训练好的模型不适合作为预经验模型,因为与原始模型之间的巨大分布差异会影响数据选择效果。
7. 总结与思考
7.1. 结论总结
本文提出了一种名为“自引导数据选择”的新颖方法,旨在通过利用大型语言模型 (LLM) 的内在能力,从大规模开源数据集中自动识别并选择高质量的指令微调数据。核心创新在于引入了指令遵循难度 (Instruction-Following Difficulty, IFD) 指标,该指标通过比较模型在有指令上下文和无指令上下文下生成响应的损失,量化了指令对响应生成的实际帮助程度。
研究结果在 Alpaca 和 WizardLM 等数据集上得到了有力验证:
-
仅使用原始数据输入的 5% 或 10%,本文方法训练出的模型在各项评估指标(成对比较、Huggingface Open LLM Leaderboard、AlpacaEval Leaderboard 和人工评估)上均能超越或达到使用全部数据训练的基线模型性能。
-
消融实验表明,IFD 指标在数据选择上的有效性远超随机选择、基于多样性、低 IFD 分数或仅基于条件回答分数等基线方法。
-
对精选数据特征的分析揭示,高 IFD 分数的数据样本更倾向于那些需要创造性、深度理解和更多知识的复杂任务。
-
预经验模型的存在对于 IFD 分数的有效计算至关重要,且存在一个相对较小的最佳预经验数据量。
-
该方法在 LLaMA2 系列模型上也展现了稳定的泛化能力和优势。
总体而言,本文的工作强调了数据质量而非数量在指令微调中的决定性作用,并提供了一种高效、资源节约的自动化数据选择范式,为 LLM 的训练带来了变革性影响。
7.2. 局限性与未来工作
- 预经验模型的训练不便性: 作者明确指出,该方法的主要局限性在于训练预经验模型带来了不便。尽管 IFD 分数本身简单有效,但预经验阶段的引入使得整个流程变得复杂。
- 权衡: 从研究角度看,使用预经验模型更合理且性能更好,因为它赋予了基础模型基本的指令遵循能力,使得条件回答分数的计算更具意义。然而,从实际应用角度看,直接在基础模型上计算 IFD 分数可能更高效,并且实验结果也表明其仍然有效。这构成了一个研究与实际应用之间的权衡。
- 最佳精选样本数量的确定: 尽管本文方法提供了密集的 IFD 分数,增强了数据选择的灵活性,但如何确定最佳的精选数据量仍未完全探索。这受到 IFD 绝对值、困难样本分布以及原始数据集大小等多种因素的影响。作者建议,根据经验研究,选择 IFD 分数最高的 top 10% 样本是一个安全且合理的选择。
未来工作方向:
- 进一步研究如何在不训练预经验模型的情况下,提升 IFD 分数的稳健性和有效性(例如,通过更智能的提示策略或弱语言模型进行计算,如 Superfiltering 中探索的)。
- 探索更精细的数据选择策略,例如结合 IFD 分数与其他数据特征(如多样性、覆盖率)来优化精选样本集。
- 将 IFD 指标应用于指令数据生成领域,指导生成更有效、更高质量的指令。
7.3. 个人启发与批判
7.3.1. 个人启发
这篇论文提供了几个重要的启发:
- “质量至上”的量化: LIMA 等工作提出了“质量至上”的理念,而本文通过 IFD 指标将其量化,并提供了一种自动筛选高质量数据的方法。这对于实际应用中如何从海量低质量数据中提炼价值具有指导意义。
- 模型内在能力的挖掘: 这种“自引导”的思路非常巧妙,它不依赖外部的强模型或昂贵的人工标注,而是通过模型自身的反馈(损失变化)来判断学习难度。这表明我们可以更多地信任和利用模型自身的“元学习”能力来进行数据策展。
- IFD 的普适性: IFD 指标的设计非常优雅,它通过比率的方式消除了答案本身难度带来的偏差,更纯粹地捕捉了“指令遵循”的难度。这种思路可能可以推广到其他需要衡量“任务难度”或“上下文依赖度”的场景。
- 高效训练的潜力: 仅用 5%-10% 的数据就能超越全数据训练,这对于资源有限的研究者和开发者来说是一个巨大的福音,能够大幅降低 LLM 微调的成本和时间。
7.3.2. 批判
- 预经验阶段的开销仍需优化: 尽管作者承认预经验阶段的不便性,但其仍然是整个方法链条中不可或缺的一环(特别是在理论上)。即使只训练一个 epoch,对于非常大的基础模型和数据集,这仍然可能是一个不小的开销。未来工作如果能彻底移除或大大简化这一阶段,将使方法更具吸引力。
- IFD 指标的鲁棒性边界: IFD 指标基于损失比率,这在理论上是合理的。然而,损失本身对噪声和异常值敏感。当指令或答案存在严重错误(例如,完全错误的真实标注数据 (Ground Truth))时,IFD 的计算是否仍然鲁棒?特别是当 IFD > 1 时被视为“误对齐”,这固然可以筛选掉一些低质量样本,但其阈值和判断标准是否能覆盖所有复杂情况?
- “困难”的定义: 论文将高 IFD 分数定义为“困难”或“有价值”的样本。但“困难”是否等同于“高价值”?对于某些基础能力,模型可能需要大量简单的、重复的样本来巩固。一味追求“困难”样本,可能会导致模型在基础能力上有所欠缺,尽管它可能在复杂任务上表现出色。未来的研究可以探索“困难”与“重要性”之间更细致的平衡。
- 领域泛化性: 尽管在 Alpaca 和 WizardLM 上表现良好,这两个数据集主要侧重于指令遵循和生成。在其他更具体的领域(如代码生成、数学推理等)中,IFD 指标和精选数据特性是否仍然保持一致的有效性,还需要进一步验证。特别是论文中也提到,在 Math 和 Coding 类别中,基础 7B 模型表现不佳,可能需要更多数据。
- 可解释性与人工洞察: 尽管 t-SNE 可视化和动词-名词分析提供了一些洞察,但数据过滤的黑箱特性仍然存在。为什么某些特定类型的“故事创作”指令会获得高 IFD 分数?更深入地理解 IFD 分数背后的语义,可以帮助我们进一步优化指令设计和数据生成策略。
相似论文推荐
基于向量语义检索推荐的相关论文。