中文场景下的CLIP图文预训练

人工智能炼丹师
2023-04-01 / 1 评论 / 755 阅读 / 正在检测是否收录...

1. 写在前面

被广泛使用的CLIP模型,采用英文描述和图片对数据集(WebImageText 400M),进行对比学习训练,限制了其在中文场景下的应用。例如,在文生图应用中,国外开源模型Stable Diffusion需要采用英文作为输入,要支持中文描述生成图片得先翻译为英文。此外利用英文语料库训练的模型,对于【红烧狮子头、佛跳墙、对联和中文的成语、历史典故等】中文语境理解不够

在中文场景下的图文理解,近期也有相应的算法提出,包括智源的AltCLIP、阿里的ChinseCLIP、IDEA研究院的Taiyi、Wenlan、Wukong、R2D2等。这些算法各有优劣,本文将对上述算法和相关的数据集进行总结对比。

2. 中文-图文数据集

数据集 说明 机构 下载链接
WuKong 100M 数据集大小100M 华为 https://wukong-dataset.github.io/wukong-dataset/
Zero-Corpus 开源数据集大小23M(共250M) ,通过用户CTR行为数据进行过滤匹配的图文对 360 https://zero.so.com/index.html
Laion5B-CN 包含多语言的图文数据,其中中文约143M LAION https://laion.ai/blog/laion-5b/
M6-Corpus 60M 阿里 数据未开源
TaiSu 166M 中科院自动化所 https://github.com/ksOAn6g5/TaiSu

3. 现有中文CLIP综合对比

多数的中文CLIP均采用固定图像侧模型参数,只训练文本Encoder的方法。为进一步提升性能,ChinseCLIP 采用两阶段训练方案:先只训练文本Encoder,再联合训练图像Encoder+文本Encoder; AltCLIP也采用两阶段训练方案: 利用模型蒸馏,学习不同语种之间的文本语义对齐,再利用图文对对比学习,Finetune文本Encoder。

多数方法虽然提升了模型在中文数据上的指标,但是同时在英文数据上的性能(zero-shot 检索任务)却下降了。截止到目前(2023/04),AltCLIP方法能够在中文和英文数据集上均取得SOTA的结果

算法 开源日期 训练集 算法概括
Wukong-CLIP 2022-02 Wukong(100M/500M) 冻结图像encoder(ResNet50/VIT/Swin), 只训练文本Encoder,对比学习损失参照FILIP的方式学习细粒度的文本和图像块对齐
Taiyi-CLIP 2022-09 Wukong(100M)+Zero(23M) 基于OpenCLIP,冻结视觉编码器并且只微调语言编码器
ChinseCLIP 2022-11 LAION-CN(108M)+Wukong(72M)+翻译数据(20M, Visual Genome/MSCOCO) 基于OpenCLIP,两阶段训练方案:
1) 先Finetune文本Encoder
2) 再结合ImageEncoder联合训练; 模型的缺点: 在英文任务上的指标大幅下降
AltCLIP 2022-12 Wudao + LAION 基于XLM-R文本Encoder+OpenCLIP图像Encoer,两阶段训练方案:
1) 先只是使用平行语料文本(相同含义的中英文数据)来进行蒸馏(平行语料相对于图文对更容易获取且数量更大)
2) 再使用少量的2M中/英图像-文本对来训练文本编码器(图像侧固定)
5

评论 (1)

取消
  1. 头像
    nkhctucjdl
    Windows 10 · Google Chrome

    博主太厉害了!

    回复
粤ICP备2021042327号