Auto Byte

专注未来出行及智能汽车科技

微信扫一扫获取更多资讯

Science AI

关注人工智能与其他前沿技术、基础学科的交叉研究与融合发展

微信扫一扫获取更多资讯

Meta 联合纽约大学和华盛顿大学提出MetaCLIP,带你揭开CLIP的高质量数据之谜。

图片
AIxiv专栏是机器之心发布学术、技术内容的栏目。过去数年,机器之心AIxiv专栏接收报道了2000多篇内容,覆盖全球各大高校与企业的顶级实验室,有效促进了学术交流与传播。如果您有优秀的工作想要分享,欢迎投稿或者联系报道。投稿邮箱:liyazhou@jiqizhixin.com;zhaoyunfeng@jiqizhixin.com。

自2021年诞生,CLIP已在计算机视觉识别系统和生成模型上得到了广泛的应用和巨大的成功。我们相信CLIP的创新和成功来自其高质量数据(WIT400M),而非模型或者损失函数本身。虽然3年来CLIP有大量的后续研究,但并未有研究通过对CLIP进行严格的消融实验来了解数据、模型和训练的关系。

CLIP原文仅有简短的数据处理描述,而后续工作依靠已经训练好的CLIP来重新过滤数据去训练CLIP(学生)模型。更广泛地说,虽然目前的开源着重强调已训练模型权重的公开,而训练数据以及如何从低质量数据获得高质量数据的技巧的公开度却往往并不那么高。

本文带你揭开CLIP的数据质量之谜,为开源社区带来元数据导向的CLIP预训练(MetaCLIP)。

图片

  • 原文链接:https://arxiv.org/abs/2309.16671
  • 项目链接:https://github.com/facebookresearch/MetaCLIP
  • 论文标题:Demystifying CLIP Data

MetaCLIP数据质量

MetaCLIP根据CLIP原文对数据处理的描述,提出可扩展到整个CommonCrawl上的数据算法。该算法接受原始互联网数据分布,产生在元数据上平衡的高质量训练数据分布。

MetaCLIP产生的数据质量源自两个部分:

(1) 通过元数据字符串匹配来抓取高质量人类监督文本;
(2)通过平衡数据在元数据上的分布来最大限度保留长尾数据的信号、弱化噪声以及头部分布的冗余信息。MetaCLIP的元数据来自50万个WordNet和维基百科的视觉概念(visual concept),它们使被匹配的alt文本包含超越人类平均认知水平的监督质量(superhuman level supervision)。

我们的实验严格遵循CLIP设定来控制研究数据分布对结果的影响。整个数据提取,训练无需已训练CLIP来过滤数据以及潜在未知的来自OpenAI CLIP的数据偏见。

相反的是,MetaCLIP数据算法同时输出训练数据分布。这使得训练数据更加透明,以方便调试模型。MetaCLIP在400M训练数据上达到ViT-B 70.8%的零样本ImageNet分类精度;使用1B训练数据上达到72.4%;在2.5B训练数据上使用ViT-bigG模型达到82.1%,而整个模型和训练参数并未进行任何更改(比如学习率或批样本量)。

图片

消融实验表明:字符串匹配(MetaCLIP w/o bal. (400M))和平衡分布(MetaCLIP(400M)) 对MetaCLIP的数据质量产生重大贡献。

CLIP数据算法介绍

本文正式提出CLIP数据算法,来简化和产生高质量的训练数据。

该方法大致分为:创建元数据,提出数据算法,提高数据质量及输出训练数据等四个步骤。

具体方法见下:

(1) 实现了CLIP数据的相关描述,包括如何创建元数据;
(2)提出如下数据算法:第一部分为元数据字符串匹配,第二部分为平衡数据分布。该算法简洁可扩展,本文已证明可在所有CommonCrawl 300+B 级图片样本并行运行;
(3)可植入已有数据流水线或者数据加载器(data loader)来提高数据质量;
(4)输出训练数据在元数据上的训练分布使得训练数据更透明。

该算法的python代码如下:
图片
MetaCLIP的元数据来自WordNet和Wikipedia的高质量视觉概念(visual concept)。我们根据CLIP原文描述实现了从维基百科提取uni/bi-gram以及高频标题的过程。

相关选取的超参数如下:

图片

                                元数据的创建来源

MetaCLIP算法简洁,可以将两部分分开植入已有的数据流水线。

如下图所示,该算法可以在数据流水线的早期进行植入,来减小数据规模和对计算资源存储的开销:

  • 第一部分(元数据字符串匹配)能减少50%的数据量;
  • 第二部分(平衡数据分布)能减少77%的数据量。

图片

                                算法可轻松接入已有数据流水线,降低处理低质量数据的开销

下图展示了平衡数据分布的效果:横坐标将元数据里每个视觉概念的匹配数量从低到高排列,纵坐标累计匹配。

表格中展示了不同频率区段视觉概念的匹配数量:

图片

                               平衡数据分布使得1.6B的原始数据被下采样成400M的训练数据。

我们可以看到MetaCLIP数据算法对头部分布进行了高度下采样,这将降低头部分布的冗余无效信息和头部数据的噪声(比如untitled photo),所有长尾分布的视觉概念全部保留。

实验结果

我们设计了两个数据池来运行数据算法。

  • 第一个池的目标是获得400M训练数据来和CLIP进行比较;
  • 第二个池的目标是所有CommonCrawl数据。

我们进一步对第二个数据池运行了两次数据算法,一次设定头尾分布的阈值(t=20k)与400M一致(最终获得1B数据),一次设定尾部分布的比例与400M尾部的比例一致(t=170k,最终获得2.5B数据)。

MetaCLIP在DataComp的38个任务上的实验结果如下:

图片

我们可以看到MetaCLIP在400M上略好于OpenAI CLIP或者OpenCLIP。在第二个池上性能进一步超越400M。更多的数据在更大的模型ViT-bigG上产生更好的效果。而这些性能的提升完全来自数据而非模型结构改进或者训练技巧本身。

在CLIP/SLIP每个分类任务上的详细实验结果请参考原文。

实验结论

本文提出了CLIP的数据算法来产生高质量训练数据:算法可在所有CommonCrawl 的300+B 级图片样本对上并行运行。

实验表明元数据字符串匹配和平衡分布都对结果有重大贡献,算法无需使用CLIP模型过滤或者提高训练开销来提升性能,并且使得训练数据分布更加透明。
工程MetaCLIP
相关数据
权重技术

线性模型中特征的系数,或深度网络中的边。训练线性模型的目标是确定每个特征的理想权重。如果权重为 0,则相应的特征对模型来说没有任何贡献。

参数技术

在数学和统计学裡,参数(英语:parameter)是使用通用变量来建立函数和变量之间关系(当这种关系很难用方程来阐述时)的一个数量。

学习率技术

在使用不同优化器(例如随机梯度下降,Adam)神经网络相关训练中,学习速率作为一个超参数控制了权重更新的幅度,以及训练的速度和精度。学习速率太大容易导致目标(代价)函数波动较大从而难以找到最优,而弱学习速率设置太小,则会导致收敛过慢耗时太长

损失函数技术

在数学优化,统计学,计量经济学,决策理论,机器学习和计算神经科学等领域,损失函数或成本函数是将一或多个变量的一个事件或值映射为可以直观地表示某种与之相关“成本”的实数的函数。

超参数技术

在机器学习中,超参数是在学习过程开始之前设置其值的参数。 相反,其他参数的值是通过训练得出的。 不同的模型训练算法需要不同的超参数,一些简单的算法(如普通最小二乘回归)不需要。 给定这些超参数,训练算法从数据中学习参数。相同种类的机器学习模型可能需要不同的超参数来适应不同的数据模式,并且必须对其进行调整以便模型能够最优地解决机器学习问题。 在实际应用中一般需要对超参数进行优化,以找到一个超参数元组(tuple),由这些超参数元组形成一个最优化模型,该模型可以将在给定的独立数据上预定义的损失函数最小化。

计算机视觉技术

计算机视觉(CV)是指机器感知环境的能力。这一技术类别中的经典任务有图像形成、图像处理、图像提取和图像的三维推理。目标识别和面部识别也是很重要的研究领域。

生成模型技术

在概率统计理论中, 生成模型是指能够随机生成观测数据的模型,尤其是在给定某些隐含参数的条件下。 它给观测值和标注数据序列指定一个联合概率分布。 在机器学习中,生成模型可以用来直接对数据建模(例如根据某个变量的概率密度函数进行数据采样),也可以用来建立变量间的条件概率分布。

WordNet技术

WordNet是由普林斯顿大学心理学家、语言学家和计算机工程师联合设计的一种基于认知语言学的英语词典。它不是光把单词以字母顺序排列,而是按照单词的意义组成一个“单词的网络”。

机器之心机构

机器之心,成立于2014年,是国内最具影响力、最专业、唯一用于国际品牌的人工智能信息服务与产业服务平台。目前机器之心已经建立起涵盖媒体、数据、活动、研究及咨询、线下物理空间于一体的业务体系,为各类人工智能从业者提供综合信息服务和产业服务。

https://www.jiqizhixin.com/
推荐文章
暂无评论
暂无评论~