| --- |
| license: other |
| license_name: gemma-terms-of-use |
| license_link: https://ai.google.dev/gemma/terms |
| tags: |
| - robotics |
| - pi0.5 |
| - openpi |
| - lora |
| - tactile |
| - xarm |
| base_model: physical-intelligence/pi05_droid |
| --- |
| |
| # pi05_xarm_dishwasher_points9_arrow_len0_lora |
|
|
| pi0.5 (openpi) LoRA fine-tune for the xArm **dishwasher** task (`"pull the basket outside of the dishwasher and pick up the mug and put it into the basket"`), trained on |
| camera frames with the **points9_arrow_len0** tactile overlay: 9 tactile-pad dots per |
| finger at FK-projected positions, force arrows at **zero length** — the force-information |
| ablation of points9_arrow. |
| |
| ## Training |
| |
| | | | |
| |---|---| |
| | Base | `pi05_droid` (knowledge-insulated pi0.5, DROID pre-training) | |
| | Recipe | LoRA r16/a16 on Gemma-2B backbone + r32/a32 on 300M action expert, attn+ffn | |
| | Batch / LR | 8 / cosine 1e-4 -> 1e-5, 500 warmup, AdamW, grad-clip 1.0 | |
| | Data | [EdwardoSunny/xarm_dishwasher_points9_arrow_len0](https://huggingface.co/datasets/EdwardoSunny/xarm_dishwasher_points9_arrow_len0) (100 eps, 28096 frames) | |
| | Early stop | step 7800 (rolling-1k-window <0.5% rel. improvement, 2 consecutive checks) | |
| | Final train loss | **0.0287** (baseline no-overlay: 0.029; full points9_arrow: 0.024) | |
| |
| Training-loss comparison across this task's variants (identical hyperparameters/protocol, |
| only the burned-in overlay differs) — see the collection for all four tasks. |
| |
| ## Contents |
| |
| - `params/` — merged base+LoRA weights (orbax), self-contained for inference |
| - `assets/local/xarm_dishwasher_points9_arrow_len0/norm_stats.json` — state/action normalization |
| - Optimizer state stripped (inference-ready). Config name: `pi05_xarm_dishwasher_points9_arrow_len0_lora` |
|
|
| ## Deployment note |
|
|
| At inference, render the live camera frames with the SAME overlay |
| (`SensorDrawer` mode `points9_arrow`, `arrow_length_scale=0`, thickness 8, dot size 22) |
| or the policy will be out-of-distribution. See `tactile-data-collection/scripts/render_arrowlen0.py`. |
|
|