Downloads · 30 days
0
gajeshladhar/core-jepa
core-jepa is a image feature extraction model from gajeshladhar. Use it for the image feature extraction task on the model card, and read the license before you ship it in a product. It is set up for mapminer. The card lists the license as cc-by-nc-3.0.
[](https://pytorch.org/) [](https://colab.research.google.com/drive/1tVd0bICVPq28jxEMAw5M1pNJ852BHBP) [](https://github.com/rbalestr-lab/lejepa)
Downloads · 30 days
0
Access
Public
Updated Dec 15, 2025
Repo size
—
Likes
25
Public
Click a slice to open those files.
.py26.3 KB · 68%
From the Hugging Face model README
Core-JEPA is a specialized Earth Observation foundation vision backbone that bridges the gap between scalable self-supervised learning and theoretical rigor. Built on top of the DINOv3 backbone, this model integrates the LeJEPA (Lean Joint-Embedding Predictive Architecture) methodology.
Unlike standard approaches, Core-JEPA (based on LeJEPA) is a mathematical formulation for self-supervised learning (SSL) that is Free of Teacher-Student Paradigm and devoid of complex engineering heuristics.
<div align="left"> <img src="https://huggingface.co/datasets/gajeshladharai/artifacts/resolve/main/core-jepa/core_jepa_experimental.gif" alt="Core-JEPA Visualization" width="700"/> </div>🚧 Experimental Status: This model is currently under active development. Weights and architectures may change as we refine the training objectives.
Traditional SSL architectures (such as DINOv3 or I-JEPA) rely on a complex stack of engineering heuristics to prevent representation collapse (where the model outputs the same vector for every image). These brittle mechanisms include:
Core-JEPA breaks this cycle. It replaces ad-hoc engineering with a rigorous, provable objective function.
After integrating SIGReg and training on Core-Five, we observed consistent improvements over the standard DINOv3 baseline across multiple global Earth Observation downstream tasks:
| Benchmark Dataset | Task Type | Improvement (Top-1 Acc) wrt DINOv3 |
|---|---|---|
| AID | Scene Classification | +1.8% 📈 |
| UC Merced | Scene Classification | +1.5% 📈 |
| RSSCN-7 | Scene Classification | +0.3% 📈 |
| NWPU-RESISC45 | Scene Classification | +0.3% 📈 |
While LeJEPA demonstrates superior performance on global tasks (such as Scene Classification), our current experiments show a trade-off regarding local tasks.
We hypothesize that the strong regularization on the embedding distribution might be suppressing some of the high-frequency local features required for fine-grained segmentation. We are actively investigating this behavior.
You can load the Core-JEPA weights directly using mapminer and torch.hub. The weights are hosted in our artifacts repository for optimized bandwidth.
uv pip install mapminer
import torch
from mapminer import models
# 1. Initialize the architecture (DINOv3 backbone)
jepa = models.DINOv3(pretrained=False)
# 2. Download and Load Weights
# We point to the specific LeJEPA-Large checkpoint in the artifacts repo
ckpt_url = "https://huggingface.co/datasets/gajeshladharai/artifacts/resolve/main/core-jepa/lejepa-l.pt"
ckpt = torch.hub.load_state_dict_from_url(ckpt_url, map_location='cpu')
# 3. Remap Keys & Load State
# This maps the checkpoint keys to the mapminer model structure
jepa.load_state_dict(
{k.replace('encoder.model.', 'model.'): v for k, v in ckpt.items()},
strict=False
)
print("Core-JEPA loaded successfully!")
# 4. Run Inference
# Example: Random input image (Batch, Channels, Height, Width)
x = torch.randint(0, 255, (1, 3, 224, 224), dtype=torch.uint8)
# Normalize using the model's specific preprocessing
x = jepa.normalize(x)
# Forward pass
with torch.no_grad():
emb = jepa(x)
print(f"Embedding shape: {emb.shape}")
Get hands-on with Core-JEPA. Select a tutorial below to open it directly in Google Colab.
<table> <thead> <tr> <th style="width: 30%;">📝 Notebook Title</th> <th style="width: 40%;">Description</th> <th style="width: 30%;"> Run Now</th> </tr> </thead> <tbody> <tr> <td><strong>1. 🚩 Quick Start & Analysis</strong></td> <td>Load Core-JEPA weights, visualize embeddings via <strong>PCA</strong>, and perform a distribution analysis to verify Gaussian Isotropy.</td> <td> <a href="https://colab.research.google.com/drive/1tVd0bICVPq28jxEMAw5M1pNJ852BHBP_"> <img src="https://img.shields.io/badge/Colab-F9AB00?style=for-the-badge&logo=googlecolab&color=525252" alt="Open In Colab"/> </a> </td> </tr> <tr> <td><strong>2. 🕵️♂️ Benchmarking</strong></td> <td>Reproduce results on downstream tasks. Trains a <strong>Linear Probe</strong> on the AID dataset to verify the >96% accuracy against DINOv3.</td> <td> <a href="https://colab.research.google.com/drive/1HUdMoCMJthp2Ge9E67WrZ0FRyQwZR67h"> <img src="https://img.shields.io/badge/Colab-F9AB00?style=for-the-badge&logo=googlecolab&color=525252" alt="Open In Colab"/> </a> </td> </tr> <tr> <td><strong>3. 📜 Standard Training</strong></td> <td>Implementation of the original <strong>LeJEPA</strong> paper recipe. Focuses exclusively on <strong>Global Loss</strong> minimization using SIGReg.</td> <td> <a href="https://colab.research.google.com/drive/1dD1LTy_uDDNzy9eRnRE4hJysd_udyvlT"> <img src="https://img.shields.io/badge/Colab-F9AB00?style=for-the-badge&logo=googlecolab&color=525252" alt="Open In Colab"/> </a> </td> </tr> <tr> <td><strong>4. 🧪 Experimental Training</strong></td> <td>Our custom <strong>Core-JEPA</strong> recipe. Extends LeJEPA by adding <strong>Local Loss</strong> (on all tokens) and <strong>Gram Anchoring</strong> for dense feature learning.</td> <td> <a href="https://colab.research.google.com/drive/18H0rzLktNQsF8tZbIiQX90q_vS9lV7Di"> <img src="https://img.shields.io/badge/Colab-F9AB00?style=for-the-badge&logo=googlecolab&color=525252" alt="Open In Colab"/> </a> </td> </tr> </tbody> </table>This work relies heavily on the research presented in LeJEPA (Lean Joint-Embedding Predictive Architecture). If you find this model useful, please consider citing the original paper:
LeJEPA: Provable and Scalable Self-Supervised Learning Without the Heuristics
@article{balestriero2025lejepa,
title={LeJEPA: Provable and Scalable Self-Supervised Learning Without the Heuristics},
author={Balestriero, Randall and LeCun, Yann},
journal={arXiv preprint arXiv:2511.08544},
year={2025}
}
Check out the official LeJEPA repository here: https://github.com/rbalestr-lab/lejepa
This project is released under the Creative Commons Attribution-NonCommercial 3.0 Unported (CC BY-NC 3.0) license.
✅ Free to use, share, and adapt for non-commercial research
❌ Commercial use is not permitted without explicit permission
📌 Please provide appropriate credit when using this dataset in publications or projects.