许可证: mit
库名称: open_clip
流水线标签: 零样本图像分类
标签:
CLIP-convnext_base_w-320.laion2B-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 分辨率下训练。
该系列中的所有模型都训练了 13B 样本,ImageNet 零样本 top-1 准确率 >= 70.8%。与 ViT-B/16 在 34B SS 下的零样本准确率 70.2%(13B SS 下为 68.1%)相比,这表明 ConvNeXt 架构在此模型规模范围内可能更具样本效率。需要更多实验来确认。
RRC = 随机调整裁剪(裁剪百分比),RE = 随机擦除(概率),SD = 随机深度(概率)——仅适用于图像塔
LAION-A = LAION 美学,LAION-2B 的一个约 900M 样本子集,经过 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-美学 - LAION-2B 的 9 亿样本子集,经过 pHash 去重和美学评分过滤
重要说明: 创建数据集的动机是民主化围绕大规模多模态模型训练和处理从公开可用互联网爬取的非精选大规模数据集的研究和实验。因此,我们建议将该数据集用于研究目的。请注意,该大规模数据集是非精选的。请记住,数据集的非精选性质意味着收集的链接可能导致人类观看者强烈不适和不安的内容。因此,请谨慎使用演示链接,风险自负。可以通过基于安全标签(使用我们构建的定制训练的 NSFW 分类器)过滤样本来提取“安全”子集。虽然这大大减少了在查看时遇到潜在有害内容的机会,但我们不能完全排除在安全模式下仍存在有害内容的可能性,因此警告同样适用。我们认为,将数据集公开提供给广泛的研究和其他感兴趣的社区,将有助于透明调查训练大规模模型带来的好处,以及在使用封闭的大规模数据集(这些数据集仍限于小社区)时可能未被报告或注意到的陷阱和危险。通过公开提供我们的数据集,我们不建议将其用于创建即用型工业产品,因为关于此类大规模模型的一般特性和安全性的基础研究仍在进行中,我们希望通过此次发布鼓励这一研究。
训练过程
所有模型均以 81920 的全局批量大小训练,共 64 个检查点间隔,每个间隔 203.7M 样本,总计训练约 13B 样本。
对于 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 基准套件 中的代码进行评估。
测试数据、因素和指标
测试数据
测试使用 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 和高斯超级计算中心 e.V. (http://gauss-centre.eu) 通过约翰·冯·诺依曼计算研究所(NIC)在 Jülich 超级计算中心(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.5281/zenodo.5143773},
url = {https://doi.org/10.5281/zenodo.5143773