[paper-review] Open-Vocabulary Queryable Scene Representations for Real World Planning

miws·2024년 7월 22일

LLM

목록 보기
6/11

주변 장면에 대한 인지 부족을 다룬 논문


1. 개요

  • 주변 장면에 대한 인지 부족으로 인해 제대로 된 추론을 못하는 단점
    -> 해당 논문에서는 NLMap을 활용하여 이를 해결

  • NLMap

    • 먼저 VLM으로 장면 표현을 한다
    • LLM 모듈에서는 지시문 분석을 하는 과정을 거친다

    ※ 이때 의미론적 이해가 중요 => CLIP 모델이 이미지 이해와 객체 검출이 가능 (제로샷 성능 좋음)

    LLM이 언어 이해, 의미론적 이해, 추론, 지시 수행에 좋은 성능을 보이지만 현실에서 잘 안되는 경우가 있다.
    하지만 SayCan은 value function으로 잘 해내지만 , 이것도 제공되는 옵션, 객체 위치에 대한 지식에 의존한다.

    NLMap + SayCan

    1. ViLD, CLIP으로 의미론적 표현 제공

    2. 언어 기반 planner에 통합해서 Context에 기반 둔다

    3. 55개의 task에서 61.8% 성공률. (35개는 기존에 못하던 task)


2. 관련 개념

  • Semantic Scene Representation

    • SLAM으로부터 geometric 특징 받는다
    • 하지만 특징들이 자연어와 연결되기 힘들다
    • geometric 특징이랑 VLM 특징을 융합하려고 한다

  • Object Goal Navigation

    • 단순히 객체 찾기가 아닌 객체 존재 및 위치 정보를 사용하여 계획을 세우는 것

  • Planning with Scene Representation

    • 구조화되지 않는 자연어 명령을 연결하는 것은 어려운 작업


3. 문제 상황

  • High-level task를 하기 위해선 자연어 이해, 장면 이해, Task planning, 네비게이션, Manipulation 등이 필요
  • SayCan에서 LLM으로 가능성을 보였다.
    → 하지만 Scene affordance가 없어서 현재 Scene에서 어떤 동작을 할 수 있는지를 모른다

    해결
    1. 임의의 객체를 찾을 수 있는 Open-Vocabulary 장면 표현을 유지하는 방법
    2. 장면 이해를 LLM planner에 어떻게 결합할지 생각


4. 방법

NLMap + SayCan

1. 장면 표현

  • ROI + VLM 이미지 인코더 앙상블 → 이미지 임베딩 벡터 추출
  • 이미지 중심의 깊이 IiI_i, 사이즈 rir_ipip_i(xix_i, yiy_i, ziz_i)
  • 튜플 cic_i = (ϕi\phi_i, pip_i, rir_i)를 Context 요소 정의
    CC = {cic_i} (i=1...Ni = 1...N) 이 장면 표현을 생성

2. 표현 Query

  • Object proposal (객체 탐지) 핵심은 구조적 표현과 비구조적인 자연어 입력을 연결하는 것
  • Few-shot 프롬프팅 이용
  • Object Query 에서는 CLIP, ViLD 둘 다 사용해서 최대값을 구하는 알고리즘 통해
    Metric D로 K nearest 후 개체 필터링

3. NLMap + SayCan

  • SayCan 에서는 개체 이름, 위치, 실행 가능한지에 관한 옵션을 사용하므로 상황에 맞는 수행 능력 부족
  • 실행 가능한 옵션을 생성 : CLIP 으로 nearest neighbor
  • Context 포함 LLM Planner : 장면에 없는 객체, 실행 불가능한 명령 처리

4. 실험

1. Benchmark

  • SayCan Task, Novel Object, Missing Object
    실제 인식 결과를 사용하는 SayCan이랑 비교 → 새로운 물건, 보이지 않는 물건에 대한 결과가 눈에 띈다

2. Object Proposal Benchmark

  • 네가지 관점
    1. 명령어 의미로부터 객체 추론
      ex. "Heat up the taco" → (taco, microwave)
    2. 구조화되지 않는 명령어들
      ex. "Redbull is my favorite drink, can I have a one please?" → (redbull, human)
    3. 세밀한 설명이 있는 객체
      ex. "Turn off the macbook with yellow stickers" → (macbook with yellow stickers)
    4. 적절한 세분화
      ex. "Check out what types of ingredients are available to cook a luxurious breakfast"
      → (milk, eggs, bacon, bread, butter,...)

3. NLMap에 대한 Object Queries 벤치마크

  • 처음 보는 물체에 대해 CLIP 이 ViLD 보다 결과가 좋다 (그러나, 기본 물체에 대해서는 ViLD가 좋다)
  • Multi-view fusion이 이상치 및 노이즈에도 강건하다
  • 카메라 해상도나 노출에 따라 성능 차이는 날 수 있지만 신뢰할 만하다

4. Context Grounded Planning Benchmark

  • 2개의 데이터 세트 제작
    positive → 성공률 85%
    negative(필수 요소 몇 개를 뺀) → 성공률 60%

5. 결론

  • 현재는 멈춰있는 장면에 대한 처리만 한다
  • ZS이 좋지만 더 나은 성능을 위해서는 FT을 희망
  • 장면 표현 생성 속도를 위한 알고리즘을 탐색해볼 필요성이 있다

0개의 댓글