モデル概要
モデル特徴
モデル能力
使用事例
🚀 CLIP-ViT-L-14-spectrum-icons-23k のモデルカード
このモデルは、23,000のPNG画像とテキストのキャプションペアを用いて、テキストと画像の検索タスクを改善するために調整されたCLIP ViT-L/14モデルです。OpenCLIPライブラリとNVIDIA GPUを使用して、抽象的な視覚的特徴を扱う能力とRAGのパフォーマンスを向上させます。
🚀 クイックスタート
必要な依存関係をインストールし、微調整されたモデルをロードします。
from open_clip import create_model_and_transforms, tokenizer
model, preprocess = create_model_and_transforms(
model_name="hf-hub:JianLiao/CLIP-ViT-L-14-spectrum-icons-20k"
)
tokenizer = tokenizer("ViT-L-14")
# 例: テキストから画像への検索
text_inputs = tokenizer(["a description of the image", "another description of the image"])
image = preprocess("/path/to/image.png").unsqueeze(0)
with torch.no_grad():
logits_per_image, logits_per_text = model(image, text_inputs)
probs = logits_per_image.softmax(dim=-1).numpy()
✨ 主な機能
直接的な利用
- ゼロショット画像分類。
- テキストから画像、画像から画像への検索。
- 抽象的な視覚コンテキストにおけるテキストと画像のアライメントの改善。
下流の利用
- ドメイン固有の画像テキスト検索タスクのための微調整。
- 強化されたセマンティック検索を必要とするアプリケーションへの統合。
📦 インストール
必要な依存関係をインストールし、微調整されたモデルをロードするコードは以下の通りです。
from open_clip import create_model_and_transforms, tokenizer
model, preprocess = create_model_and_transforms(
model_name="hf-hub:JianLiao/CLIP-ViT-L-14-spectrum-icons-20k"
)
tokenizer = tokenizer("ViT-L-14")
💻 使用例
基本的な使用法
# 例: テキストから画像への検索
text_inputs = tokenizer(["a description of the image", "another description of the image"])
image = preprocess("/path/to/image.png").unsqueeze(0)
with torch.no_grad():
logits_per_image, logits_per_text = model(image, text_inputs)
probs = logits_per_image.softmax(dim=-1).numpy()
📚 ドキュメント
モデルの詳細
このモデルは、LAIONの事前学習済みのlaion/CLIP-ViT-L-14-laion2B-s32B-b82K
をベースに、23,000のPNG画像とテキストのキャプションペアのカスタムデータセット(JianLiao/spectrum-icons)を用いて微調整されたCLIP ViT-L/14モデルです。微調整にはOpenCLIPライブラリとNVIDIA GPUを使用し、抽象的な視覚的特徴を扱う能力とRAGのパフォーマンスを向上させました。
ベースモデルは元々LAION-2Bデータセットで学習され、自然言語の監督を利用して視覚とテキストの埋め込みをアラインさせました。この微調整タスクは、モデルを特定のドメインに適応させると同時に、汎化能力を維持することを目指しています。
学習の詳細
学習データ
このモデルは、23,000の画像とテキストのキャプションペアで微調整されました。このデータセットは、多様で抽象的な視覚要素と詳細なテキスト記述を含むように設計され、抽象的なクエリと検索タスクを扱うモデルの能力を強化します。
学習手順
微調整は、6台のNVIDIA RTX-3090 GPUを搭載したマシン上でOpenCLIPライブラリを使用して行われました。主要なハイパーパラメータは以下の通りです。
- 学習率: コサイン減衰を伴う
5e-6
。 - バッチサイズ: GPUごとに
64
、実効的なグローバルバッチサイズは384
。 - エポック数:
40
。 - 精度: 効率向上のための混合精度 (
amp_bf16
)。 - 拡張:
- 色の揺らぎ:
(0.2, 0.2, 0.1, 0.0)
で確率0.7
。 - グレースケールの確率:
0.2
。
- 色の揺らぎ:
学習には、勾配チェックポイント、分散データ並列化 (NCCL)、およびゼロショットパフォーマンスの定期的な評価が組み込まれていました。各エポックの後に検証が行われました。
評価
テストデータ、要因、メトリクス
テストデータ
このモデルは、23,000の画像とテキストのペアから分割された検証セットで評価されました。メトリクスは、画像からテキストおよびテキストから画像の検索タスクの両方について計算されました。
メトリクス
- Kでの再現率:
- 画像からテキストおよびテキストから画像の検索におけるR@1、R@5、R@10。
- 平均ランクと中央ランク:
- 検索における正しいマッチの平均および中央位置。
結果
-
画像からテキストの検索:
- R@1: ~70.0%
- R@5: ~96.0%
- R@10: ~97.8%
- 平均ランク: ~2.24
- 中央ランク: ~1.0
-
テキストから画像の検索:
- R@1: ~70.3%
- R@5: ~96.4%
- R@10: ~98.1%
- 平均ランク: ~2.17
- 中央ランク: ~1.0
これらの結果は、視覚とテキストの埋め込み間の強力なアライメントを示しており、両方の検索タスクで強力なパフォーマンスを発揮しています。
🔧 技術詳細
モデルの詳細
このモデルは、LAIONの事前学習済みのlaion/CLIP-ViT-L-14-laion2B-s32B-b82K
をベースに、23,000のPNG画像とテキストのキャプションペアのカスタムデータセット(JianLiao/spectrum-icons)を用いて微調整されたCLIP ViT-L/14モデルです。微調整にはOpenCLIPライブラリとNVIDIA GPUを使用し、抽象的な視覚的特徴を扱う能力とRAGのパフォーマンスを向上させました。
ベースモデルは元々LAION-2Bデータセットで学習され、自然言語の監督を利用して視覚とテキストの埋め込みをアラインさせました。この微調整タスクは、モデルを特定のドメインに適応させると同時に、汎化能力を維持することを目指しています。
学習の詳細
学習データ
このモデルは、23,000の画像とテキストのキャプションペアで微調整されました。このデータセットは、多様で抽象的な視覚要素と詳細なテキスト記述を含むように設計され、抽象的なクエリと検索タスクを扱うモデルの能力を強化します。
学習手順
微調整は、6台のNVIDIA RTX-3090 GPUを搭載したマシン上でOpenCLIPライブラリを使用して行われました。主要なハイパーパラメータは以下の通りです。
- 学習率: コサイン減衰を伴う
5e-6
。 - バッチサイズ: GPUごとに
64
、実効的なグローバルバッチサイズは384
。 - エポック数:
40
。 - 精度: 効率向上のための混合精度 (
amp_bf16
)。 - 拡張:
- 色の揺らぎ:
(0.2, 0.2, 0.1, 0.0)
で確率0.7
。 - グレースケールの確率:
0.2
。
- 色の揺らぎ:
学習には、勾配チェックポイント、分散データ並列化 (NCCL)、およびゼロショットパフォーマンスの定期的な評価が組み込まれていました。各エポックの後に検証が行われました。
📄 ライセンス
このモデルはMITライセンスの下で公開されています。
謝辞
事前学習済みのベースモデルはLAIONによって開発され、LAION-2Bデータセットで学習されました。
引用
@inproceedings{cherti2023reproducible,
title={Reproducible scaling laws for contrastive language-image learning},
author={Cherti, Mehdi and Beaumont, Romain and Wightman, Ross and Wortsman, Mitchell and Ilharco, Gabriel and Gordon, Cade and Schuhmann, Christoph and Schmidt, Ludwig and Jitsev, Jenia},
booktitle={Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition},
pages={2818--2829},
year={2023}
}
OpenAI CLIP paper
@inproceedings{Radford2021LearningTV,
title={Learning Transferable Visual Models From Natural Language Supervision},
author={Alec Radford and Jong Wook Kim and Chris Hallacy and A. Ramesh and Gabriel Goh and Sandhini Agarwal and Girish Sastry and Amanda Askell and Pamela Mishkin and Jack Clark and Gretchen Krueger and Ilya Sutskever},
booktitle={ICML},
year={2021}
}
OpenCLIP software
@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}
}









