🚀 I-JEPAモデル (Huge, IN1Kでファインチューニング済み)
I-JEPA は自己教師付き学習の手法です。大まかに言うと、I-JEPAは画像の一部の表現を同じ画像の他の部分の表現から予測します。
- 特定の下流タスクに偏りが生じやすい手作りのデータ変換に対する事前指定の不変性に依存せず、
- モデルが画素レベルの詳細を埋めることもなく、これは意味的にあまり意味のある表現を学習する結果につながりやすいです。

🚀 クイックスタート
モデルの概要
I-JEPAは、画素デコーダを持つ生成モデルとは異なり、潜在空間で予測を行う予測器を持っています。この予測器は、部分的に観測可能なコンテキストから静的画像の空間的不確実性をモデル化できる基本的(かつ制限された)ワールドモデルと見なすことができます。このワールドモデルは、画像の見えない領域に関する高レベルの情報を予測するという意味で意味論的であり、画素レベルの詳細ではありません。
データセットとライセンス
属性 |
详情 |
データセット |
ILSVRC/imagenet - 1k |
ライブラリ名 |
transformers |
ライセンス |
cc - by - nc - 4.0 |
✨ 主な機能
動作原理
I-JEPAは、潜在空間で予測を行う予測器を持っています。この予測器は、部分的に観測可能なコンテキストから静的画像の空間的不確実性をモデル化できる基本的(かつ制限された)ワールドモデルと見なすことができます。このワールドモデルは、画像の見えない領域に関する高レベルの情報を予測するという意味で意味論的であり、画素レベルの詳細ではありません。

用途と制限
I-JEPAは画像分類や特徴抽出に使用できます。このチェックポイントは特に 特徴抽出 を目的としています。
💻 使用例
基本的な使用法
以下は、このモデルを画像特徴抽出に使用する方法です。
import requests
from PIL import Image
from torch.nn.functional import cosine_similarity
from transformers import AutoModel, AutoProcessor
url_1 = "http://images.cocodataset.org/val2017/000000039769.jpg"
url_2 = "http://images.cocodataset.org/val2017/000000219578.jpg"
image_1 = Image.open(requests.get(url_1, stream=True).raw)
image_2 = Image.open(requests.get(url_2, stream=True).raw)
model_id = "jmtzt/ijepa_vith14_1k"
processor = AutoProcessor.from_pretrained(model_id)
model = AutoModel.from_pretrained(model_id)
def infer(image):
inputs = processor(image, return_tensors="pt")
outputs = model(**inputs)
return outputs.last_hidden_state.mean(dim=1)
embed_1 = infer(image_1)
embed_2 = infer(image_2)
similarity = cosine_similarity(embed_1, embed_2)
print(similarity)
📚 ドキュメント
BibTeX引用
もしあなたの研究でI-JEPAまたはこのコードを使用する場合は、以下を引用してください。
@article{assran2023self,
title={Self-Supervised Learning from Images with a Joint-Embedding Predictive Architecture},
author={Assran, Mahmoud and Duval, Quentin and Misra, Ishan and Bojanowski, Piotr and Vincent, Pascal and Rabbat, Michael and LeCun, Yann and Ballas, Nicolas},
journal={arXiv preprint arXiv:2301.08243},
year={2023}
}