如果你曾经训练过机器学习模型,那你一定深知其中的痛苦。你拥有绝妙的架构和明确的目标,但最终却撞上了不可避免的瓶颈: 数据。特别是带标签的数据。

多年来,获取高质量标签的黄金标准一直是人工标注。无论是依赖昂贵的领域专家 (如医生标注 X 光片) 还是众包平台 (如 Amazon Mechanical Turk) ,这个过程都缓慢、昂贵且往往缺乏一致性。

但我们目前正见证着一种范式转移。消耗数据的模型——大语言模型 (LLMs) ——现在也有能力生产数据。

在这篇深度文章中,我们将探索一篇题为 “Large Language Models for Data Annotation and Synthesis” 的综述论文。这篇论文不仅仅列出了工具;它还提供了一个结构化的分类体系,说明我们如何利用 GPT-4 和 LLaMA-2 这样的 LLM 来自动化 AI 流水线中最枯燥的部分。我们将详细拆解 LLM 如何生成标注、我们如何验证其质量,以及我们如何利用这些合成数据来训练出更好的模型。

瓶颈: 为什么我们需要合成数据

在讨论解决方案之前,让我们简要地了解一下问题的背景。数据标注不仅仅是将电子邮件标记为“垃圾邮件”或“非垃圾邮件”。现代 NLP 任务需要复杂的辅助信息。

为了构建当今最先进的模型,我们需要:

  • 指令微调数据 (Instruction Tuning Data) : 问题与复杂答案的配对。
  • 推理链 (Reasoning Chains) : 解释答案为什么正确的逐步逻辑 (思维链) 。
  • 对齐反馈 (Alignment Feedback) : 告诉模型哪种回复更安全或更有帮助的排名信息 (这对 RLHF 至关重要) 。

大规模人工创建这些数据几乎是不可能的。这正是 LLM 介入的地方。研究人员将这一工作流程分为三个不同的阶段: 生成 (Generation)评估 (Assessment)利用 (Utilization)

图 1: 关于 LLM 用于数据标注的现有研究分类体系。

图 1 所示,这个领域非常广阔。我们不仅仅是在生成标签;我们还在创建基本原理 (Rationales) ,用“LLM 裁判”来验证它们,并将其反馈回模型以进行对齐和推理。让我们逐一解析。

第一阶段: 基于 LLM 的标注生成

这篇综述的主要贡献之一是对 LLM 可以生成什么进行了分类。它远远超出了简单的分类任务。研究人员确定了几个关键类别,在这些类别中,LLM 充当“标注者”模型 (\(A\)) 来为“任务学习者” (\(L\)) 创建数据。

1. 指令与回复

这是当前生成式 AI 繁荣的燃料。为了让基础模型 (如原始 GPT-3) 变得有用,它需要根据指令进行微调。现在,LLM 被用来自己生成这些数据。

  • 指令多样性 (Instruction Diversity) : 一个主要的挑战是确保合成数据涵盖广泛的主题。像 Self-Instruct 这样的技术涉及给 LLM 一些“种子”示例,并要求它基于这些示例构思出新的、独特的指令。
  • 回复质量 (Response Quality) : 一旦有了问题,你就需要完美的答案。研究人员使用诸如“自洽性 (Self-Consistency) ” (要求模型回答多次并选择最常见的结果) 或“原则驱动提示 (Principle-Driven Prompting) ” (告诉模型遵守特定的道德准则) 等策略,以确保合成回复的高质量。

2. 标签与分类

这是经典的用例。可以通过提示 LLM 让其充当零样本分类器。例如,你可以给 LLM 一条推文并问: “这是正面的、负面的还是中性的?”综述强调,对于许多任务,LLM 正接近众包工人的准确率,但时间和成本却只有其一小部分。

3. 原理与推理 (“为什么”)

也许最令人兴奋的发展是原理 (Rationales) 的生成。在传统数据集中,你可能只有一个数学问题和最终答案。但要教会模型如何思考,它需要看到步骤。

LLM 非常擅长生成思维链 (Chain-of-Thought, CoT) 数据。通过提示 LLM “让我们一步一步地思考”,它会生成通往解决方案的逻辑路径。这种合成的推理数据随后被用于训练较小的模型 (学生模型) ,使其推理能力可以媲美巨大的教师模型。

如下方图 2 所示,简单的指令生成与原理生成之间的区别是显著的。

图 2: 基于 LLM 的标注生成示例。

原理 (Rationale) 示例 (第二个面板) 中,请注意模型不仅仅输出“4”。它分解了逻辑: “16 的一半是 8… 8 的一半是 4。”这种中间数据对于训练推理能力来说是无价之宝。

4. 成对反馈与对齐

为了使模型安全且有用,我们通常使用人类反馈强化学习 (RLHF) 。这需要人类查看两个模型输出并对它们进行排名。

综述讨论了 RLAIF (AI 反馈强化学习) 。 在这里,一个强大的 LLM 充当人类的角色。它查看两个回复并根据评分标准 (例如,“哪个回复更礼貌?”) 对它们进行排名。图 2 (第三个面板) 说明了这一点: LLM 比较输出 A 和输出 B,提供一个排名,作为训练的奖励信号。

第二阶段: 评估质量

如果一个 LLM 生成数据,而另一个 LLM 在其上进行训练,我们是否只是在制造一个错误的恶性循环?这是一个合理的担忧。综述详细介绍了研究人员如何评估 LLM 生成的标注,以防止“模型崩溃 (Model Collapse) ” (即模型变得越来越差/愚蠢) 。

“LLM 即裁判” (LLM-as-a-Judge)

最流行的评估方法之一是使用能力极强的模型 (如 GPT-4) 来为较小模型的输出打分。这种方法具有可扩展性,且与人类判断的相关性惊人地高。

过滤策略

你不能简单地接受所有合成数据。论文概述了三种主要的过滤技术:

  1. 基于规则: 丢弃太短、太重复或未能通过基本格式检查的输出。
  2. 外部来源: 使用奖励模型或单独的分类器对数据进行评分,仅保留前 10% 的样本。
  3. LLM 驱动: 要求 LLM 自我验证。例如,在生成答案后,你可以提示模型: “你确定这是正确的吗?给出一个置信度分数。”

第三阶段: 利用标注

一旦我们要了这座合成数据的大山,我们该如何使用它?综述将利用方式归类为三种方法。

1. 监督微调 (蒸馏)

这是最常见的应用。你取一个巨大的、专有的模型 (教师) ,生成数百万个指令-回复对,并利用它们微调一个较小的、开源的模型 (学生) 。这使得一个 70 亿参数的模型能够表现出类似于 1750 亿参数模型的行为,极大地推动了 AI 的普及。

2. 对齐微调

如前所述,合成的“成对反馈”使我们能够在不需要数千小时人工的情况下对齐模型。通过在合成排名上训练奖励模型,我们可以使用强化学习引导模型走向安全和有用。

3. 推理增强

我们并不总是需要重新训练模型。我们可以利用 LLM 生成的数据来提高推理过程中的性能。

  • 上下文学习 (In-Context Learning) : LLM 可以生成自己的“少样本 (few-shot) ”示例放入提示中,帮助它们更好地理解任务。
  • 自洽性 (Self-Consistency) : 模型生成多条推理路径,并对最佳答案进行“投票”。

行业工具

论文很好地介绍了围绕这一研究发展起来的生态系统。这不再仅仅是编写原始 Python 脚本的问题;复杂的工具正在涌现,以帮助工程师管理 LLM 标注工作流程。

Stack AI (如图 3 所示) 提供了一个可视化仪表盘。用户无需从头编写复杂的链条代码,而是可以通过拖放组件来设计标注工作流程,组合不同的 LLM 和数据加载器。

图 3: Stack AI 仪表盘。它们为用户提供了一个可视化界面来设计和跟踪 AI 工作流程。

对于更多文档密集型的任务,像 UBIAI (图 4) 这样的工具允许在 PDF 内标注复杂的实体。LLM 可以预先标注文档 (识别产品名称、CAS 编号等) ,人类只需要进行审查和更正。这种“人机协同 (Human-in-the-loop) ”的方法比从空白页开始大大加快了流程。

图 4: UBIAI 在 PDF 文档上的标注结果。文档文本中的所有实体都已根据类型被识别、标注并进行颜色编码。此图片借用自 UBIAI 文档中提供的视频 (Amamou, 2021)。

挑战与启示

综述最后批判性地审视了风险。虽然 LLM 标注效率很高,但也并非没有危险。

1. 幻觉

如果教师模型产生了一个事实性幻觉,学生模型就会将这个谎言当作真理来学习。检测合成数据中的幻觉比检测简单的格式错误要难得多。

2. 偏见传播

LLM 是在互联网数据上训练的,其中包含社会偏见。如果我们使用这些模型生成数百万个训练示例,我们就面临着在下一代模型中放大这些偏见的风险。

3. 模型崩溃

我们在多大程度上可以利用合成数据进行训练是有理论极限的。如果模型只从其他模型的输出中学习,它们最终会失去分布的“长尾”部分——即人类语言中罕见、富有创造力和细微差别的部分——并收敛成平庸、重复的平均值。

结论

综述《Large Language Models for Data Annotation and Synthesis》描绘了一个快速发展的领域。我们要正在告别数据必须人工采集的静态资源时代。今天,数据是一种可以由 AI 自身合成和提炼的动态资源。

对于学生和研究人员来说,这开启了难以置信的机遇。你不再需要雇佣 10,000 名人工标注员的预算来构建有竞争力的数据集。你只需要一个巧妙的提示、一个强大的教师模型和一个严格的过滤流水线。

然而,当我们把“教师”的角色交给 AI 时,人类作为“评估者”的角色变得比以往任何时候都更加重要。我们不再是劳工;我们是监督者。


这篇博客文章解释了 Tan 等人的综述论文 “Large Language Models for Data Annotation and Synthesis: A Survey” 中的概念。