builddotai/Egocentric-10K
Updated • 33.4k • 343
Model: P_θ (forward/causal) + Q_θ (backward/anti-causal) kinematic predictors on V-JEPA ViT-Base latents.
Architecture: Depthwise-Separable Conv3D + RetractionMap (~613K params each, 1.2M total).
Loss: Adaptive volatility-gated Huber (δ_ema), AdamW, cosine annealing, FP32 mandate.
Dataset: Egocentric-10K (ego-centric video), 151 videos → 5,026 tubelets (τ_kinetic=0.001, ε=0.678).
δ_val=1.0 (hardcoded baseline)
| Field | Value |
|---|---|
| Date | 2026-06-23 |
| Seed | 42 |
| δ_val | 1.000000 (hardcoded — compute_delta_val_streaming() was too slow, bypassed) |
| δ_ema (final) | 1.149586 |
| Epochs | 50 |
| Best val loss | 250.61 |
| Identity baseline | 475.50 (predict no change) |
| Improvement | 47.3% over identity |
| Gate U (final) | P_θ=0.87, Q_θ=0.88 |
| Saturation warning | Epoch 30: P_θ U→0.90 (retraction map near-disabled) |
| Bug | self.seed not stored in trainer (AttributeError, patched) |
| Checkpoints | checkpoints/oracle_epoch_*.pt (35 of 50 pushed) |
| Deploy | oracle_weights.pt |
Why another run? δ_val=1.0 was a guess — the data-driven compute_delta_val_streaming() was hanging due to an element-by-element Python loop (6.7B .item() calls). Fixing this should give a proper data-driven initial Huber threshold, potentially improving convergence.
δ_val data-driven (vectorized Welford)
| Field | Value |
|---|---|
| Date | 2026-06-23 |
| Seed | 42 |
| δ_val | computed from validation set via vectorized Welford streaming |
| Fix | Replaced O(N_element) Python loop with per-tubelet z.mean()/.var() + batch-Welford merge (hours→seconds) |
| Epochs | 50 |
| Status | 🏃 Training in progress... |
# Data: builddotai/Egocentric-10K on HuggingFace
# V-JEPA: vjepa2_1_vitb_dist_vitG_384.pt (ViT-Base, 86.8M params)
cd "/root/the Compression problem"
python3 -m oracle.run \
--data-dir /root/ego10k_data \
--factories factory_001 factory_002 \
--max-videos 500 \
--epochs 50 \
--cache-size 1000 \
--batch-size 16 \
--output-dir /root/oracle_output \
--seed 42
| Path | Description |
|---|---|
checkpoints/oracle_epoch_*.pt |
Epoch checkpoints (P_θ + Q_θ + optimizer state) |
oracle_weights.pt |
Frozen deploy weights (best val loss) |
training_log.json |
Per-epoch metrics (loss, lr, δ_ema, gate U) |
split.json |
Train/val video split (seed=42) |
latent_index.json |
Video→latent mapping, calibration params |
latents/*.pt |
Precomputed V-JEPA tubelets (FP16, auto-upcast to FP32) |