🚀 BioTrove-CLIP模型卡片
BioTrove-CLIP是一套全新的用于生物多样性的视觉语言基础模型。这些CLIP风格的基础模型在BioTrove-Train数据集上进行训练,该数据集是一个大规模数据集,包含3.3万种动植物的4000万张图像。这些模型在零样本图像分类任务上进行评估。
🚀 快速开始
BioTrove-CLIP模型可直接用于零样本图像分类和微调任务。要获取上述模型的检查点,请前往Files and versions
选项卡下载权重。这些权重文件对应特定的模型,分别为:
- BioTrove-CLIP-O:
biotroveclip-vit-b-16-from-openai-epoch-40.pt
- BioTrove-CLIP-B:
biotroveclip-vit-b-16-from-bioclip-epoch-8.pt
- BioTrove-CLIP-M:
biotroveclip-vit-l-14-from-metaclip-epoch-12.pt
✨ 主要特性
📦 安装指南
预运行
克隆Github仓库并导航到BioTrove/model_validation
目录后,建议将所有项目依赖安装到conda容器中,使用命令pip install -r requirements.txt
。此外,在VLHub中执行命令之前,请将BioTrove/model_validation/src
添加到PYTHONPATH中:
export PYTHONPATH="$PYTHONPATH:$PWD/src";
💻 使用示例
基础用法
一个基本的BioTrove-CLIP模型评估命令示例如下。此示例将在ImageNet验证集上评估一个CLIP-ResNet50检查点(其权重位于--resume
标志指定的路径),并将结果报告给Weights and Biases:
python src/training/main.py --batch-size=32 --workers=8 --imagenet-val "/imagenet/val/" --model="resnet50" --zeroshot-frequency=1 --image-size=224 --resume "/PATH/TO/WEIGHTS.pth" --report-to wandb
📚 详细文档
模型描述
BioTrove-CLIP基于OpenAI的CLIP模型。模型在BioTrove-Train数据集上进行训练,具体配置如下:
- BioTrove-CLIP-O:使用OpenCLIP的检查点初始化ViT-B/16骨干网络,训练40个周期。
- BioTrove-CLIP-B:使用BioCLIP的检查点初始化ViT-B/16骨干网络,训练8个周期。
- BioTrove-CLIP-M:使用MetaCLIP的检查点初始化ViT-L/14骨干网络,训练12个周期。
模型训练
可查看Github上的Model Training部分,了解如何在零样本图像分类任务中使用BioTrove-CLIP模型的示例。
使用BioCLIP / OpenCLIP代码库的修改版本训练三个模型。每个模型在Arboretum-40M数据集上,使用2个节点、8xH100 GPU,在纽约大学的Greene高性能计算集群上进行训练。所有用于复现结果的代码已在Github页面上公开。
在训练前使用Ray优化超参数,标准训练参数如下:
--dataset-type webdataset
--pretrained openai
--text_type random
--dataset-resampled
--warmup 5000
--batch-size 4096
--accum-freq 1
--epochs 40
--workers 8
--model ViT-B-16
--lr 0.0005
--wd 0.0004
--precision bf16
--beta1 0.98
--beta2 0.99
--eps 1.0e-6
--local-loss
--gather-with-grad
--ddp-static-graph
--grad-checkpointing
如需了解更多训练过程和每个超参数的详细文档,建议分别参考OpenCLIP和BioCLIP的文档。
模型验证
为验证训练模型的零样本准确率并与其他基准进行比较,使用了VLHub仓库,并进行了一些轻微修改。
训练链接
模型局限性
所有BioTrove-CLIP
模型都在具有挑战性的CONFOUNDING-SPECIES基准上进行了评估,但所有模型的表现都达到或低于随机水平。这可能是后续工作的一个有趣方向,有助于进一步扩展模型的能力。
一般来说,在网络抓取数据上训练的模型在使用通用名称时表现更好,而在专业数据集上训练的模型在使用科学名称时表现更好。此外,在网络抓取数据上训练的模型在最高分类级别(界)的分类中表现出色,而在较低分类级别(目和种),模型开始受益于BioTrove-Train (40M)和Tree-of-Life-10M等专业数据集。从实际角度来看,BioTrove-CLIP
在物种级别具有很高的准确性,并且可以从较低分类级别确定性地推导出较高分类级别。
解决这些局限性将进一步提高BioTrove-CLIP
等模型在实际生物多样性监测任务中的适用性。
致谢
这项工作得到了美国国家科学基金会(NSF)和美国农业部国家食品与农业研究所(USDA-NIFA)支持的人工智能研究机构计划的资助,项目名称为AI Institute: for Resilient Agriculture,资助编号为2021 - 67021 - 35329。同时,也部分得到了NSF的CPS Frontier资助(编号CNS - 1954556)。此外,感谢纽约大学信息技术部高性能计算资源、服务和工作人员的专业支持。
引用
如果您发现这些模型和数据集在您的研究中有用,请考虑引用我们的论文:
@misc{yang2024arboretumlargemultimodaldataset,
title={Arboretum: A Large Multimodal Dataset Enabling AI for Biodiversity},
author={Chih-Hsuan Yang, Benjamin Feuer, Zaki Jubery, Zi K. Deng, Andre Nakkab,
Md Zahid Hasan, Shivani Chiranjeevi, Kelly Marshall, Nirmal Baishnab, Asheesh K Singh,
Arti Singh, Soumik Sarkar, Nirav Merchant, Chinmay Hegde, Baskar Ganapathysubramanian},
year={2024},
eprint={2406.17720},
archivePrefix={arXiv},
primaryClass={cs.CV},
url={https://arxiv.org/abs/2406.17720},
}
如需了解更多详细信息并访问Arboretum数据集,请访问项目页面。