[RSS 2025 Workshop] From Foresight to Forethought VLM-In-the-Loop Policy Steering via Latent Alignment

안녕하세요. 이번 논문 리뷰는 DP같은 generative robot policy가 deployment-time 에 다양한 실패를 보이는 문제를 해결하기 위한 runtime policy steering 방법론입니다. 특히 해당 실패를 DreamerV3 기반 World Model(요즈음의 foundation video world model과는 다릅니다.)의 latent space에 align이 되게 학습된 VLM기반 verifier로부터 포착함으로써 runtime policy steering을 수행하는데요.

잠깐 과거 제 엑스리뷰들에서의 연구방향 언급 얘기를 하자면, 그 동안 제 연구 방향을 다음과 같이 매우 긴 파이프라인으로 고민하고 있었는데요. 물론 VLM 기반 high-level planning 위주로 연구 방향이 치우쳐있긴 했었지만,, 그럼에도 큰 틀에서는 여전히
“Manipulation에서 여러 챌린지한 태스크 중 하나인 Long-horizon Task을 잘하고 싶다. -> 그럼 Sub-task decomposition 해서 쪼개서 각각의 sub-task policy를 수행하자. -> 이 때 부정확한 sub-task plan이나 실패하는 policy execution이 있으면 uncertainty라는 추정치를 만들어내어 그걸 기준 삼아 verifying해보고 -> 계획이나 동작을 plan 단계에서든, runtime에서든, 수정해서 다시 수행함으로써 success rate를 높이고 싶다.”
였습니다.

요즘 정말 다양한 방향으로 다시 서베이를 하고 있는데, 정말 너무나도 많은 방법론들을 스쳐지나갔지만 서베이 처음 시작할 때 제가 머릿속으로 고민하던 방향과 유사한 방법론이었던 해당 방법론이 RSS Workshop 페이퍼임에도 불구하고 전반적인 맥락에서 다른 연구들에서도 자주 인용되는 편인 것 같아서 해당 논문을 가져오게 되었습니다.
(여담으로 본 논문의 교신저자이신 Andrea Bajcsy 교수님과 해당 교수님의 연구실인 CMU Intent LAB을 주목하게 되었습니다. 이 쪽 연구, 즉 world model의 latent feature 기반 uncertainty 추정, 그리고 그걸 기반으로 VA/VLA등의 policy steering을 run-time으로 수행하기 위한 특정 verifier를 만들려는 움직임을 가장 선두로써 활발히 하고 있는 연구실입니다. 벌써 이 랩에서 제가 그동안 머릿속에서 그려오기만 했던 논문들이 대량 나와서… 빨리 follow up 해볼 생각입니다.)

Introduction

DP(Diffusion Policy)/ACT(Action Chunking Transformer) 같은 Generative robot policy(그냥 VA(Vision Action)모델이라고 부르겠습니다.) 방법론들은 인간의 demo 데이터로부터 복잡하고 multimodal한 behaviors를 학습하는 데 있어 좋은 잠재력을 보여줬지만, 사실 요즈음에는 여러 연구들이 VA의 실제 execution 시의 성능 drop 문제를 언급하고 개선해나가듯이, deployment-time에서는 여전히 다양한 실패를 보입니다.


예를 들어 Figure 1과 같이 로봇이 테이블 위의 머그컵을 집어야 하는 상황을 생각해보겠습니다. 다양한 데모 데이터로 학습된 VA 정책은 컵의 손잡이, 가장자리, 내부 등 여러 방식의 grasping을 포함하는 행동 분포를 학습합니다. 그러나 runtime에서는 컵을 넘어뜨리는 task failure나, 물이 담긴 컵에 gripper를 넣는 것처럼 사용자 맥락과 맞지 않는 부적절한 행동이 발생할 수 있습니다. 기존에는 이런 문제를 추가 demo 데이터나 intervention 정보를 통해 정책을 재학습하는 방식으로 완화하는 접근도 했었다고 하지만, 그런 접근은 사실 이런 failure가 항상 VA의 근본적 한계가 있다고 가정하기에 그런 접근을 하는 거고, 실제로는 사실 VA의 정책 분포 안에 올바른 행동 모드가 존재하지만, 원치 않는 모드에 더 높은 확률이 할당되어 runtime에서 적절한 행동을 안정적으로 선택하지 못하는 경우가 많다고 다른 한편으로 생각해볼 수 있다고 합니다.

이를 해결하기 위해 제안된 접근이 runtime policy steering이라는 태스크였습니다. 이는 정책을 재학습하는 대신 외부 verifier를 사용해 VA 정책이 제안한 여러 후보 계획 중에서 적절한 행동을 선택하는 방식입니다. 일반적으로 (1) action plan의 결과를 예측하고 (2) 그 결과가 사용자 의도와 얼마나 정렬되는지를 평가하는 두 단계로 구성됩니다.
다만 이러한 접근은 dynamics model을 통한 outcome prediction과 명확한 reward 설계가 가능할 때 효과적이며, 복잡한 dynamics와 미묘한 task 요구사항을 가진 open-world 환경에서는 이를 적용하기 어렵다는 한계가 있습니다.

그리하여 본 논문의 핵심 아이디어가 여기서 등장하는데, action outcome prediction(동역학적 표현을 뜻하는 것 같습니다.)에 강점이 있는 world model과 commonsense reasoning 능력을 갖춘 VLM을 결합하여 open-world policy steering을 구현하는 것입니다. 그러나 두 모델은 학습 방식과 표현 구조가 달라 VLM이 low-level robot action의 결과를 직접 이해하기 어렵고, 단순 결합만으로는 효과적으로 활용하기 어렵습니다.

이걸 또 해결하기 위해 저자들은 FOREWARN(Filtering Options via REpresenting World-model Action Rollouts via Narration)을 제안하게 됩니다. 핵심은 action 결과를 예측하는 foresight와 이를 평가하는 forethought 단계를 분리하는 것입니다. 먼저 DreamerV3 기반 world model이 다양한 action plan에 대한 미래 latent state를 예측하고, 이후 이를 자연어 서술로 변환하여 VLM이 language space에서 결과를 추론하고 계획을 필터링하도록 합니다. 이를 통해 “VLM-in-the-loop” 형태의 policy steering을 구현하는데요. 저자들은 결국은 “VA가 생성해서 rollout한 action plan의 여러 후보를 user intent와 task goal에 맞게 robust하게 필터링해서 최적의 옵션인 액션 하나를 정해줄 수 있느냐“를 보인 것으로 이해하시면 될 것 같습니다.

요약하면, 본 논문의 주요 기여는 다음과 같습니다:
• Runtime policy steering을 stochastic model-predictive control 문제로 정식화하여, generation-verification gap을 드러내고 최신 모델들이 가장 큰 잠재력을 발휘할 수 있는 지점을 명확히 제시함.
• Low-level, action-conditioned world model이 예측한 action plan outcomes를 VLM이 보다 안정적으로 검증할 수 있도록 하는 latent space alignment 프레임워크 제안.
• Novel task descriptions에서도 baseline VA인 DP의 성능을 30% 이상 향상시키는 완전 자율적인 policy steering framework 제안.
• 실제 hardware 실험을 포함한 여러 실험을 통해, outcome prediction과 verification을 분리하지 않는 기존 VLM 접근 대비 약 40% 향상된 성능을 달성함을 입증.

Problem Formulation

이 논문은 policy steering을 stochastic model-predictive control(MPC) 관점으로 formulation합니다. 즉, 사전 학습된 base policy \pi(a_t \mid o_t)가 K개(실험에선 100개)의 action plan을 생성(이 때 실험에선 총 100개의 샘플링된 궤적들을 NMS로 압축하여 K’=6으로써 대표 plan을 만든다고 합니다.), 그 중에서 task description과 가장 잘 정렬되는 행동 계획을 선택하는 문제로 정의합니다.

그리하여 위 formulation 식을 간단히 다루면, 현재 시점 t에서의 관측 o_t와 base policy로부터 샘플링된 K개의 action plan 후보 \{a_t^i\}_{i=1}^{K}가 주어졌을 때, policy steering은 각 행동 a_t 실행 후 발생할 미래 관측 o_t \sim P(\cdot \mid o_t, a_t) 에 대해 기대 reward R(o_{t+1}; \ell)을 최대화하는 action plan a_t^*를 선택하는 문제로 정의됩니다.
이를 위해서는 두 가지 능력이 필요합니다. 하나는 각 action plan을 실행했을 때 어떤 미래 상태가 발생할지를 예측하는 prediction, 다른 하나는 그 결과가 주어진 task와 얼마나 잘 맞는지를 평가하는 verification입니다. 그러나 이 두 과정을 하나의 모델로 end-to-end로 해결하는 것은 쉽지 않은데, 특히 VLM은 high-level semantic understanding에는 강하지만 low-level robot action을 직접 처리하기 어렵고, 이를 위해 별도로 fine-tuning하려면 대규모 로봇 데이터와 라벨링이 필요합니다. 따라서 저자들은 두 과정을 분리하는 modular 접근을 제안합니다. world model이 행동 결과를 예측하고, VLM이 그 결과를 task 관점에서 검증하는 구조로 policy steering을 수행하고자 했습니다.

Methods


FOREWARN은 크게 두 단계 Foresight, Forethought 으로 구성됩니다.

Foresight: Latent World Model을 통한 dynamics를 반영한 outcomes 예측

  • 로봇의 현재 관측 o_t와 잠재 동작 계획(latent action plan) a_t가 주어졌을 때, 미래의 잠재 상태 z_{t:t+T}를 예측하는 단계입니다. 본 논문에서는 DreamerV3 기반의 recurrent world model W_\phi = (E_\phi, f_\phi, D_\phi)를 사용합니다. 여기서 E_\phi는 observation encoder, f_\phi는 recurrent dynamics model(RSSM Dynamics Model), D_\phi는 decoder network입니다. E_\phi: O \rightarrow Z는 로봇의 현재 관측 o_t를 latent space Z로 인코딩하며, f_\phi(z_t, a_t)는 주어진 잠재 상태 z_t와 동작 a_t로부터 다음 잠재 상태 z_{t+1}을 예측하는 RNN 기반의 확률적 잠재 동역학 모델인데, stochastic continuous latent space를 학습하는 형태입니다. D_\phi는 잠재 상태를 다시 관측의 형태로 디코딩하게 됩니다.
  • 여기서의 DreamerV3는 로봇의 관측 및 동작 궤적(D_{WM} = \left\{\left\{(o_\tau^j, a_\tau^j)\right\}_{\tau=0}^{H-1}\right\}_{j=1}^M)을 포함하는 오프라인 데이터셋으로 사전 학습되는데, 이 데이터셋에는 성공 및 실패 롤아웃이 모두 포함되어 다양한 동작 계획의 결과를 예측할 수 있도록 한다고 합니다. 월드 모델 학습 시의 loss는 latent state가 고품질 이미지 디코딩에 정보를 제공하고 주어진 동작에 대해 다음 latent state를 높은 예측력으로 나타내도록 유도하는 loss인데, 자세한 수식과 구조는 DreamerV3 논문에서 확인할 수 있었습니다.(수식이 조금 복잡했는데,, 기회가 되면 다가오기 쉬운 말이나 코드로 리뷰해보겠습니다. )
  1. Sequence model : 이전 hidden state와 행동을 이용해 새로운 hidden state를 갱신합니다.
  2. Encoder : 현재 관측 x_t를 이용해 latent posterior state z_t를 추정합니다.
  3. Dynamics predictor (prior) : 관측 없이 hidden state만으로 다음 latent state를 예측합니다.
  4. Decoder : latent state에서 실제 관측을 재구성합니다.
  5. Reward predictor : latent state에서 reward를 예측합니다.
  6. Continue predictor : 에피소드 종료 여부(continuation probability)를 예측합니다.
  7. 즉 DreamerV3는 latent state z_t와 hidden state h_t를 이용해 observation, reward, episode continuation 을 모두 예측하는 latent dynamics model을 학습합니다.

DreamerV3의 world model은 다음과 같은 전체 loss로 학습됩니다. 좀 복잡하게 보이긴 하는데, 일단, 3가지 loss로 학습됩니다.


먼저 Prediction loss 는 latent state z_t, h_t로부터 observation x_t, reward r_t, continuation c_t를 예측하도록 하는 loss입니다. 다음 Dynamics lossRepresentation loss는 posterior q\phi(zt \mid h_t, x_t)와 prior p\phi(zt \mid h_t) 사이의 KL divergence를 이용해 latent dynamics를 정렬하는 loss로, 각각 dynamics model과 representation model을 안정적으로 학습하기 위해 stop-gradient를 적용한 형태입니다.
학습 후, 월드 모델은 frozen되며, 그 인코더 E\phi와 동역학 모델 f_\phi는 VLM-in-the-loop policy steering 알고리즘의 나머지 부분에서 활용되게 됩니다.

Forethought: Latent-Text Alignment for Outcome Reasoning and Policy Steering

  • 앞선 월드 모델이 예측한 잠재 상태 z_{t:t+T}를 VLM이 이해할 수 있는 자연어 텍스트 표현으로 latent-text alignment를 맞추고, 이를 바탕으로 동작 계획을 평가하는 단계입니다.
  • VLM백본은 Llama-3.2-11B-Vision-Instruct 을 사용했으며, 기존 Llama 모델의 Vision Transformer (ViT) 기반 이미지 토큰화 모듈을 월드 모델의 인코더 E_\phi와 잠재 동역학 모델 f_\phi로 대체해서 사용했습니다. 월드 모델이 예측한 잠재 상태 시퀀스 z_{t:t+T}는 linear layer를 통해 텍스트 임베딩 공간으로 투영되어 LLM 백본의 입력으로 사용됩니다. 이 투영 레이어는 Llama 모델과 함께 LoRA로 fine-tuning됩니다. 여기서 VLM fine-tuning의 목표는 로봇의 실제 동작을 세밀하게 설명하는 행동 서술 l_b^i를 생성하는 것입니다 (예: “the robot grasps the cup by the handle” vs. “the robot grasps the cup”). 이는 VQA 태스크로 구성되며, 예측된 잠재 상태 시퀀스를컨디션으로 VLM이 동작을 서술하도록 프롬프팅됩니다.
  • 최종적으로, 해당 VLM은 K개의 후보 동작 계획에 대한 행동 서술을 생성한 후, 사용자 작업 설명 l에 기반하여 이 서술들을 평가하여 최적의 동작 계획 a_t^\star을 선택합니다. 이는 MCQA(Multiple-Choice Question Answering) 형태로 구현되고, VLM은 각 동작 계획 결과에 대한 보상을 명시적으로 할당하는 대신, VLM 스스로가 내재적으로 지식을 가지고 있단 점을 활용하여 최적의 계획을 직접 선택하게 한다고 합니다.

최종적인, VLM-in-the-loop policy steering의 목적 함수는 다음과 같습니다.

여기서 T_{\psi}^{VLM}는 후보 동작 계획을 align이 맞는 로봇 행동 서술로 변환하는 추론 프로세스를 나타내며, R_{\psi}^{VLM} (z_t; \ell)는 작업 설명 \ell이 주어졌을 때 world model로부터 예측된 결과 z_t에 align이 맞게 생성된 서술이 “얼마나 부합하는가”로 평가하는 VLM(매개변수 \psi)에 내재된 implicit한 보상 함수입니다.

Experiments

실험파트는 크게 보면 3가지를 실험해보려는 구조로 이해하고 좀 정리해봤습니다.

  1. VLM이 World Model 없이도 action outcome을 이해할 수 있는가
  2. 제안한 FOREWARN이 실제로 policy steering 성능을 개선하는가
  3. 새로운 task나 환경 변화에서도 일반화되는가

그 전에 먼저 base policy, baselines, evaluation metric을 간단히 짚고 넘어가자면 다음과 같습니다.
우선 base policy는 DP를 사용했고, baseline으로는 제안된 방법론인 FOREWARN 에 비교하기 위해 4가지 baseline을 설명합니다.

  1. FOREWARN-Oracle : World model의 future prediction outcome 대신 아예 gt obs로 대체했을 때의 upper입니다.
  2. VLM-Act : VLM을 현재 관측과 행동 계획(텍스트)로부터 end-to-end로 파인튜닝해서 액션 후보인 나레이션을 생성하는 경우입니다.
  3. VLM-Img : 로봇의 계획된 행동이 주어졌을 때, 디코딩된 World model의 future prediction을 활용해서, GPT4o 로 zero-shot VQA 방식으로 바로 나레이션을 생성하는 경우입니다.
  4. VLM-Img-Oracle : 이건 위 방식에서 world model future prediction 말고 gt obs로 대체한 upper입니다.
    평가는 예측된 행동 내레이션과 실제 내레이션 간의 정렬을 평가하기 위해 기존의 AHA라는 failure detection 쪽 선행연구의 지표를 따라갑니다. 2가지 지표를 사용하는데,
    (1) LLM score: GPT-4o 모델에 의해 결정되는 유사도 점수(0에서 1까지).
    (2) GT accuracy: 인간 라벨러(저자들이라고 합니다.)에 의해 결정되는 예측이 실제 내레이션과 일치하는지 여부를 나타내는 이진 점수(0 또는 1).
    실제 policy steering 실험에서의 성능은 task success rate로 측정했습니다.

World model로부터 나오는 low-level action outcome의 중요성

일단 처음은 low-level action outcome을 VLM이 얼마나 제대로 이해할 수 있는지를 평가합니다.
432
table 1을 보면, VLM-Act: action sequence만 입력, VLM-Img: 월드모델 img outcome 기반 VLM, VLM-Img-Oracle: GT obs 사용, FOREWARN 이렇게 4가지에 FOREWARN-Oracle까지 비교해서 실험하는데요.
결과적으로 VLM-Act는 모든 태스크에서 GT accuracy 50% 이하로 매우 낮은 성능을 보이고 저자들의 FOREWARN은 world model을 이용해 미래 상태를 예측한 뒤 이를 기반으로 align된 reasoning을 수행하기 때문에 모든 태스크에서 꽤나 높은 성능 향상을 보이는 모습을 보였습니다.


Fig.3은 위의 Table1에서의 결과를 정성적으로 보인 것입니다. FOREWARN은 “컵을 내부에서 잡는다”, “칩 봉지를 가운데에서 잡는다”와 같은 실제 접촉 위치와 행동 결과를 정확히 묘사하는 반면, 기존 VLM들은 그립 위치를 hallucinate하는 경우가 많음을 보였습니다. 즉, 이를 통해 low-level action outcome(여기선 액션에 해당하는 text 계획)을 직접 해석하는 것은 기존 VLM에게 어렵더라를 보여준 것으로 이해했습니다.

Open World Alignment를 갖추고 Policy Steering 성능 개선을 하는가?

다음은 FOREWARN이 실제로 policy steering까지 성능 개선을 하는가에 대한 실험입니다.

여기엔 추가적으로 baseline 2개를 더 붙이는데, 다음과 같았습니다.
VLM-DynLat-Category : 앞단의 world model, 뒷단에 VLM 쓰는 거긴 한데, world model의 prediction outcomes이 VLM에 넘어가서 text형태로 표현되어 MCQA를 하는 거 대신에, 액션 후보에 대한 정해진 인덱스 집합을 categorycal하게 예측하도록 VLM을 fine-tuning하고 해당 계획을 실행하기 위해 집합 중 하나의 인덱스를 무작위 선택하는 방식입니다.(세밀한 행동 text표현 차이가 구분 안되는 걸 의도했다고 합니다.)
Classifier-Dyn-Latent : 이건 world model의 latent 임베딩을 받아 VLM 대신 성공/실패 만 트랜스포머 기반으로 이진 분류하게 fine-tuning하고 성공으로 예측된 action을 무작위로 선택하는 방식입니다.
각 방법론에 대해 무작위로 초기화된 작업 구성 instruction에 해당하는 작업을 20회의 시행을 수행하고 SR을 평가했다고 합니다.

우선 학습된 task에서의 description policy steering이 잘 되는지인데, Classifier-Dyn-Latent는 모든 작업에서 FOREWARN과 유사한 성능을 보인 반면, VLM-DynLat-Category는 더 복잡한 Bag 및 Fork 작업에서 FOREWARN 보다 성능이 낮았습니다. VLM-Act는 그냥 쌩 DP와 유사한 성능을 보이는데, 이는 저수준 행동 시퀀스에서 직접 생성된 행동 서술이 정확한 모션 세부 정보를 포착하지 못하여 VLM이 정책을 조향하는 데 유용한 신호를 제공하지 못하기 때문이라고 저자들은 분석했습니다.

추가로 novel task에 대해서도 실험을 진행했는데, 3가지 manipulation task인 cup task, bag task, fork task에 대해서 작업에 대한 instruction을 바꾸었을 때를 실험했습니다. 예를 들어 cup task는 “물이 담긴 컵을 집어 손님에게 제공하라” → “손잡이에 기름이 묻어 있으니 유의해서 컵을 잡아라”와 같이 작업 지시가 변경되면, 로봇이 컵 손잡이를 잡는 행동이 안전하지 않게 되어서 컵의 가장자리를 잡는 것이 바람직한 행동이 됩니다. 이처럼 같은 액션일 수 있지만 구체적으로 선호행동이 달라지는 상황에서 policy steering을 하는지를 평가했습니다.

실험결과 VLM-DynLat-Category와 Classifier-Dyn-Latent 모두 작업 설명이 훈련 분포 내에 있을 때에만 작업 성공률을 향상시키고, novel task는 현저히 저하되는 모습을 보였지만, FOREWARN은 성능을 지키는 모습을 보여줬습니다. 이는 VLM이 월드 모델의 잠재 상태에서 예측된 행동 결과를 직접적으로 추론하는 데 어려움을 겪으며, 일반화된 policy steering을 위해 VLM의 open world reasoning을 완전히 활용하려면, 모델이 텍스트 표현을 통해 예측된 행동 결과를 해석할 수 있도록 하는 것이 필수적임을 보이는 것이라고 합니다.

Fig 4. 는 Fork Task에 대한 정성적인 figure입니다. 참고 차 첨부했습니다.

OOD 환경 변화에도 일반화가 되는가


객체의 색상 및 크기를 포함한 외형 변화와 배경의 변화를 주고 실험도 해봤었는데, 수치상으로 테이블에 명시하진 않았고 저자들이 말하길 어느정도 성능은 drop 되지만 일반화 모습을 조금 보였다고 합니다.(이건 수치가 없어서 믿기가 애매하네요.)


마지막으로 policy steering 에 대한 inference time을 보여줬는데요. FOREWARN이 VLM을 두번 쿼리해서 먼저 행동에 대한 나레이션을 생성한 다음 최적의 행동 계획을 선택하는 구조라고 합니다.
전체 시간으로 보면 VLM-Act 구조가 거의 7배 느린데, 이는 FOREWARN이 world model로부터 뽑은 latent space에서의 단일 토큰을 활용하는 방식 대비, VLM-Act는 VQA로 인해 이미지당 패치 각각에 토큰을 다 사용하는 방식 때문이라고 합니다.

Author: 이 재찬

Leave a Reply

Your email address will not be published.