pi05 SO-101 green-cube lift — stacked RA-BC self-improvement, iteration 4
This checkpoint is a NEGATIVE RESULT, published so the failure is reproducible and inspectable. Do not use it as a policy. Its measured predecessors score 0% on the task.
Final state of a 4-round self-improvement loop in which each round finetuned the previous round's weights (base → iter1 → iter2 → iter3 → iter4) on the cumulative dataset of teleop demonstrations plus its own rollouts, weighted by RA-BC progress.
Measured success rate (physical SO-101, "pick up the green cube")
Success was judged online from a side RealSense's depth (a ≥3 cm rise of the green blob) and re-judged offline by a VLM. The two judges agree throughout.
| policy | stacking depth | lift judge | VLM judge |
|---|---|---|---|
| base (3 cameras) | — | 5/50 = 10.0% | 7/50 |
| iter1 | 1 | 3/50 = 6.0% | 3/50 |
| iter2 | 2 | 0/60 = 0.0% | 0/60 |
| iter3 | 3 | 0/60 = 0.0% | 0/60 |
| iter4 (this checkpoint) | 4 | not measured | not measured |
base vs iter2, Fisher exact p = 0.027. 280 rollout episodes total.
Confounders were ruled out per collect, not assumed: the green cube was present in every episode (blob area 1275–5803 px in the judge camera), arm motion was unchanged (median wrist-view frame delta 29.5 / 33.0 / 33.0), no episode was discarded, and the turntable re-staged the scene successfully on every reset.
Why it degraded
RA-BC assigns weights from the progress delta over a 50-frame chunk:
w = 1 if delta > kappa (kappa = 0.01)
= soft_weight if 0 <= delta <= kappa
= 0 if delta < 0
There is no gradation above the threshold. Measured on this run's training set:
- 40.6% of frames from FAILED episodes cleared
kappaand were trained at full weight 1.0 — identical to a flawless teleop demonstration. - 27.1% of all full-weight frames came from failed episodes.
The failures are mostly "arm moves above the tray without grasping". Training on those at demonstration strength produces a policy that hovers; that policy then generates the next round's data, and stacking finetunes carries the damage forward instead of letting each round recover from the base. The self-improvement loop ran in reverse.
Provenance
- Base:
k1000dai/pi05_so101_pick_up_and_place_on_the_orange_sheet_70_base(pi05, 4B), with a 4th camera (observation.images.side2) declared before the first finetune. - Each round: 3500 steps, batch 8,
sample_weighting.type=rabc,kappa=0.01,head_mode=sparse. - Progress labels were hybrid: a linear 0→1 ramp for episodes known to succeed, Robometer-4B on the side2 view for failures.
- Cameras:
wrist,side,top,side2.