로봇 손을 오른쪽으로 움직이는 조건을 넣었는데 생성 영상에서는 손이 거의 움직이지 않았다면, 화면이 자연스러워도 그 영상과 행동을 한 쌍의 학습 자료로 쓰기 어렵습니다. Dream2Fix는 이런 불일치를 걸러내기 위해 작업 결과와 화질, 영상에서 추정한 상태 변화, 관절 움직임, 점 추적을 검사합니다. 네 검사는 서로 다른 질문을 맡으며, 각 조건을 충족한 실패 영상에 수정 행동 라벨을 붙입니다.
핵심은 실패 장면을 많이 만드는 것보다 어떤 행동 변화가 그 장면을 만들었는지 연결을 유지하는 것입니다. Dream2Fix 논문 III절은 성공 시범의 행동을 국소적으로 바꿔 영상을 생성하고, 검사한 영상과 생성에 사용한 변경값으로 학습 쌍을 만드는 과정을 설명합니다. 이 글은 그 방법을 해석한 것으로, 영상 생성기·검사 모델·로봇을 직접 실행한 결과는 포함하지 않습니다.
닫힘 시점 주변의 행동을 바꿔 실패를 만든다
Dream2Fix가 사용하는 Ctrl-World는 로봇 행동을 조건으로 미래 영상을 생성합니다. 연구진은 그리퍼가 열림과 닫힘 사이에서 전환하는 시점을 기준으로 잡고, 그 주변의 짧은 시간 구간에 변화를 넣습니다. 순간 하나만 끊어 바꾸는 대신 주변 구간을 함께 조정해 연속적인 움직임을 만들려는 구성입니다.
현재 방법의 실패 유형은 네 가지입니다. delay_close는 닫힘을 늦추고, weak_close는 닫힘 명령의 크기를 줄입니다. force_open은 닫혀야 할 지점에서 열린 상태가 남도록 그리퍼 행동을 바꿉니다. translation은 접근·접촉 부근에서 손끝의 x·y 상태에 잡음을 넣어 위치를 어긋나게 합니다.
이름보다 실제로 바꾸는 변수를 보면 차이가 분명해집니다. 닫힘이 늦은 경우에는 적절한 위치를 지나간 뒤 손가락이 움직일 수 있고, 닫힘 크기를 줄인 경우에는 같은 시점에 명령을 내더라도 접촉 상태가 달라질 수 있습니다. 위치를 옮기는 경우에는 닫힘 시점이 같아도 손끝과 물체의 상대 위치가 바뀝니다.
네 유형은 연구진이 현재 월드모델로 안정적으로 유도할 수 있는 실패에서 선택한 범위입니다. 따라서 데이터의 구성은 생성기에 넣을 수 있는 행동 변수와 연결되어 있습니다. 닫힘의 시점·크기·상태와 손끝의 위치를 따로 바꾸면, 각 영상이 어떤 제어 변화에서 나왔는지 생성 기록으로 되짚을 수 있습니다.
네 검사는 같은 영상을 서로 다른 관점에서 읽는다
논문은 네 verifier의 조건을 모두 만족한 샘플을 남기는 방식으로 설명합니다. 아래 번호나 표의 위치가 정해진 실행 순서를 뜻하지는 않습니다.
| 검사 | 입력에서 확인하는 관계 | 걸러내려는 문제의 예 |
|---|---|---|
| VLM 검사 | 작업 지시·성공 기준 영상·생성 실패 영상 | 의도한 실패가 나타나지 않거나 심한 생성 왜곡이 있음 |
| 역동역학 모델 검사 | 두 영상 사이에서 추정한 상태 변화와 생성 조건의 상태 변화 | 조건은 이동을 요구했는데 영상 속 움직임은 다름 |
| 관절 자세 검사 | 영상에서 예측한 관절각과 그 시간 변화 | 관절 범위 또는 속도·가속도 기준을 벗어남 |
| 점 추적 검사 | 영상 속 점들의 이동·가시성·이웃 관계·전체 연속성 | 점이 갑자기 튀거나 장면 구조가 불안정하게 변함 |
VLM 검사는 Qwen3-VL-8B에 작업 지시, 기준이 되는 성공 영상, 생성 영상을 함께 제공합니다. 판단은 두 갈래입니다. 작업을 실패한 사례로 볼 수 있는지와, 영상에 심각한 왜곡이 있는지를 봅니다. 성공처럼 보이는 장면을 실패 라벨로 남기는 문제와, 실패는 보이지만 영상이 깨진 문제를 함께 걸러내는 역할입니다.
나머지 검사는 그 판단을 다른 표현에서 보완합니다. 로봇 손이 물체를 놓쳤다는 설명이 타당해도, 영상에서 보이는 손 이동이 생성 조건과 맞는지는 별도로 확인할 수 있습니다.
영상의 이동량을 행동 조건과 대조한다
역동역학 모델은 성공 시범으로 학습한 ResNet-50과 MLP를 사용해 두 프레임 사이의 손끝 상태 차이를 추정합니다. 생성에 사용한 상태·행동 기록에서도 같은 구간의 기준 상태 차이를 구합니다. 두 벡터 차이의 L2 크기가 오차이며, 성공 기준 궤적으로 보정한 문턱과 비교합니다.
계산 방향을 보기 위해 두 평면 좌표만 사용하는 가상 예시를 생각해 보겠습니다. 생성 조건의 이동량을 (4, 0)cm, 영상에서 추정한 이동량을 (1, 2)cm라고 두면 차이는 (-3, 2)cm입니다. 그 크기는 sqrt(3² + 2²) = sqrt(13), 약 3.6cm가 됩니다. 이 예시는 두 이동 벡터를 비교하는 계산만 단순화한 것이며, 논문의 전체 상태 벡터나 실제 합격 문턱을 재현한 값은 아닙니다.
이 검사에서는 영상에 손이 나타났다는 사실보다 지시한 상태 변화와 보이는 상태 변화가 같은가가 중요합니다. 모델이 성공 시범에서 익힌 영상·상태 관계와 기준 문턱이 판단의 기준을 이루므로, 생성기의 출력과 검사 모델의 적용 환경도 함께 맞아야 합니다.
관절 자세 검사는 다른 좌표에서 움직임을 봅니다. 영상의 각 프레임에서 일곱 관절의 각도를 예측하고, 유한 차분으로 속도와 가속도를 계산합니다. 어떤 시점의 관절각이 허용 범위를 벗어나거나 속도·가속도가 문턱을 넘으면 그 영상을 제외합니다. 여기서 사용하는 값은 영상에서 예측한 관절 상태입니다. 실제 엔코더로 측정한 값과 구분하면 이 검사가 무엇을 근거로 작동하는지 명확해집니다.
로봇 자세가 맞아도 장면이 흔들릴 수 있다
점 추적 검사는 첫 프레임의 10×10 격자에서 점을 골라 영상 전체에서 추적합니다. 각 점이 얼마나 부드럽게 이동하는지, 보였다가 사라지는 패턴이 안정적인지, 처음 이웃했던 점들의 거리가 어떻게 변하는지, 화면 전체의 움직임이 연속적인지를 점수로 만듭니다. 추적 신뢰도가 부족한 영상도 제외합니다.
가령 손끝은 부드럽게 움직이지만 잡힌 물체의 무늬가 프레임마다 튀거나 주변 윤곽이 급격히 바뀐다면, 손끝 상태 차이만으로는 그 문제를 충분히 드러내기 어렵습니다. 점 추적은 이처럼 장면의 시간적 구조를 별도로 살피는 경로입니다. 여러 점수는 가중합으로 묶이지만, 관절각·속도 검사와 같은 양을 측정하는 것은 아닙니다.
이 구성을 읽을 때는 네 검사 결과를 하나의 막연한 ‘영상 품질’로 합쳐 생각하기보다, 작업 결과·조건 행동·로봇 운동·장면 연속성이 각각 어떤 증거로 연결되는지 따라가는 편이 유용합니다.
수정 라벨은 생성 때 넣은 변화에서 나온다
검사를 통과한 실패 영상에는 고정된 키와 값 형태의 수정 라벨을 붙입니다. 데이터 제작 단계에서 이 라벨은 자유롭게 추측한 설명이 아니라, 성공 시범에 주입한 변경 매개변수로부터 결정적으로 생성됩니다. 실패 여부, 유형, 수정 지시가 같은 생성 기록에 연결됩니다.
위치 실패의 수정 지시는 축별 방향과 이산적인 이동 스텝 수를 담습니다. 그리퍼 실패에서는 수정할 닫힘 명령뿐 아니라 적용 시점을 가리키는 시간 기준도 필요합니다. 닫힘이 아예 일어나지 않은 실패 영상에서는 실제 전환 장면만 찾아서는 수정 시점을 정하기 어렵기 때문입니다.
이후 학습한 VLM은 영상과 작업 지시에서 같은 구조의 답을 생성하고, 별도의 매핑 모듈이 그 필드를 로봇 제어 동작으로 바꿉니다. 학습 라벨을 생성하는 과정과 새 실행에서 모델이 수정값을 예측하는 과정이 이렇게 이어집니다. 앞 단계의 라벨은 주입값을 알고 만들지만, 뒤 단계의 모델은 관측에서 적절한 답을 찾아야 합니다.
기존 월드모델 실패 모드 글은 어떤 물리적 불일치를 시험할지 다룹니다. Dream2Fix를 읽을 때는 그 질문을 데이터 한 쌍까지 좁힐 수 있습니다. 생성 조건의 행동, 영상에서 드러난 변화, 검사에 사용한 표현, 수정 라벨의 출처가 연결될 때 그 샘플이 무엇을 가르치는지 설명할 수 있습니다.