模型:
laion/CLIP-convnext_base_w-laion_aesthetic-s13B-b82K
CLIP-convnext_base_w.laion_aesthetic-s13B-b82k是一系列使用OpenCLIP在LAION-5B( https://laion.ai/blog/laion-5b/ )的子集上训练的CLIP ConvNeXt-Base (带有宽嵌入维度)模型。
目标:
首次:
这些模型使用ConvNeXt-Base模型(convnext_base)作为图像tower,使用与OpenAI CLIP的RN50x4模型相同的文本tower(深度12,嵌入维度640)。基础模型在256x256图像分辨率下进行训练,与RN50x4模型在FLOPs和激活计数上基本匹配。名字中带有320的模型是在320x320下训练的。
此系列中的所有模型均训练了130亿个样本,并且ImageNet零样本的Top-1准确率大于等于70.8%。与34亿个样本的ViT-B/16的零样本70.2%(130亿个样本为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=Random Resize Crop(裁剪比例),RE=Random Erasing(擦除概率),SD=Stochastic Depth(概率)——仅限图像tower
LAION-A=LAION Aesthetic,为LAION-2B的约9亿个样本子集,使用了pHash去重和美学评分过滤。
模型由Ross Wightman在 stability.ai 集群和 JUWELS Booster 超级计算机上进行训练。详见下面的致谢。
与原始模型相同,该模型旨在成为研究社区的研究产出。我们希望这个模型能帮助研究人员更好地理解和探索零样本、任意图像分类。我们还希望它可以用于对潜在影响进行跨学科研究的示例。OpenAI CLIP论文中提供了关于潜在下游影响的讨论。此外,LAION-5B博客( https://laion.ai/blog/laion-5b/ )和即将发布的论文还提供了相关的讨论,特别涉及训练数据集。
零样本图像分类、图像和文本检索等。
图像分类和其他图像任务微调、线性探测图像分类、图像生成引导和调整等。
与OpenAI模型一样,当前未在模型部署的任何用例(无论商业还是非商业)都不在范围之内。不推荐在未经彻底领域测试具有特定固定类别分类系统的情况下进行未部署的用例,例如受限的环境中的图像搜索。因为我们的安全评估表明在不同的类别分类系统下CLIP的性能具有很大的变异性,因此特定任务的测试尤为重要。目前在任何情况下,模型的未测试和无约束使用都可能具有潜在的危害性。无论模型的性能如何,与监视和面部识别领域相关的用例始终超出范围。这是因为目前在此类任务中使用人工智能可能尚不成熟,缺乏测试准则和确保其公平使用的检查机制。
由于该模型没有经过专门的训练和评估,除英语外的其他语言使用应受到限制。
另外,请参阅下面的注意事项,此模型在训练中使用的LAION-5B数据集还有其他注意事项。
该模型使用以下之一进行训练(请参见简介中的表格):
重要注意事项:数据集创建的动机是为了使大规模多模态模型训练和处理未经筛选的大规模数据集的研究和实验民主化。我们建议将数据集用于研究目的。要注意的是,这个大规模数据集是未经筛选的。牢记数据集的未筛选性意味着收集到的链接可能会导致令人不安和令人困扰的内容,因此请谨慎使用演示链接,并自行承担风险。可以通过基于安全标签(使用我们构建的自定义训练的NSFW分类器)对样本进行过滤,从而提取出一个“安全”子集。虽然这在查看时大大减少了遇到潜在有害内容的可能性,但我们无法完全排除安全模式中仍然存在有害内容的可能性,因此警告仍然适用。我们认为将数据集公开提供给广大的研究和其他感兴趣的社区,将允许对训练大规模模型带来的益处以及可能在使用仅限于小范围社区的封闭大型数据集时未报告或未注意到的问题进行透明的调查。然而,通过向开放社区提供我们的数据集,我们不建议将其用于创建即用型工业产品,因为关于此类大规模模型的通用属性和安全性的基础研究仍在进行中。
所有模型的全局批量大小为81920,共训练64个检查点间隔的2.037亿个样本,总计训练了约130亿个样本。
对于256x256的模型,使用了一个20个8-GPU(A100 40GB)节点(稳定性)的slurm脚本,后来切换到了40个4-GPU节点的JUWELS(时间方面)。
/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节点或者64个4-GPU节点在JUWELS上进行训练,本地批量大小为320。
评估使用 LAION CLIP Benchmark suite 中的代码进行。
测试使用VTAB+(VTAB和附加的鲁棒性数据集的组合)进行分类,使用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运行时比non-augreg运行时低(71.3与71.7),但当在384x384下评估时,augreg提高到了72.2(non-augreg降至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 Supercomputer JUWELS Booster。
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}} }