🚀 模型卡片:GroupViT
GroupViT是一個視覺語言模型,受CLIP啟發,能夠對任意給定的詞彙類別進行零樣本語義分割。它通過文本監督自動生成語義片段,在相關數據集上取得了不錯的零樣本準確率。
🚀 快速開始
使用Transformers庫調用模型
from PIL import Image
import requests
from transformers import AutoProcessor, GroupViTModel
model = GroupViTModel.from_pretrained("nvidia/groupvit-gcc-yfcc")
processor = AutoProcessor.from_pretrained("nvidia/groupvit-gcc-yfcc")
url = "http://images.cocodataset.org/val2017/000000039769.jpg"
image = Image.open(requests.get(url, stream=True).raw)
inputs = processor(text=["a photo of a cat", "a photo of a dog"], images=image, return_tensors="pt", padding=True)
outputs = model(**inputs)
logits_per_image = outputs.logits_per_image
probs = logits_per_image.softmax(dim=1)
✨ 主要特性
- 零樣本語義分割:能夠對任意給定的詞彙類別進行零樣本語義分割。
- 文本監督學習:僅通過文本監督,無需任何像素級註釋,即可學習對語義區域進行分組。
- 層次化分組:提出了層次化的分組視覺Transformer(GroupViT),超越了常規的網格結構表示,學習將圖像區域分組為逐漸變大的任意形狀的片段。
📚 詳細文檔
模型詳情
摘要
分組和識別是視覺場景理解的重要組成部分,例如用於目標檢測和語義分割。在端到端的深度學習系統中,圖像區域的分組通常通過來自像素級識別標籤的自上而下的監督隱式發生。相反,在本文中,我們提出將分組機制帶回深度網絡,這使得僅通過文本監督就可以自動出現語義片段。我們提出了一種層次化的分組視覺Transformer(GroupViT),它超越了常規的網格結構表示,並學習將圖像區域分組為逐漸變大的任意形狀的片段。我們通過對比損失在大規模圖像 - 文本數據集上與文本編碼器聯合訓練GroupViT。僅通過文本監督且無需任何像素級註釋,GroupViT學習將語義區域分組在一起,並以零樣本方式成功遷移到語義分割任務,即無需任何進一步的微調。它在PASCAL VOC 2012上實現了52.3%的零樣本mIoU準確率,在PASCAL Context數據集上實現了22.4%的mIoU準確率,並且與需要更高監督水平的最先進的遷移學習方法具有競爭力。
相關文檔
更多使用示例
更多代碼示例請參考文檔。
BibTeX引用
@article{xu2022groupvit,
author = {Xu, Jiarui and De Mello, Shalini and Liu, Sifei and Byeon, Wonmin and Breuel, Thomas and Kautz, Jan and Wang, Xiaolong},
title = {GroupViT: Semantic Segmentation Emerges from Text Supervision},
journal = {arXiv preprint arXiv:2202.11094},
year = {2022},
}
📦 數據情況
該模型在公開可用的圖像 - 文本數據上進行訓練。這是通過抓取一些網站和使用常用的現有圖像數據集(如YFCC100M)的組合完成的。大部分數據來自於互聯網抓取。這意味著數據更能代表與互聯網連接最緊密的人群和社會,這些人群往往偏向於更發達的國家以及年輕的男性用戶。