HuggingFace镜像/CLIP-convnext_base_w-laion2B-s13B-b82K-augreg
模型介绍文件和版本分析
下载使用量0

CLIP-convnext_base_w.laion2B-s13B-b82k-augreg 模型卡片

目录

  1. 模型详情
  2. 用途
  3. 训练详情
  4. 评估
  5. 致谢
  6. 引用

模型详情

模型描述

一系列 CLIP ConvNeXt-Base(具有宽嵌入维度)模型,使用 OpenCLIP (https://github.com/mlfoundations/open_clip) 在 LAION-5B (https://laion.ai/blog/laion-5b/) 子集上训练。

目标:

  • 探索 ViT 和 ResNet(带 AttentionPooling)CLIP 模型的替代方案,该方案能随模型大小和图像分辨率良好扩展

首次成果:

  • 首批已知的、在 CLIP ViT-B/16 和 RN50x4 模型规模范围内进行规模化训练的 ConvNeXt CLIP 模型
    • 首批发布的模型权重,通过添加(更大范围的 RRC、随机擦除、随机深度)来探索图像塔增强和正则化的增加

这些模型使用 timm ConvNeXt-Base 模型(convnext_base)作为图像塔,并使用与 OpenAI CLIP 的 RN50x4 模型(深度 12,嵌入维度 640)相同的文本塔。基础模型在 256x256 图像分辨率下训练,其 FLOPs 和激活计数大致与 RN50x4 模型相当。名称中带有 320 的模型在 320x320 分辨率下训练。

该系列中的所有模型均训练了 130 亿样本,ImageNet 零样本 top-1 准确率均 ≥ 70.8%。与 ViT-B/16 在 340 亿样本量下零样本准确率 70.2%(130 亿样本量下为 68.1%)相比,这表明在该模型规模范围内,ConvNeXt 架构可能具有更高的样本效率。需要更多实验来证实这一点。

模型数据集分辨率增强正则化ImageNet 零样本 top-1 准确率 (%)
convnext_base_w.laion2b_s13b_b82kLAION-2B256x256RRC (0.9, 1.0)70.8
convnext_base_w.laion2b_s13b_b82k_augregLAION-2B256x256RRC (0.33, 1.0),RE (0.35),SD (0.1)71.5
convnext_base_w.laion_aesthetic_s13b_b82kLAION-A256x256RRC (0.9, 1.0)71.0
convnext_base_w_320.laion_aesthetic_s13b_b82kLAION-A320x320RRC (0.9, 1.0)71.7
convnext_base_w_320.laion_aesthetic_s13b_b82k_augregLAION-A320x320RRC (0.33, 1.0),RE (0.35),SD (0.1)71.3

RRC = 随机调整大小裁剪(裁剪百分比),RE = 随机擦除(概率),SD = 随机深度(概率)——仅适用于图像塔

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

模型训练由 Ross Wightman 在 stability.ai 集群和 JUWELS Booster 超级计算机上完成。详见下方致谢部分。

用途

根据原始的OpenAI CLIP 模型卡片,本模型旨在作为研究成果供研究社区使用。我们希望该模型能帮助研究人员更好地理解和探索零样本、任意图像分类。我们也希望它能用于此类模型潜在影响的跨学科研究。

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/)。
  • LAION-Aesthetic - LAION-2B 的 9 亿样本子集,经过 pHash 去重和美学分数过滤

重要说明: 创建该数据集的目的是为了推动大规模多模态模型训练以及非精选大规模互联网爬取数据集处理相关的研究与实验民主化。因此,我们建议将该数据集用于研究目的。请注意,此大规模数据集未经筛选。由于数据集的非精选性质,所收集的链接可能会指向让人类观看者感到强烈不适和不安的内容。因此,请谨慎使用演示链接,并自行承担风险。可以通过基于安全标签过滤样本(使用我们构建的定制训练 NSFW 分类器)来提取“安全”子集。虽然这大大降低了查看时遇到潜在有害内容的几率,但我们不能完全排除安全模式下仍存在有害内容的可能性,因此此处的警告同样适用。我们认为,向广泛的研究界和其他感兴趣的社区公开提供该数据集,将有助于透明地研究大规模模型训练带来的益处,以及在使用仅限于小社区的封闭大型数据集时可能未被报告或注意到的缺陷和危险。然而,通过公开提供我们的数据集,我们不建议将其用于创建现成的工业产品,因为关于此类大规模模型的一般属性和安全性的基础研究仍在进行中,我们希望通过此次发布来鼓励这方面的研究。

训练过程

所有模型均以 81920 的全局批处理大小进行训练,共 64 个检查点间隔,每个间隔包含 2.037 亿个样本,训练期间总共处理约 130 亿个样本。

对于 256x256 模型,在 20 个 8-GPU(A100 40GB)节点(Stability)上使用了以下带有 srun 的 slurm 脚本,之后在 JUWELS 上切换到 40 个 4-GPU 节点。

/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 上实现了 70.8 到 71.7 之间的零样本 top-1 准确率。

已在更广泛的数据集上进行了初步基准测试,结果可在 https://github.com/LAION-AI/CLIP_benchmark/blob/main/benchmark/results.ipynb 查看。

作为增加数据增强和正则化探索的一部分,早期评估表明,经过 augreg 训练的模型在更广泛的分辨率范围内表现良好。320x320 LAION-A 模型尤其如此,当在 320x320 的训练分辨率下评估时,augreg 运行的结果低于非 augreg(71.3 对 71.7),但在 384x384 分辨率下评估时提升至 72.2(非 augreg 在 384x384 时降至 71.0)。

致谢

感谢 stability.ai 和高斯超级计算中心 e.V.(http://gauss-centre.eu)通过约翰·冯·诺依曼计算研究所(NIC)在于利希超级计算中心(JSC)的 GCS 超级计算机 JUWELS Booster 上提供计算时间,为这部分工作提供了资金支持。

引用

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}}
}