Rishik001's picture
|
download
raw
3.63 kB
# Task 8 — I-JEPA context-vs-EMA-target run (official ImageNet-1K, 1,000 samples)
## What's in this package
- `scripts/` — the Task 8 evaluator (`task8_ijepa_ema_ambiguity.py`) plus its
supporting scripts (checkpoint downloader, official ImageNet exporter,
aggregate-plot helper).
- `results/` — the complete output of this run only: `task8_metrics.json`,
`context_target_layer_metrics.csv`, `per_class_layer_metrics.csv`,
`per_sample_layer_metrics.csv`, the CKA-depth and KL-ambiguity-variance PDFs,
and a `reproducibility/` bundle (exact run command, dataset manifest, and a
source snapshot of the script as actually run).
- `imagenet_1000_samples/` — the exact 1,000 images used, one folder per class
(50 classes × 20 images). Same 1,000 images used for this session's Task 4
and Task 7 runs too.
## Where the data comes from
The 1,000 images are drawn from the official `ILSVRC/imagenet-1k` validation
split (Hugging Face, gated/authenticated access — not a public mirror), sampled
deterministically with seed 42. See `results/reproducibility/setup.md` for the
exact manifest SHA-256 and per-run provenance notes.
## Requirements
- A CUDA-enabled PyTorch environment with `torchvision` installed.
- The WorldModelLens repository checked out, with `world_model_lens` importable
(editable install or `PYTHONPATH`) — these scripts import it and are not
self-contained.
- The official I-JEPA ViT-H/14 ImageNet-1K checkpoint
(`vith14_in1k_ep300.pth.tar`) — download with `scripts/download_ijepa_weights.py
--dest checkpoints --verify` if you don't already have it (~10.4 GB).
- A frozen torchvision ViT-H/14 baseline — downloaded automatically on first run
(`IMAGENET1K_SWAG_LINEAR_V1`, ~2.35 GB) unless you pass `--baseline-checkpoint`
with a local state dict.
- An inpainting bank for the ambiguity-evaluation part of the script (required
argument). This run used a synthetic smoke-test bank
(`data/task8_official_imagenet_synthetic_bank` in the source repo) — its
results are pipeline artifacts, not scientific inpainting results. Any bank
matching that folder layout (`case_NNN/{source.png, candidate_0..2.png,
metadata.json}`) will work.
## Run
From the WorldModelLens repo root, with this package's `imagenet_1000_samples/`
copied somewhere accessible and the checkpoint in place:
```bash
python scripts/task8_ijepa_ema_ambiguity.py \
--ijepa-checkpoint checkpoints/vith14_in1k_ep300.pth.tar \
--imagenet-val /path/to/imagenet_1000_samples \
--image-manifest results/reproducibility/dataset_manifest.json \
--inpainting-bank /path/to/an/inpainting_bank \
--n-validation 1000 --batch-size 8 --seed 42 --cka-depths all \
--device cuda --output-dir results
```
The `--image-manifest` flag makes the script use exactly the 1,000 bundled
images in their original order — `--imagenet-val` is still required by the
script but only matters if you omit `--image-manifest`. The exact command used
to produce the results in this package is in
`results/reproducibility/run_command.txt`.
## Headline results from this run
- Context encoder and EMA target encoder are nearly identical (CKA > 0.99)
through layer ~20, then diverge sharply from layer 24 onward (CKA down to
0.56 at layer 31), with a partial rebound at the final layer (0.94 at L32).
- I-JEPA's candidate-ambiguity entropy is much lower (more confident/peaked)
than the torchvision baseline's on all 3 synthetic smoke-test cases, with
large KL divergence between the two models' candidate distributions
(114–615) — see `results/task8_metrics.json` for exact per-case numbers.

Xet Storage Details

Size:
3.63 kB
·
Xet hash:
6f810bb653237f877554eae591d9de19bf51599afc029082f5f568b9ed8f0699

Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.