像 LLaVA 和 GPT-4V 这样的大型视觉语言模型 (LVLM) 的发展已经彻底改变了机器理解世界的方式。这些模型通常分两个阶段进行训练: 首先是基于图像-字幕对的大规模预训练,其次是视觉指令微调 (Visual Instruction Tuning, VIT) 。 第二个阶段至关重要——它教会模型真正听从用户指令、回答问题并对视觉内容进行推理。

然而,我们遇到了瓶颈。为了让这些模型具有良好的泛化能力,我们不断地向它们投喂越来越大的数据集。对于大多数学术实验室和小型机构来说,在数百万个指令对上进行训练的成本高得令人望而却步。这就提出了一个关键问题: 我们真的需要所有这些数据吗?

在这篇文章中,我们将深入探讨一篇题为 “Concept-skill Transferability-based Data Selection for Large Vision-Language Models” (基于概念-技能可迁移性的大型视觉语言模型数据选择) 的研究论文。研究人员介绍了 COINCIDE , 这是一种新颖的方法,用于选择一个小型、高效的训练数据子集 (“核心集”) ,使模型能够达到与全量数据训练相当的性能——但训练时间减少了 70%。

当前数据选择存在的问题

选择数据子集 (核心集选择) 的想法并不新鲜。在标准的基于文本的 LLM 中,困惑度 (perplexity) 过滤或 EL2N 分数等技术被用来识别“高质量”或“困难”的样本。

然而,视觉-语言任务是独特的。它们是多模态的,且高度多样化。一个数据集可能包含简单的物体识别任务、复杂的光学字符识别 (OCR) 、空间推理谜题或对话查询。

当研究人员将传统的选择指标应用于这些多样化的数据集时,他们发现了一个重大问题: 偏差 (Bias) 。

图 1 显示了 LLaVA-1.5 任务中的分布偏差。

图 1 所示,不同的任务 (由不同颜色表示) 表现出截然不同的分数分布。

  • 上图 (EL2N): 如果你根据误差分数 (EL2N) 选择数据,你可能会无意中选择了主要由 A-OKVQA 和 OCR-VQA 等任务组成的“中间 20%”,而忽略了其他任务。
  • 下图 (Self-Filter): 如果你使用像 Self-Filter 这样的指标,你会严重偏向 ShareGPT 和 GQA (“前 20%”) 。

如果依赖单一指标,你会意外地剥离数据集的多样性。你可能会得到一个擅长 VQA 但在推理方面很糟糕的模型,仅仅是因为选择指标偏好某种类型的数据分布。

洞察: 概念-技能组合

COINCIDE 的作者提出,我们不应该仅仅通过“任务 ID” (例如,这是 VQA 图像,这是字幕图像) 来看待数据。相反,我们应该关注底层的概念-技能组合 (Concept-Skill Compositions)

不同的数据集通常测试相同的底层能力。请看图 2 :

图 2 显示了不同任务如何共享底层技能。

  • 第一行: VQAv2 和 GQA 都询问狗的颜色。尽管它们是不同的数据集,但它们共享这样的组合: “狗在水中玩耍 / 颜色属性”。
  • 第二行: LLaVA-Conv 和 LLaVA-Reason 都询问关于滑雪板运动员的问题。它们共享: “带着滑雪板跳跃 / 推理”。

如果我们能识别出这些底层的技能聚类,我们就可以通过采样来覆盖所有不同的组合,而不是过度采样某一个特定的数据集。

COINCIDE 方法

COINCIDE 代表 COre INstruction Concept-skIll Data Election (核心指令概念-技能数据选举) 。这是一个使用小型参考模型为大型目标模型筛选数据的流程。

该方法基于三大支柱:

  1. 聚类 (Clustering) 以发现概念和技能。
  2. 可迁移性 (Transferability) 以优先考虑有用的聚类。
  3. 密度 (Density) 以避免冗余。

以下是该流程的高层概览:

图 3 展示了 COINCIDE 的工作流程。

让我们从数学和概念上分解每一步。

1. 通过聚类发现概念

为了按“技能”对数据进行分组,我们需要图像和文本的丰富表示。作者发现仅使用模型的最终输出是不够的。相反,他们使用一个现成的小型 LVLM (如 TinyLLaVA-2B) ,并提取多个中间层的神经元激活。

为什么要用多个层?神经网络的早期层可能捕捉简单的边缘或颜色,而更深的层则捕捉复杂的推理或语义意义。通过结合它们,我们得到了概念-技能组合的整体“指纹”。

数据点的特征向量 \(u^m\) 是通过对选定层的特征进行归一化和拼接而创建的:

展示多层特征拼接的公式。

使用这些丰富的特征向量,算法执行 K-Means 聚类 (将 \(K\) 设置得非常高,例如 10,000) 以对训练数据进行分组。每个聚类 \(C_i\) 代表一个特定的“概念-技能组合”。

2. 测量可迁移性

这是论文最新颖的贡献。并非所有数据聚类都是生而平等的。有些聚类包含“基础”知识,可以帮助模型学习其他任务。这就是可迁移性 (Transferability)

如果学习聚类 A 有助于模型在聚类 B 上表现良好,那么聚类 A 就具有高可迁移性。理想情况下,我们希望直接测量这一点:

可迁移性 T 的公式。

在这个公式中,\(T_i\) 表示在聚类 \(i\) 上进行训练能在多大程度上改善其他目标聚类 (\(j\)) 的损失。

然而,直接计算这个是不可能的——你必须训练成千上万个模型来测试每一对聚类。作者需要一个计算成本低廉的代理指标。他们假设: 在特征空间中彼此靠近的聚类可以很好地相互迁移。

他们测试了这个假设,并发现了很强的相关性:

图 4 显示了余弦相似度与可迁移性之间的相关性。

正如图 4 所示,聚类质心的平均余弦相似度 (\(S\)) 与其其实际的可迁移性 (\(T\)) 之间存在显著的正相关关系 (皮尔逊 \(r \approx 0.7\)) 。

这使得作者可以使用一个简单的代理指标 \(S_i\),它的计算成本很低:

作为代理指标的余弦相似度 S 的公式。

较高的 \(S_i\) 意味着该聚类位于“技能空间”的中心位置,并与许多其他聚类共享特征,使其成为训练的高优先级候选者。

3. 测量密度

我们还需要考虑效率。如果一个聚类非常密集,这意味着其中的数据点彼此非常相似。我们不需要从中大量采样,因为信息是冗余的。

密度 \(D_i\) 计算为聚类中成对样本之间的平均高斯核距离:

聚类密度 D 的公式。

低 \(D_i\) 表示聚类具有多样性;高 \(D_i\) 表示冗余。

4. 采样策略

COINCIDE 使用从上述两个指标导出的分类分布来确定从每个聚类中选取的样本数量 (\(P_i\)) :

\[ P_i \propto \exp\left(\frac{S_i}{\tau D_i}\right) \]

其中 \(\tau\) 是温度超参数。

  • 高可迁移性 (\(S_i\)) : 增加采样概率。
  • 高密度 (\(D_i\)) : 降低采样概率 (因为我们除以 \(D_i\)) 。

一旦确定了某个聚类的样本数量,就会选择特定的样本以最小化最大均值差异 (MMD) 。这确保了所选子集在统计上类似于完整的聚类。

MMD 最小化公式。

实验结果

研究人员在两个主要数据集上测试了 COINCIDE: LLaVA-1.5Vision-Flan 。 他们将其与 8 个强基线进行了比较,包括随机采样 (Random) 、CLIP-Score 以及像 Self-Filter 这样的最新方法。

LLaVA-1.5 上的表现

在仅使用 20% 训练数据的正面交锋中,COINCIDE 优于所有基线。

表 1 比较了 LLaVA-1.5 上的性能。

表 1 中,你可以看到 COINCIDE (最后一行) 与全量微调 (Full-Finetune) 模型相比,实现了最高的相对性能 (97.4%) 。它在几乎所有基准测试中都击败了“Self-Filter”和“SemDeDup”等复杂方法,特别是在 VQAv2 和 ScienceQA (SQA-I) 等多样化任务中。

这种性能的一致性在不同的采样率下都很明显:

图 5 显示了不同采样率下的性能。

图 5 显示,即使在非常低的采样率 (5-10%) 下,COINCIDE (黑线) 也保持了对其他方法的领先优势。值得注意的是,像 Self-Filter (深蓝色虚线) 这样的方法在低数据量下的表现非常差。

Vision-Flan 上的表现

Vision-Flan 数据集上的结果更加令人印象深刻。该数据集包含 191 个不同的任务,具有高度的异构性。

表 2 比较了 Vision-Flan 上的性能。

表 2 所示,COINCIDE 实际上在使用仅 16.7% 的数据的情况下超越了全量微调模型 (101.0% 的相对性能) 。这表明全量数据集中包含噪音或相互冲突的信息,而 COINCIDE 有效地过滤掉了这些信息。

效率: 帕累托前沿

这项研究最关键的方面之一是计算效率。如果选择过程比在全量数据集上训练还要长,那么核心集选择就毫无用处。

图 7 比较了时间成本与相对性能。

图 7 绘制了相对性能与总挂钟时间 (选择 + 训练) 的关系图。

  • 目标: 左上角 (高性能,低时间) 。
  • 结果: COINCIDE (黑线) 主导了帕累托前沿。
  • 比较: 像 Self-Filter (蓝线) 这样的方法需要训练一个单独的评分网络,将其时间成本推向右侧 (70-80 小时) 。COINCIDE 在大约 30 小时内达到了约 99% 的性能,而全量微调需要 50 小时。

为什么它有效?审视聚类

为了验证聚类是否真的对语义技能进行了有意义的分组,作者对聚类进行了可视化。

图 11 显示了数据聚类的示例。

图 11 显示该方法成功地按复杂的组合技能对数据进行了分组:

  • 第一组: “商店招牌 & OCR + 计数”。
  • 第二组: “等候公共交通工具”。
  • 底部组: “儿童与动物 & 推理”。

因为 COINCIDE 从所有这些聚类中采样 (根据可迁移性加权) ,它确保了没有特定的技能被遗漏。

我们可以在图 13 中看到这对多样性的影响。

图 13 显示了任务间的样本分布。

X 轴代表不同的任务。

  • 有偏差的方法: 看看“D2-Pruning”或“Self-Filter”。它们有巨大的峰值,过度采样某些任务,却忽略了其他数百个任务。
  • COINCIDE (底部) : 它保持了更加平衡的分布,类似于随机采样,但针对效用进行了优化。

结论

COINCIDE 论文为大型视觉语言模型的“数据饥渴”提供了一个令人信服的解决方案。通过巧妙地利用一个小型的、高效的模型来映射数据集的“概念-技能”图景,我们可以识别出哪些数据点是最好的老师。

关键要点:

  1. 多样性至关重要: 仅关注难度 (如损失) 的指标往往会使数据产生偏差,从而损害泛化能力。
  2. 可迁移性是关键: 位于概念空间“中心”的数据有助于模型学习相邻的任务。
  3. 效率: 我们不需要巨大的算力来选择数据。一个 2B 的小模型可以有效地为 7B 或 13B 的模型筛选数据。
  4. 少即是多: 在像 Vision-Flan 这样的复杂数据集上,移除 83% 的数据实际上通过减少噪音提高了模型的性能。

随着模型规模越来越大,像 COINCIDE 这样的技术对于可持续、高效的 AI 开发将至关重要,它使研究人员无需工业级计算集群即可训练出强大的多模态系统。