许可证: mit
库名称: open_clip
流水线标签: 零样本图像分类
标签:
CLIP-convnext_base_w-320.laion_aesthetic-s13B-b82k 模型卡片
目录
- 模型详情
- 用途
- 训练详情
- 评估
- 致谢
- 引用
模型详情
模型描述
这是一系列基于 ConvNeXt-Base(具有宽嵌入维度)的 CLIP 模型,使用 OpenCLIP(https://github.com/mlfoundations/open_clip)在 LAION-5B(https://laion.ai/blog/laion-5b/)的子集上训练而成。
目标:
- 探索一种替代 ViT 和 ResNet(带 AttentionPooling)的 CLIP 模型,该模型在模型大小和图像分辨率上具有良好的扩展性
首次:
- 首次已知的大规模训练的 ConvNeXt CLIP 模型,规模在 CLIP ViT-B/16 和 RN50x4 模型之间
- 首次发布的模型权重,探索通过增加增强和正则化(更大范围的 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 架构在此模型规模范围内可能更具样本效率。需要更多实验来验证。
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(https://laion.ai/blog/laion-5b/)的 20 亿样本英语子集。
- LAION-Aesthetic - LAION-2B 的 9 亿样本子集,经过 pHash 去重和美学评分过滤
重要提示: 创建数据集的动机是民主化大规模多模态模型训练和处理从公开互联网爬取的非精选大规模数据集的研究和实验。因此,我们建议将数据集用于研究目的。请注意,此大规模数据集是非精选的。请记住,数据集的非精选性质意味着收集的链接可能导致人类观看者感到极度不适和不安的内容。因此,请谨慎使用演示链接,风险自负。可以通过基于安全标签(使用我们构建的定制训练的 NSFW 分类器)过滤样本来提取“安全”子集。虽然这大大减少了在查看时遇到潜在有害内容的机会,但我们不能完全排除安全模式下仍存在有害内容的可能性,因此警告同样适用。我们认为,将数据集公开提供给广泛的研究和其他感兴趣的社区,将有助于透明地调查大规模模型训练带来的好处,以及在使用封闭的大规模数据集(仅限于小社区)时可能未被报告或注意到的陷阱和危险。尽管我们公开提供数据集,但我们不建议将其用于创建即用型工业产品,因为关于此类大规模模型的一般特性和安全性的基础研究仍在进行中。
训练过程
所有模型均以全局批量大小 81920 训练,共 64 个检查点区间,每个区间 2.037 亿样本,总计训练约 130 亿样本。
对于 256x256 模型,在 20 个 8-GPU(A100 40GB)节点(Stability)上使用以下 slurm 脚本和 srun,在 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 基准套件 中的代码完成。
测试数据、因素和指标
测试数据
测试使用 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 模型,augreg 运行在训练分辨率 320x320 下的评估结果低于非 augreg(71.3 vs 71.7),但在 384x384 分辨率下提升至 72.2(非 augreg 在 384x384 下降至 71.0)。
致谢
感谢 stability.ai 和高斯超级计算中心(http://gauss-centre.eu)通过约翰·冯·诺伊曼计算研究所(NIC)在于利希超级计算中心(JSC)的 GCS 超级计算机 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.528