8회의 BinFill ApiMem 실험(flash-lite/pro × 1-call/2-step × bbox 조합) 결과 SR 4~17% noise 범위에 갇혔다. 탐색된 원인 후보 세 가지:
이 실험은 설계 및 job 제출 단계(260507-apimem_hybrid_lora_coord_design.html)의 후속. Jobs 9951(FAILED, 2m13s), 9952(FAILED, 19s), 9954(PREEMPTED, 2h) 이후 job 11340(4h36m, ep10~49) + 12749(2h38m, resume ep0~9) 두 job으로 50 ep 전체 완료.
실험 구성은 설계 카드에서 확정. 실제 실행 경로 요약:
| Job ID | State | Duration | Episodes | 비고 |
|---|---|---|---|---|
| 9951 | FAILED | 2m 13s | — | partition/QOS 오류 |
| 9952 | FAILED | 0m 19s | — | 동일 원인 재시도 |
| 9954 | PREEMPTED | 2h 02m | ep 0~9 | core-extra QOS 선점 |
| 11340 | COMPLETED | 4h 36m | ep 10~49 | 재제출 후 정상 완료 |
| 12749 | COMPLETED | 2h 38m | ep 0~9 resume | 선점된 ep 복구 완료 |
| Run | Model | Mode | SR | 비고 |
|---|---|---|---|---|
| MemER LoRA (대조) | Qwen3-VL-4B LoRA | full pipeline | 64.0% | Upper bound |
| 5092 | flash-lite | 1-call bbox-first | 16.7% | 27ep abort (loop) |
| loracoord (본 실험) | flash-lite + LoRA coord | hybrid swap | 12.0% | 6/50, 50ep 완전 완료 |
| 4429 | flash-lite | 1-call rescaled | 8.0% | 직접 비교 baseline |
| 5652 | flash-lite | 2-step det | 6.4% | robustness ↑ 하지만 SR 불변 |
| 6056 | pro | 2-step det | 4.3% | robustness 만점, SR 최저 |
| Action | Count | 비율 | 의미 |
|---|---|---|---|
| swapped | 486 | 46.9% | verb match → LoRA coord로 교체 |
| verb_mismatch | 551 | 53.1% | verb 불일치 → API coord 그대로 사용 |
| no_coord | 0 | 0.0% | coord 누락 없음 (파싱 완전) |
| Episode | 결과 | API ticks | Swapped | Mismatch | Swap 비율 |
|---|---|---|---|---|---|
| ep0 | SUCCESS | 7 | 4 | 3 | 57.1% |
| ep4 | SUCCESS | 7 | 5 | 2 | 71.4% |
| ep5 | SUCCESS | 27 | 11 | 16 | 40.7% |
| ep6 | SUCCESS | 27 | 9 | 18 | 33.3% |
| ep17 | SUCCESS | 6 | 4 | 2 | 66.7% |
| ep44 | SUCCESS | 15 | 4 | 11 | 26.7% |
coord swap으로 8% → 12%: +4 pp는 통계적으로 의미 있는 개선이다. coord precision이 전혀 무관하지 않음을 확인. 그러나 이것만으로는 52 pp 격차를 설명할 수 없다.
Verb mismatch 53.1%가 핵심 신호: ApiMem(flash-lite)이 "put the blue cube into the bin at <527, 537>"을 출력할 때, LoRA는 "pick up the second blue cube at <445, 309>"처럼 전혀 다른 subgoal phase에 있는 경우가 절반 이상이다. 이는 두 모델의 sequence tracking 자체가 misaligned됨을 시사 — ApiMem은 pi0.5가 이미 수행한 subgoal을 반복 출력하거나, LoRA는 다음 step을 미리 예측하는 패턴 차이가 있다.
다음 우선순위: (a) wording-only test — LoRA의 subgoal 텍스트를 그대로 pi0.5에 넘기면 SR이 어떻게 변하는지. 이것이 wording mismatch 기여를 직접 측정하는 가장 clean한 실험이다.
LoRA가 출력하는 subgoal 텍스트 + 좌표를 그대로 pi0.5에 전달하고 closed-loop SR 측정. ApiMem mt 없이 LoRA text만 사용 → wording 기여량 직접 측정. 구현: HybridApiMemLoRACoordPredictor에서 text도 LoRA 것으로 swap하는 flag 추가, 또는 LoRA-only predictor 직접 사용.
LoRA SR 16%인 low-baseline task에서 ApiMem이 long-horizon sequence tracking 강점을 발휘할 수 있는지 검증. BinFill처럼 detection bottleneck이 없는 task이면 다른 결과 가능.
scripts/analyze_hybrid_log.py 작성: mismatch가 발생한 tick의 ApiMem subgoal vs LoRA subgoal 텍스트를 나란히 출력 → 어떤 패턴의 mismatch가 지배적인지 파악. wording test 설계에 활용.
Verb mismatch 원인 미파악: ApiMem이 "이미 완료한 subgoal"을 반복하는지, LoRA가 "다음 단계"를 일찍 예측하는지, 아니면 근본적으로 서로 다른 task decomposition 방식인지 알 수 없음. hybrid_log JSONL에 api_sg/lora_sg 텍스트가 기록되어 있으므로 분석 스크립트로 파악 가능.