Project Icon

siglip-so400m-patch14-224

增强图像文本任务的性能,探索形状优化模型

SigLIP通过sigmoid损失函数优化了CLIP模型的图像和文本匹配性能。此模型在WebLi数据集上预训练,可实现更大的批量训练,同时在小批量下表现出色。适用于零样本图像分类和图像文本检索任务,能在不同环境下获得高效结果。该模型在16个TPU-v4芯片上训练三天,而图像预处理中使用标准化和归一化,提升了计算效率。

项目介绍:siglip-so400m-patch14-224

概述

SigLIP 是一种通过在 WebLi 数据集上进行预训练的图像文本联合预训练模型。在论文《Sigmoid Loss for Language Image Pre-Training》中,作者 Zhai 等人首次介绍了这个模型,并在这个仓库中发布。SigLIP 使用了 SoViT-400m 架构,经过形状优化设计,详细内容参见 Alabdulmohsin 等人的研究论文

模型描述

SigLIP 是 CLIP 的扩展,它通过使用 sigmoid 损失函数进行了改进。与传统的损失函数不同,sigmoid 损失函数只需利用图像-文本对进行计算,不需要对成对相似度进行全局归一化。这种设计使得 SigLIP 在增大批次训练时效率更高,同时在小批量训练时表现也更出色。

可以通过作者在 Twitter 上的一条简要介绍了解更多。

适用场景及限制

SigLIP 模型可以用于零样本图像分类和图像-文本检索等任务。可以访问模型中心来查找其他版本以适用于你感兴趣的任务。

使用方法

可以通过以下示例代码实现零样本图像分类:

from PIL import Image
import requests
from transformers import AutoProcessor, AutoModel
import torch

model = AutoModel.from_pretrained("google/siglip-so400m-patch14-224")
processor = AutoProcessor.from_pretrained("google/siglip-so400m-patch14-224")

url = "http://images.cocodataset.org/val2017/000000039769.jpg"
image = Image.open(requests.get(url, stream=True).raw)

texts = ["a photo of 2 cats", "a photo of 2 dogs"]
inputs = processor(text=texts, images=image, padding="max_length", return_tensors="pt")

with torch.no_grad():
    outputs = model(**inputs)

logits_per_image = outputs.logits_per_image
probs = torch.sigmoid(logits_per_image)
print(f"{probs[0][0]:.1%} that image 0 is '{texts[0]}'")

此外,还可以利用 pipeline API,简化操作流程:

from transformers import pipeline
from PIL import Image
import requests

image_classifier = pipeline(task="zero-shot-image-classification", model="google/siglip-so400m-patch14-224")

url = 'http://images.cocodataset.org/val2017/000000039769.jpg'
image = Image.open(requests.get(url, stream=True).raw)

outputs = image_classifier(image, candidate_labels=["2 cats", "a plane", "a remote"])
outputs = [{"score": round(output["score"], 4), "label": output["label"] } for output in outputs]
print(outputs)

训练过程

训练数据

SigLIP 预训练使用了 WebLI 数据集 (Chen et al., 2023)

预处理

图像被调整到相同的 384x384 分辨率,并在 RGB 通道上进行归一化,平均值为 (0.5, 0.5, 0.5), 标准差为 (0.5, 0.5, 0.5)。

文本被标记化并填充到统一长度(64 个 tokens)。

计算资源

该模型训练使用了 16 个 TPU-v4 芯片,持续了三天。

评估结果

SigLIP 相比于 CLIP 的评估结果如下:

评估结果图表

引用信息

请参见以下 BibTeX 条目:

@misc{zhai2023sigmoid,
      title={Sigmoid Loss for Language Image Pre-Training}, 
      author={Xiaohua Zhai and Basil Mustafa and Alexander Kolesnikov and Lucas Beyer},
      year={2023},
      eprint={2303.15343},
      archivePrefix={arXiv},
      primaryClass={cs.CV}
}

通过这些介绍,希望大家对 SigLIP 项目有了更全面的了解!

项目侧边栏1项目侧边栏2
推荐项目
Project Cover

豆包MarsCode

豆包 MarsCode 是一款革命性的编程助手,通过AI技术提供代码补全、单测生成、代码解释和智能问答等功能,支持100+编程语言,与主流编辑器无缝集成,显著提升开发效率和代码质量。

Project Cover

AI写歌

Suno AI是一个革命性的AI音乐创作平台,能在短短30秒内帮助用户创作出一首完整的歌曲。无论是寻找创作灵感还是需要快速制作音乐,Suno AI都是音乐爱好者和专业人士的理想选择。

Project Cover

有言AI

有言平台提供一站式AIGC视频创作解决方案,通过智能技术简化视频制作流程。无论是企业宣传还是个人分享,有言都能帮助用户快速、轻松地制作出专业级别的视频内容。

Project Cover

Kimi

Kimi AI助手提供多语言对话支持,能够阅读和理解用户上传的文件内容,解析网页信息,并结合搜索结果为用户提供详尽的答案。无论是日常咨询还是专业问题,Kimi都能以友好、专业的方式提供帮助。

Project Cover

阿里绘蛙

绘蛙是阿里巴巴集团推出的革命性AI电商营销平台。利用尖端人工智能技术,为商家提供一键生成商品图和营销文案的服务,显著提升内容创作效率和营销效果。适用于淘宝、天猫等电商平台,让商品第一时间被种草。

Project Cover

吐司

探索Tensor.Art平台的独特AI模型,免费访问各种图像生成与AI训练工具,从Stable Diffusion等基础模型开始,轻松实现创新图像生成。体验前沿的AI技术,推动个人和企业的创新发展。

Project Cover

SubCat字幕猫

SubCat字幕猫APP是一款创新的视频播放器,它将改变您观看视频的方式!SubCat结合了先进的人工智能技术,为您提供即时视频字幕翻译,无论是本地视频还是网络流媒体,让您轻松享受各种语言的内容。

Project Cover

美间AI

美间AI创意设计平台,利用前沿AI技术,为设计师和营销人员提供一站式设计解决方案。从智能海报到3D效果图,再到文案生成,美间让创意设计更简单、更高效。

Project Cover

AIWritePaper论文写作

AIWritePaper论文写作是一站式AI论文写作辅助工具,简化了选题、文献检索至论文撰写的整个过程。通过简单设定,平台可快速生成高质量论文大纲和全文,配合图表、参考文献等一应俱全,同时提供开题报告和答辩PPT等增值服务,保障数据安全,有效提升写作效率和论文质量。

投诉举报邮箱: service@vectorlightyear.com
@2024 懂AI·鲁ICP备2024100362号-6·鲁公网安备37021002001498号