Genie: DeepMind가 공개한, 생성적 상호작용 환경 모델(Generative Interactive Environments)

PyTorchKR​:fire::kr: :thinking::speech_balloon:

  • Google DeepMind가 공개한 Genie는 레이블이 없는 인터넷 비디오에서 비지도 학습을 통해 학습된 모델로, 텍스트, 합성 이미지, 사진 및 스케치 등을 입력으로 받아 다양한 액션 제어가 가능한 가상 세계를 생성할 수 있습니다. 11B 규모의 파라미터를 가진 Genie 모델은 Foundation World Model로, 시공간 비디오 토크나이저, 자기회귀 동적 모델 및 확장 가능한 잠재 액션 모델을 통합합니다.

  • 사용자는 Genie 모델을 활용하여 정답(GT, Ground-Truth) 액션 레이블이나 도메인에 특화된 요구사항 없이 생성된 환경과 프레임별로 상호 작용할 수 있습니다. 또한, Genie의 학습된 잠재 액션 공간은 보이지 않는 비디오에서 행동을 모방하는 에이전트를 학습시키는데 도움이 될 것입니다.

Genie: 생성적 상호작용 환경 모델(Generative Interactive Environments by Google DeepMind)


Genie: 생성적 상호작용 환경 모델 (Generative Interactive Environments)

소개

Genie: 생성적 상호작용 환경 모델 (Generative Interactive Environments)

Genie 논문은 광범위한 수동 설계나 대규모 레이블이 지정된 데이터셋에 의존하지 않고도 다양하고 현실적이며 제어 가능한 가상 환경을 생성하는 문제를 다루고 있습니다. 다양한 시나리오에 대한 학습 및 테스트를 위한 풍부한 가상 환경을 생성 및 제공함으로써 향후 지능형 에이전트의 개발을 크게 가속화할 수 있을 것으로 기대합니다.

기존에는 상호 작용이 가능한 가상 환경을 직접 설계하거나 특정 규칙에 기반한 시뮬레이션을 통해 생성하였으며, 이러한 방식은 시간이 많이 걸리고 다양성이 부족하다는 문제점이 있었습니다. 그 외에도 레이블이 있는 데이터셋으로부터 감독 학습을 통해 환경을 생성할 수도 있지만, 이는 광범위한 데이터 주석이 필요하며 데이터의 가용성과 다양성이 제한적이라는 문제점이 있습니다.

Genie 모델

Genie는 레이블이 없는 인터넷 비디오로부터 비지도 학습을 하는 접근 방식을 취하고 있으며, 이는 다양한 상호 작용 환경을 생성할 수 있는 확장 가능하고 유연한 방법을 제공합니다. 이를 위해 Genie에서는 다음과 같은 아이디어들을 적용하였습니다.

  • 인터넷 비디오에서 비지도 학습을 통해 학습된 생성 모델은 현실 세계의 역동성(dynamics)과 미적 감각(aesthetics)을 넓은 범위로 포착하여 매우 다양하고 현실적인 환경을 생성할 수 있는 기반이 됩니다.

  • 시공간(spatiotemporal) 비디오 토크나이저와 자기회귀 동적 모델(autoregressive dynamics model)을 확장 가능한 잠재 액션 모델(latent action model)과 통합함으로써, 생성된 환경과의 의미 있는 방식으로 사용자 상호 작용을 가능하게 합니다. 이는 사용자가 학습 중 명시적인 액션 레이블을 제공하지 않아도 환경에 영향을 줄 수 있게 합니다.

Genie의 또 다른 중요한 기여는 기존에 보지 않은 영상의 행동을 모방하도록 하는 에이전트들을 학습시킬 수 있는 것입니다. 이는 모델이 학습한, 행동 표현의 복잡성을 효율적이고 효과적으로 추상화하는 잠재 액션 공간(latent action space)을 통해 가능합니다. 이러한 가능성은 상호 작용이 가능한 환경을 생성하는 것뿐만 아니라, 다양한 입력에서 학습하고 다양한 작업을 수행할 수 있는 일반적인 에이전트 개발 측면에서도 Genie가 사용될 수 있음을 뜻합니다.

Genie 모델 구조

Genie 모델 구조 및 학습 과정
Genie는 𝑇 프레임의 비디오를 입력으로 받아 한 쪽에서는 Video Tokenizer를 통해 개별 토큰 𝒛으로 토큰화하고, 다른 쪽에서는 잠재 액션 모델(latent action model)에 통과시켜 각 프레임 사이의 잠재 동작(latent action) 𝒂˜를 얻습니다. 그런 다음, 𝒛와 𝒂˜를 다이나믹스 모델(dynamics model)에 전달하여 다음 프레임에 대한 예측을 반복적으로 생성합니다.

Genie 모델의 구조는 크게 잠재 액션 모델(LAM, Latent Action Model), 비디오 토크나이저(Video Tokenizer), 다이나믹스 모델(Dynamics Model)로 이뤄져있습니다. Genie 모델은 각 구성 요소들을 활용하여 영상 데이터로부터 학습하고, 사용자의 입력에 따라 동적인 비디오 시퀀스를 생성하는 데 필요한 기능을 제공합니다. 각 구성요소들을 조금 더 자세히 살펴보겠습니다:

0. ST-transformer (시공간 트랜스포머, Spatio-Temporal Transformer)

각 구성요소를 살펴보기 전, 먼저 ST-transformer를 간단히 살펴보겠습니다.

ST-transformer (Spatio-Temporal Transformer)는 이름 그대로 공간적(spatial)인 정보와 시간적(temporal)인 정보를 모두 처리할 수 있는 아키텍처입니다. ST-transformer는 주로 비디오나 시계열 데이터와 같이 시간에 따라 변화하는 공간적 패턴을 분석하는데 사용하며, 비디오 프레임 내의 공간적 관계와 프레임 간의 시간적 연속성을 모두 이해하고 모델링할 수 있도록 설계되었습니다.


ST-transformer는 공간 레이어와 시간 레이어, 피드-포워드 레이어를 포함하고 있는 𝐿 개의 시공간 블록(spatiotemporal block)들로 구성

ST-transformer는 다음과 같은 주요 구성 요소로 이루어져 있습니다:

  1. 공간 레이어(Spatial Layer): 각 비디오 프레임 내의 공간적 관계를 모델링합니다. 이 레이어는 단일 시간 단계 내의 픽셀 또는 특성 간의 상호 작용을 분석하여, 이미지 내의 객체나 패턴을 인식하는 데 도움을 줍니다.

  2. 시간 레이어(Temporal Layer): 연속적인 프레임 간의 시간적 관계를 모델링합니다. 이 레이어는 시간에 따른 객체의 움직임이나 변화를 추적하여, 비디오 내에서 발생하는 동적인 사건을 이해하는 데 중요합니다.

  3. 피드-포워드 레이어(Feed-Forward Layer): 각 시공간 블록의 마지막에 위치하며, 복잡한 비선형 변환을 통해 레이어의 출력을 처리합니다.

ST-transformer는 이러한 레이어들을 시공간 블록으로 조직화하며, 각 블록은 공간적 및 시간적 주의 메커니즘을 순차적으로 적용한 다음 피드-포워드 레이어를 통해 최종 출력을 생성합니다. 이 구조는 비디오 데이터의 공간적 및 시간적 차원을 효과적으로 통합하여 처리할 수 있게 합니다.

1. 잠재 액션 모델 (LAM, Latent Action Model)

Genie의 잠재 액션 모델(LAM)
잠재 액션 모델: 레이블이 지정되지 않은 영상 프레임들로부터 액션 \alpha_t 를 비지도 학습

잠재 액션 모델(LAM)은 각 프레임 쌍 사이의 잠재 액션(Latent Action)을 추론하는 역할을 합니다. 이 LAM은 제어 가능한 비디오 생성을 위해 각 미래 프레임 예측을 이전 프레임에서 취한 행동에 조건을 부여합니다. 인터넷 비디오에서는 행동 레이블이 사용할 수 없기 때문에, LAM은 완전히 비지도 방식으로 잠재 액션을 학습합니다. 인코더는 모든 이전 프레임과 다음 프레임을 입력으로 받아 연속 잠재 액션 세트를 출력하고, 디코더는 이전 프레임과 잠재 액션을 입력으로 받아 다음 프레임을 예측합니다. LAM은 VQ-VAE 모델을 활용하여 예측된 액션의 수를 작은 이산 코드 세트로 제한합니다.

2. 비디오 토크나이저 (Video Tokenizer)

Genie의 비디오 토크나이저(Video Tokenizer)
ST-transformer를 포함한 VQ-VAE

비디오 토크나이저는 입력 비디오 프레임을 이산 토큰(discrete token) z 로 변환하는 역할을 합니다. 이 과정은 비디오의 차원을 줄이고 더 높은 품질의 비디오 생성을 가능하게 합니다. VQ-VAE를 사용하여 T 프레임의 비디오를 입력으로 받아 각 프레임에 대한 이산 표현을 생성합니다.

비디오 토크나이저에서는 ST-transformer를 활용하여 입력 비디오 프레임을 이산 토큰으로 변환하는 과정에서 공간적 및 시간적 정보를 모두 포착하고 압축합니다. 이는 비디오의 복잡한 시공간적 패턴을 효율적으로 인코딩하여, 후속 모델이 비디오 데이터를 더 잘 이해하고 생성할 수 있게 합니다.

3. 다이나믹스 모델 (Dynamics Model)

Genie의 다이나믹스 모델(Dynamics Model)
다이나믹스 모델: 동영상 토큰과 액션 임베딩을 받아 향후 마스킹된 동영상 토큰을 예측

다이나믹스 모델은 디코더 전용 MaskGIT transformer로, 토큰화된 비디오와 액션 임베딩을 입력으로 받아 이후의 마스크된 비디오 토큰을 예측합니다. (시간적 관계를 갖는) 각각의 프레임들로부터 다이나믹스 모델은 토큰화된 비디오 z_{1:t-1} 와 stopgrad 잠재 액션(stopgrad latent action) 𝒂˜_{1:t-1} 을 입력으로 받아 다음 프레임의 비디오 토큰 \hat{z_t} 를 예측합니다.

다이나믹스 모델에서 ST-transformer는 토큰화된 비디오와 잠재 액션을 기반으로 미래 프레임의 토큰을 예측하는데 사용합니다. 이 과정에서 모델은 공간적 및 시간적 주의 메커니즘을 통해 이전 프레임의 정보와 사용자의 액션을 종합적으로 고려하여, 다음 프레임을 어떻게 생성할지 결정합니다.

다이나믹스 모델은 교차 엔트로피 손실을 사용하여 학습되며, 학습 시 입력 토큰을 무작위로 마스킹합니다.

Genie 모델의 추론 과정


토큰화된 프롬프트 프레임은 잠재 액션과 결합한 뒤 다이나믹스 모델에 전달하여 반복적으로 생성하고, 예측 결과로 출력된 프레임 토큰은 다시 토크나이저의 디코더를 거쳐 이미지 공간으로 디코딩됨

Genie 모델의 추론 과정은 사용자가 제공한 임의의 입력 비디오를 기반으로 사용자의 액션에 따라 동적인 비디오 시퀀스를 생성하는 과정입니다. 이 과정은 크게 비디오 토크나이징, 잠재 액션의 결정, 그리고 동적 모델을 통한 미래 프레임 예측의 세 단계로 나눌 수 있습니다:

1. 비디오 토크나이징

  • 입력 비디오 처리: 사용자로부터 제공된 입력 비디오는 먼저 비디오 토크나이저에 의해 처리됩니다. 이 단계에서 비디오는 프레임별로 분리되고, 각 프레임은 ST-transformer를 사용하여 이산 토큰으로 변환됩니다. 이 과정에서 비디오의 공간적 및 시간적 정보가 포착되어, 비디오의 복잡한 시공간적 패턴을 효율적으로 인코딩합니다.

2. 잠재 액션의 결정

  • 액션 선택: 사용자는 특정 액션을 선택하거나 지정할 수 있습니다. 이 액션은 잠재 액션 모델(LAM)에 의해 처리되어, 선택된 액션에 해당하는 잠재 액션 코드로 변환됩니다. 이 과정은 비디오에서의 특정 행동이나 이벤트를 모델링하기 위해 필요한 정보를 제공합니다.

3. 동적 모델을 통한 미래 프레임 예측

  • 이후 프레임 생성: 비디오 토크나이저에서 생성된 이산 토큰과 잠재 액션 모델에서 결정된 잠재 액션 코드는 동적 모델에 입력으로 제공됩니다. 동적 모델은 이 정보를 기반으로 다음 프레임의 토큰을 예측합니다. 이 과정은 ST-transformer의 인과 구조를 활용하여, 이전 프레임의 정보와 사용자의 액션을 종합적으로 고려합니다.

  • 비디오 시퀀스 생성: 동적 모델은 사용자의 계속되는 액션 입력에 따라 미래 프레임을 순차적으로 생성합니다. 이 과정은 자기회귀적으로 진행되며, 각 단계에서 생성된 프레임 토큰은 다시 비디오 프레임으로 디코딩됩니다. 결과적으로, 사용자의 액션에 따라 동적으로 변화하는 비디오 시퀀스가 생성됩니다.

Genie의 추론 과정은 사용자가 제어 가능한 가상 환경을 생성할 수 있게 합니다. 사용자는 임의의 입력 비디오를 기반으로 특정 액션을 선택하고, 모델은 이 액션에 따라 비디오 시퀀스를 동적으로 생성합니다. 이 과정은 비디오 데이터의 복잡한 시공간적 패턴을 효과적으로 모델링하고, 사용자의 상호작용에 따라 다양한 시나리오를 탐색할 수 있는 능력을 제공합니다.

모델의 성능 및 실험 결과

Genie 모델의 실험 결과는 다음과 같은 주요 부분으로 구성됩니다: 데이터셋, 평가 지표, 성능 세부 사항, 스케일링 결과, 질적 결과, 그리고 에이전트 훈련입니다. 자세한 내용은 논문의 3. Experimental Results(5p~) 및 Additional Example Trajectories(20p~)를 참고해주세요. :smiley:

데이터셋

Genie는 2D 플랫포머 게임의 공개적으로 이용 가능한 인터넷 비디오에서 수집된 대규모 데이터셋에서 훈련되었습니다. 이 데이터셋은 플랫포머와 관련된 키워드로 공개 비디오를 필터링하여 구축되었으며, 최종적으로 6.8M개의 16초 비디오 클립(총 30,000시간)을 포함합니다. 또한, 로보틱스 데이터셋에서도 일반성을 검증하기 위해 약 130k개의 로봇 데모와 별도의 시뮬레이션 데이터, 이전 작업에서의 209k 에피소드의 실제 로봇 데이터를 결합하여 사용했습니다.

평가 지표

비디오 생성 성능은 비디오 충실도(비디오 생성의 품질)와 제어 가능성(잠재 액션의 비디오 생성에 대한 영향) 두 가지 요소를 통해 평가됩니다. 비디오 충실도는 Frechet Video Distance (FVD)를 사용하여 평가되며, 제어 가능성은 ΔtPSNR 메트릭을 통해 측정됩니다. ΔtPSNR은 잠재 액션에 기반한 비디오 생성이 얼마나 다른지를 측정하여, 잠재 액션의 제어 수준을 나타냅니다.

학습 세부 사항

비디오 토크나이저는 200M 파라미터를 사용하며, 잠재 액션 모델은 300M 파라미터를 가집니다. 모든 모델링 구성 요소는 16 프레임의 시퀀스 길이와 10FPS를 사용합니다. 동적 모델 훈련에는 bfloat16과 QK norm이 사용되어 대규모에서의 훈련 안정성을 높였습니다.

스케일링 결과

모델 크기와 배치 크기의 영향을 탐구한 스케일링 연구를 통해, 모델 크기가 증가함에 따라 최종 훈련 손실이 일관되게 감소하는 것을 확인했습니다. 이는 Genie 접근 방식이 스케일링에서 이점을 얻을 수 있음을 나타냅니다.

질적 결과

Genie 모델은 플랫포머 데이터셋과 로보틱스 데이터셋에서 훈련된 11B 파라미터 모델을 사용하여 고품질의 제어 가능한 비디오를 다양한 도메인에서 생성할 수 있음을 보여줍니다. 특히, 플랫포머 훈련 모델은 텍스트-이미지 모델, 수작업 스케치, 실제 사진에서 생성된 이미지 프롬프트를 사용하여 평가되었으며, 이는 모델이 대규모 데이터에서 훈련될 때의 강력함과 일반화 능력을 강조합니다.

에이전트 훈련

Genie는 일반적인 에이전트를 훈련시키기 위한 기초 세계 모델로 사용될 수 있는 잠재력을 가지고 있습니다. 인터넷 비디오에서 학습한 잠재 액션을 사용하여 보이지 않는 비디오에서 행동을 모방하는 데 성공했습니다. 또한, CoinRun과 같은 절차적으로 생성된 2D 플랫포머 환경에서 다양한 경로를 생성할 수 있음을 보여줍니다.

이 실험 결과들은 Genie가 비디오 데이터의 복잡한 시공간적 패턴을 효과적으로 학습하고, 사용자의 상호작용에 따라 동적인 비디오 시퀀스를 생성할 수 있는 강력한 능력을 가지고 있음을 보여줍니다.

Controllable, consistent latent actions in Platformers

더 읽어보기

Genie 프로젝트 홈페이지

더 다양한 예시 영상들을 확인할 수 있습니다

Genie 논문




이 글은 GPT 모델로 정리한 것으로, 잘못된 부분이 있을 수 있으니 글 아래쪽의 원문도 함께 참고해주세요! 읽으시면서 어색하거나 잘못된 내용을 발견하시면 덧글로 알려주시기를 부탁드립니다. :hugs:

:fire:파이토치 한국 사용자 모임:kr:이 정리한 이 글이 유용하셨나요? 회원으로 가입하시면 주요 글들을 이메일:love_letter:로 보내드립니다! (기본은 Weekly지만 Daily로 변경도 가능합니다.)

:gift: 아래:arrow_lower_right:쪽에 좋아요:heart:를 눌러주시면 뉴스 발행에 힘이 됩니다~ :star_struck:

3개의 좋아요

논문의 2번째 페이지부터 오른쪽 아래 귀퉁이에 낙서(?)가 있는데요,
인쇄해서 보시는 분들께서는 한 번 넘기시며 보셔도 소소하게 재밌을 것 같습니다 ㅎㅎ

누가 논문 귀퉁이에 장난을 쳐놨나 했더니 DeepMind 형님들이셨군요 :pray:

2페이지
3페이지
4페이지
5페이지
6페이지
7페이지

와 ㅋㅋㅋㅋㅋ 안그래도 게임이라서 대단하다 싶었는데 페이퍼에도 이렇게 센스있는 요소를 넣어놨군요! ㅋㅋㅋㅋㅋ