Add droid-toys absjoint checkpoint
Browse files- README.md +63 -0
- assets/droid_equad/norm_stats.json +88 -0
- assets/train_config.pkl +3 -0
- metadata.pt +3 -0
- model.safetensors +3 -0
README.md
ADDED
|
@@ -0,0 +1,63 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
---
|
| 2 |
+
license: apache-2.0
|
| 3 |
+
tags:
|
| 4 |
+
- robotics
|
| 5 |
+
- vla
|
| 6 |
+
- pi0
|
| 7 |
+
- droid
|
| 8 |
+
- molmobot
|
| 9 |
+
- lora
|
| 10 |
+
---
|
| 11 |
+
|
| 12 |
+
# MolmoBot-Pi0 — DROID-toys, absolute joint, r64 LoRA (merged)
|
| 13 |
+
|
| 14 |
+
Whole-model rank-64 LoRA fine-tune of
|
| 15 |
+
[MolmoBot-Pi0-DROID](https://huggingface.co/shrg7/MolmoBot-Pi0-DROID-equad) on
|
| 16 |
+
[`shrg7/droid-toys`](https://huggingface.co/datasets/shrg7/droid-toys), with
|
| 17 |
+
**absolute joint-position** action targets.
|
| 18 |
+
|
| 19 |
+
**The LoRA has already been merged into the base weights.** The uploaded
|
| 20 |
+
`model.safetensors` is flat (777 tensors, identical key set to the full-FT
|
| 21 |
+
counterpart) and loads directly into a plain `PI0Pytorch` — no PEFT, no adapter
|
| 22 |
+
folding needed at load time.
|
| 23 |
+
|
| 24 |
+
## Checkpoint
|
| 25 |
+
|
| 26 |
+
- **Step 3500**, `val_action_loss = 0.0274`
|
| 27 |
+
- Merged with `scripts/merge_pi0_lora.py` (folds `lora_B @ lora_A * alpha/r`, α/r = 128/64 = 2.0; 333 modules folded)
|
| 28 |
+
- `assets/` holds the norm stats; `metadata.pt` the run metadata
|
| 29 |
+
- Optimizer state is **not** included (inference/eval only, no resume)
|
| 30 |
+
|
| 31 |
+
## Training
|
| 32 |
+
|
| 33 |
+
| | |
|
| 34 |
+
|---|---|
|
| 35 |
+
| Config | `molmobot_pi0_lerobot_droid_absjoint` |
|
| 36 |
+
| Dataset | `shrg7/droid-toys` (LeRobot v3.0) — 31 episodes / 6,952 frames @15fps |
|
| 37 |
+
| Action repr | `joint_absolute` — targets are future absolute joint positions `q[t+1]`, 8-dim (7 arm + gripper) |
|
| 38 |
+
| Action horizon | 16 |
|
| 39 |
+
| Cameras | `exterior_1_left` (exo) + `wrist_left`, 224×224 resize-with-pad |
|
| 40 |
+
| LoRA | r=64, α=128, dropout 0.05, targets `q/k/v/o/gate/up/down_proj` across the VLM + action expert |
|
| 41 |
+
| Trainable | 118,112,256 params (3.26% of 3.62B); `vision_tower` frozen |
|
| 42 |
+
| Batch | 32, 1× NVIDIA L40 |
|
| 43 |
+
| LR | 5e-5 constant (300-step warmup; `peak_lr == decay_lr`, so the cosine is flat) |
|
| 44 |
+
| Steps | 3,500 of a planned 8,000 |
|
| 45 |
+
|
| 46 |
+
### Validation curve
|
| 47 |
+
|
| 48 |
+
| step | val_action_loss |
|
| 49 |
+
|---|---|
|
| 50 |
+
| 2000 | 0.0331 |
|
| 51 |
+
| 2500 | 0.0313 |
|
| 52 |
+
| 3000 | 0.0273 |
|
| 53 |
+
| 3500 | **0.0274** |
|
| 54 |
+
|
| 55 |
+
## Caveats
|
| 56 |
+
|
| 57 |
+
This checkpoint is **under-trained**: the run was cut short by a wall-clock limit
|
| 58 |
+
at 3,500 of 8,000 steps, with the loss curve still descending steeply.
|
| 59 |
+
|
| 60 |
+
Do **not** read the gap against the full-FT checkpoint
|
| 61 |
+
([`MolmoBot-Pi0-DROID-toys-absjoint-fullft`](https://huggingface.co/shrg7/MolmoBot-Pi0-DROID-toys-absjoint-fullft),
|
| 62 |
+
val 0.0079) as a LoRA-vs-full-FT result. That run completed its full schedule at
|
| 63 |
+
4× the effective batch; the two are not comparable at this point in training.
|
assets/droid_equad/norm_stats.json
ADDED
|
@@ -0,0 +1,88 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"norm_stats": {
|
| 3 |
+
"state": {
|
| 4 |
+
"mean": [
|
| 5 |
+
0.14381547272205353,
|
| 6 |
+
-0.01525520347058773,
|
| 7 |
+
0.22665268182754517,
|
| 8 |
+
-2.375757932662964,
|
| 9 |
+
-0.19893218576908112,
|
| 10 |
+
2.159259557723999,
|
| 11 |
+
0.7774521112442017,
|
| 12 |
+
0.24431027472019196
|
| 13 |
+
],
|
| 14 |
+
"std": [
|
| 15 |
+
0.3617416024208069,
|
| 16 |
+
0.4120100140571594,
|
| 17 |
+
0.344979465007782,
|
| 18 |
+
0.2962265908718109,
|
| 19 |
+
0.31048065423965454,
|
| 20 |
+
0.3002902567386627,
|
| 21 |
+
0.7728461623191833,
|
| 22 |
+
0.3485460877418518
|
| 23 |
+
],
|
| 24 |
+
"q01": [
|
| 25 |
+
-0.1332843154668808,
|
| 26 |
+
-0.5958264470100403,
|
| 27 |
+
-0.05540205165743828,
|
| 28 |
+
-2.6645798683166504,
|
| 29 |
+
-0.5420994758605957,
|
| 30 |
+
1.7278691530227661,
|
| 31 |
+
-0.16293670237064362,
|
| 32 |
+
0.031214039772748947
|
| 33 |
+
],
|
| 34 |
+
"q99": [
|
| 35 |
+
0.3712266683578491,
|
| 36 |
+
0.41510656476020813,
|
| 37 |
+
0.46062949299812317,
|
| 38 |
+
-2.086469888687134,
|
| 39 |
+
0.2004101276397705,
|
| 40 |
+
2.4869449138641357,
|
| 41 |
+
1.5071415901184082,
|
| 42 |
+
0.7801601886749268
|
| 43 |
+
]
|
| 44 |
+
},
|
| 45 |
+
"actions": {
|
| 46 |
+
"mean": [
|
| 47 |
+
0.14381547272205353,
|
| 48 |
+
-0.01525520347058773,
|
| 49 |
+
0.22665268182754517,
|
| 50 |
+
-2.375757932662964,
|
| 51 |
+
-0.19893218576908112,
|
| 52 |
+
2.159259557723999,
|
| 53 |
+
0.7774521112442017,
|
| 54 |
+
0.2847833037376404
|
| 55 |
+
],
|
| 56 |
+
"std": [
|
| 57 |
+
0.3617416024208069,
|
| 58 |
+
0.4120100140571594,
|
| 59 |
+
0.344979465007782,
|
| 60 |
+
0.2962265908718109,
|
| 61 |
+
0.31048065423965454,
|
| 62 |
+
0.3002902567386627,
|
| 63 |
+
0.7728461623191833,
|
| 64 |
+
0.41377538442611694
|
| 65 |
+
],
|
| 66 |
+
"q01": [
|
| 67 |
+
-0.1332843154668808,
|
| 68 |
+
-0.5958264470100403,
|
| 69 |
+
-0.05540205165743828,
|
| 70 |
+
-2.6645798683166504,
|
| 71 |
+
-0.5420994758605957,
|
| 72 |
+
1.7278691530227661,
|
| 73 |
+
-0.16293670237064362,
|
| 74 |
+
0.023410528898239136
|
| 75 |
+
],
|
| 76 |
+
"q99": [
|
| 77 |
+
0.3712266683578491,
|
| 78 |
+
0.41510656476020813,
|
| 79 |
+
0.46062949299812317,
|
| 80 |
+
-2.086469888687134,
|
| 81 |
+
0.2004101276397705,
|
| 82 |
+
2.4869449138641357,
|
| 83 |
+
1.5071415901184082,
|
| 84 |
+
0.9907714128494263
|
| 85 |
+
]
|
| 86 |
+
}
|
| 87 |
+
}
|
| 88 |
+
}
|
assets/train_config.pkl
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:dfa4b08627b3e62308730752454bbfd6ae3622b110795e97b4be1933ab299665
|
| 3 |
+
size 1680
|
metadata.pt
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:1623b107268e76bc115df6c917e9d6dd8e914245bc5faf7f017908ff0a94d40d
|
| 3 |
+
size 2931
|
model.safetensors
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:a39ba5eef2f8fb40e17de8241b126e1f451c70c8be8ed46f13ca4864bffdde94
|
| 3 |
+
size 7011248800
|