unified model card: 3 checkpoints with eval results, incl. me-full epoch-5 per-gripper eval
Browse files
README.md
CHANGED
|
@@ -9,30 +9,43 @@ tags:
|
|
| 9 |
|
| 10 |
# Kinematics Flow checkpoints
|
| 11 |
|
| 12 |
-
|
|
|
|
|
|
|
| 13 |
|
| 14 |
-
|
|
|
|
|
|
|
| 15 |
|
| 16 |
-
|
| 17 |
-
|---|---|---|---|---|---|
|
| 18 |
-
| `se-panda_5000_170` | Panda | 2 | 170 / 500 | 97.8% | 0.293 |
|
| 19 |
-
| `se-shadow_5000_40` | Shadow Hand | 22 | 40 / 500 | 75.9% | 0.232 |
|
| 20 |
|
| 21 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
| 22 |
|
| 23 |
-
|
|
|
|
|
|
|
| 24 |
|
| 25 |
-
##
|
| 26 |
|
| 27 |
-
|
| 28 |
-
|
| 29 |
-
|
| 30 |
-
|
| 31 |
-
|
| 32 |
-
|
| 33 |
-
|
|
|
|
| 34 |
|
| 35 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 36 |
|
| 37 |
```python
|
| 38 |
from kin_flow.ctrl.trainer import Trainer
|
|
@@ -41,6 +54,6 @@ from kin_flow.net.kinematics_flow import KinematicsFlow, KinematicsFlowConfigura
|
|
| 41 |
model = Trainer.get_model_from_checkpoint(model, "<path>/me-full_25000_5")
|
| 42 |
```
|
| 43 |
|
| 44 |
-
Note: `me-full_25000_5` was trained with flax 0.11 using a per-path `nnx.Param`
|
| 45 |
-
|
| 46 |
-
|
|
|
|
| 9 |
|
| 10 |
# Kinematics Flow checkpoints
|
| 11 |
|
| 12 |
+
Checkpoints for [Kinematics Flow](https://github.com/boschresearch/kinematics-flow), from
|
| 13 |
+
["Towards a Multi-Embodied Grasping Agent"](https://arxiv.org/abs/2510.27420).
|
| 14 |
+
These are **mid-training checkpoints**, not final converged models.
|
| 15 |
|
| 16 |
+
All eval numbers are simulation-based grasp success rate (SR) and normalized joint
|
| 17 |
+
diversity (NJD), computed via `kin_flow.cli.bench` on 10 held-out test scenes with
|
| 18 |
+
100 sampled grasps per scene.
|
| 19 |
|
| 20 |
+
## Models
|
|
|
|
|
|
|
|
|
|
| 21 |
|
| 22 |
+
| Folder | Type | Gripper(s) | Epoch | SR | NJD | Hardware |
|
| 23 |
+
|---|---|---|---|---|---|---|
|
| 24 |
+
| `se-panda_5000_170` | single-embodiment | Panda (2 DOF) | 170 / 500 | 97.8% | 0.293 | RTX 6000 Ada |
|
| 25 |
+
| `se-shadow_5000_40` | single-embodiment | Shadow Hand (22 DOF) | 40 / 500 | 75.9% | 0.232 | RTX 6000 Ada |
|
| 26 |
+
| `me-full_25000_5` | multi-embodiment | all 5 + z0 | 5 / 500 | 82.1% (mean) | 0.212 (mean) | MI300X (ROCm) |
|
| 27 |
|
| 28 |
+
Single-embodiment models: `num_scenes=5000`. Multi-embodiment model: the paper's full
|
| 29 |
+
configuration — `num_scenes=25000`, fp32, batch 5 scenes × 128 grasps, warmup-cosine LR
|
| 30 |
+
(peak 3e-4).
|
| 31 |
|
| 32 |
+
### `me-full_25000_5` per-gripper eval (epoch 5)
|
| 33 |
|
| 34 |
+
| Gripper | DOF | SR | NJD |
|
| 35 |
+
|---|---|---|---|
|
| 36 |
+
| Panda | 2 | 94.9% | 0.273 |
|
| 37 |
+
| VX300 | 2 | 93.3% | 0.157 |
|
| 38 |
+
| DexEE | 12 | 65.7% | 0.109 |
|
| 39 |
+
| Allegro | 16 | 81.3% | 0.287 |
|
| 40 |
+
| Shadow Hand | 22 | 75.3% | 0.232 |
|
| 41 |
+
| **mean** | | **82.1%** | **0.212** |
|
| 42 |
|
| 43 |
+
Very early snapshot (epoch 5 of ~120 needed for convergence) — newer-epoch checkpoints
|
| 44 |
+
will be added as training progresses.
|
| 45 |
+
|
| 46 |
+
## Loading
|
| 47 |
+
|
| 48 |
+
Format: orbax/OCDBT checkpoint directories.
|
| 49 |
|
| 50 |
```python
|
| 51 |
from kin_flow.ctrl.trainer import Trainer
|
|
|
|
| 54 |
model = Trainer.get_model_from_checkpoint(model, "<path>/me-full_25000_5")
|
| 55 |
```
|
| 56 |
|
| 57 |
+
Note: `me-full_25000_5` was trained with flax 0.11 using a per-path `nnx.Param` layout
|
| 58 |
+
in `TPWithWeightsAndBiases` (`kin_flow/net/module/fctp.py`) — restore with a matching
|
| 59 |
+
code state; it is not compatible with the original Param-of-list layout.
|