ALIGN

ALIGN:Scaling Up Visual and Vision-Language Representation Learning With Noisy Text Supervision 论文笔记

​ 这是谷歌在2021年2月放出地一篇文章,关于visual and vision-language representations,其中在图文检索地指标上达到了sota,但是相应地成本代价也很大,论文中art性也没有那么高,属于一力降十会,且数据集私有,不存在复现可能,总体来说商业价值大于学术价值。

abstract

​ 现有地vision-language总是需要大量昂贵地数据集,和复杂数据清理。这个成本限制了数据集规模,阻碍了训练模型的扩展。本文我们采用超过十亿图文对的有噪声的数据集(没有像Conceptual Captions dataset那样的复杂过滤和后处理)。简单的双encoder架构学习视觉与语言的表示。最终结果现实我们实现了语料库的规模弥补了噪声带来的损失,并实现了sota,而且这个简单的方案,在迁移导imagenet,VTAB分类任务上也拥有强大的性能。对齐任务在F30k与MScoco数据集上表现也是如此,即使是更复杂的交叉注意力的模型(art类的),而且这些表征还支持复杂的检索模式。

intro

​ vision-language 预训练数据集例如conceptual captions(2018),Visual Genome Dense Captions(2016),ImageBERT需要复杂的人工标注,语义解析,清理平衡等工作,所以这些数据集量级在1000万左右比视觉领域的同类小了一个数量级,比NLP的语料库少的更多。

​ 本文仿照 Conceptual Captions dataset来拥有一个大的nosiy的dataset,随后只进行简单频率滤波,最后得到的数据集虽然nosiy,但是数量级大于前者两个数据集,最终学到一个sota的visual-semantic embedding,并命名我们的模型为:ALIGN:A Large-scale ImaGe and Noisy-text embedding.,encoders通过对比损失(格式为规范化softmax)学习,将匹配图文对的embedding推在一起,不匹配的排斥。我们的图文对比损失类似于传统的基于标签的分类目标。关键区别在于文本encoder会生成label的weights。

​ 对于跨媒体检索任务,ALIGN比之前sota高了7%,并且学到的image representation也在各种下游任务取得优异表现,在imagenet实现了88.64%top-1精确

related

​ 与之前的一些较慢不实时的方法不行,那些现实难应用,采用VSE那一系,另外与本文最近似地是CLIP,但是CLIP收集地是英文维基百科下构建地高频视觉概念地allowlist,而我们是原始地alt-text地图像-文本对的自然分布(可以理解为CLIP数据集是来自科普性的维基百科,指代性较强)

A Large-Scale Noisy Image-Text Dataset

​ 仿照Conceptual Captions dataset得到大量raw English alt-text data (image and alt-text pairs) ,以质量换数量,只采用较小的频率滤波,得到带18亿带有噪声图文对,另外删除了与下游评估数据集相似近似的图文对(ILSVRC-2012, Flickr30K, and MSCOCO )排除超过10图共享的alt-texts (多是1920x1080”, “alt img”,and “cristina” 无意义词 )太长太短都删去(❤️ unigrams or>20 unigrams)

Pre-training and Task Transfer

在这里插入图片描述

​ 图像部分采用efficientnet-L2+全局pooling,无分类头的1*1conv层,文本采用BERT-Large encoder, loss用normalized softmax loss.最小化i2t,t2i的loss和。只有匹配为positive,其他不匹配为negative。其中softmax温度参数是跟着其他参数一起学,不用手动指定。
在这里插入图片描述

​ 同时对于图文检索任务扩展到CXC数据集,探索四种范式的检索i2t,t2i,i2i,t2t,三个语义相似任务:语义文本相似,语义图像相似,语义图像文本相似,数据集来自MSCOCO

​ 图像effnet-L2,输入289*289,先resize到346,随机裁剪翻折,softmax初始为1后面设0.1的label smoothing parameter,LAMB优化器和权重衰减1e-5,学习率10k steps从0线性warm up到1e-3,再1.2M steps(12 epoch)内线性下降到0。用了1024块TPUv3训练,每块有16个positive pairs,总共batchsize开到16384.

​ 微调的参数设置和后面关于视觉分类任务的设置就不赘述了。下面上一些实验结果

results

​ 在F30k与MScoco的表现结果,典型的一力降十会,完爆现有领域的数据集测试结果。比现有的sota结果R@1能高差不多20%,在F30k接近满分
在这里插入图片描述

​ 在CXC数据集上与VSE++,VSRN等的表现结果对比:
在这里插入图片描述

​ ALIGN虽然在跨模态表征优势大,但是在intra-modal task表现没有前者显著。
在这里插入图片描述

​ 在imagenet分类结果:
在这里插入图片描述

​ 细粒度迁移分类任务:
在这里插入图片描述

​ 模型架构选择:整体表现越深越复杂的backbone越好,无论bert还是efficientnet
在这里插入图片描述

​ 消融实验:2-4行现实随着embedding的维数增加,性能提高,所以使用L2对应1376的effnet作为视觉backbone,5-6行显示softmax损失中使用更少的batch内的negative会降低性能。7-8行显示与学习的温度参数相比收敛到1/64较好,有些固定温度虽然好,但我们使用学习温度,因为其让学习更容易。
在这里插入图片描述

​ 更大的模型比更小的好,大规模数据集必不可少,如cc-3M上训练的模型,B7版本开始过拟合,呈现比B3版本更差的效果,所以需要一个更大的模型来充分利用更大的数据集。所以可能如果在MSCOCO上该模型从头训会特别差。
在这里插入图片描述

最后实验了一种图片+修改属性的词的组合的新的搜索范式
在这里插入图片描述
最后,这个预训练模型和数据集商业价值很大,还有代码是不可能公开的。

注:这篇blog是我去年4月写的,今日清理文件夹发现,感觉不发可惜,过了一年大规模预训练已成历史大势,最新比较好的工作可以参看openAI的flamingo。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值