When does pixel reconstruction help a JEPA world model plan?

Code

TL;DR: JEPA world models can lose track of a moving object when the background barely changes. In our experiments, adding a strongly weighted reconstruction loss fixed this, raising planning success on frozen backgrounds from 11% to 71%, while costing about 4 percentage points on flickering ones.

Plain LeWM
LeWM + reconstruction

Loading saved observations…

Fig. 1. Plain LeWM and LeWM + reconstruction planning on the same frozen background, starting from the same point and moving towards the same target.

While LLMs have proven their worth in the digital realm, there exists a considerable gap in how they adapt to perform real tasks in the physical world. VLA (Vision Language Action) models - a derivative of the VLM (Vision Language Model) - built upon the LLM architecture to meet the physical world, are currently the front runner for most robotics startups (e.g., Figure AI, Physical Intelligence). While VLAs are making progress, some argue they have their limitations. Namely, they map what they see to an action and are reactive in nature. They do not predict what their actions cause and primarily rely on large amounts of robot demonstration data to “learn”. A compelling alternative, one rising in popularity, is world models. Unlike VLAs, they predict what happens after an action, so a robot can imagine outcomes and plan its actions. General Intuition, AMI Labs, and Google DeepMind are a few companies focused on this paradigm.

Such models have a wide range of applications, ranging from robotics and interactive games to self-driving and biology. Today, “world models” are used as a blanket term across the industry. For the ones we care about, they can be loosely grouped into two camps: generative and latent world models. While both learn to predict what happens next after an action, they differ in what they predict. Generative models predict the next entire observation, like an image (pixels), while latent models predict a compressed representation of it.

A prominent example of the latter is JEPA (Joint Embedding Predictive Architecture), proposed by Yann LeCun (2022). The underlying premise is that the model predicts in representation space instead of reconstructing the entire image, and can learn to ignore details that are random or irrelevant to the task, such as sensor noise. For instance, a world model trying to predict where a car will be next does not need to exactly predict how the leaves on the trees behind it will sway. In contrast, a generative model has to render them anyway, leading to more effort on irrelevant details. The bet is that much of the future is unpredictable, and a model focusing on predicting only what’s necessary in a compact representation learns more useful features while being cheaper to plan with.

However, this freedom to ignore details poses a risk of ignoring the wrong thing. Sobal et al. (2022) showed that JEPA models tend to fixate on aspects of a scene that change slowly, like the background, a tendency known as the slow-feature bias. This happens because the model is rewarded for predicting its next representation accurately, and anything in the scene that’s fixed is the easiest to predict.

Generative models are much less prone to this problem, since they must redraw the entire scene, including the moving object, to predict the next frame. This raises a natural question: can we get the best of both? Specifically, does adding pixel reconstruction to a JEPA model stop it from losing track of the object, and when does that actually help it plan? To test this, we built a small environment of a single dot moving over a noisy background, varying how quickly the background changes, from frozen to flickering. We found that on stable backgrounds, a sufficiently weighted reconstruction loss improved planning from 11–19% to 71–79% (Fig. 1), with a slight reduction on flickering backgrounds. We repeat each main comparison with three training seeds and evaluate on unseen data.

One thing to acknowledge before proceeding is that reconstruction partly goes against JEPA’s core idea of ignoring irrelevant detail, a trade-off we discuss later on. Our goal is simply to see how close we can get to the best of both.

How a JEPA model works

A JEPA model consists of an encoder and a predictor. At the simplest level, the encoder converts an image, or state, oto_t into an embedding ztz_t in latent space. The predictor takes that embedding and an action ata_t to predict the embedding of the next state, z^t+1\hat{z}_{t+1}. During training, the model learns to make this prediction match the encoder’s embedding of the actual next state, zt+1z_{t+1} (Fig. 2). The model can be prone to cheating, commonly known as representation collapse, where the encoder outputs the same embedding for every image, making the prediction trivially perfect. LeWorldModel (LeWM; Maes et al., 2026), a model based on JEPA, prevents this issue with SIGReg (Sketched Isotropic Gaussian Regularization; Balestriero & LeCun, 2025), which pushes the embeddings of different images to spread out evenly in every direction, so they cannot all collapse to a single point. However, SIGReg does not address the slow-feature bias described earlier, where the model focuses on the wrong features.

Predicting the next embeddingThe current image passes through an encoder. Its embedding and an action enter the predictor. The predicted embedding is compared with the actual next image's embedding using mean squared error. Both images use the same encoder. This shows LeWM's prediction objective; SIGReg is described in the text.otEncoderztot+1Encoderzt+1atPredictorẑt+1MSE
Fig. 2. A JEPA model predicting the next embedding. The current and next images both pass through the same encoder, and the predictor learns to match its prediction to the actual next embedding. SIGReg, which keeps embeddings from collapsing, is not shown.

Where existing fixes fall short

This slow-feature bias has received growing attention. A recent study by Gulati & Nemenman (2026) showed that the issue worsens gradually as the background changes more slowly. However, they only studied contrastive JEPA models. In such approaches, the models avoid collapse by comparing clips against each other, eventually learning to discern different clips. LeWM, on the other hand, uses SIGReg instead to avoid collapse. Recent JEPA work has been moving towards LeWM-style approaches, partly because contrastive learning requires a large number of negative samples, or mismatched clips to compare against.

LeWM is not immune to this either. MotionJEPA (Karmann et al., 2026) showed that static background distractors can severely degrade LeWM’s planning. They went on to propose a training objective that encourages the model to retain what changes between frames by predicting an embedding of the difference between consecutive frames, where anything static cancels out. However, their planning experiments kept these distractors fixed within each trajectory, without varying how quickly the background changes. In reality, backgrounds are rarely perfectly still and a slowly changing background may be just as bad as a static one. It is also unclear whether MotionJEPA’s fix holds up in that case, since a drifting background no longer fully cancels out between frames.

A simpler alternative is to borrow from generative models. As discussed earlier, generative models are much less prone to the slow-feature bias because they must redraw the entire frame, moving object included, so adding a reconstruction loss to a JEPA model could have a similar effect. This idea is not new to latent world models. Dreamer (Hafner et al., 2020) learns its latent space partly by redrawing images, and LRC-JEPA (Huang et al., 2026) explores a more elaborate version, routing slowly changing information into a separate branch used only for reconstruction. However, reconstruction comes with its own trade-off: in reinforcement learning, reconstruction-based world models are known to struggle when backgrounds contain complex moving distractors (Deng et al., 2022), since they waste effort redrawing them. The LeWM authors also found that adding a reconstruction loss did not improve planning on clean scenes. That being said, we do not know if a simple reconstruction loss helps LeWM when a distracting background is present, and if it does, how much weight it needs. So we look at two things: how LeWM behaves as the background changes more slowly, and whether reconstruction or MotionJEPA can fix it. For this, we need an environment where we have full control over the background.

Experimental Setup

We use the moving-dot environment from Sobal et al. (2022). The environment consists of a 28×28 image with a moving dot where an action moves it a small amount. The model is then trained on 20,000 clips of the dot randomly moving on top of a noisy background. The noise is relatively faint with a per-pixel standard deviation  (σ) of 0.03 in relation to the dot’s brightness.

The speed with which the background changes is controlled with the ρ parameter. We test five speeds: frozen (ρ = 1), slow drift (ρ = 0.99), moderate drift (ρ = 0.9), fast drift (ρ = 0.5), and flicker (ρ = 0), where the noise is new every frame (Fig. 3). Each clip has its own random background. As a reference, we also train and test plain LeWM with no background noise—just the dot on a blank image. The chart labels this “No background.”

Frozen(ρ = 1)
Slow drift(ρ = 0.99)
Moderate drift(ρ = 0.9)
Fast drift(ρ = 0.5)
Flicker(ρ = 0)

Loading saved observations…

Fig. 3. The same dot and movements across each of the five background speeds, ranging from frozen to flickering. The contrast is increased to make the background easier to see.

During testing, we give the model a goal image from later in the same clip, and use a planner (CEM) to move the dot towards it. If it ends up within 1.5 pixels of the goal within 20 moves, we count it as a success. For reference, random actions succeed 16.4% of the time, while a controller given the true dot position succeeds on all 500 goals.

We then compare four models: plain LeWM, a pixel model, LeWM + reconstruction, and MotionJEPA, all using the same encoder and predictor, and the same training settings. Each model is trained three times with different random seeds and tested on the same set of 500 unseen goals. Unless stated otherwise, the percentages below are averages across those three runs, rounded to the nearest whole percent; ranges span background conditions.

Results

Where plain LeWM fails

On a clean background with no noise, plain LeWM plans well, reaching the goal 85% of the time. However, once a background is present, its performance relies heavily on how quickly the background changes. For instance, with frozen backgrounds, slow drift, or moderate drift (ρ = 0.9), planning drops to 11–19%: below random actions on frozen backgrounds and roughly at random with slow or moderate drift. It only retains performance when the background changes quickly, reaching 83% with fast drift (ρ = 0.5) and 86% with flicker (Fig. 4).

To investigate this, we checked if the dot’s position could still be read from the model’s embeddings. On frozen backgrounds, the position readout was poor, with a mean error of 8.82 pixels. Despite this, the model could identify the source clip 100% of the time in a check that fixed the dot positions across clips, leaving only the background to distinguish them. In other words, the model had learned to recognize backgrounds instead of tracking the dot.

This follows from how the model is trained. Since the background stays the same throughout a clip, so does the embedding, making the next one trivial to predict. At the same time, each clip has a different background, so the embeddings still differ across clips, which is enough to satisfy SIGReg. As a result, the model satisfies its training goals without needing to track the dot, essentially using the background as a name tag for each clip. With a flickering background, this shortcut no longer works, since the random noise is hard to predict frame to frame.

The pixel model, on the other hand, holds up much better on stable backgrounds, reaching 72% on frozen. However, it falls behind plain LeWM on flicker (77% vs. 86%), since it wastes effort trying to predict the noise. In other words, each approach fails where the other succeeds, leading back to our question of whether a JEPA model can get the best of both.

050100Frozenρ = 1Slow driftρ = 0.99Moderate driftρ = 0.9Fast driftρ = 0.5Flickerρ = 0Plain LeWM · Frozen Three-run mean ± SD: 10.7 ± 0.8%Plain LeWM · Slow drift Three-run mean ± SD: 17.2 ± 0.2%Plain LeWM · Moderate drift Three-run mean ± SD: 18.6 ± 4.9%Plain LeWM · Fast drift Three-run mean ± SD: 82.7 ± 2.1%Plain LeWM · Flicker Three-run mean ± SD: 86.3 ± 2.3%Pixel model · Frozen Three-run mean ± SD: 72.3 ± 3.2%Pixel model · Slow drift Three-run mean ± SD: 72.1 ± 3.4%Pixel model · Moderate drift Three-run mean ± SD: 73.9 ± 2.6%Pixel model · Fast drift Three-run mean ± SD: 74.1 ± 2.6%Pixel model · Flicker Three-run mean ± SD: 77.2 ± 1.1%Plain LeWMPixel modelNo backgroundRandom actionsPlanning success (%)
Fig. 4. Planning success for plain LeWM and the pixel model as the background changes faster, from frozen to flickering. Plain LeWM fails on slower backgrounds, staying around random actions, but recovers once the background changes quickly. The pixel model, on the other hand, stays relatively steady throughout. Each point is the average of three training runs, with bars showing ± one standard deviation across runs.

Fixing it with reconstruction

The pixel model largely avoids this shortcut by redrawing the entire frame. So, we add a similar pressure to LeWM. Alongside its usual prediction task, the model also redraws the current image from its embedding. We use the β parameter to control the extent to which this redraw influences training (Fig. 5).

One prediction architecture, three training objectivesImage thumbnails are two consecutive saved moving-dot observations on a frozen background. Decoder outputs are labeled, not depicted as real images. Each model is trained separately with the same encoder and action-conditioned predictor architecture. Plain LeWM compares the predicted next embedding with the next image encoded by the same encoder and uses SIGReg to discourage collapse. The pixel model instead decodes the predicted next embedding and compares the resulting image with the actual next image. The reconstruction blend retains LeWM's complete objective and adds a decoder on the current embedding, comparing its reconstruction with the actual current image. Symbols follow LeWorldModel: o_t and o_t+1 denote current and next observations, a_t denotes the action; hats mark predicted or reconstructed outputs. For embeddings, z_t is the current embedding, z-hat_t+1 is the predicted next embedding, and z_t+1 is the actual next image embedding. Small colored circles labeled MSE represent mean squared error between prediction and target, not model components. The dotted regions show differing training branches, with each model's objective beside it. No target stop-gradient is used.EncoderPredictorEncoderDecoderDecoderztẑt+1zt+1atôt+1ôtotot+1ot+1otMSEMSEMSEweight βPlain LeWMPredict the next embeddingPixel modelPredict the next imageLeWM + reconstructionPredict the next embeddingand redraw the current image
Fig. 5. How each model is trained. Plain LeWM learns to match its predicted embedding to the actual next embedding (blue). The pixel model instead predicts the next image itself and matches it to the actual next image (magenta). LeWM + reconstruction does both - it matches embeddings like plain LeWM, while also redrawing the current image (green), with β controlling how much the redraw counts. MotionJEPA's added objective and SIGReg are not shown.

With small weights, it essentially had no impact. In the single-seed weight sweep, β = 0.1, 1, and 30 reached 12.8%, 9.0%, and 13.0% planning success on frozen backgrounds, respectively, compared with 9.8% for plain LeWM using that seed. One likely reason is the size of the dot in relation to its background, only taking up a few of the 784 pixels. So a redrawn image can leave the dot out entirely and still have a low average pixel error. The gradient diagnostic supports this: at β = 1, the reconstruction gradient norm on the encoder was just 0.39% of the JEPA gradient norm at initialization and 0.08% at the end of training. Of the weights tested, only β = 300 produced a large improvement, reaching 69.4% for that seed and 71% averaged across all three seeds (Figs. 6 and 7).

050100none0.1130300Random actionsβ = none (plain LeWM) Seed 3072: 9.80%β = 0.1 Seed 3072: 12.80%β = 1 Seed 3072: 9.00%β = 30 Seed 3072: 13.00%β = 300 Seed 3072: 69.40%Planning success (%)
0510none0.1130300β = none (plain LeWM) Seed 3072: 8.82 pixelsβ = 0.1 Seed 3072: 8.82 pixelsβ = 1 Seed 3072: 8.83 pixelsβ = 30 Seed 3072: 8.51 pixelsβ = 300 Seed 3072: 0.75 pixelsPosition error (pixels)
Reconstruction weight β (none = plain LeWM)
Fig. 6. Planning success and position error on frozen backgrounds as the reconstruction weight β increases. Small weights barely change anything, and the model only starts tracking the dot again at β = 300. All points are from a single training run (seed 3072).
Observed
Weak redraw(β = 1)
Strong redraw(β = 300)
Fig. 7. The same frozen-background frames redrawn from each model's embedding. With a weak weight, the dot disappears entirely, while a strong weight keeps it.

The probes help explain why this works. With reconstruction, the dot’s position can once again be read from the model’s embeddings, with a mean position error of only 0.69 pixels on frozen backgrounds (Fig. 8). Background recognition also drops: in the same check with fixed dot positions, source-clip identification falls from 100% to 13.7%. This is still above the 0.1% chance rate, so reconstruction reduces the shortcut without removing all background information (Fig. 9).

Plain LeWM
LeWM + reconstruction
Read-out x-position (px)009918182727True x: 22.19 px; predicted x: 13.68 pxTrue x: 22.45 px; predicted x: 13.71 pxTrue x: 21.16 px; predicted x: 13.63 pxTrue x: 21.15 px; predicted x: 13.66 pxTrue x: 23.37 px; predicted x: 13.74 pxTrue x: 23.02 px; predicted x: 13.77 pxTrue x: 24.40 px; predicted x: 13.69 pxTrue x: 24.03 px; predicted x: 13.77 pxTrue x: 24.40 px; predicted x: 13.75 pxTrue x: 23.19 px; predicted x: 13.76 pxTrue x: 22.54 px; predicted x: 13.64 pxTrue x: 20.33 px; predicted x: 13.71 pxTrue x: 20.20 px; predicted x: 13.66 pxTrue x: 20.64 px; predicted x: 13.73 pxTrue x: 20.19 px; predicted x: 13.67 pxTrue x: 22.44 px; predicted x: 13.65 pxTrue x: 24.40 px; predicted x: 13.70 pxTrue x: 2.92 px; predicted x: 13.78 pxTrue x: 5.31 px; predicted x: 13.92 pxTrue x: 6.32 px; predicted x: 13.84 pxTrue x: 7.61 px; predicted x: 13.80 pxTrue x: 9.30 px; predicted x: 13.83 pxTrue x: 9.24 px; predicted x: 13.84 pxTrue x: 9.30 px; predicted x: 13.83 pxTrue x: 12.71 px; predicted x: 13.89 pxTrue x: 9.87 px; predicted x: 13.75 pxTrue x: 12.58 px; predicted x: 13.87 pxTrue x: 13.11 px; predicted x: 13.93 pxTrue x: 15.99 px; predicted x: 13.97 pxTrue x: 18.36 px; predicted x: 13.83 pxTrue x: 18.42 px; predicted x: 13.87 pxTrue x: 19.11 px; predicted x: 13.79 pxTrue x: 18.94 px; predicted x: 13.97 pxTrue x: 16.09 px; predicted x: 13.85 pxTrue x: 12.44 px; predicted x: 13.79 pxTrue x: 11.13 px; predicted x: 13.91 pxTrue x: 9.92 px; predicted x: 13.93 pxTrue x: 8.19 px; predicted x: 13.81 pxTrue x: 5.64 px; predicted x: 13.90 pxTrue x: 6.98 px; predicted x: 13.75 pxTrue x: 5.77 px; predicted x: 13.69 pxTrue x: 6.26 px; predicted x: 13.75 pxTrue x: 6.77 px; predicted x: 13.93 pxTrue x: 6.69 px; predicted x: 13.93 pxTrue x: 8.82 px; predicted x: 13.91 pxTrue x: 9.90 px; predicted x: 13.85 pxTrue x: 9.99 px; predicted x: 13.86 pxTrue x: 9.66 px; predicted x: 13.77 pxTrue x: 8.23 px; predicted x: 13.91 pxTrue x: 8.15 px; predicted x: 13.94 pxTrue x: 7.87 px; predicted x: 13.89 pxTrue x: 22.26 px; predicted x: 14.16 pxTrue x: 20.04 px; predicted x: 14.12 pxTrue x: 17.60 px; predicted x: 14.06 pxTrue x: 15.40 px; predicted x: 14.06 pxTrue x: 14.57 px; predicted x: 13.99 pxTrue x: 17.01 px; predicted x: 14.14 pxTrue x: 17.12 px; predicted x: 14.25 pxTrue x: 14.33 px; predicted x: 14.02 pxTrue x: 13.48 px; predicted x: 14.03 pxTrue x: 13.58 px; predicted x: 14.08 pxTrue x: 13.69 px; predicted x: 14.12 pxTrue x: 13.66 px; predicted x: 14.08 pxTrue x: 15.77 px; predicted x: 14.09 pxTrue x: 14.39 px; predicted x: 13.98 pxTrue x: 16.54 px; predicted x: 14.11 pxTrue x: 13.74 px; predicted x: 14.07 pxTrue x: 13.77 px; predicted x: 14.05 pxTrue x: 24.39 px; predicted x: 14.21 pxTrue x: 24.40 px; predicted x: 14.19 pxTrue x: 24.40 px; predicted x: 14.17 pxTrue x: 24.40 px; predicted x: 14.11 pxTrue x: 24.40 px; predicted x: 14.10 pxTrue x: 24.40 px; predicted x: 14.16 pxTrue x: 24.13 px; predicted x: 14.26 pxTrue x: 24.40 px; predicted x: 14.05 pxTrue x: 24.40 px; predicted x: 14.24 pxTrue x: 21.11 px; predicted x: 14.11 pxTrue x: 22.18 px; predicted x: 14.00 pxTrue x: 24.40 px; predicted x: 14.21 pxTrue x: 24.40 px; predicted x: 14.13 pxTrue x: 24.40 px; predicted x: 14.07 pxTrue x: 24.40 px; predicted x: 14.07 pxTrue x: 24.35 px; predicted x: 14.14 pxTrue x: 24.40 px; predicted x: 14.11 pxTrue x: 8.57 px; predicted x: 13.64 pxTrue x: 8.75 px; predicted x: 13.55 pxTrue x: 7.99 px; predicted x: 13.61 pxTrue x: 8.44 px; predicted x: 13.59 pxTrue x: 5.97 px; predicted x: 13.48 pxTrue x: 4.08 px; predicted x: 13.63 pxTrue x: 2.60 px; predicted x: 13.63 pxTrue x: 2.63 px; predicted x: 13.66 pxTrue x: 2.60 px; predicted x: 13.55 pxTrue x: 2.74 px; predicted x: 13.58 pxTrue x: 4.15 px; predicted x: 13.69 pxTrue x: 3.50 px; predicted x: 13.75 pxTrue x: 2.60 px; predicted x: 13.56 pxTrue x: 3.23 px; predicted x: 13.62 pxTrue x: 2.60 px; predicted x: 13.55 pxTrue x: 2.60 px; predicted x: 13.55 pxTrue x: 2.60 px; predicted x: 13.54 pxTrue x: 4.32 px; predicted x: 13.19 pxTrue x: 3.88 px; predicted x: 13.27 pxTrue x: 3.25 px; predicted x: 13.23 pxTrue x: 4.29 px; predicted x: 13.19 pxTrue x: 2.60 px; predicted x: 13.14 pxTrue x: 2.60 px; predicted x: 13.14 pxTrue x: 2.60 px; predicted x: 13.14 pxTrue x: 2.60 px; predicted x: 13.14 pxTrue x: 2.86 px; predicted x: 13.15 pxTrue x: 2.71 px; predicted x: 13.19 pxTrue x: 2.60 px; predicted x: 13.14 pxTrue x: 3.76 px; predicted x: 13.19 pxTrue x: 2.60 px; predicted x: 13.13 pxTrue x: 2.60 px; predicted x: 13.11 pxTrue x: 2.60 px; predicted x: 13.07 pxTrue x: 2.60 px; predicted x: 13.07 pxTrue x: 6.01 px; predicted x: 13.12 pxTrue x: 2.79 px; predicted x: 13.43 pxTrue x: 2.60 px; predicted x: 13.42 pxTrue x: 3.50 px; predicted x: 13.53 pxTrue x: 3.59 px; predicted x: 13.45 pxTrue x: 4.38 px; predicted x: 13.47 pxTrue x: 2.60 px; predicted x: 13.37 pxTrue x: 5.91 px; predicted x: 13.39 pxTrue x: 7.04 px; predicted x: 13.41 pxTrue x: 5.00 px; predicted x: 13.49 pxTrue x: 5.52 px; predicted x: 13.53 pxTrue x: 4.97 px; predicted x: 13.47 pxTrue x: 5.74 px; predicted x: 13.41 pxTrue x: 5.30 px; predicted x: 13.44 pxTrue x: 8.41 px; predicted x: 13.53 pxTrue x: 7.69 px; predicted x: 13.44 pxTrue x: 8.42 px; predicted x: 13.55 pxTrue x: 7.86 px; predicted x: 13.44 pxTrue x: 9.44 px; predicted x: 13.69 pxTrue x: 7.55 px; predicted x: 13.65 pxTrue x: 7.10 px; predicted x: 13.57 pxTrue x: 5.45 px; predicted x: 13.58 pxTrue x: 5.94 px; predicted x: 13.55 pxTrue x: 3.33 px; predicted x: 13.71 pxTrue x: 5.51 px; predicted x: 13.68 pxTrue x: 5.57 px; predicted x: 13.47 pxTrue x: 2.60 px; predicted x: 13.57 pxTrue x: 2.60 px; predicted x: 13.59 pxTrue x: 3.26 px; predicted x: 13.71 pxTrue x: 3.69 px; predicted x: 13.67 pxTrue x: 4.32 px; predicted x: 13.58 pxTrue x: 5.84 px; predicted x: 13.56 pxTrue x: 6.48 px; predicted x: 13.52 pxTrue x: 5.74 px; predicted x: 13.55 pxTrue x: 5.83 px; predicted x: 13.54 pxTrue x: 13.41 px; predicted x: 13.71 pxTrue x: 12.62 px; predicted x: 13.57 pxTrue x: 14.02 px; predicted x: 13.68 pxTrue x: 13.83 px; predicted x: 13.62 pxTrue x: 10.92 px; predicted x: 13.57 pxTrue x: 10.81 px; predicted x: 13.72 pxTrue x: 11.80 px; predicted x: 13.64 pxTrue x: 14.65 px; predicted x: 13.55 pxTrue x: 14.14 px; predicted x: 13.59 pxTrue x: 13.93 px; predicted x: 13.62 pxTrue x: 16.81 px; predicted x: 13.76 pxTrue x: 19.76 px; predicted x: 13.75 pxTrue x: 20.20 px; predicted x: 13.63 pxTrue x: 20.08 px; predicted x: 13.71 pxTrue x: 23.02 px; predicted x: 13.72 pxTrue x: 24.11 px; predicted x: 13.65 pxTrue x: 24.40 px; predicted x: 13.70 pxTrue x: 3.57 px; predicted x: 13.89 pxTrue x: 3.08 px; predicted x: 13.81 pxTrue x: 3.38 px; predicted x: 13.90 pxTrue x: 3.20 px; predicted x: 13.93 pxTrue x: 4.14 px; predicted x: 13.94 pxTrue x: 5.80 px; predicted x: 13.83 pxTrue x: 7.43 px; predicted x: 13.95 pxTrue x: 9.51 px; predicted x: 14.08 pxTrue x: 10.95 px; predicted x: 13.91 pxTrue x: 9.32 px; predicted x: 14.03 pxTrue x: 9.11 px; predicted x: 14.04 pxTrue x: 8.34 px; predicted x: 13.93 pxTrue x: 7.51 px; predicted x: 13.86 pxTrue x: 6.07 px; predicted x: 13.84 pxTrue x: 3.14 px; predicted x: 13.82 pxTrue x: 3.22 px; predicted x: 13.84 pxTrue x: 2.60 px; predicted x: 13.82 pxTrue x: 16.65 px; predicted x: 14.02 pxTrue x: 18.48 px; predicted x: 14.01 pxTrue x: 19.06 px; predicted x: 13.98 pxTrue x: 17.44 px; predicted x: 14.06 pxTrue x: 16.32 px; predicted x: 14.13 pxTrue x: 13.83 px; predicted x: 13.98 pxTrue x: 14.20 px; predicted x: 13.91 pxTrue x: 14.89 px; predicted x: 13.93 pxTrue x: 12.19 px; predicted x: 14.11 pxTrue x: 11.83 px; predicted x: 14.11 pxTrue x: 9.43 px; predicted x: 13.97 pxTrue x: 9.92 px; predicted x: 13.97 pxTrue x: 7.63 px; predicted x: 13.99 pxTrue x: 6.40 px; predicted x: 13.94 pxTrue x: 8.62 px; predicted x: 13.97 pxTrue x: 9.51 px; predicted x: 13.93 pxTrue x: 10.65 px; predicted x: 14.00 pxTrue x-position (px)Read-out x-position (px)009918182727True x: 22.19 px; predicted x: 22.01 pxTrue x: 22.45 px; predicted x: 22.56 pxTrue x: 21.16 px; predicted x: 21.27 pxTrue x: 21.15 px; predicted x: 21.14 pxTrue x: 23.37 px; predicted x: 23.50 pxTrue x: 23.02 px; predicted x: 23.80 pxTrue x: 24.40 px; predicted x: 24.54 pxTrue x: 24.03 px; predicted x: 23.70 pxTrue x: 24.40 px; predicted x: 23.46 pxTrue x: 23.19 px; predicted x: 23.90 pxTrue x: 22.54 px; predicted x: 22.77 pxTrue x: 20.33 px; predicted x: 19.86 pxTrue x: 20.20 px; predicted x: 20.13 pxTrue x: 20.64 px; predicted x: 20.36 pxTrue x: 20.19 px; predicted x: 20.06 pxTrue x: 22.44 px; predicted x: 22.33 pxTrue x: 24.40 px; predicted x: 24.58 pxTrue x: 2.92 px; predicted x: 2.90 pxTrue x: 5.31 px; predicted x: 4.57 pxTrue x: 6.32 px; predicted x: 6.17 pxTrue x: 7.61 px; predicted x: 8.06 pxTrue x: 9.30 px; predicted x: 9.14 pxTrue x: 9.24 px; predicted x: 9.09 pxTrue x: 9.30 px; predicted x: 9.14 pxTrue x: 12.71 px; predicted x: 12.22 pxTrue x: 9.87 px; predicted x: 9.83 pxTrue x: 12.58 px; predicted x: 12.90 pxTrue x: 13.11 px; predicted x: 13.12 pxTrue x: 15.99 px; predicted x: 15.52 pxTrue x: 18.36 px; predicted x: 18.36 pxTrue x: 18.42 px; predicted x: 18.52 pxTrue x: 19.11 px; predicted x: 19.35 pxTrue x: 18.94 px; predicted x: 18.77 pxTrue x: 16.09 px; predicted x: 15.64 pxTrue x: 12.44 px; predicted x: 12.70 pxTrue x: 11.13 px; predicted x: 11.13 pxTrue x: 9.92 px; predicted x: 9.75 pxTrue x: 8.19 px; predicted x: 8.78 pxTrue x: 5.64 px; predicted x: 5.60 pxTrue x: 6.98 px; predicted x: 6.54 pxTrue x: 5.77 px; predicted x: 5.80 pxTrue x: 6.26 px; predicted x: 6.12 pxTrue x: 6.77 px; predicted x: 7.01 pxTrue x: 6.69 px; predicted x: 6.93 pxTrue x: 8.82 px; predicted x: 9.23 pxTrue x: 9.90 px; predicted x: 9.58 pxTrue x: 9.99 px; predicted x: 9.68 pxTrue x: 9.66 px; predicted x: 9.26 pxTrue x: 8.23 px; predicted x: 8.08 pxTrue x: 8.15 px; predicted x: 8.18 pxTrue x: 7.87 px; predicted x: 7.97 pxTrue x: 22.26 px; predicted x: 22.89 pxTrue x: 20.04 px; predicted x: 19.82 pxTrue x: 17.60 px; predicted x: 17.47 pxTrue x: 15.40 px; predicted x: 15.32 pxTrue x: 14.57 px; predicted x: 13.95 pxTrue x: 17.01 px; predicted x: 16.67 pxTrue x: 17.12 px; predicted x: 16.90 pxTrue x: 14.33 px; predicted x: 13.86 pxTrue x: 13.48 px; predicted x: 13.27 pxTrue x: 13.58 px; predicted x: 13.56 pxTrue x: 13.69 px; predicted x: 13.65 pxTrue x: 13.66 px; predicted x: 13.37 pxTrue x: 15.77 px; predicted x: 15.68 pxTrue x: 14.39 px; predicted x: 14.29 pxTrue x: 16.54 px; predicted x: 16.48 pxTrue x: 13.74 px; predicted x: 13.48 pxTrue x: 13.77 px; predicted x: 13.61 pxTrue x: 24.39 px; predicted x: 24.67 pxTrue x: 24.40 px; predicted x: 24.42 pxTrue x: 24.40 px; predicted x: 24.72 pxTrue x: 24.40 px; predicted x: 24.74 pxTrue x: 24.40 px; predicted x: 24.74 pxTrue x: 24.40 px; predicted x: 24.15 pxTrue x: 24.13 px; predicted x: 24.38 pxTrue x: 24.40 px; predicted x: 24.52 pxTrue x: 24.40 px; predicted x: 24.10 pxTrue x: 21.11 px; predicted x: 21.10 pxTrue x: 22.18 px; predicted x: 22.73 pxTrue x: 24.40 px; predicted x: 24.09 pxTrue x: 24.40 px; predicted x: 24.70 pxTrue x: 24.40 px; predicted x: 24.58 pxTrue x: 24.40 px; predicted x: 24.58 pxTrue x: 24.35 px; predicted x: 24.79 pxTrue x: 24.40 px; predicted x: 24.68 pxTrue x: 8.57 px; predicted x: 8.10 pxTrue x: 8.75 px; predicted x: 8.94 pxTrue x: 7.99 px; predicted x: 8.17 pxTrue x: 8.44 px; predicted x: 9.50 pxTrue x: 5.97 px; predicted x: 5.79 pxTrue x: 4.08 px; predicted x: 4.21 pxTrue x: 2.60 px; predicted x: 3.74 pxTrue x: 2.63 px; predicted x: 3.70 pxTrue x: 2.60 px; predicted x: 3.26 pxTrue x: 2.74 px; predicted x: 3.23 pxTrue x: 4.15 px; predicted x: 4.45 pxTrue x: 3.50 px; predicted x: 3.88 pxTrue x: 2.60 px; predicted x: 3.11 pxTrue x: 3.23 px; predicted x: 3.16 pxTrue x: 2.60 px; predicted x: 3.17 pxTrue x: 2.60 px; predicted x: 3.17 pxTrue x: 2.60 px; predicted x: 3.20 pxTrue x: 4.32 px; predicted x: 3.08 pxTrue x: 3.88 px; predicted x: 3.00 pxTrue x: 3.25 px; predicted x: 2.24 pxTrue x: 4.29 px; predicted x: 3.05 pxTrue x: 2.60 px; predicted x: 2.15 pxTrue x: 2.60 px; predicted x: 2.22 pxTrue x: 2.60 px; predicted x: 2.14 pxTrue x: 2.60 px; predicted x: 2.17 pxTrue x: 2.86 px; predicted x: 2.15 pxTrue x: 2.71 px; predicted x: 2.43 pxTrue x: 2.60 px; predicted x: 2.14 pxTrue x: 3.76 px; predicted x: 2.53 pxTrue x: 2.60 px; predicted x: 2.24 pxTrue x: 2.60 px; predicted x: 2.34 pxTrue x: 2.60 px; predicted x: 2.48 pxTrue x: 2.60 px; predicted x: 2.73 pxTrue x: 6.01 px; predicted x: 6.57 pxTrue x: 2.79 px; predicted x: 2.92 pxTrue x: 2.60 px; predicted x: 2.69 pxTrue x: 3.50 px; predicted x: 2.66 pxTrue x: 3.59 px; predicted x: 2.97 pxTrue x: 4.38 px; predicted x: 4.02 pxTrue x: 2.60 px; predicted x: 2.40 pxTrue x: 5.91 px; predicted x: 5.55 pxTrue x: 7.04 px; predicted x: 7.23 pxTrue x: 5.00 px; predicted x: 5.05 pxTrue x: 5.52 px; predicted x: 5.59 pxTrue x: 4.97 px; predicted x: 4.99 pxTrue x: 5.74 px; predicted x: 5.46 pxTrue x: 5.30 px; predicted x: 4.84 pxTrue x: 8.41 px; predicted x: 8.32 pxTrue x: 7.69 px; predicted x: 6.97 pxTrue x: 8.42 px; predicted x: 7.73 pxTrue x: 7.86 px; predicted x: 7.73 pxTrue x: 9.44 px; predicted x: 8.80 pxTrue x: 7.55 px; predicted x: 7.86 pxTrue x: 7.10 px; predicted x: 7.02 pxTrue x: 5.45 px; predicted x: 4.89 pxTrue x: 5.94 px; predicted x: 5.58 pxTrue x: 3.33 px; predicted x: 3.13 pxTrue x: 5.51 px; predicted x: 5.62 pxTrue x: 5.57 px; predicted x: 5.60 pxTrue x: 2.60 px; predicted x: 2.40 pxTrue x: 2.60 px; predicted x: 3.20 pxTrue x: 3.26 px; predicted x: 3.21 pxTrue x: 3.69 px; predicted x: 3.25 pxTrue x: 4.32 px; predicted x: 3.68 pxTrue x: 5.84 px; predicted x: 5.49 pxTrue x: 6.48 px; predicted x: 6.01 pxTrue x: 5.74 px; predicted x: 5.46 pxTrue x: 5.83 px; predicted x: 5.52 pxTrue x: 13.41 px; predicted x: 12.79 pxTrue x: 12.62 px; predicted x: 11.87 pxTrue x: 14.02 px; predicted x: 13.54 pxTrue x: 13.83 px; predicted x: 13.57 pxTrue x: 10.92 px; predicted x: 11.00 pxTrue x: 10.81 px; predicted x: 10.05 pxTrue x: 11.80 px; predicted x: 11.08 pxTrue x: 14.65 px; predicted x: 14.13 pxTrue x: 14.14 px; predicted x: 13.95 pxTrue x: 13.93 px; predicted x: 13.28 pxTrue x: 16.81 px; predicted x: 16.44 pxTrue x: 19.76 px; predicted x: 19.20 pxTrue x: 20.20 px; predicted x: 19.78 pxTrue x: 20.08 px; predicted x: 19.67 pxTrue x: 23.02 px; predicted x: 23.63 pxTrue x: 24.11 px; predicted x: 24.09 pxTrue x: 24.40 px; predicted x: 23.75 pxTrue x: 3.57 px; predicted x: 2.83 pxTrue x: 3.08 px; predicted x: 2.86 pxTrue x: 3.38 px; predicted x: 2.38 pxTrue x: 3.20 px; predicted x: 3.04 pxTrue x: 4.14 px; predicted x: 3.33 pxTrue x: 5.80 px; predicted x: 6.49 pxTrue x: 7.43 px; predicted x: 7.97 pxTrue x: 9.51 px; predicted x: 9.17 pxTrue x: 10.95 px; predicted x: 10.91 pxTrue x: 9.32 px; predicted x: 9.28 pxTrue x: 9.11 px; predicted x: 9.14 pxTrue x: 8.34 px; predicted x: 8.38 pxTrue x: 7.51 px; predicted x: 7.86 pxTrue x: 6.07 px; predicted x: 6.18 pxTrue x: 3.14 px; predicted x: 2.95 pxTrue x: 3.22 px; predicted x: 3.14 pxTrue x: 2.60 px; predicted x: 2.74 pxTrue x: 16.65 px; predicted x: 17.79 pxTrue x: 18.48 px; predicted x: 18.84 pxTrue x: 19.06 px; predicted x: 18.68 pxTrue x: 17.44 px; predicted x: 17.93 pxTrue x: 16.32 px; predicted x: 16.79 pxTrue x: 13.83 px; predicted x: 14.43 pxTrue x: 14.20 px; predicted x: 14.42 pxTrue x: 14.89 px; predicted x: 15.04 pxTrue x: 12.19 px; predicted x: 12.12 pxTrue x: 11.83 px; predicted x: 11.51 pxTrue x: 9.43 px; predicted x: 8.67 pxTrue x: 9.92 px; predicted x: 9.57 pxTrue x: 7.63 px; predicted x: 7.94 pxTrue x: 6.40 px; predicted x: 6.52 pxTrue x: 8.62 px; predicted x: 8.47 pxTrue x: 9.51 px; predicted x: 9.29 pxTrue x: 10.65 px; predicted x: 9.87 pxTrue x-position (px)
Fig. 8. How well each model knows where the dot is, on frozen backgrounds. For every frame, we compare the dot's true x-position (horizontal axis) to the position read out from the model's embedding (vertical axis). If a model tracks the dot, its points fall along the dashed diagonal. Plain LeWM's readouts stay flat near the middle of the image regardless of where the dot actually is, meaning its embeddings carry almost no information about the dot. LeWM + reconstruction's readouts closely follow the diagonal, showing that the dot's position is once again stored in its embeddings.
Plain LeWM
LeWM + reconstruction
PC 2PC 1PC 2PC 1
Fig. 9. How each model organizes the frames it sees, on frozen backgrounds. Each point is one frame's embedding, compressed down to two dimensions so it can be plotted, and each color is one clip. Since the dot moves within every clip, a model tracking it should place a clip's frames apart from one another. Plain LeWM instead packs each clip's frames into a tight cluster, meaning it sees them as nearly identical despite the moving dot. In other words, its embeddings mainly describe the background, which it uses as a name tag for each clip. LeWM + reconstruction spreads each clip's frames out, as its embeddings now change with the dot.

When we look across background speeds, reconstruction fixed every case where plain LeWM failed, bringing planning success from 11–19% up to 71–79% at ρ = 1, 0.99, and 0.9. On stable backgrounds it does about as well as the pixel model, but it pulls ahead once the background starts changing faster. MotionJEPA (our adaptation of it to this setup) did improve on plain LeWM for stable backgrounds. That being said, it was still well below reconstruction, and did worse than plain LeWM when the background changed quickly (Fig. 10, Table 1).

050100Frozenρ = 1Slow driftρ = 0.99Moderate driftρ = 0.9Fast driftρ = 0.5Flickerρ = 0Plain LeWM · Frozen Three-run mean ± SD: 10.7 ± 0.8%Plain LeWM · Slow drift Three-run mean ± SD: 17.2 ± 0.2%Plain LeWM · Moderate drift Three-run mean ± SD: 18.6 ± 4.9%Plain LeWM · Fast drift Three-run mean ± SD: 82.7 ± 2.1%Plain LeWM · Flicker Three-run mean ± SD: 86.3 ± 2.3%Pixel model · Frozen Three-run mean ± SD: 72.3 ± 3.2%Pixel model · Slow drift Three-run mean ± SD: 72.1 ± 3.4%Pixel model · Moderate drift Three-run mean ± SD: 73.9 ± 2.6%Pixel model · Fast drift Three-run mean ± SD: 74.1 ± 2.6%Pixel model · Flicker Three-run mean ± SD: 77.2 ± 1.1%LeWM + reconstruction · Frozen Three-run mean ± SD: 70.8 ± 1.2%LeWM + reconstruction · Slow drift Three-run mean ± SD: 74.7 ± 3.3%LeWM + reconstruction · Moderate drift Three-run mean ± SD: 78.6 ± 2.3%LeWM + reconstruction · Fast drift Three-run mean ± SD: 82.6 ± 2.0%LeWM + reconstruction · Flicker Three-run mean ± SD: 82.0 ± 0.4%MotionJEPA · Frozen Three-run mean ± SD: 27.1 ± 6.0%MotionJEPA · Slow drift Three-run mean ± SD: 45.6 ± 4.9%MotionJEPA · Moderate drift Three-run mean ± SD: 46.3 ± 0.9%MotionJEPA · Fast drift Three-run mean ± SD: 58.0 ± 3.5%MotionJEPA · Flicker Three-run mean ± SD: 69.0 ± 7.5%Plain LeWMPixel modelLeWM + reconstructionMotionJEPANo backgroundRandom actionsPlanning success (%)
Fig. 10. Planning success for all four models as the background changes faster, from frozen to flickering. LeWM + reconstruction stays strong across every background speed, matching the pixel model on slower backgrounds and pulling ahead as the background changes faster, with only a small drop on flicker compared to plain LeWM. MotionJEPA improves on plain LeWM for slower backgrounds, but stays well below reconstruction. Each point is the average of three training runs, with bars showing ± one standard deviation across runs.
BackgroundPlain LeWMPixel modelLeWM + recon.MotionJEPA
Frozen10.7 ± 0.872.3 ± 3.270.8 ± 1.227.1 ± 6.0
Slow drift17.2 ± 0.272.1 ± 3.474.7 ± 3.345.6 ± 4.9
Moderate drift18.6 ± 4.973.9 ± 2.678.6 ± 2.346.3 ± 0.9
Fast drift82.7 ± 2.174.1 ± 2.682.6 ± 2.058.0 ± 3.5
Flicker86.3 ± 2.377.2 ± 1.182.0 ± 0.469.0 ± 7.5
Table 1. Planning success (%) for each model and background speed, shown as the average across three training runs ± standard deviation. Each run is tested on the same 500 unseen goals. Small differences may reflect run-to-run variation. LeWM + recon. uses β = 300. For reference, plain LeWM on a clean background reaches 84.9%, and random actions 16.4%.

The cost on flickering backgrounds

However, reconstruction does come at a cost. On flickering backgrounds, planning success dropped by about 4 percentage points (86.3% to 82.0%). Our guess is that the model now has to hold on to some of the random noise, since it needs it to redraw the image. We tried three different approaches - redrawing a blurred image, slowly decaying the weight to zero over training, and putting more weight on the dot’s pixels when redrawing - to mitigate this. Dot-weighting uses the simulator’s clean dot rendering during training, so it gets information the main methods do not. It passed the first-seed validation screen, but did not reliably remove the flicker cost on the final test: it averaged 82.7%, compared with 82.0% for ordinary reconstruction and 86.3% for plain LeWM (Table 2). We intend to explore this caveat further in the future.

ModelFrozenFlickerRuns
Plain LeWM10.7 ± 0.886.3 ± 2.33
LeWM + recon.70.8 ± 1.282.0 ± 0.43
Dot-weighted†79.2 ± 1.382.7 ± 1.73
Blurred target76.082.41
Decaying weight72.683.81
Table 2. Planning success (%) for the three variations we tried to reduce the flicker cost, alongside plain LeWM and LeWM + reconstruction. Values are averages ± standard deviation where three training runs are available. Blurred target and decaying weight were only tested on a single run. Every row uses the same 500 unseen test goals; runs are counted per background. †Dot-weighting uses the simulator’s clean dot rendering during training, giving it information the other methods do not receive.

Does reconstruction defeat the purpose of JEPA?

Taken together, our results show that reconstruction can fix LeWM’s slow-feature bias, but this raises a natural question about whether it undermines what makes JEPA appealing in the first place. The answer is partly.

In terms of compute, reconstruction only adds cost during training. At planning time, the decoder is discarded, so the model plans just as fast as plain LeWM. A pixel model, however, has to generate the entire next image, making planning considerably slower. Reconstruction does not require extra labels: the model learns from recorded image–action trajectories, which need not be expert demonstrations or come with language instructions, unlike the instruction-labeled robot demonstrations commonly used to train VLAs.

That being said, redrawing the image forces the model to keep details JEPA is meant to ignore, likely causing the flicker cost. Real-world data is far messier - textures, lighting changes, moving distractors - and the objects that matter are often a small part of the image. This would push the model to keep even more irrelevant detail, and make training more expensive.

So reconstruction is a pragmatic fix rather than a pure JEPA solution. Scaling it to realistic scenes likely needs smarter redraw targets, and a fix closer to JEPA’s original design remains an open question.

Limitations and next steps

This is a small, controlled study, so our conclusions are limited to its setup. Namely:

  • We only test one simple environment, using a compact version of LeWM, with one kind of distractor (faint random noise).

  • The three training runs start from different random points, but use the same training data. We also first chose β = 300 after seeing early results, though it held up on unseen test data.

  • The comparisons are not perfectly equal. The pixel model plans with images rather than embeddings, and MotionJEPA was adapted to our setup, so it may not reflect the original method.

  • The LeWM authors note that SIGReg can struggle in very simple environments. That being said, plain LeWM did well on clean and flickering backgrounds, so the failures seem to come from the background itself.

Conclusion

While JEPA world models are built to ignore what they cannot predict, in our experiments, this led plain LeWM to ignore the very object it needed to track. Even a moderately changing background was enough for the model to focus on backgrounds instead of the dot, dropping planning close to random. Adding reconstruction fixed this, but only once it was weighted heavily enough to actually change what the model learned. With this, planning success rose from 11–19% to 71–79%, with a small cost on flickering backgrounds.

References