anhtld commited on
Commit
213d82c
·
verified ·
1 Parent(s): a7e5637

Auto-sync: 2026-06-29 08:12:42 (part 2)

Browse files
scripts/build_paper_analysis.py CHANGED
@@ -315,6 +315,22 @@ METHODS = [
315
  "k4_grid035040045_safe_margin0p20_mean_by_type_noopbonus0p03_consensus0p10_summary.json"
316
  ),
317
  ),
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
318
  MethodSpec(
319
  key="repair_nearmiss_k4_grid025035050_margin020",
320
  label="K4 near-miss-to-expert repair tangent, scales 0.25/0.35/0.50, margin 0.20",
 
315
  "k4_grid035040045_safe_margin0p20_mean_by_type_noopbonus0p03_consensus0p10_summary.json"
316
  ),
317
  ),
318
+ MethodSpec(
319
+ key="residual_k4_compose_grid035040045",
320
+ label="K4 composed type-consensus tangents, scales 0.35/0.40/0.45",
321
+ summary_path=(
322
+ "h16_policy_ckpt_near_miss_policy_bc5_bestpt_retrieval_residual_"
323
+ "k4_compose_grid035040045_safe_margin0p20_summary.json"
324
+ ),
325
+ ),
326
+ MethodSpec(
327
+ key="residual_k4_compose_grid035040045_noopbonus003",
328
+ label="K4 composed type-consensus tangents, scales 0.35/0.40/0.45, no-op bonus 0.03",
329
+ summary_path=(
330
+ "h16_policy_ckpt_near_miss_policy_bc5_bestpt_retrieval_residual_"
331
+ "k4_compose_grid035040045_safe_margin0p20_noopbonus0p03_summary.json"
332
+ ),
333
+ ),
334
  MethodSpec(
335
  key="repair_nearmiss_k4_grid025035050_margin020",
336
  label="K4 near-miss-to-expert repair tangent, scales 0.25/0.35/0.50, margin 0.20",
scripts/build_paper_table_status.py CHANGED
@@ -655,6 +655,26 @@ SPECS = [
655
  story_role="train-neighbor tangent-consensus confidence on the current best typed prior",
656
  pending_job="14903390/14903391",
657
  ),
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
658
  ResultSpec(
659
  key="retrieval_repair_nearmiss_k4_grid025035050_margin020",
660
  label="K4 near-miss-to-expert repair tangent, scales 0.25/0.35/0.50, margin 0.20",
 
655
  story_role="train-neighbor tangent-consensus confidence on the current best typed prior",
656
  pending_job="14903390/14903391",
657
  ),
658
+ ResultSpec(
659
+ key="retrieval_residual_k4_compose_grid035040045",
660
+ label="K4 composed type-consensus residual retrieval, scales 0.35/0.40/0.45, margin 0.20",
661
+ path="h16_policy_ckpt_near_miss_policy_bc5_bestpt_retrieval_residual_k4_compose_grid035040045_safe_margin0p20_summary.json",
662
+ clean_deployment="yes",
663
+ same_state_proposals="no",
664
+ expert_proposal="no",
665
+ story_role="local tangent composition without typed priors",
666
+ pending_job="14905956/14905963",
667
+ ),
668
+ ResultSpec(
669
+ key="retrieval_residual_k4_compose_grid035040045_noopbonus003",
670
+ label="K4 composed type-consensus residual retrieval, scales 0.35/0.40/0.45, margin 0.20, no-op bonus 0.03",
671
+ path="h16_policy_ckpt_near_miss_policy_bc5_bestpt_retrieval_residual_k4_compose_grid035040045_safe_margin0p20_noopbonus0p03_summary.json",
672
+ clean_deployment="yes",
673
+ same_state_proposals="no",
674
+ expert_proposal="no",
675
+ story_role="local tangent composition on the current best typed prior",
676
+ pending_job="14905957/14905964",
677
+ ),
678
  ResultSpec(
679
  key="retrieval_repair_nearmiss_k4_grid025035050_margin020",
680
  label="K4 near-miss-to-expert repair tangent, scales 0.25/0.35/0.50, margin 0.20",
scripts/eval_maniskill_policy_rollout.py CHANGED
@@ -218,11 +218,13 @@ def main(argv: list[str] | None = None) -> int:
218
  "mean_by_type",
219
  "median_by_type",
220
  "kernel_mean_by_type",
 
221
  "field_softmax",
222
  ),
223
  default="none",
224
  help="Optional consensus reduction over retrieved residuals with the same candidate type. "
225
  "'kernel_mean_by_type' weights source residuals by train-state retrieval distance; "
 
226
  "'field_softmax' forms a field-weighted tangent barycenter before final scoring.",
227
  )
228
  parser.add_argument(
 
218
  "mean_by_type",
219
  "median_by_type",
220
  "kernel_mean_by_type",
221
+ "compose_mean_by_type",
222
  "field_softmax",
223
  ),
224
  default="none",
225
  help="Optional consensus reduction over retrieved residuals with the same candidate type. "
226
  "'kernel_mean_by_type' weights source residuals by train-state retrieval distance; "
227
+ "'compose_mean_by_type' also adds pairwise sums of type-consensus tangents; "
228
  "'field_softmax' forms a field-weighted tangent barycenter before final scoring.",
229
  )
230
  parser.add_argument(
tests/test_maniskill_policy_rollout.py CHANGED
@@ -895,6 +895,44 @@ def test_retrieval_residual_reducer_builds_type_consensus() -> None:
895
  )
896
 
897
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
898
  def test_retrieval_residual_reducer_penalizes_low_consensus_tangents() -> None:
899
  residuals, candidate_types, bonuses = _reduce_residual_candidates_by_type(
900
  [
 
895
  )
896
 
897
 
898
+ def test_retrieval_residual_reducer_builds_composed_type_tangents() -> None:
899
+ residuals, candidate_types = _reduce_residual_candidates_by_type(
900
+ [
901
+ [[0.0, 0.0]],
902
+ [[0.2, 0.0]],
903
+ [[0.0, 0.0]],
904
+ [[0.4, 0.2]],
905
+ [[-0.5, 0.0]],
906
+ ],
907
+ [
908
+ "policy_residual",
909
+ "residual_no_op",
910
+ "policy_residual",
911
+ "residual_no_op",
912
+ "residual_wrong_gripper",
913
+ ],
914
+ mode="compose_mean_by_type",
915
+ )
916
+
917
+ assert candidate_types == [
918
+ "policy_residual",
919
+ "residual_no_op",
920
+ "residual_wrong_gripper",
921
+ "residual_no_op+residual_wrong_gripper",
922
+ ]
923
+ assert np.allclose(
924
+ np.asarray(residuals, dtype=np.float32),
925
+ np.asarray(
926
+ [
927
+ [[0.0, 0.0]],
928
+ [[0.3, 0.1]],
929
+ [[-0.5, 0.0]],
930
+ [[-0.2, 0.1]],
931
+ ]
932
+ ),
933
+ )
934
+
935
+
936
  def test_retrieval_residual_reducer_penalizes_low_consensus_tangents() -> None:
937
  residuals, candidate_types, bonuses = _reduce_residual_candidates_by_type(
938
  [