Joint Embedding Predictive Architecture (JEPA)
Ortak Gömme Tahmin Mimarisi (JEPA), bir görüntünün veya videonun görünür kısımlarından gizli kısımlarının gömmelerini tahmin ederek öğrenir.
Ortak Gömme Tahmin Mimarisi (JEPA), bir ağın girdisinin görünür bir bölümünden hareketle gizli bir bölümün soyut gösterimini tahmin ederek öğrendiği bir öz denetimli öğrenme tasarımıdır. Bazı bölgeleri maskelenmiş bir görüntü verildiğinde JEPA, pikselleri yeniden oluşturmadan maskeli bölgelerin gömmelerini tahmin eder. Böylece eğitim sinyali, nesne şekli ve yerleşimi gibi tahmin edilebilir anlamsal içeriğe odaklanır; yaprak dokusu veya sensör gürültüsü gibi tahmin edilemez ayrıntıları atlar. Yann LeCun, mimariyi Özerk Makine Zekâsına Doğru Bir Yol başlıklı 2022 tarihli görüş yazısında dünya modelleri için bir yapı taşı olarak önerdi. Meta'nın I-JEPA ve V-JEPA modelleri bu yaklaşımı görüntüler ve videolar için uygulamaya koydu.
JEPA Nasıl Çalışır?#
Bir JEPA üç ağdan oluşur. Genellikle bir görsel Transformer (ViT) olan bağlam kodlayıcı, görünür yamaları gömer. Hedef kodlayıcı girdinin tamamını gömer; gizli konumlardaki gömmeleri hedef hâline gelir. Daha dar bir Transformer olan tahminleyici, bağlam gömmelerini ve her hedefin yerini belirten maske belirteçlerini alıp hedef gömmelerine ilişkin tahminini üretir. Kayıp fonksiyonu, tahmin edilen ve gerçek hedef gömmeleri arasındaki ortalama L2 uzaklığıdır; yalnızca bağlam kodlayıcı ve tahminleyici gradyan alır. I-JEPA'da her eğitim görüntüsü, görüntünün %15–20'sini kapsayan dört hedef bloğu ve %85–100'ünü kapsayan bir bağlam bloğu üretir. Hedeflerle örtüşen alanlar bağlam bloğundan çıkarılır; böylece model, seyrek bağlamdan büyük ve anlamsal bölgeler çıkarsamak zorunda kalır.
Gösterim Çökmesini Önleme#
Gömme tahmin etmek bir kestirme yol açar: Her iki kodlayıcı da her girdi için aynı sabit vektörü üretirse tahmin kusursuz, kayıp sıfır olur. Bu başarısızlık gösterim çökmesi olarak bilinir. I-JEPA ve V-JEPA bunu asimetriyle önler. Hedef kodlayıcıya gradyan ulaşmaz; bunun yerine kodlayıcının ağırlıkları, I-JEPA eğitimi sırasında 0.996'dan başlayıp doğrusal olarak 1.0'a yükselen momentumla bağlam kodlayıcısının ağırlıklarının üstel hareketli ortalamasını (EMA) izler. Aynı EMA güncellemesi, Ultralytics'te YOLO26 eğitiminde de kullanılır: Eğitici, model ağırlıklarının 0.9999'a doğru yükselen bir azalma katsayısıyla hareketli ortalamasını tutar ve bu ortalama kopyayı kontrol noktası olarak kaydeder. Randall Balestriero ve LeCun tarafından 2025'te yayımlanan LeJEPA, EMA öğretmeni ile gradyan durdurmayı kaldırır ve gömmeleri izotropik bir Gauss dağılımına yaklaştıran SIGReg adlı bir düzenleyici kullanır.
Aşağıdaki PyTorch döngüsü, bağlam görünümüyle hedef görünümün gizli 8 boyutlu bir nedeni paylaştığı sentetik vektörler üzerinde küçük bir JEPA'yı eğitir.
import copy
import torch
from torch import nn
torch.manual_seed(0)
latent = torch.randn(512, 8) # hidden cause shared by both views
x, y = latent @ torch.randn(8, 64), latent @ torch.randn(8, 64) # context view x, target view y
encoder = nn.Sequential(nn.Linear(64, 128), nn.ReLU(), nn.Linear(128, 32))
target_encoder = copy.deepcopy(encoder).requires_grad_(False) # updated only by EMA
predictor = nn.Linear(32, 32)
optimizer = torch.optim.Adam([*encoder.parameters(), *predictor.parameters()], lr=1e-3)
for step in range(1, 501):
# Predict the target embedding from the context embedding; raw inputs are never reconstructed
loss = nn.functional.mse_loss(predictor(encoder(x)), target_encoder(y))
optimizer.zero_grad()
loss.backward()
optimizer.step()
with torch.no_grad(): # EMA update of the target encoder with momentum 0.996
for target_param, param in zip(target_encoder.parameters(), encoder.parameters()):
target_param.lerp_(param, 0.004)
if step in {1, 500}:
print(f"step {step}: latent loss {loss.item():.4f}, target embedding std {target_encoder(y).std(0).mean():.3f}")step 1: latent loss 0.5372, target embedding std 0.547 ve step 500: latent loss 0.0060, target embedding std 0.595 değerlerini yazdırır. Gömme uzayındaki tahmin hatası yaklaşık 90 kat azalırken hedef gömmelerinin yayılımı sabit kalır; dolayısıyla kayıp, gömmeler sabit bir vektöre çökmeden düşmüştür.
JEPA ve İlgili Yaklaşımlar#
- Maskeli otomatik kodlayıcılar (MAE): Yamaları aynı şekilde maskeler ve eksik pikselleri yeniden oluşturur; bu da model kapasitesini düşük seviyeli ayrıntılara harcar. JEPA, eksik içeriği gösterim uzayında tahmin eder.
- Karşılaştırmalı öğrenme: Bir görüntünün iki artırılmış görünümünün gömmelerini birbirine yaklaştırır, başka görüntülerinkileri ise birbirinden uzaklaştırır; bu yüzden negatif örnekler ve kırpma ya da renk titreşimi gibi elle tasarlanmış artırmalar gerekir. I-JEPA ikisini de kullanmaz.
- DINO gibi öz damıtma yöntemleri: Öğrenciyi EMA öğretmenine göre eğitir ve aynı görüntünün artırılmış kırpımları arasında gömmeleri eşleştirir. JEPA ise bir bölgenin gömmesini başka bir bölgeden tahmin eder; bu da uzamsal ve zamansal yapıyı öğretir.
- Üretici dünya modelleri: Video üreticilerinin yaptığı gibi, gelecek kareleri piksel uzayında tahmin eder. Bir JEPA dünya modeli, gelecekteki gömmeleri tahmin eder ve doğrudan bu örtük uzayda plan yapabilir.
JEPA Modelleri#
- I-JEPA (2023): Görüntü modeli, ImageNet üzerinde 72 saatten kısa sürede 16 A100 GPU kullanarak bir ViT-Huge/14 eğitti. Özellikleri, elle tasarlanmış veri artırmaları olmadan doğrusal sınıflandırma, nesne sayımı ve derinlik tahminine aktarılabilir.
- V-JEPA (2024): Tek amaç olarak özellik tahminiyle 2 milyon video üzerinde eğitilen en büyük modeli (dondurulmuş bir ViT-H/16), Kinetics-400 üzerinde %81.9, Something-Something v2 üzerinde %72.2 ve ImageNet-1k üzerinde %77.9 sonuçlarına ulaşır.
- V-JEPA 2 (2025): İnternetteki 1 milyon saatten fazla video üzerinde önceden eğitilmiş model, Something-Something v2 üzerinde %77.3 top-1 doğruluğa, Epic-Kitchens-100 eylem öngörüsünde ise 39.7 recall-at-5 değerine ulaşır. Eylem koşullu sürümü V-JEPA 2-AC, DROID veri kümesindeki 62 saatten kısa etiketsiz robot videosuyla ek eğitim aldıktan sonra, görüntü hedeflerine göre planlama yaparak iki laboratuvarda Franka robot kolları üzerinde sıfır örnekle nesneleri alıp yerleştirdi.










