模型:

laion/CLIP-convnext_large_d_320.laion2B-s29B-b131K-ft

英文

CLIP-convnext_large_d_320.laion2B-s29B-b131K-ft 模型卡片

目录

  • 模型详情
  • 用途
  • 训练详情
  • 评估
  • 鸣谢
  • 引用
  • 模型详情

    模型描述

    这是一系列在LAION-2B(英文)子集上使用 OpenCLIP 进行训练的CLIP ConvNeXt-Large 模型(带有额外文本深度和视觉MLP头部)。

    这些模型包括:

    • 使用 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倍。

    Model Dataset Resolution AugReg Top-1 ImageNet Zero-Shot (%)
    12311321 LAION-2B 256x256 RRC (0.33, 1.0), RE (0.35), SD (0.1), D(0.1) 75.9
    12312321 LAION-2B 320x320 RRC (0.5, 1.0), RE (0.4), SD (0.1), D(0.0) 76.6
    12313321 LAION-2B 320x320 RRC (0.5, 1.0), RE (0.4), SD (0.1), D(0.0) 76.9

    RRC = 随机缩放裁剪(crop百分比),RE = 随机删除(概率),SD = 随机深度(概率)--只对图像网络有效,D = 丢弃(概率)--只对图像网络头部有效

    LAION-A = LAION Aesthetic,是LAION-2B的一个约9亿个样本的子集,使用了pHash去重和美学评分过滤。

    模型的训练由Ross Wightman在 stability.ai 集群上完成。

    用途

    根据原始的 OpenAI CLIP model card ,这个模型旨在成为研究社区的研究成果。我们希望这个模型能够使研究人员更好地理解和探索零样本、任意图像分类。我们还希望它能够用于跨学科研究,探讨此类模型的潜在影响。

    OpenAI的CLIP论文中提供了潜在下游影响的讨论,以提供此类分析的一个示例。此外,LAION-5B博客( https://laion.ai/blog/laion-5b/ )和即将发布的论文中还包含了与训练数据集具体相关的进一步讨论。

    直接使用

    零样本图像分类、图像和文本检索等。

    下游使用

    图像分类和其他图像任务微调、线性探测图像分类、引导和调节图像生成等。

    超出范围的使用

    根据OpenAI模型,

    任何部署模型的用例(无论商业或非商业)目前都超出范围。未部署的使用用例,例如受限环境下的图像搜索,也不建议,除非对模型进行了特定的领域测试,并固定了一个具体的类别分类系统。这是因为我们的安全评估表明,对任务的特定测试非常必要,尤其是考虑到CLIP在不同类别分类系统下的性能变化。目前,在任何用例中,将未经测试且无约束地部署模型可能具有潜在的危害性。

    无论模型的性能如何,始终超出范围的特定用例是监视和人脸识别领域。这是因为目前使用人工智能进行此类任务可能为时过早,缺乏测试规范和确保其公正使用的检查机制。

    由于该模型没有经过有目的地的其他语言(英语以外)的训练或评估,因此其使用应该局限于英语语言用例。

    此外,用于训练这些模型的LAION-5B数据集还有其他注意事项,请参见下文。

    训练详情

    训练数据

    该模型使用LAION-2B进行训练,它是LAION-5B的一个包含20亿个样本的英语子集( https://laion.ai/blog/laion-5b/ )。

    重要提示:数据集创建的动机是为了使大规模多模态模型训练和处理来自公开可用互联网的非策划大规模数据集的研究和实验民主化。因此,我们建议将该数据集用于研究目的。请注意,这个大规模数据集是非策划的。请记住,数据集的非策划性意味着采集的链接可能导致对人类观察者来说非常不适宜和令人不安的内容。因此,请谨慎使用演示链接,并自行承担风险。可以使用安全标签筛选出“安全”子集(使用我们构建的自定义训练的不良内容分类器)。虽然这大大减少了在查看时遇到潜在有害内容的可能性,但我们不能完全排除安全模式下仍然存在有害内容的可能性,因此警告仍然适用。我们认为对广泛研究和其他感兴趣的群体开放数据集将有助于透明地研究大规模模型训练带来的好处,以及在使用只限于小团体的封闭大规模数据集时可能未报告或未注意到的陷阱和危险。提供我们的数据集时,我们不建议将其用于创建现成的工业产品,因为这个发布的基础研究正在进行中,而这个基于大规模模型的一般属性和安全性的研究是我们希望通过这个发布鼓励的。

    训练过程

    所有320x320模型的微调使用全局批大小131072,进行10-16个检查点间隔的203.7M个样本的训练,总共见到约20-30亿个样本。

    对于320x320的模型,使用以下的slurm脚本和srun命令在64个8-GPU(A100 40GB)节点上进行训练(稳定性)。

    /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 Benchmark suite 中的代码进行。

    测试数据、因素和指标

    测试数据

    测试是使用VTAB+(VTAB ( https://arxiv.org/abs/1910.04867 )与额外的鲁棒性数据集的结合)进行的分类,使用COCO和Flickr进行检索。

    结果

    这些模型在ImageNet-1k上的零样本准确率在75.9到76.9之间。

    原始从头开始训练的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}}
    }