关注公众号,发现CV技术之美
本篇分享论文『MixGen: A New Multi-Modal Data Augmentation』,如何在多模态数据上进行数据增强?亚马逊李沐团队提出简单有效的MixGen,在多个多模态任务上显著提升性能!
详细信息如下:
论文地址:https://arxiv.org/abs/2206.08358
代码地址:未开源
01
摘要
数据增强是提高深度学习中数据效率的必要条件。对于视觉语言预训练,数据仅在以前的作品中针对图像或文本进行增强。在本文中,作者提出了MixGen:一种用于视觉语言表示学习的联合数据增强,以进一步提高数据效率。它通过插入图像和连接文本来生成具有语义关系的新图像-文本对。它很简单,可以即插即用到现有的pipeline中。
作者在四种架构上评估 MixGen,包括 CLIP、ViLT、ALBEF 和 TCL,跨越五个下游视觉语言任务,以展示其多功能性和有效性。例如,在 ALBEF 预训练中添加 MixGen 会导致下游任务的绝对性能提升:图像文本检索(COCO 微调 +6.2% 和 Flicker30K Zero-shot +5.3%),视觉Grounding(+0.9% RefCOCO+)、视觉推理(在 NLVR2 上 +0.9%)、视觉问答(在 VQA2.0 上 +0.3%)和视觉entailment(在 SNLI-VE 上 +0.4%)。
02
Motivation
近年来,视觉语言表示学习研究出现了爆炸式增长。在联合模态学习中,模型跨模态提取丰富的信息以学习更好的潜在表示。然而,这些模型通常使用数千个 GPU 在大量图像-文本对上进行训练。
例如,CLIP仅使用zero-shot就能达到 ResNet-50 在 ImageNet 上的准确度,但它在 256 个 V100 GPU 上使用 400M 图像-文本对训练了 12 天。此外,这些大规模数据集中的大多数都不能公开访问。即使它们可用,对现有方法的复制和进一步改进对于计算资源有限的研究人员来说也是具有挑战性的。
数据增强广泛用于深度学习,以提高数据效率并在计算机视觉 (CV)和自然语言处理 (NLP)的模型训练期间提供明确的正则化。然而,将现有的数据增强技术应用于视觉语言学习并不简单。在图像-文本对中,图像和文本都包含相互匹配的丰富信息。
直观地说,希望它们的语义在数据增强后仍然匹配。例如,考虑一个带有成对句子“一只白狗在绿色草坪的右角玩耍”的图像。对该图像应用裁剪、颜色更改和翻转等数据增强方法可能需要同时更改其配对句子中的颜色和位置词。
为了保留语义关系,以前的工作对视觉或文本模态进行了温和的数据增强。ViLT和后续作品采用 RandAugment用于没有颜色反转的图像增强。CLIP和 ALIGN仅使用随机调整大小的裁剪,没有其他图像增强。在语言方面,大多数文献只是将文本数据增强留给掩蔽语言建模来处理。也有使用协同增强的工作,但仅针对特定的下游任务设计,而不是通用的视觉语言预训练。
在这项工作中,作者提出了一种用于预训练的多模态联合数据增强方法:混合生成(MixGen)。如上图所示,MixGen 通过线性插值图像并连接来自两个现有图像-文本对的文本序列来生成新的训练样本。
可以看到,大多数对象和场景布局都保留在混合图像中,而文本信息则完全保留。在大多数情况下,新生成的图像-文本对内的语义关系是匹配的。因此,可以使用增强数据来改进模型训练。
尽管它很简单,但在强baseline(例如 ALBEF)之上使用 MixGen 始终可以提高五个下游视觉语言任务的最先进性能:图像文本检索(COCO 微调 +6.2% 和 Flicker30K Zero-Shot +5.3%)、视觉Grounding(RefCOCO+ 上 +0.9%)、视觉推理(NLVR2 上 +0.9%)、视觉问答(VQA2.0 上 +0.3%)和视觉entailment(+0.4% 上SNLI-VE)。
MixGen 还提高了数据效率,例如,在 1M/2M/3M 样本上进行预训练时,使用 MixGen 的 ALBEF 的性能分别与在 2M/3M/4M 样本上预训练的 ALBEF 相匹配。此外,作者进行了广泛的消融研究,以了解 MixGen 中各种设计选择的影响。最后,只需几行代码,MixGen 就可以集成到大多数方法中。
在 COCO 上的微调图像文本检索方面,MixGen 对四种流行且多样的架构带来了绝对的改进:ViLT (+17.2%)、CLIP (+4.1%)、ALBEF (+7.0%) 和 TCL (+3.2%)。
03
方法
作者提出了多模态联合数据增强技术:混合生成(MixGen)。假设有一个包含 N 个图像-文本对的数据集,其中图像和文本分别用下标表示为 I 和 T。给定两个图像-文本对和,其中。一个新的训练样本通过以下方法得到:3.1. MixGen variants
MixGen 的形式非常简单。但是,根据图像和文本增强的执行方式,可能会有多种变体。从理论上讲,还可以对混合之外的图像使用其他增强,以及连接之外的其他文本增强,但是设计空间将是棘手的。因此,作者专注于对图像使用混合,对文本使用连接,并选择 5 个最直接的 MixGen 变体来支持本文最终的设计选择。由于默认的 MixGen 采用固定的 λ,作者引入了具有 λ ∼ Beta(0.1, 0.1) 的变体 (a),遵循从 Beta 分布中采样 λ 的原始 mixup 。为了展示执行联合图像文本增强的好处,作者提出了变体 (b) 和 (c)。具体来说,变体(b)混合两个图像并统一选择一个文本序列,而变体(c)连接两个文本序列并统一选择一个图像。最后,作者研究是否应该使用token子集,而不是连接来自两个文本序列的所有token。变体 (d) 基于与图像混合相似的 λ 按比例从两个文本序列中获取token,然后连接。另一个变体 (e) 首先连接所有token,但随机保留其中一半以生成新的文本序列。3.2. Input-level and embedding-level MixGen
另一个设计视角是在哪里应用数据增强。上面的公式直接在原始输入上执行,例如图像和文本序列。或者,可以将 MixGen 的思想应用于嵌入级别。具体来说,可以对从图像编码器中提取的图像特征进行插值,而不是对原始图像像素进行插值。类似地,可以连接从文本编码器中提取的两个序列特征,而不是连接两个文本序列。将关于嵌入的训练对表示为和,新生成的嵌入形式的训练对为:04
实验
05
总结在这项工作中,作者提出了一种新的视觉语言联合数据增强方法,称为 MixGen。在四个最近的最先进模型上添加 MixGen 可以在五个不同的下游任务中实现持续改进。强有力的实证结果表明,MixGen 不仅使这些模型学习到更好的多模态潜在表示,而且还提高了它们的数据效率。参考资料
[1]https://arxiv.org/abs/2206.08358▊ 作者简介研究领域:FightingCV公众号运营者,研究方向为多模态内容理解,专注于解决视觉模态和语言模态相结合的任务,促进Vision-Language模型的实地应用。知乎/公众号:FightingCVEND
欢迎加入「数据增强」交流群👇备注:数据