模型简介
模型特点
模型能力
使用案例
标签:
- 零样本图像分类
- 剪辑 许可证: mit 库名称: open_clip 管道标签: 零样本图像分类
CLIP-convnext_large_d_320.laion2B-s29B-b131K-ft 模型卡片
目录
模型详情
模型描述
一系列基于 ConvNeXt-Large(带有额外文本深度和视觉MLP头)的CLIP模型,使用OpenCLIP在LAION-5B的英语子集LAION-2B上进行训练。
这些模型采用:
- timm中的ConvNeXt-Large模型(
convnext_large
)作为图像塔 - 视觉塔中使用MLP(
fc - gelu - drop - fc
)头,而非其他CLIP模型的单一投影 - 文本塔宽度相同但深度比ViT-L / RN50x16模型多4层(深度16,嵌入维度768)。
这个320x320分辨率的模型是对CLIP-convnext_large_d.laion2B-s26B-b102K-augreg在高分辨率下的微调。它从原始256x256训练运行的最终检查点开始,额外使用了约25亿样本和更低的学习率进行微调。
在320x320分辨率下,ConvNext-Large-D比OpenAI微调的336x336 L/14模型效率显著更高。L/14-336模型的GMAC是2.5倍,激活量是2.8倍,参数是1.22倍。
模型 | 数据集 | 分辨率 | 增强正则化 | ImageNet零样本Top-1准确率(%) |
---|---|---|---|---|
convnext_large_d.laion2b_s26b_b102k-augreg | LAION-2B | 256x256 | RRC (0.33, 1.0), RE (0.35), SD (0.1), D(0.1) | 75.9 |
convnext_large_d_320.laion2b_s29b_b131k-ft | LAION-2B | 320x320 | RRC (0.5, 1.0), RE (0.4), SD (0.1), D(0.0) | 76.6 |
convnext_large_d_320.laion2b_s29b_b131k-ft-soup | LAION-2B | 320x320 | RRC (0.5, 1.0), RE (0.4), SD (0.1), D(0.0) | 76.9 |
RRC = 随机调整裁剪(裁剪比例),RE = 随机擦除(概率),SD = 随机深度(概率)——仅图像塔,D = 丢弃(概率)——仅图像塔头
LAION-A = LAION美学,约9亿样本的LAION-2B子集,经过pHash去重和美学评分过滤。
模型训练由Ross Wightman在stability.ai集群上完成。
用途
根据原始OpenAI CLIP模型卡片,此模型旨在作为研究社区的研究输出。我们希望此模型能帮助研究人员更好地理解和探索零样本、任意图像分类。我们也希望它能用于跨学科研究,探讨此类模型的潜在影响。
OpenAI CLIP论文包含了对潜在下游影响的讨论,为此类分析提供了示例。此外,LAION-5B博客(https://laion.ai/blog/laion-5b/)及即将发表的论文也包含了与训练数据集相关的额外讨论。
直接用途
零样本图像分类、图像和文本检索等。
下游用途
图像分类及其他图像任务的微调、线性探测图像分类、图像生成引导和条件化等。
超出范围的用途
根据OpenAI模型,
任何模型的部署使用案例——无论是商业还是非商业——目前均超出范围。非部署使用案例,如受限环境中的图像搜索,除非有特定、固定的类别分类法进行彻底的领域内测试,否则也不推荐。这是因为我们的安全评估显示,特别是考虑到CLIP在不同类别分类法中表现的变异性,任务特定测试的需求极高。这使得目前在任何使用案例中未经测试和不受约束的模型部署可能有害。
某些使用案例,如监控和人脸识别,无论模型性能如何,始终超出范围。这是因为目前人工智能用于此类任务可能为时过早,缺乏确保其公平使用的测试规范和检查。
由于模型未专门训练或评估英语以外的语言,其使用应限于英语语言案例。
除上述通知外,用于训练这些模型的LAION-5B数据集还有额外考虑,见下文。
训练详情
训练数据
此模型使用LAION-2B——LAION-5B(https://laion.ai/blog/laion-5b/)的20亿样本英语子集进行训练。
重要提示: 创建数据集的动机是民主化围绕大规模多模态模型训练和处理从公开互联网爬取的非精选大规模数据集的研究和实验。因此,我们建议将数据集用于研究目的。请注意,此大规模数据集是非精选的。请记住,数据集的非精选性质意味着收集的链接可能导致人类观看者强烈不适和不安的内容。因此,请谨慎使用演示链接,风险自负。可以通过基于安全标签(使用我们构建的定制训练的NSFW分类器)过滤样本来提取“安全”子集。虽然这大大减少了在查看时遇到潜在有害内容的机会,但我们不能完全排除安全模式下仍存在有害内容的可能性,因此警告同样适用。我们认为,将数据集公开提供给广泛的研究和其他感兴趣的社区,将有助于透明调查训练大规模模型的好处以及可能未被报告或注意到的陷阱和危险,当使用仅限于小社区的封闭大型数据集时。尽管我们公开提供数据集,但我们不建议将其用于创建即用型工业产品,因为关于此类大规模模型的一般属性和安全性的基础研究仍在进行中,我们希望通过此发布鼓励这一研究。
训练过程
所有320x320模型的微调训练使用全局批量大小131072,进行10-16个检查点间隔,每个间隔203.7M样本,总计微调过程中约2-3B样本。
对于320x320模型,在64个8-GPU(A100 40GB)节点(Stability)上使用以下slurm脚本和srun:
/opt/slurm/sbin/srun --cpu_bind=v --accel-bind=gn python -m training.main \
--save-frequency 1 \
--name "convnext_large_320" \
--pretrained ""/runs/convnext_large_256/epoch_128.pt" \
--resume 'latest' \
--train-data="pipe:aws s3 cp s3://mybucket/path/{laion{00000..xxxxx}.tar -" \
--train-num-samples 203666042 \
--dataset-type webdataset \
--precision amp_bfloat16 \
--beta2 0.98 \
--warmup 2000 \
--batch-size=256 \
--epochs=12 \
--dataset-resampled \
--aug-cfg use_timm=True scale='(0.5, 1.0)' re_prob=0.4 \
--clip-grad-norm 5.0 \
--lr 5e-5 \
--workers=6 \
--model "convnext_large_d_320" \
--seed 0 \
--ddp-static-graph \
--local-loss \
--gather-with-grad \
--grad-checkpointing
评估
使用LAION CLIP基准套件中的代码进行评估。
测试数据、因素和指标
测试数据
测试使用VTAB+(VTAB(https://arxiv.org/abs/1910.04867)与额外鲁棒性数据集的组合)进行分类,COCO和Flickr进行检索。
结果
模型在ImageNet-1k上实现了75.9至76.9的零样本Top-1准确率。
原始256x256训练的零样本曲线:
已在更广泛的数据集上进行了初步基准测试,可在https://github.com/LAION-AI/CLIP_benchmark/blob/main/benchmark/results.ipynb查看。
致谢
感谢stability.ai提供用于训练此模型的计算资源。
引用
BibTeX:
LAION-5B
@inproceedings{schuhmann2022laionb,
title={{LAION}-5B: An open large-scale dataset for training next generation image-text models},
author={Christoph Schuhmann and
Romain Beaumont and
Richard Vencu and
Cade W Gordon and
Ross Wightman and
Mehdi Cherti and
Theo Coombes and
Aarush Katta and
Clayton Mullis and
Mitchell Wortsman and
Patrick Schramowski and
Srivatsa R Kundurthy and
Katherine Crowson and
Ludwig Schmidt and
Robert Kaczmarczyk and
Jenia Jitsev},
booktitle={Thirty-sixth Conference on Neural Information Processing Systems Datasets and Benchmarks Track},
year={2022},
url={https://openreview.net/forum?id=M3Y74vmsMcY}
}
OpenCLIP软件
@software{ilharco_gabriel_2021_5143773,
author = {Ilharco, Gabriel and
Wortsman, Mitchell and
Wightman, Ross and
Gordon, Cade and
Carlini, Nicholas and
Taori, Rohan and
Dave, Achal and
Shankar, Vaishaal and
Namkoong, Hongseok and
Miller, John and
Hajishirzi, Hannaneh and
Farhadi, Ali and
Schmidt, Ludwig},
title = {OpenCLIP},
month = jul,
year = 2021,
note = {If you use this software, please cite it as below.},
publisher = {Zenodo},
version = {0.1},
doi = {10.5281/zenodo.5143773},
url = {https://doi.org/10.5281/zenodo.5143773}
}
OpenAI CLIP论文
@inproceedings{Radford2021LearningTV,
title={Learning Transferable Visual Models From Natural Language Supervision},
author={Alec Radford and Jong Wook Kim and Chris Hallacy and A. Ramesh and Gabriel Goh and Sandhini Agarwal and Girish Sastry and Amanda Askell and Pamela Mishkin and Jack Clark and Gretchen Krueger and Ilya Sutskever},
booktitle={ICML},
year={2021}
}
@Article{liu2022convnet,
author = {Zhuang Liu and Hanzi Mao and Chao-Yuan Wu and Christoph Feichtenhofer and Trevor Darrell and Saining Xie},
title = {A ConvNet for the 2020s},
journal = {Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR)},
year = {2022},
}
@misc{rw2019timm,
author = {Ross Wightman},
title = {PyTorch Image Models},
year = {2019},
publisher = {GitHub},
journal = {GitHub repository},
doi = {10.5281/zenodo.4414861},
howpublished = {\url{https://github.com/rwightman/pytorch-image-models}}
}









