type
status
date
slug
summary
tags
category
icon
password
time
2023-09
paper
code
org.
Apple
个人博客地址

Motivation

训练一个好的CLIP模型依赖大规模高质量的训练数据。通过爬虫,可以很容易从互联网爬取大量(上千亿)的图文数据,满足大规模的要求是容易的。但是,互联网中的图文数据含有大量噪声,为了提升质量,数据治理(data curation)必不可少。如何设计一个鲁棒、低成本的data curation方案也是目前的一个研究热点,也是这篇文章的主题。

Main Idea

Data Filtering Network 的核心流程如下:
STEP1: 用高质量的数据训练DFN(data filter network)
STEP2: 用训练好的DFN对uncurated data进行过滤,得到DFN induced Dataset
filtering的代码逻辑
STEP3: 用DFN induced Dataset训练CLIP
总体是一个二阶段的训练过程,先训练DFN,再训练CLIP。
notion image

实验

部分英文名词进行说明
description
uncurated data/data pool
未清洗的大规模爬取数据集
filter dataset
用来训练DFN的数据集
induced dataset
对data pool用DFN进行过滤的数据集
induced model
用induced dataset训练的CLIP模型

Data Filtering Network的形式探究

DFN的本质上是一个判别模型。给定一个sample,DNF判别其是否为正例。作者主要探究了3种DFN的形式:
  1. 仅考虑图片信息,建模为binary classification。具体来说,将CC12M和imageNet的图片作为正例(高质量图片),CommonCrawl的图片作为负例(低质量图片),训练一个分类模型来filter。
  1. 建模为重建任务。以mask区域的重建质量作为判别依据。具体来说,用高质量的图文数据训练M3AE。推理阶段计算data pool 图片mask区域的重建损失,高的作为噪声。
  1. CLIP形式。用CLIP score进行filter。(作者最后用该方法训练DFN)
notion image
DFN和之前常用的CLIP filtering算法形式上一致。主要区别在于DFN中的CLIP是在高质量数据上训练的,过滤效果好一些。另外论文提供的一些实验上的insighting可以参考。

数据质量对DFN性能的影响

作者用induced model在下游任务的性能来间接评估DFN的性能。
作者评估用不同的高质量数据训练的DFN所产生的induced model的性能。实验发现:DFN的训练数据质量低时,induced model的性能明显下降。
notion image

Induced Dataset的构建

作者迁移OpenAI CLIP的权重,在HQITP-350M 高质量图文对数据上对其进行微调,得到DFN,随后用该模型对data pool数据进行打分,过滤得到DFB2BDFN5B数据集,具体流程:
dataset
data pool
fiterring rule
DFN2B
DataComp-xlarge (12.8B)
将score得分在前2B(约15%)的数据作为induced dataset
DFN5B
DataComp-xlarge (12.8B) + 30B 额外的爬取数据
将score得分在前5B的数据作为induced dataset

DFN二阶段训练范式必要性研究

作者进一步探究所提出的二阶段范式的必要性
stage1: 训练DFN。“high quality filter dataset → DFN”,
stage2: 训练induced model。“data-pool → DFN (trained)→ induced dataset → induced model”
具体结果见表:
notion image
作者对比用DFN filter 和用OpenAI的CLIP fileter(OAI ViT-B/32 Induced Dataset ) 在评估数据集的效果。有点困惑的是:作者的DFN2B用的是前15%的数据。而baseline 似乎用的是clip score > 0.3的数据。似乎不太公平?

Data Pool 对DFN性能的影响

从下表可知,DFN的性能随data pool size的增加而增加。这也很好理解,data pool越大,经过DFN过滤后,排在前2B的数据平均score就越高。
notion image
由于HQITP-350M 数据是闭源的。作者也在开源高质量数据上训练DFN,验证其方法的有效性
notion image
上表也间接验证了`数据质量对DFN性能的影响`。同样规模induced dataset, HQITP-350M 训练的DFN相较开源高质量数据,induced model的性能在不通data pool下都下降了7-8个点。

小结

文本从data curation的方向研究如何提升CLIP的performance。本文核心是提出了一个二阶段的训练范式:
  • Stage1: 用高质量数据训练DFN。“high quality filter dataset → DFN”;
  • Stage2: 用DFN清洗后的数据训练induced model (即CLIP)。“data-pool → DFN (trained)→ induced dataset → induced model”。
 
BLIP3技术小结(xGen-MM (BLIP-3): A Family of Open Large Multimodal Models)CLIP相关论文泛读
  • Twikoo