模型:
laion/CLIP-convnext_base_w-laion2B-s13B-b82K-augreg
一系列使用OpenCLIP( https://github.com/mlfoundations/open_clip )在LAION-5B( https://laion.ai/blog/laion-5b/ )的子集上训练的CLIP ConvNeXt-Base (带宽嵌入维度)模型。
目标:
首创:
这些模型使用ConvNeXt-Base模型(convnext_base)作为图像塔,并且使用与OpenAI CLIP中的RN50x4(深度12,嵌入维度640)模型相同的文本塔。基础模型在256x256的图像分辨率下进行训练,并且在FLOPs和激活计数上与RN50x4模型基本匹配。名称中带有320的模型以320x320的分辨率进行训练。
所有这些系列中的模型均使用13B个样本进行训练,并且在ImageNet零样本的top-1准确率达到70.8%以上。与34B SS的ViT-B/16相比,其零样本准确率为70.2%(13B SS为68.1%),这表明ConvNeXt架构可能在目前的模型规模范围内具有更高的样本效率。需要更多实验来确认。
Model | Dataset | Resolution | AugReg | Top-1 ImageNet Zero-Shot (%) |
---|---|---|---|---|
12310321 | LAION-2B | 256x256 | RRC (0.9, 1.0) | 70.8 |
12311321 | LAION-2B | 256x256 | RRC (0.33, 1.0), RE (0.35), SD (0.1) | 71.5 |
12312321 | LAION-A | 256x256 | RRC (0.9, 1.0) | 71.0 |
12313321 | LAION-A | 320x320 | RRC (0.9, 1.0) | 71.7 |
12314321 | LAION-A | 320x320 | RRC (0.33, 1.0), RE (0.35), SD (0.1) | 71.3 |
RRC = 随机调整大小剪裁(剪裁比例),RE = 随机擦除(概率),SD = 随机深度(概率)--仅用于图像塔
LAION-A = LAION美感,是LAION-2B的约9亿样本子集,包含了pHash去重和美感评分过滤。
模型训练由Ross Wightman在 stability.ai 群集和 JUWELS Booster 超级计算机上完成。请参阅下面的致谢。
根据原始 OpenAI CLIP model card ,此模型旨在成为研究社区的研究产出。我们希望这个模型能够使研究人员更好地理解和探索零样本、任意图像分类。我们也希望它能够用于研究跨学科的,关于这种模型潜在影响的研究。
OpenAI CLIP论文提供了与此类分析的潜在下游影响的讨论案例。此外,LAION-5B博客( https://laion.ai/blog/laion-5b/ )和即将发表的论文还包括与训练数据集相关的其他讨论。
零样本图像分类,图像和文本检索等。
图像分类和其他图像任务微调,线性探测图像分类,图像生成的引导和约束等。
根据OpenAI模型的规定,
目前的范围包括模型的任何部署用例,无论是商业用途还是非商业用途。目前不推荐非部署用例,如受限环境中的图像搜索,除非对模型进行了特定的、固定类别分类体系的领域测试。这是因为我们的安全评估表明,尤其是考虑到CLIP在不同类别分类体系下的性能变化,任务特定的测试非常重要,这使得模型在任何用例中的未经测试和不受限的部署目前可能具有潜在危害。
不管模型的性能如何,始终在监控和人脸识别等领域使用的确切用例都超出范围。这是因为当前使用人工智能进行此类任务可能过早,鉴于缺乏测试规范和确保其公正使用的检查机制。
由于模型并没有专门在英语以外的任何语言上进行训练或评估,因此其使用范围应限制在英语语言用例中。
除上述通知外,这些模型训练所使用的LAION-5B数据集还有其他注意事项,请参见下文。
这个模型是使用以下之一进行训练的(请参见简介中的表格):
重要提示:数据集的创建动机是为了使大规模多模态模型训练和处理未经策划的大规模数据集的研究和实验民主化。因此,我们建议将数据集用于研究目的。请注意,这个大规模数据集不经过策划。请记住,数据集的未经策划性意味着收集的链接可能会导致对人类观察者来说具有引起极度不适和困扰的内容。因此,请谨慎使用演示链接,并自行承担风险。可以通过根据安全标签筛选样本(使用我们构建的专门训练的NSFW分类器)来提取一个“安全”子集。虽然这在查看时可以大大减少遇到潜在有害内容的机会,但无法完全排除在安全模式下仍存在有害内容的可能性,因此警告也适用于安全模式。我们认为,将数据集向广大的研究和其他感兴趣的社区公开提供,将允许透明地研究训练大规模模型带来的好处,以及在使用封闭的大规模数据集进行研究时可能未报告或未注意到的陷阱和危险。通过向广大研究社区公开提供我们的数据集,我们不建议将其用于创建即用型产品,因为我们希望通过此版本推进关于这些大规模模型的一般属性和安全性的基础研究仍在进行中。
所有模型的全局批量大小为81920,共进行了64个检查点间隔,每个间隔包含203.7M个样本,总共训练了大约130亿个样本。
对于256x256的模型,使用以下的slurm脚本和srun在20个8-GPU(A100 40GB)节点上进行训练:
/opt/slurm/sbin/srun --cpu_bind=v --accel-bind=gn python -m training.main \ --save-frequency 1 \ --name "convnext_256" \ --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 \ --warmup 10000 \ --batch-size=512 \ --epochs=64 \ --dataset-resampled \ --clip-grad-norm 5.0 \ --lr 1e-3 \ --workers=6 \ --model "convnext_base_w" \ --seed 0 \ --ddp-static-graph \ --local-loss \ --gather-with-grad \ --grad-checkpointing
对于320x320的模型,与以上相同,但使用32个8-GPU节点,本地批量大小为320,或者在JUWELS上使用64个4-GPU节点。
评估使用 LAION CLIP Benchmark suite 中的代码进行。
对于分类任务,使用VTAB+进行测试(将VTAB( https://arxiv.org/abs/1910.04867 )与其他鲁棒性数据集相结合),对于检索任务,使用COCO和Flickr。
这些模型在ImageNet-1k上的零样本top-1准确率在70.8%到71.7%之间。
已经对更广泛的一系列数据集进行了初步的基准测试,可以在 https://github.com/LAION-AI/CLIP_benchmark/blob/main/benchmark/results.ipynb 查看。
作为探索增加数据增强和正则化的一部分,早期评估表明,augreg训练的模型在更广泛范围的分辨率下表现良好。特别是对于320x320的LAION-A模型,当以训练分辨率320x320进行评估时,augreg运行时低于非augreg(71.3 vs 71.7),但在以384x384评估时提高到72.2(非augreg在384x384下下降到71.0)。
感谢 stability.ai 和Gauss Centre for Supercomputing e.V.( http://gauss-centre.eu )通过John von Neumann Institute for Computing(NIC)在Jülich Supercomputing Centre(JSC)的GCS超级计算机JUWELS上提供的计算资源。
BibTeX:
@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}} }