BRICKSTUDY

Embodied AI : Vision-Language Navigation Challenges 본문

AI

Embodied AI : Vision-Language Navigation Challenges

c-park-2 2024. 9. 28. 21:19

2024.09.01 - [AI] - Embodied AI : Survey(2)

 

1. 개요

안녕하십니까, 브릭스터디 박찬영입니다. 지난 포스팅에서 다룬 Embodied AI 서베이 논문 내용에서는 Embodied Ai의 task들, 고려사항들에 대해서 다루었습니다. 그중 task에서 가장 주목을 받고 있는 분야가 바로 Vision-Language Navigation(VLN)인데요. 오늘은 VLN관련해서 알아보려고 합니다. 

 

참고한 논문은 다음과 같습니다. 

Zhang, Yue, et al. "Vision-and-Language Navigation Today and Tomorrow: A Survey in the Era of Foundation Models." arXiv preprint arXiv:2407.07035 (2024).

 

2. Introduction

지난 포스팅까지 우리는 embodied ai 분야의 전체적인 개요를 살펴봤는데, 이번에는 embodied ai 분야의 주류 task인 Vision-Language Navigation(VLN)에 대해서 살펴보려고 합니다. 

 

VLN은 최근 embodied ai 연구의 있어서 가장 formal한 problem setting이기도 합니다. embodied agent가 human, environment와 interacting 하기 위한 단계에 있다고 볼 수 있습니다.

 

이러한 AI 시스템은 실제 세계의 어플리케이션 측면에서 큰 잠재력을 가지고 있습니다. 

 

 

VLN은 agent가 다음의 것들을 할 수 있어야 하는데, 먼저 human instruction을 follow할 수 있어야 합니다. 그리고, 스스로 3D environment를 explore 할 줄 알아야 하고, 다양한 형태의 모호함에서 주어진 커뮤니케이션에 직접 engage 해야 하는 것입니다. 

 

복잡해 보이는 이러한 VLN을 3가지 측면으로 살펴보도록 하겠습니다. 

- World model

- Human model
- Agent model

 

3. World Model : Learning and Representing the Visual Environments

What is World Model?

World Model은 하나의 실제 model을 뜻하는 게 아니라, 특정 역할을 수행하는 여러 model의 집합인 일종의 개념적 프레임워크라고 볼 수 있다. World Model은 Agent가 주변 환경을 이해하고, Agent의 Action이 환경에 어떤 영향을 주는지를 예측하고, language instructions과 peception, action을 이어주는 역할을 수행한다. 

World Model
- Understand their surrounding environments
- Predict how their actions would change the world state
- Align their perception and actions with language instructions

World Model은 Environment 측면에서 도움을 주는 모델이다.라고 생각하면 쉽겠습니다. 

 

World Model 측면에서의 메인 챌린지들은 보통 2가지로 이야기할 수 있다. 

World Model : Two main Challenges
1. Encoding the visual observation history in the current episode in the memory
2. Generalization to unseen environments in new tasks

 

3.1 History and Memory

 

Single step에서 단독으로 image나 text를 고려하는 다른 일반적인 vision task와는 다르게 VLN Agent는 Action을 결정하기 위해서 past action에 대한 history information과 observation을 현재 단계의 input에 통합을 해야 합니다. 

 

VLN에서 Foundation model을 사용하기 전에는 주로 RNN, LSTM hidden state암묵적인 메모리 역할을 수행했습니다. 아니면 attention mechanisms을 디자인하거나, auxiliary task를 추가해서 encoded history와 instruction간 연결을 강화했습니다. 

이전에는 LSTM hidden state로 encoding 방법은 됐다"라고 하면서, encoding 된 것을 어떻게 잘 instruction하고 연결을 시켜볼까"를 고민했다면, foundation model이 발전하면서, 많은 연구들이 VLN agent를 Transformer architecture로 빌드해 놓고, 더 명확하게 history를 encoding하는 방법을 제안하기 시작합니다. 

3.1.1 History Encoding

 

A Recurrent Vision-and-Language BERT for Navigation, fig1

Hong et al. (2021) A recurrent vision- and-language BERT for navigation에서 제안한 방법은 Transformer(특히 BERT)에서의 CLS 토큰을 반복적으로 이용해서 history information을 encoding 하는 것을 처음으로 제안했습니다. CLS 토큰이 이전 시점의 정보를 요약해서 기록하고, 이를 기반으로 다음 단계에서의 의사 결정을 내리는 데 사용된다는 의미를 가집니다. 

 

Episodic Transformer for Vision-and-Language Navigation

Pashevich et al. (2021) Episodic Transformer for Vision-and-Language Navigation에서 제안한 방법은 multi-modal transformer로 history observation을 명시적으로 encoding하는 방법입니다. 과거의 visual observation과 instruction을 multi-modal transformer로 동시에 encoding 하고 attention 메커니즘을 통해서 중요한 정보를 바탕으로 current stage에서의 action을 계획하는 방식입니다. 

 

Chen et al. (2021b) History aware multimodal transformer for vision-and-language navigation에서는 history encoding을 더 improve하기 위해서 panorama encoder를 통해 visual observation을 encoding 하고, history encoder를 통해서 모든 과거의 observation을 encoding 하는 방식을 제안했습니다. 

 

panorama encoder는 현재 시점의 시각 정보를 encoding하고, history encoder는 모든 time step의 encoding 값을 기억하는 형태로 이해할 수 있겠습니다. 

3.1.2 Graph-based History

GridMM: Grid Memory Map for Vision-and-Language Navigation

다른 연구 흐름으로 Graph information을 가지고 navigation history를 modeling하는 흐름이 있습니다. 예를 들어서 몇 작업들은 구조화된 transformer encoder를 활용해서 geometric cues를 캡처하는 것이 있고, 추가적으로 많은 작업들이 topological graph에 더하여, grid map, semantic map, local metrics map, local neighborhood map과 같은 top-down view information을 이용하는 것을 제안하기도 했습니다.  (Grid Map을 예로 들면 에이전트가 수집한 history information을 해당 gird cell에 encoding 하는 방식)

 

> Topological Map은 추상적인 개념으로 위치적인 정확도(물리적인 거리)보다는 노드와 노드 사이의 연결인 엣지와 경로를 중요시하는 개념이다. 
> Grid Map은 환경을 격자 형태로 나누어, 각 셀이 환경의 특정 위치를 나타내는 2D 맵이 된다.
> Semantic Map은 단순한 위치 정보뿐만 아니라, 각 위치에 있는 객체의 의미적 정보(예 : 의자, 책상, 문)를 포함한 맵이다. 
> Local Metrics Map은 에이전트 주변의 세부적인 거리 정보와 지형 특징을 포함한 맵이다. 

 

3.2 Generalization across Environments

VLN에서의 다른 메인 챌린지는 제한된 환경에서의 학습과 unseen environment로의 generalizing입니다. 이전의 많은 연구들이 semantic segmentation features로부터 학습하거나, dropout information을 이용, semantically-aligned image pair의 유사도를 maximizing 하는 것이 generalization performance를 향상시킨다는 것을 입증했었습니다. 

보통의 Generalization performance를 향상 시키는 방법들
- Training with semantic segmentation features
- Dropout information
- Maximizing the similarity between semantically aligned image pairs from different environments

 

3.2.1 Pre-trained Visual Representations

초기에는 대부분의 연구들이 vision representation을 pre-trained ResNet에서 얻었습니다. CLIP visual encoder가 등장하고나서는 ResNet 대신에 CLIP을 주로 사용합니다. 

https://openai.com/index/clip/

CLIP
image-text pair에서의 contrastive loss로 pre-trained 된 visual encoder
자연스럽게 더 나은 instruction과의 연결을 보여주어, 더 나은 VLN 성능을 보임. 

 

더 나아가서 video data로부터 학습된 vision representation을 transferring해서 사용하는 연구도 존재합니다. 

 

Generalization performance를 위해서 visual representation을 pre-train해서 사용을 하자는 연구 흐름이었고, CLIP과 같은 풍부한 visual representation을 가진 pre-trained 모델들(foundation model)이 나오면서 pre-train 흐름으로는 특별한 게 없어진 느낌입니다. 

그래서 일종의 엔지니어링 적으로(모델의 구조, 학습) generalization performance 문제를 해결하기보다는 더 많은 environment data를 collect해서 overfitting을 막아서 generalize across environment를 이루자!라는 추세로 흘러갔던 모양입니다. 

 

다음으로, 어떻게 현재 연구들이 new environment data를 collect하는지, 그것을 어떻게 학습 과정에서 사용하는지에 대해서 알아보도록 하겠습니다. 

 

3.2.2 Environment Augmentation

Generalize performance를 위해서 data augmentation을 진행하는데, VLN에서도 비슷한 맥락으로 이해하시면 될 것 같습니다. 

많은 연구에서는 주로 기존의 environment를 변경하는 것으로 증강을 진행합니다. 

 

보통은 mix up room from different environment, change appearance and style of the environment, interpolate high-frequency features with the environments 방법들을 주로 사용합니다. 

위에 방법들은 정리하면, 이미 존재하는 environment에 조건을 걸어서 새로운 environment를 만들어내는 방법이라고 볼 수 있는데, 이와 다른 방법은 다른 domain에서 새로운 environment를 증강하는 방식이 있습니다. 

 

AirBert(2021) 연구에서 제시한 방법은 Airbnb의 single image를 가지고 navigation 경로의 panorama observation으로 변경하는 pipeline을 소개했습니다. 비슷한 방법으로 video와 sample navigation 경로를 가지고 증강하는 방법들이 있습니다. 

4. Human Model : Interpreting and Communicating with Humans

지금까지 agent와 environment 사이에서 역할을 수행하는데 초점이 맞춰진 World model에 대한 연구 방향들을 살펴봤습니다. 이제는 human instruction에 초점이 맞춰진 Human model에 대해서 살펴보겠습니다. Human model도 World model과 마찬가지로 VLN에서의 추상적인 개념입니다. 

 

VLN에서 agent는 World model에서 살펴봤던 내용처럼 실제 물리 세계를 학습하고 모델링하는 것도 중요하지만, 각각의 상황마다 navigation task를 완수하기 위해서 주어지는 instruction을 이해하는 것 역시 매우 중요한 부분입니다. 

 

그런 instruction을 이해하는 역할을 수행하는 것이 바로 Human model입니다. 

Human model과 관련해서는 주로 2가지 메인 챌린지들이 있습니다. 

- Resolving ambiguity

- Generalization of grounded instructions in different visual environments

Human model : Two main challenges
- Resolving ambiguity
- Generalization of grounded instructions in different visual environments

4.1. Ambiguous Instructions

모호한 instruction 문제는 주로 single-turn navigation에서 나타나는 문제인데,  예를 들어서 instructions이 주어졌는데, agent의 첫 번째 view에서 보이지 않는 landmark가 있거나, 구분할 수 없는 여러 개의 landmark가 동시에 보이는 경우, agent는 single-turn 동안 주어진 instruction에 따라서 navigation을 수행하기가 애매합니다. 

 

이 문제는 foundation model이 적용되기 전에는 주로 다루어지지는 않았습니다. 하지만, foundation model이 발전하면서 foundation model의 포괄적인 지적 맥락과 상식은 agent가 모호한 instruction을 이해할 수 있도록 만들었습니다. 

 

4.1.1. Perceptual Context and Commonsense Knowledge

CLIP과 같은 large-scale cross-modal pre-trained model은 visual semantic information과 text를 매칭하는 데 뛰어난 능력을 가지고 있습니다. 그래서 주로 많은 연구에서 CLIP을 이용해서 문제를 해결하려고 했습니다. 

 

VLN-Trans(2023)연구에서는 CLIP으로부터 얻어진 구분 가능한 object들을 가지고 easy-to-follow sub-instruction을 만들어서 Translator를 pre-train 시키고, Translator는 원래의 모호한 instruction을 가지고 쉽게 이해 가능한 sub-instruction으로 변환하는 역할을 수행합니다. 

 

LANA+(2023) 연구에서는 CLIP을 활용해서 landmark semantic tag들의 text 리스트를 visual observation과 함께 요청하고, 탑 랭크로 검색된 landmark의 텍스트적인 표현을 선택하는 방식으로 모호한 instruction 문제를 해결하려고 했습니다. 

 

NavHint(2024) 연구에서는 더 디테일한 visual description이 제공되는 hint dataset을 만들어서 VLN agent가 포괄적인 환경에 대한 이해를 만들 수 있도록 했고, 이를 통해 instruction에 나오는 object에만 집중하기보다 환경에 대한 포괄적인 이해를 바탕으로 instruction을 더 잘 이해할 수 있도록 하는 방향으로 진행을 했습니다. 

 

추가적으로 LLM의 상식적인 추론 능력은 instruction의 모호한 랜드마크를 명확하게 하고, 수정하는데 사용할 수가 있었습니다. 

 

예를 들어서, LLM을 사용해서 Open-world landmark의 동시 출현에 대한 상식을 제공받고, CLIP 기반의 landmark 발견 작업을 수행하도록 설계한 연구가 있었습니다. 

 

4.1.2. Information Seeking

위에서 설명한 방식들은 모두 애매한 지시문에 대해서 visual perception과 situational context를 활용해서 해석하려고 한다면, 사실 애매한 지시문을 해결하기 위한 매우 직관적인 방법이 있습니다. 

 

바로 직접 질문을 하는 것입니다. 

 

하지만, 이 질문을 하는 방식도 여러 챌린지함이 있습니다. 

1. 언제 도움을 청할 것인가

2. 정보를 찾는 질문을 생성하는 작업을 어떻게 수행할 것인가 

3. 요청한 정보를 제공하는 oracle을 개발하는 작업

 

이런면에 있어서, LLM과 VLM은 information seeking model, information-providing model 측면에서 잘 맞는 솔루션이 될 수 있습니다. 

Vision-and-Language Navigation Today and Tomorrow: A Survey in the Era of Foundation Models

실제로 2023년 연구에서 GPT-3 를 사용해서 step-by-step 방식으로 training data의 Ground-Truth 값을 전처리하고 VLM을 이용해서 oracle을 학습하는 방식을 제안했습니다. 

4.2. Generalization of Grounded Instructions 

human model 역시 generalization 챌린지가 있습니다. navigation data의 제한된 스케일가 다양성은 VLN agent의 다양한 언어적 표현에 대한 이해와 instruction을 효율적으로 따르는 능력에 있어서 중요한 문제입니다. 

 

결국은 training instruction의 제한된 스케일에서 unseen-environment에 적응하는 것은 어려운 작업인데, 이를 foundation model의 2가지를 통해 해결하려고 하는 추세입니다. 

 

1. pre-trained representation

2. instruction generation for data augmentation 

 

PRESS(2019) 연구에 따르면 BERT를 fine-tuning 해서 더 나은 generalize performance를 보이는 text representation을 얻을 수 있음을 보였습니다. 

 

다른 방법으로 cross-modal Transformer를 사용해서 자동으로 instruction을 생성하는 방법을 연구했고, agent의 경로를 샘플링해서 자동으로 연관된 instruction을 templates에 채우는 것을 제안하기도 했습니다. 

 

5. VLN Agent : Learning an Embodied Agent for Reasoning and Planning

지금까지 visual 능력과 language understanding 능력 강화를 위한 world modelhuman model에 대해서 어떤 챌린지들이 있는지 살펴봤습니다. 마지막으로 VLN에서 필요한 부분은 바로 Agent 그 자체입니다. 

 

VLN agent는 그들의 decision making을 위해서 reasoning과 planning 능력을 개발할 필요가 있습니다. 이런 측면에서 embodied reasoning, planning과 관련된 챌린지에 대해서 이야기를 해보도록 하겠습니다. 

관련 챌린지는 2가지 정도로 정리할 수 있는데요

1. grounding and reasoning 

2. planning

 

5.1. Grounding and Reasoning

agent는 이전의 액션을 고려하고 텍스트와 시각적인 환경을 연결하고 그에 맞는 액션을 실행해야합니다. 이전의 작업들은 명확한 semantic modeling이나 하위 task를 디자인하는 것으로 해결하려고 했습니다. 그러나 pre-training 방법이 foundation model이 발전함에 따라 주류 방법으로 부상했습니다. 

5.2. Planning

Planning 파트에서는 보통 Graph-based planners와 LLM-based planners 방법들이 있습니다. 

 

 

마치며... 

지금까지 embodied ai 분야의 Vision-Language Navigation에 대해서 World Model, Human Model, Agent Model 측면에서 어떤 챌린지들이 있는지에 대해서 가볍게 살펴봤습니다. 저도 공부를 하면서 해당 분야가 지금까지의 다양한 AI 연구 분야들이 합쳐진 것이라 생각하고, 따라가야 할 부분들이 많이 남아 있음을 느꼈습니다. 앞으로의 포스팅들에서 완벽한 흐름을 제공할 수 있을지는 모르겠지만, 천천히 따라가 보도록 하겠습니다. 

'AI' 카테고리의 다른 글

RNN, Sequence-to-Sequence model  (0) 2024.11.04
인공지능 기초 Optimization  (0) 2024.10.26
Supervised Learning 기초  (6) 2024.10.11
Embodied AI : Survey(2)  (3) 2024.09.01
Embodied AI : Next-Gen AI System(1)  (0) 2024.08.10