EXPO-FT Square-Peg residual actor + critic (offline SFT)

Proof-of-concept / smoke checkpoint โ€” not a production model.

EXPO-FT's small trainable networks โ€” residual actor (TanhNormal over MLPResNetV2), Q-ensemble critic, batch encoder (CNN), temperature โ€” trained by offline SFT on the robosuite NutAssemblySquare ("square peg") demos.

What this is

  • Trained here: residual actor, critic, batch encoder, temperature (the small EXPO-FT nets).
  • Frozen, NOT trained, NOT included: the pi0.5 VLA base (mkohegyi/openpi-pi05-simdata22-upright-3ff6e758). Load it separately.
  • Base actions: taken straight from the dataset demo action chunks (EXPO_FT_DATASET_BASE_ACTIONS=1) โ€” the VLA is not sampled during the update, so the jitted JAX update stays torch-free.

Training

  • Dataset: fabiankerj/simdata22-upright-v2.1 (LeRobot v2.1), 50 episodes / 10,561 transitions.
  • 4000 gradient updates, batch 32, utd 8, single A100 (CUDA_VISIBLE_DEVICES=0).
  • critic_loss 0.47 โ†’ ~0.0003 (converged).
  • Driver: rl/expo-ft/train_offline_sft.py. checkpoints/4000/ is the final step; checkpoints/200/ is an earlier 5-episode smoke run.

Format

Orbax checkpoint under checkpoints/4000/ (agent/ + params/ pytrees). Restore with the expo-ft restore_checkpoint after building the agent (see train_offline_sft.py).

Caveats

  • Trained on a sim dataset (square-peg) at modest scale โ€” a research artifact, not a production policy. Not evaluated in-sim here.
  • The SAC entropy-temperature auto-tuning drifts upward over training (temperature ~4.2 by step 4000, residual_actor_loss inflating with it) because the target entropy isn't adjusted in expo_ft_pi_config. The critic converges fine; tune entropy_scale / adjust_target_entropy before a production run.
Downloads last month

-

Downloads are not tracked for this model. How to track
Video Preview
loading