Kertory-JEPA is a predictive latent world model that learns reusable physics from observation — tested across three versions, from a fixed-condition failure to few-shot adaptation on the unfamiliar.
Raw sensor data is noisy and mostly unpredictable in detail. JEPA compresses it into a clean abstract representation first — then predicts the next representation, never the next pixel.
Kertory-JEPA is built around three abilities, tested independently at every version.
A pretrained visual encoder turns raw simulation frames into latent embeddings; a trained predictor learns how those embeddings evolve under gravity, restitution, radius, and friction.
Once trained across randomized physics, in-range prediction error holds at 5–31% — even with four variables moving at once, instead of memorizing a single fixed condition.
Given just 8 new episodes from a condition it has never seen, the model cuts its own error by 54.6% in 20 adaptation steps — no full retraining required.
This is the complete research journey across three iterations of Kertory-JEPA — including the version that failed, because it's what motivated everything after it. Every figure below is a measured evaluation result, not a projection.
300 episodes, gravity held constant at 1.0, a 22.3M-parameter predictor trained from scratch on a pretrained visual encoder. Training and validation loss looked healthy — 0.1301 vs 0.1329 — but that only measured performance inside the one condition it had ever seen.
Gravity sampled from 0.3–2.5 per episode, 500 episodes, improved temporal pooling and a JEPA-style loss with a per-position mask token. In-range error fell from 541% to 5–31%. Extrapolation beyond the trained range — 85–135% — remained the open problem.
Gravity, restitution, ball radius, and friction randomized together — 1,000 episodes, 32–35M parameters, five staged tests (A–E). In-range performance held at the same 5–31% band even with four variables moving jointly. Out-of-range error narrowed further to 62–67%. Then Stage E asked a new question entirely.
V0.3.1 only predicted what happens next; V0.4's goal was predicting what happens next given an action — the step toward robot control. The synthetic ball simulator was swapped for real Franka-arm data (Hugging Face's muacha/droid-30-converted, 30 episodes, ~437 training windows), with a frozen V-JEPA2 encoder feeding a new 30M-parameter action-conditioned predictor trained for 8-dimensional joint actions.
After 30 epochs, validation loss plateaued at 0.378 — about 20× worse than V0.3.1's 0.019. Few-shot adaptation, tested across six combinations of episode and learning rate, swung between +10.9% and −51.6% with no consistent pattern.
V0.5 follows one rule: competitors are racing to collect more data; Kertory is racing to learn more from less of it. Three concrete changes from V0.4: (1) back to the controllable KertoryWorld simulator, initialized from V0.3.1's already-trained weights rather than from scratch; (2) intervention-effect supervision — each episode now pairs one starting state with two different actions, so the model is shown directly how the outcome should change with the action, not just one averaged result; (3) Reptile meta-learning folded into training itself — every fourth batch, the model takes a mock few-shot test, adapts in 3 steps, and nudges its real weights toward being faster to adapt, rather than adaptation being a separate step applied after training.
This time with meta-learning included from the start, and a larger slice of DROID — roughly 100+ episodes instead of V0.4's 30 — aiming for few-shot adaptation that holds up consistently on real robot footage, not just in simulation.
Planned: a permanent Hugging Face Spaces demo (the current one is temporary), a test on a small physical robot-arm prototype outside simulation, and extending to multi-object, multi-task scenes. The goal across V0.3.1 to V0.7 is one running benchmark: how many examples it takes to reach a given improvement, tracked version over version.
Zero-shot loss on a fully unseen combination of gravity, restitution, radius, and friction was 0.04057. After a short, low-learning-rate adjustment on just 8 new episodes — 20 steps, not full retraining — loss dropped to 0.01843. That's the first direct evidence that Kertory-JEPA can improve its handling of an unfamiliar environment from a handful of observations, rather than needing to be retrained from zero.
A rollout clip — the model's predicted trajectory next to the ground-truth simulation. Click to play.
Upload kertory-jepa-demo.mp4 (and optionally a kertory-jepa-demo-poster.jpg thumbnail) to the same folder as this page — the player above goes live automatically, same as the paper/model links below.
Not Kertory-JEPA footage — physics/AI reference clips for context, until the real rollout videos above are ready.
Reference clips via Pexels: robotic arm footage by Usman AbdulrasheedGambo, particle animation by Nicola Narracci, AI visualizations from Google DeepMind's "Visualising AI" project (artists Linus Zoll and Martina Stiftinger) — all free to use.
Every combination below is a real recorded result from V0.4 testing on real DROID robot episodes — not a live-running model. Pick an episode and learning rate to see what was actually measured.
Source: V0.4 few-shot adaptation testing. Six episode/learning-rate combinations were tested in total — this explorer shows all of them, nothing extrapolated.
Kertory-JEPA hasn't been tested in these settings — but this is the kind of use case a generalizing, few-shot-adaptable world model points toward.
A learned predictor that generalizes across gravity, restitution, and friction could approximate expensive physics engines for real-time use.
Few-shot adaptation from just 8 episodes suggests a path toward adjusting to a new environment's physics without full retraining.
Clips: particle animation by Nicola Narracci, robotic arm footage by Usman AbdulrasheedGambo — both free to use via Pexels.
Testing was staged deliberately, so that if generalization failed, the specific variable or combination responsible could be identified — rather than one opaque pass/fail number.
| Stage | Grav | Rest | Rad | Fric | Loss |
|---|---|---|---|---|---|
| A — Baseline | 1.40 | 0.68 | 12 | 0.075 | 0.02519 |
| B — Gravity | 0.50 | 0.68 | 12 | 0.075 | 0.02579 |
| B — Gravity | 2.00 | 0.68 | 12 | 0.075 | 0.02712 |
| B — Restitution | 1.40 | 0.45 | 12 | 0.075 | 0.02226 |
| B — Restitution | 1.40 | 0.90 | 12 | 0.075 | 0.03077 |
| B — Radius | 1.40 | 0.68 | 7 | 0.075 | 0.02126 |
| B — Radius | 1.40 | 0.68 | 17 | 0.075 | 0.02796 |
| B — Friction | 1.40 | 0.68 | 12 | 0.020 | 0.02379 |
| B — Friction | 1.40 | 0.68 | 12 | 0.130 | 0.02379 |
| C — Grav + Rest | 0.50 | 0.90 | 12 | 0.075 | 0.03388 |
| C — Grav + Radius | 2.00 | 0.68 | 16 | 0.075 | 0.02977 |
| C — Rest + Radius | 1.40 | 0.45 | 8 | 0.075 | 0.02217 |
| C — Grav + Friction | 1.40 | 0.68 | 12 | 0.120 | 0.02428 |
| D — Extrapolation | 0.15 | 0.35 | 20 | 0.200 | 0.04196 |
| E — Zero-shot | 0.15 | 0.35 | 20 | 0.200 | 0.04057 |
| E — Few-shot (8 ep) | 0.15 | 0.35 | 20 | 0.200 | 0.01843 |
Raw physics simulation → pretrained visual encoder → trained predictor → measured evaluation, unchanged across all three versions.
V0.1's memorization failure was root-caused and fixed by changing the training data, not just the model.
Within a trained range, covering gravity, restitution, radius, and friction simultaneously.
A 54.6% error reduction from 8 new observations, without full retraining.
Error still rises substantially there — Stage D, +62–67%.
No explicit representation of force, mass, or energy conservation.
No real object, sensor, or robotics data was used anywhere in this series.
No claim of, or comparison to, general intelligence or language models is made.
The model weights and full paper are being prepared for release. The two pills below already point to filenames — upload a file with that exact name to the same folder as this page on your site, and the link goes live automatically, no code changes needed.
Industry players like Generalist AI and OpenVLA train on 270,000–500,000+ hours of robot data with 7–10B-parameter models. A solo researcher will never out-scale that — so Kertory's bet is fast adaptation from a handful of examples, not scale.
Across V0.1 to V0.3.1, prediction error under distribution shift fell from +541% to +62–67%, and few-shot adaptation was demonstrated for the first time in this project. V0.4 then showed that adding actions and switching to real robot data isn't a small step — few-shot adaptation stopped being reliable, which is exactly what V0.5's intervention-effect and meta-learning changes are built to fix.
@misc{kumar2026kertoryjepa,
title = {Kertory-JEPA: A Self-Supervised Latent World Model for Physics Generalization},
author = {Kumar, Vikash},
year = {2026},
note = {Independent research project, V0.1--V0.4 (measured); V0.5 in progress; V0.6--V0.7 planned}
}
Kertory-JEPA is free to use, study, and share for research and personal projects — just credit the work. Using it (or anything built on it) inside something you're selling or monetizing needs written permission first.
✅ Personal, academic & research use — free, just credit "Kertory-JEPA by Vikash Kumar".
✅ Studying, modifying, and sharing your modifications — free, same credit rule.
❌ Selling it, or using it inside a paid product/service — requires permission (ask below).
Goes straight to the author. You'll hear back by email — no automatic approval.
Positions open up here as the project grows. Sign in to apply when something fits — Google or GitHub, whichever you prefer.
Hugging Face sign-in isn't supported by Firebase's free auth yet.
Sign in to upload/replace photos & videos. Everyone else can only view.