본문 바로가기
ML Study/Robotics논문리뷰

MDT 논문리뷰(Multimodal Diffusion Transformer: Learning Versatile Behavior from Multimodal Goals)

by 누워있는말티즈 2024. 8. 19.

Multimodal Diffusion Transformer: Learning Versatile Behavior from Multimodal Goals

Multimodal Diffusion Transformer: Learning Versatile Behavior from...

Introduction

multimodal task에서 다목적 행동을 학습할 수 있는 새로운 확산 기반 접근법인 Multimodal Diffusion Transformer (MDT) 를 소개한다. MDT는 적은 언어 주석 데이터에서도 효율적으로 학습하며, 두 가지 self-supervised loss(MGF, CLA)을 도입하여 성능을 크게 향상시킴. MDT는 CALVIN 및 LIBERO 벤치마크에서 최고 성능을 기록하며, 대규모 사전 학습 없이도 탁월한 성능을 보인다.

Method

Problem Formulation

현재 state s와 latent goal g로 컨디셔닝 된 goal-conditioned policy($\pi_\theta(\bar a_i|s_i,g)$) 는 길이 k의 action sequence를 예측한다. 이 goal은 observation or free-form language ($g ∈ {o, l}$).

dataset

goal image는 [20,50] 내에서 0.1 확률로 랜덤하게 샘플링된 미래 state이다. ($o_i=s_{i+j}$). Loss는 다음과 같다.

Score-Based Diffusion

noise의 adding,subtracting과정 모두 연속적인 시간상의 SDE문제로 정의한다.

score function은 diffusion time variable t(0~T)를 파라미터로 가진다

이 시점의 SDE는 해가 나오지 않지만 위 식에서 시간항을 무한으로 늘리면 무한소 성질을 가지는 $\beta_t$ 항이 0으로 수렴해 해결이 가능한 ODE로 변한다.


:위의 프로세스는 Wiener Process $\omega_t$(무한소의 가우시안 노이즈) 을 denoising 함으로 써 Stochasticity를 줄인다.

$\sigma_t$ : Noise Scheduler , MDT에서는 $\sigma_t = t \in [0.001, 80]$

$\beta_t$ : replacement of existing noise through injected new noise

(기존에 존재하던 Noise를 새로운 noise 로 대체하는 것의 정도에 대한 값)

이 디퓨전 모델은 score matching을 통해 위의 score function을 근사한다.

 

$\beta_t=0$ 으로 설정하여 Deterministic한 inverse process를 하도록 하고, 이를 통하여 샘플링 step의 수를 줄인다. 총 DDIM Sampler의 10 step을 사용하여 inference time에서 빠른 샘플링한다.

Model Architecture

MDT는 멀티모달 Transformer 인코더-디코더 아키텍처를 사용함.

  1. 인코더 종류:
    • MDT (ResNet18을 사용하는 기본 모델)
    • MDT-V (고정된 Voltron 임베딩 사용)
  2. MDT-V 인코더:
    • Perceiver-Resampler를 사용하여 다양한 크기의 시공간 특징을 고정된 작은 크기의 시각적 토큰으로 매핑, 계산량 감소
    • 각 이미지 관찰은 Voltron 임베딩에 의해 196개의 잠재 토큰으로 임베딩됨
    • 최종적으로 3개의 토큰 출력
  3. MDT 인코더:
    • 학습 가능한 ResNet18을 softmax pooling, group norm과 함께 사용
    • 각 이미지에 대해 단일 관찰 토큰 출력
  4. 멀티모달 목표:
    • CLIP(frozen)을 사용해 각 멀티모달 목표를 단일 토큰으로 구성

MDT Diffusion Decoder 구조 요약:

  1. Masking 및 Denoising: MDT Diffusion Decoder는 마스킹을 통해 action sequence를 denoising함.
  2. Cross-Attention Layer: 디코더 레이어의 모든 cross-attention 레이어에 conditioning 정보를 추가하여 이를 결합함.
  3. Noise Level Embedding: 현재 noise level (\sigma_t)을 Sinusoidal Embedding으로 변환하고, 이를 MLP를 통해 latent noise token으로 만듦.
  4. AdaLN 사용: Adaptive Layer Normalization (AdaLN)을 통해 해당 noise level 정보를 scale 및 shift로 적용하여 디코더 블록에 반영함.

이 구조는 Time step과 label의 embedding을 각각 scale과 shift 값으로 사용하여 모델의 성능을 향상

Masked Generative Foresight(MGF)

 

Aligning Latent Goal-Conditioned Representations

CLIP으로 이미지 인코딩을 하느데 CLIP은 정적(static) 이미지에 적합하지만, 동적(dynamic) 상황을 이해하는 데 한계가 있음. 이 문제를 해결하기 위해 CLA (Contrastive Latent Alignment) Objective를 도입하여, 모델이 동적 상황을 더 잘 고려할 수 있도록 설계한다.

Loss Formulation

Evaluation

저자들 진짜 열심히 했다…

Ablation study들을 보면 MGF와 CLA의 영향이 벤치마크에 따라 다르게 나타난다.

 

Limitation

  • MGF와 CLA는 특정 작업, 특히 LIBERO-Long에서 성능을 향상시키지 못함.
  • MGF와 CLA의 성능 영향은 벤치마크마다 다름. CLA는 LIBERO에서 더 큰 영향을 미치고, CALVIN에서는 그 반대임.
  • Diffusion은 다수의 전방 패스를 요구하여 비확산 접근법보다 추론 속도가 느림.
  • 실제 로봇 멀티 작업에서 평균 롤아웃 길이가 짧음. 이는 설정의 난이도와 카메라 위치의 문제로 인한 것일 수 있음.

Comment

DDPM읽고 그 다음에 score-based diffusion에 대한 이해가 없으면 DDIM으로 넘어가기 힘들다. 본 논문에서 score-based diffusion에 대한 논리를 차용해서 얘기하다보니 이런 코멘트가 나옴.

  1. Transformer cross attention & self attention 순서?
  2. → 3D Diffuser Actor와 달리, noisy action sequence에 대해 self attention을 먼저 수행하고, 그 다음 observation conditioning을 cross attention으로 수행하는 구조이다.
  3. Rollout Length : complex task에서 각 sub task 성공률을 통한 기댓값의 합으로, 길 수록 sub task를 더 많이 수행할 수 있음을 나타낸다.
반응형

댓글