[논문 리뷰] GenerateU: Generative Region-Language Pretraining for Open-Ended Object Detection

이정민·2026년 7월 6일

[논문 리뷰]

목록 보기
16/19

source: Generative Region-Language Pretraining for Open-Ended Object Detection

이 논문은 기존 객체 탐지 패러다임을 '미리 정의된 클래스 목록에서 분류하는 것'에서 '이미지 영역에 해당하는 객체 이름을 자유롭게 생성하는 것'으로 재정의합니다.

이것은 open-ended를 처음 제시한 논문으로, 거대 언어 모델을 비전 탐지 테스크에 통합하는 효과적인 end-to-end 학습 프레임워크를 제안합니다.


Abstract

최근 컴퓨터 비전 분야에서는 학습할 때 보지 못했던 새로운 클래스도 임의의 카테고리 이름만 주어지면 Inference시에 검출할 수 있도록 일반화하는 Open-Vocabulary Object Detection (OVOD) 가 큰 주목을 받고 있습니다.

그러나 OVOD는 사전 학습된 VLM을 사용하여 이미지와 임의 카테고리 셋 간의 유사도를 계산하는 방식에 의존하는데, 이는 Inference시에 여전히 사람이 정의한 클래스 셋을 미리 제공하는 것과 마찬가지이죠.

이 때 저자들이 던지는 의문은 다음과 같습니다.

"What if we do not have exact knowledge of object categories during in inference?"

사실 이게 현실과 가장 가까운 문제인 것입니다.
이에 저자들은 위 한계 극복을 위해서 기존 OVOD보다 더 일반적이고 실용적인 "Generative Open-Ended Object Detection" 이라는 새로운 개념을 세계 최초로 제안합니다.

GenerateU

직관적으로 보자면, 객체 검출을 사전에 정의된 카테고리 매칭이 아닌 텍스트 생성 문제(Generative Problem)으로 재정의합니다.

저자들은 GenerateU를 위해 Region Proposal Generator로 Deformable DETR를 사용합니다.

규격화되지 않은 자유 형식의 생성 결과물을 정량적으로 측정하기 위해 새로운 평가법 또한 새롭게 도입합니다.

LVIS 데이터셋에서 GenerateU는 추론 할 때 카테고리 이름을 아예 보지 않았음에도 카테고리를 미리 정의하고 사용하는 대표적 OVOD모델인 GLIP과 대등한 수준의 Zero-shot 검출 성능 또한 보입니다.


Introduction

전통적인 Object Detection은 단순 Localization+Classification 입니다.
저자들은 이 과정에서 predetermined라는 단어에 집중하는데, Closed-set에서만 완벽할 뿐, 데이터셋 구축 과정에서 배제된 수많은 객체 앞에서는 무력하다는 것입니다.

이를 위해 대규모로 사전 학습된 VLM, 즉 CLIP 같은 텍스트 인코더의 풍부한 임베딩 공간을 탐지기에 이식하는 시도들이 이어졌습니다.

Image-text pairs를 활용하여 텍스트 레이블과 이미지 영역을 Alignment하는 방식인데, 이러한 기존 OVOD를 저자들은 반쪽짜리 Open이라고 비판합니다.

  1. 사전 지식의 부재

    • 임베딩을 계산하려면 Inference시에 검출하고 싶은 카테고리 후보군 리스트를 텍스트로 넣어줘야 합니다. 그런데 실 상황에서는 텍스트 안에 어떠한 객체가 등장할지 알 수는 없지요.
  2. 언어적 모호성

    • 만약 후보군을 대충 정해줘도 언어 자체의 모호성은 발생합니다.
    • Figure 1을 보면 모델이 하나의 객체를 보고 person, a man, young boy 중 무엇으로 예측할지 사람이 정의한 레이블 셋 안에서 혼선이 생기거나 유연성이 떨어지는 것입니다.
  3. 비효율적인 확장 비용

    • 현실 세계의 모든 객체를 커버하기 위해 수만, 수십만 개의 거대한 라벨 세트를 사람이 직접 만지는 것은 말이 안됩니다.

GenerateU의 등장

Inference 시 미리 정의된 객체 범주를 필요로 하지 않는 open-world dense object detection,

저자들은 Inference 시에 아예 '카테고리 목록' 자체를 지워버리는 Open-ended 검출을 하고자 합니다.

이 문제를 '시각 영역을 언어로 번역하는 생성 문제(Generative Problem)'로 포맷을 바꿉니다.
시스템은 크게 두 가지 핵심 컴포넌트로 결합되어 end-to-end로 동시에 최적화됩니다.

  • Visual Object Detector: 객체의 Region을 클래스에 구애받지 않고 조밀하게 찾아냅니다.
  • Language Model: 추출된 시각적 영역의 특징을 입력받아 인간이 읽을 수 있는 단어로 변환합니다.

GenerateU의 지식 확장을 위해서 Human-annotated paired data도 사용하지만, 양이 적기 때문에 대규모 이미지-텍스트 쌍을 가져와 어휘 집합을 크게 늘립니다.

하지만 이미지 캡션은 이미지 내의 모든 객체들을 다 적어주지 않는다는 근본적인 한계가 있겠지요?
이미지 안의 모든 객체를 다 언어로 형용할 수는 없으니까요.

이를 위해 저자들은 pseudo-labeling method를 도입합니다.

Pseudo-labeling Method는 무엇일까?

모델을 학습시킬 때 Unlabeled data를 활용하기 위해, 사전학습 된 모델이 예측한 결과임시 정답(Pseudo label) 으로 간주하여 학습에 다시 사용하는 Semi-supervised learning 기법입니다.

저자들은 논문에서 두 가지 단계의 Pseudo-labeling 과정을 거쳤습니다.
1. 기존 모델(KOSMOS-2) 기반의 1차 라벨링
2. GenerateU 기반의 2차 보완

먼저 대규모 이미지-텍스트 쌍 데이터셋을 가져와서 텍스트에 포함된 명사 구절과 이미지 영역을 매칭해주는 기존의 그라운딩 모델을 통과시킵니다. 이를 통해 캡션에 언급된 단어들에 해당하는 bbox(fake label)을 1차로 확보합니다.

이후 1단계만으로 누락된 수많은 객체를 잡기 위해서, 데이터셋(VIsual Genome)으로 학습된 GenerateU를 이 이미지들에 다시 Inference 시킵니다. 모델이 캡션에 없더라도 이미지에서 찾아, 촘촘한 객체 영역과 이름을 추출하고, Confidence score에 따라서 필터링 후 누락된 객체 정답으로 보완하는 것입니다.

이를 통해 데이터셋의 다양성과 포괄성을 높여, 추가 레이블이 모델 성능 향상에 효과적이었음을 Table 6를 통해서도 알 수 있습니다.
src: Why the pseudo label based semi-supervised learning algorithm is effective?

저는 명확하게 와닿지 않아서 다시 한번 쉽게 정리해보려고 합니다..

GenerateU는 학습을 시작하기 전, 아무런 위치 정답이 없는 일반 이미지-텍스트 데이터셋을 가져와서 다음과 같은 과정을 통해 스스로 학습용 정답지(의사 레이블)를 구축합니다.

1단계: 명사구 추출

먼저, 이미지에 딸린 캡션 문장에서 사물이 될 만한 단어들을 NLP로 뽑아냅니다.
(이 NLP는 GenerateU의 일부가 아니라, 전처리 도구임: NLTK나 형태소 분석기를 사용한다고 함.)

  • 예시 캡션: "한 남자가 공원에서 연을 날리며 솜사탕을 먹고 있다."
  • 추출된 단어: [남자. 공원, 연, 솜사탕]

2단계: 이미지 속에서 Grounding

기존에 이미 잘 학습되어 있는 사전학습 그라운딩 모델(Pre-trained Grounding Model)을 데려옵니다. 이 모델에게 이미지와 방금 뽑은 단어들을 던져서, 이미지 안에서 해당 사물들이 있을 법한 바운딩 박스 좌표를 대략적으로 따내게 합니다.

  • 결과: 이미지 내에서 솜사탕이 있는 위치 [X, Y, W, H] 좌표를 찾아냅니다.

3단계: GenerateU를 위한 '역방향 정답지' 완성

이제 이 두 정보를 합쳐서 의사 레이블(Pseudo-label)을 만듭니다.
여기서 GenerateU만의 독특한 점은, 이 데이터를 [이미지 영역(Region) ➔ 텍스트 단어(Word)]의 형태로 정렬한다는 것입니다.

  • 최종 완성된 의사 레이블 정답지:

"이 이미지의 [X, Y, W, H] 영역을 크롭해서 모델(언어 디코더)에게 주면, 모델은 반드시 '솜사탕'이라는 글자를 타이핑(Generation)해야 한다."

기존 연구들의 한계를 어떻게 풀어냈는지, 논문에서 말하는 주요 기여들은 다음과 같습니다.

  • Open-ended object detection 이라는 실용적 문제를 정의하고 이를 생성형 모델로 재구성해서 사전 정의 작업에 들어가는 Human-based resources를 제거하였다.
  • 시각 탐지기와 언어 모델을 결합하여 Free-form으로 객체명을 직접 뱉어내는 최초의 End-to-End 프레임워크인 GenerateU 를 개발
  • 사전에 카테고리 입력을 받지 않는 극도의 제약조건 속에서도 zero-shot LVIS 벤치마크에서 기존 최고 수준의 OVOD 모델 GLIP과 비등한 성능을 보인다.

서론을 정리하기 위해 Figure 1을 다시 한번 살펴봅시다.

  • (a)는 DETR이 영역을 뽑으면 뒤에 Classifier Head가 붙어서 상단의 Text Encoder가 만든 텍스트 임베딩들과 일일이 내적하여 유사도가 가장 높은 클래스를 고르는 구조입니다.
  • 반면 (c)는 Classifier Head를 없애고 DETR의 출력 레이어가 그대로 언어 모델의 Encoder-Decoder로 흘러가 문장을 생성하듯 단어를 한 글자씩 생성하는 구조입니다. 때문에 레이블에 없는 묘사가 가능한 것이죠.

Related Work

저자들이 제안하는 'GenerateU'가 다른 모델들과 비교했을 때 어떤 차별점이 있는지 알아봅시다.

2.1. Open-Vocabulary Object Detection

기존 연구는 Language Supervision이나 대규모로 사전 학습된 VLM을 탐지기에 이식하려는 시도는 꽤 많았습니다. 이것들은 모델이 학습 과정에서 보지 못한 카테고리까지 일반화하는 것을 목표로 하지요.

하지만 GenerateU는 이미지 영역의 비전 특징과 사람이 미리 정의한 임의 카테고리 이름들 간의 '유사도 계산'을 하는 기존 방식을 벗어나, Inference시에 카테고리 정보가 완전히 Unknown한 시나리오까지 효과적입니다.

추론 시 범주를 미리 정의하는 틀을 깨부순 것이죠.

2.2. Multimodal Large Language Model

최근 LLM의 강력한 능력을 활용하여 대규모 이미지-텍스트 pair를 학습한 BLIP-2, LLaMA-Adapter, LLaVA 등의 MLLM 모델이 급부상하였습니다. 나아가 Kosmos-2, UNINEXT, DetGPT 등은 텍스트 설명이나 사용자의 지시사항(Instructions)을 기반으로 bounding box를 제공하는 객체 위치 파악(Localization) 능력까지 확장해 나가고 있지요.

GenerateU는 기존 MLLM 모델들이 사용자가 입력한 특정 자연어 표현을 참조하는 것을 이해하고 매칭하는 데에 초점이 맞춰진 방식과 달리, 텍스트 입력 없이, 이미지 내에 존재하는 모든 관심 객체들을 스스로 식별하고 클래스 이름 부여까지 하는 것을 목표로 합니다.

2.3. Dense Captioning

기존의 Dense Captioning은 이미지의 다양한 국소 영역을 추출하고, RNN 언어 모델 등을 통해 각 영역을 문장 형태로 설명하는 작업인데요, 각 영역을 하나의 개별 이미지처럼 다루며 여러 객체와 그들의 속성(Attributes), 행동 관계까지 포괄하는 문장형 캡션을 생성합니다. 이 때문에 기계 번역 평가에 쓰이는 문장 관점의 METEOR 메릭으로 성능을 평가합니다.

GenerateU는 관계나 속성이 포함된 '긴 문장'을 뱉어내는 Dense Captioning과 달리 제로샷 환경에서 개별 객체 그 자체를 명확한 '카테고리 이름(단어 혹은 명사구)'으로 정확히 묘사하는 데 집중합니다. 최근 이 두 분야를 결합하려 했던 CapDet나 GRiT 같은 최신 연구들조차 결국 추론 시 사전 정의된 카테고리 공간이 여전히 필요하거나, 닫힌 집합(Closed-set) 문제에만 국한된다는 치명적인 한계가 있었습니다.

기술 구분추론 시 텍스트 힌트 필요출력 형태핵심 한계
OVOD (e.g., ViLD, GLIP)필수 (카테고리 리스트)선택된 클래스 레이블실전에서 후보군을 모르면 사용 불가
MLLM (e.g., Kosmos-2)필수 (사용자 프롬프트 혹은 지시문)특정 객체의 Box이미지 내 전수조사 및 Dense Predict 불가
Dense Captioning불필요관계/속성 포함한 긴 문장개별 객체의 단치적 카테고리 정밀 묘사 한계 존재
GenerateU아예 불필요Free-form없음

3. Method

그럼 어떻게 이미지 입력으로부터 사전 정의 카테고리 없이도 Dense하게 영역을 탐지하고 Free-form으로 언어를 생성할까요?

GenerateU는 크게 두 가지 요소로 이루어져 있습니다. Open-world object detector와, Language Model.

3.1. Open-World Object Detection

이미지에서 정확한 객체 영역을 추출하는 것이 중요하겠죠. 이를 위해 저자들은 open-world object detector를 개발합니다.

특정 객체 탐지 모델에 국한되는 것은 아닌데, 저자들은 다음과 같은 이유로 Deformable DETR를 선택했다고 해요.

  • 다른 One-stage, Two-stage 프레임워크랑 비교했을 때, 휴리스틱을 완화하고, 다용도 쿼리-인스턴스 파이프라인을 제공한다고 합니다.

    '휴리스틱'은 경험이나 직관에 기반한, 어느 정도 규칙이나 수동적 설계가 들어간 방법들을 의미합니다. 기존 1-stage, 2-stage 객체 탐지 프레임워크들은 이 휴리스틱한 요소들이 많이 필요했습니다.

    반면 Deformable DETR은 이런 수동적인 규칙이나 복잡한 설계 없이도 더 유연하고 효율적인 방식으로 객체를 찾아낸다는 장점이 있습니다.

    '휴리스틱을 완화한다'는 건, 모델이 사람의 개입이나 특정 규칙 없이도 스스로 더 잘 학습하고 객체를 탐지할 수 있게 된다는 의미로 이해하면 됩니다.

  • Deformable DETR는 원본 DETR에 비해 더 빠른 수렴 속도와 정학도가 높다고 합니다.

Deformable DETR, Original DETR는 헝가리안 매칭(Hungarian matching)을 사용하여 예측된 쿼리(query)와 실제 객체(ground truth object) 간의 매핑을 학습하며, 이후 매칭된 객체 쿼리를 분류 손실(classification loss)과 바운딩 박스 회귀 손실(bounding box regression loss)의 조합으로 해당 실제 값에 회귀하도록 훈련합니다.

저자들은 카테고리 정보에 의존하지 않는 Class-agnostic한 객체 검출기를 사용한다고 합니다.

Class-agnostic에 주의 깊게 봐야합니다.
DETR는 이 단계에서 물체가 사람인지, 인지 보지 않고, 오직 물체가 있을 법한 Dense Regions만 찾아내어 bbox 후보군을 추출하는 것이 핵심입니다.

손실함수로는 위치를 찾고 전경/배경만 구분하기 위해 BCE Loss, GIoU Loss, L1 Regression Loss 3 가지를 사용한다고 합니다.

L=Lbce+LL1+LgIoU+Llm+LalignL = L_{bce} + L_{L1} + L_{gIoU} + L_{lm} + L_{align}
  • 탐지 손실(Lbce,LL1,LgIoUL_{bce}, L_{L1}, L_{gIoU}):Deformable DET의 표준 손실 함수들
  • 언어 모델링 손실(LlmL_{lm}):생성된 텍스트의 정확도를 높이기 위한 손실이다.MM개의 탐지된 객체에 대해, 각 객체의 특징 fif_i가 주어졌을 때, 정답 단어 시퀸스 {w1,...,wNw_1, ..., w_N}의 음의 로그 우도(negative log likelihood)를 최소화한다.
    Llm=i=1M(t=1NlogP(wtfi,w1,...,wt1))L_{lm} = \sum \limits_{i=1}^M(-\sum \limits_{t=1}^N\log P(w_t|f_i, w_1,..., w_{t-1}) )



  • 영역-단어 정렬 손실(LalignL_{align}): 시각적 특징 표현의 분별력을 높이기 위한 보조 손실이다. 각 객체 쿼리에 대해, 해당하는 정답 단어를 positive samples로, 미니배치 내 다른 단어들을 negative samples로 간주한다.

고정된 CLIP텍스트 인코더를 사용하여 텍스트 특징을 추출하고, 이진 교차 엔트로피 손실을 적용한다.

Lalign=i=1M=[logσ(sik)+tWlog(1σ(sit))]L_{align} = \sum \limits_{i=1}^M = [-\log \sigma(s_{ik}) + \sum_{t \in W'}\log (1-\sigma (s_{it}))]
  • siks_{ik}: ii번째 영역 특징과 그에 해당하는 kk번째 긍정 단어 임베딩 간의 정렬 함수
  • WW': 미니배치 내의 부정 단어 샘플 집합
  • σ\sigma: 활성화 함수

이 손실 함수 구조는 탐지 정확도와 언어 생성 능력을 동시에 최적화하여, 본 연구의 핵심 목표인 생성적 개방형 객체 탐지를 가능하게 한다.

3.2. Transferring from a Frozen Multimodal LLM

객체 후보 위치가 파악되면, 훈련 비용을 줄이고 객체 이름 생성을 위한 강력한 zero-shot을 위해 MLLM을 사용하는 것이 자연스럽겠죠.

최근 MLLM은 일반적으로 세 가지 요소로 구성되어 있습니다.

  • 시각적 특징을 추출하는 이미지 인코더
  • Modality gap을 해소하고 image embedding 수를 줄여 시각적 특징을 토큰으로 표현하는 Adaptor network.
  • 시각 중심 태스크에 대한 예측을 생성하는 언어 모델

Figure 2에서와 같이, object query를 추출하기 위한 frozen image encoder를 가진 class-agnostic한 Deformable DETR를 MLLM에 통합합니다.

Object query?

좌표가 아니라 고차원 '숫자 벡터(Embedding Vector)'입니다.
코드나 수식 차원에서 보자면 [N, D]형태의 매트릭스인데요.

  • NN: 쿼리의 개수 (보통 100으로 많이들 설정하며, 연구자가 지정한 개수를 따릅니다.)
  • DD: 피처 차원의 수 (보통 256 혹은 512)

즉, 하나의 Object Query는 [0.15, -0.42, 0.89, ...] 같은 256개의 실수(Float) 정보가 담긴 무작위 연속 벡터일 뿐, 그 자체에 [X, Y, 가로, 세로] 같은 물리적인 좌표 정보가 직접 적혀있는 것은 아닙니다.

좌표가 아닌데 어떻게 위치를 찾을까요?

이 벡터 형태의 쿼리가 Detection Head(Transformer Decoder) 내부를 통과하면서 마법이 일어납니다.

① 1단계: 시각적 단서 탐색 (Cross-Attention)
이미지 인코더가 뽑아낸 피처 맵(예: [H×W, 256] 크기)과 [100, 256] 크기의 Object Queries가 서로 내적(Dot Product)을 하며 유사도를 계산합니다.
이 과정에서 쿼리 벡터들은 이미지 내부에서 "물체가 있을 법한 강력한 시각적 특징(Edge, 질감 등)"이 있는 위치의 정보들을 자석처럼 흡수하여 쿼리 벡터 내부를 채우게 됩니다.

② 2단계: 좌표로 변환하는 '통역사' (FFN)
디코더 레이어를 다 통과하고 나면, 시각 정보를 가득 머금은 [100, 256] 크기의 쿼리 벡터가 나옵니다. 이 벡터를 FFN(Feed-Forward Network) 레이어라는 아주 작은 선형 신경망에 통과시킵니다.

  • 이 FFN이 일종의 '통역사' 역할을 합니다.
  • 256 차원의 복잡한 벡터를 입력받아 [정중앙X, 정중앙Y, 가로길이, 세로길이]라는 딱 4개의 숫자(좌표)로 변환(Projection)해 줍니다.

    그냥 좌표를 쓰면 안되나?
    만약 처음부터 [X, Y, W, H] 같은 딱딱한 4개의 좌표 숫자로만 입력값을 주면, 이 인공지능 모델이 이미지 백본에서 뽑아낸 수만 가지의 정교한 시각적 특징(질감, 색상, 맥락 등)과 부드럽게 연산(Attention)을 주고받을 수 없기 때문입니다.

그래서 학습과 연산은 풍부한 '임베딩 벡터' 형태로 진행하고, 최종 결과물을 뱉을 때만 4차원 좌표로 변환하는 방식을 취하는 것입니다.

MLLM을 고정된 상태로 유지하고, 유일하게 훈련 가능한 모듈은 detction head 뿐 입니다.

KOSMOS-2에서는 훈련 중 이미지가 224×224224 \times 224로 들어가게 되는데요, 사실 객체 탐지에서는 multi-scale feature extraction을 위해서는 더 큰 사이즈를 사용하는 것이 일반적입니다.

때문에 저자들은 Linear Interpolation을 사용하여 position embedding을 확장합니다.

Linear Interpolation으로 어떻게 PE?

알고리즘 내부에서는 "두 점 사이의 비율을 찾는 선형 보간"만 연속적으로 쓰입니다.

Transformer는 이미치 패치별로 위치를 기억하기 위해 임베딩 벡터를 고유하게 가지지요.
이 때 14×1414\times 14격자로 총 14×14=19614\times 14 = 196개의 위치 임베딩 벡터를 미리 학습했습니다.
\rightarrow모델은 (0,0)(0,0)부터 (13,13)(13, 13)까지의 격자 좌표만 이해할 수 있습니다.

우리는 더 Dense한 능력을 위해 50×50=250050\times 50 = 2500개의 위치 임베딩이 필요합니다.

이 때 기존 14×1414\times 14에 있는 고유 벡터값들을 어떻게 50×5050 \times 50으로 바꿀까? 가 바로 선형 보간이 해결해야 하는 문제입니다.

1. 새로운 좌표를 기존 좌표계로 매핑

새로운 50×5050 \times 50 격자에서 어떤 특정 좌표가 기존 14×1414 \times 14 격자 상에서 비율적으로 어디쯤 위치하는지 역산합니다.

  • 예를 들어, 새로운 격자의 정중앙 좌표는 기존 격자에서도 정중앙인 (6.5,6.5)(6.5, 6.5) 위치에 정확히 매핑될 것입니다.
    • (새 격자의 정중앙인 24.524.5는 기존 격자 비율로 연산했을 때의 상황입니다.)
  • 만약 새로운 격자의 어떤 좌표를 역산했더니 기존 격자의 정수 좌표가 아닌 (2.3,4.7)(2.3, 4.7) 같은 소수점 위치로 떨어졌다고 가정해 봅시다.

    2. 주변 4개 정수 좌표의 벡터값 참조

    기존 14×1414 \times 14 격자에는 정수 좌표에만 학습된 위치 임베딩 벡터가 존재합니다. (2.3,4.7)(2.3, 4.7) 주변을 둘러싸고 있는 가장 가까운 4개의 실제 정수 좌표를 찾습니다.
  • 왼쪽 위: (2,4)(2, 4)의 벡터
  • 오른쪽 위: (3,4)(3, 4)의 벡터
  • 왼쪽 아래: (2,5)(2, 5)의 벡터
  • 오른쪽 아래: (3,5)(3, 5)의 벡터

    3. 거리에 비례하여 가중 평균

    (2.3,4.7)(2.3, 4.7)이라는 위치는 (2,4)(2, 4)에 더 가까울까요, (3,5)(3, 5)에 더 가까울까요?
    소수점 자리인 0.3과 0.7이라는 거리를 가중치(Weight)로 삼아 주변 4개 고유 벡터 값을 섞어줍니다.
  • (2,4)(2, 4) 벡터에는 더 큰 가중치를 곱하고, 멀리 있는 (3,5)(3, 5) 벡터에는 작은 가중치를 곱한 뒤 모두 더합니다(Linear combination).

    이 과정을 통해 기존 데이터셋에는 존재하지 않던 소수점 위치 (2.3,4.7)(2.3, 4.7)에 딱 맞는 '가상의 새로운 위치 임베딩 벡터'가 계산됩니다.

Positional Embedding에 대한 해석

Beyond labels 논문 리뷰에서도 사실 PE에 대해서 이야기 한 적이 있습니다.

그럼, 여기서도 선형 보간 대신, Fourier Feature Embedding, ALiBi 등을 사용하면 어떻게 될지 확인해보겠습니다.

Fourier Embedding

Linear interpolation은 discrete한 격자 위에서 값을 찢어 늘리는 방식이기 때뭄ㄴ에, 해상도가 바뀔 때 미세한 정보는 왜곡될 수 있습니다. 반면 푸리에 임베딩은 고주파/저주파 성분을 활용했기 때문에 더 부드럽고 정확하게 추정할 수 있지요.

실제로 Original DETR에서도 x,yx, y를 표현할 때 Sine/Cosine 기반의 절대적 PE를 사용합니다. 따라서 GenerateU의 비전 탐지기와 결합할 때 Bbox를 잡는 데 더 정교합니다.

하지만, GenerateU의 사전 학습된 MMLM을 Frozen하고 사용하려면, 기존 모델의 임베딩 레이어를 푸리에 형태로 통째로 갈아야 하므로 호환성이 깨집니다. 전체 모델을 처음부터 Pre-training하거나 Fine-tuning할 때만 유효한 전략이라고 할 수 있습니다.

ALiBi

포지셔널 임베딩을 입력 토큰에 더해주는 대신, 어텐션 맵(Attention Map)의 쿼리(Query)와 키(Key) 사이의 거리에 비례하여 음수의 페널티(Bias)를 직접 주입하는 방식입니다. 자연어 처리(NLP)에서 엄청난 길이의 문맥 확장(Context Extrapolation)을 가능하게 만든 기술이죠.

선형 보간은 학습 단계에서 보지 못한 '아주 촘촘하고 거대한 격자 공간'이 들어오면 성능이 열화될 위험이 있습니다. 반면 ALiBi 메커니즘을 비전 토큰(Patch 혹은 Object Query)에 맞게 2차원(2D ALiBi)으로 변형해 적용한다면, 모델이 훈련 과정에서 경험해보지 못한 초고해상도 이미지(예: 4K4K 해상도 드론 영상 등)가 들어와도 어텐션 메커니즘이 깨지지 않고 위치 관계를 안정적으로 유지할 수 있습니다.

하지만 Dense Detection에서는 말이 다릅니다.
ALiBi는 거리가 멀어질수록 관계성을 인위적으로 떨어뜨리는 속성이 있습니다. 객체 검출(특히 Deformable DETR 같은 구조)에서는 이미지 끝과 끝에 있는 물체 간의 글로벌한 맥락(Context)을 파악하거나, 전체 화면을 넓게 보고 객체 쿼리를 매칭하는 능력이 중요합니다.

ALiBi의 강한 거리 페널티가 오히려 화면 전반에 걸친 조밀한 객체 예측(Dense Prediction)과 글로벌 컨텍스트 파악을 방해하는 독이 될 수 있습니다.

포지셔널 임베딩이 아예 존재하지 않는 구조가 되기 때문에, 위치 좌표 자체를 쿼리로 다루는 DETR 고유의 쿼리-인스턴스 매칭 파이프라인과 완벽히 충돌할 수 있어 아키텍처를 대대적으로 뜯어고쳐야 합니다.

중요한건, 이 구조가 단순함에도 불구하고, frozen MMLM을 사용해보니 도메인 불일치로 인해 성능이 저조하였다고 합니다.

기존 MMLM을 그대로 얼려두고 오직 Detection Head만 깔짝 가르치기만 해서는, 비전과 언어 사이의 간극을 메울 수 없는 것을 깨달은 과정인 것입니다.

3.3. Generative Region-Language Pretraining

따라서, Frozen MMLM을 사용하는 대신, open-world object detector를 언어 모델과 연결하고, 이미지 인코더와 언어 모델을 모두 trainable하게 활성화하는 GenerateU가 여기서 제안되는 것입니다.

저자들은 Language Model로 Flan-T5를 사용하였는데, 이는 Encoder-Decoder구조 입니다. 텍스트 번역 모델을 상상하면 쉬운데, 번역에서는 인코더에 한국어 문장을 넣고 디코더에서 영어를 출력하는 방식과 유사합니다.

저자들은 이 구조를 "Vision-text 번역" 매커니즘으로 트랜스포밍했습니다.

  • Encoder Input: 텍스트 대신 Visual Representation(시각적 영역 특징 벡터)을 입력
  • Decoder's Goal: 그 영역에 알맞은 정답 텍스트 객체명(Associated text)을 단어 토큰 단위로 순차적으로 생성(Generation)해 내도록 만들기

"Here we only use the object queries that have been successfully matched
with ground truth through Hungarian matching, ignoring the unmatched queries in the generating process."

여기가 조금 흥미로운데, 먼저 헝가리안 매칭이 무엇일까요?

Hungarian Matching & Query Filtering

Deformable DETR 같은 트랜스포머 기반 탐지기는 이미지에 물체가 몇 개 있든 상관없이, 사전에 설정된 수(이 논문에서는 N=300N=300개)만큼의 'Object Query(객체 질문 벡터)'를 무조건 출력합니다.
학습할 때는 이 300개의 예측 박스 중 이미지 속 실제 정답(Ground Truth) 박스와 가장 유사한 것들을 1:1로 짝지어주는 이진 매칭 알고리즘(헝가리안 매칭)을 수행하는 것이죠.

(만약 이미지에 물체가 5개만 있다면? 300개의 쿼리 중 오직 5개만 정답 매칭에 성공(Matched)하고, 나머지 295개는 물체가 없는 배경(Unmatched, no object\langle\text{no object}\rangle)으로 분류됩니다)

언어 모델의 Decoder에게 학습을 시킬 때, 물체가 없는 295개의 배경(Unmatched) 쿼리까지 전부 입력해서 텍스트를 만들라고 하면 모델이 심각한 혼선(물체도 없는데 이름을 지어내야 하는 모순)을 겪게 됩니다.

따라서 저자들은 헝가리안 매칭을 통과한 뒤, 실제 정답 객체와 매칭되는 데 성공한 똑똑한 쿼리 벡터(Visual representation)들만 골라내어 언어 모델 인코더에 집어넣고 , 매칭되지 못한 나머지 배경 쿼리들은 텍스트 생성 과정에서 철저히 무시(Ignoring)해 버리는 방식을 취한 것입니다.

이 파트의 핵심은 "DETR이 이미지에서 수많은 박스 후보를 뽑으면(헝가리안 매칭) , 실제 물체가 들어있는 알짜배기 박스의 시각 특징만 쏙 골라내어(Object queries matched) T5 언어 모델의 인코더에 주입하고 , 디코더가 그 물체의 이름을 주관식으로 직접 서술하도록 학습시킨다."는 의미입니다.

3.4. Enrich Label Diversity

의미적으로 풍부하고 방대한 탐지 데이터를 수집하는 데 상당한 노력이 투자되었습니다.

그러나, 계속 반복적으로 말해왔던 문제인, Human-based annotation은 비용이 많이 들고 자원이 제약적이다.

Kosmos-2 및 CLIP과 같은 이전 연구들은 image-text pair를 활용해서 어휘 규모를 확장했었죠. 이 이전 모델들은 pre-trained grounding model을 활용하여 캡션의 명사구와 정렬된 bbox를 생성합니다.

Groundming Model 혹은 Visual Grounding 모델은 쉽게 말해 "텍스트(단어, 구절, 문장)가 이미지 안에서 '정확히 어느 영역(위치)'을 가리키는지를 찾아내어 연결(정렬)해 주는 AI 모델"을 의미합니다.

이러한 박스들은 차례로 모델 훈련을 위한 의사 탐지 레이블(Pseudo detection label)로 활용됩니다.

그러나, 캡션이 이미지 내의 모든 객체를 포괄적으로 설명하지 못할 수 있어, 캡션의 명사 수는 일반적으로 해당 이미지에 존재하는 실 객체보다는 훨씬 적습니다. 결과적으로 생성되는 의사 레이블의 양은 제한적입니다.

"To address this, we use GenerateU pretrained on the available labels to generate
pseudo labels as a supplement for missing objects in images."

더 나아가, beam search가 자연스럽게 동의어를 생성하며 다양한 객체 레이블을 제공하는 것을 볼 수 있습니다.

Figure 3를 보면 GenerateU 모델이 제안한 Pseudo-labeling 방법론이 얼마나 다양하고 언어적으로 풍부한 객체들을 많이 만들어내는지 알 수 있습니다.

그림을 자세히 보면, 흰색 밑줄(캡션 기반)이 쳐진 객체 외에도 수많은 촘촘한 바운딩 박스와 텍스트 레이블들이 이미지 전반을 덮고 있는데, 이것이 바로 저자들이 개발한 GenerateU 모델이 스스로 추론하여 누락된 객체들을 발견한 것입니다.

우측 상단의 'Thorntons' 상점 간판과 같이 모델이 단순 하나의 클래스로 퉁치지 않고, 언어 모델 디코더의 Beam Search를 활성화한 덕분에, 하나의 영역을 두고 풍부한 동의어와 계층적 표현들이 만들어진 것을 볼 수 있습니다.


4. Experiments

4.1. Datasets

저자들은 GenerateU를 학습시키기 위해 성격이 완전히 다른 두 가지 종류의 데이터를 혼합하는 Hybrid Supervision 방식을 사용했습니다.

  • 객체 검줄 데이터 (Detection Data): Visual Genome (VG) 데이터셋에서 약 7.7만 장의 이미지를 사용했으며, 존 연구들(CapDet, GRiT 등)과 달리, 문장 형태로 여러 객체와 행동이 섞여 있는 '지역 캡셔닝(Region captioning)' 주석은 철저히 배제했습니다. 오직 하나의 바운딩 박스 영역에 군더더기 없이 딱 맞아떨어지는 간결하고 구체적인 객체 이름(Concise and specific object names)만 골라 탐지기 학습에 활용했습니다.
  • 이미지-텍스트 쌍 데이터 (Image-Text Data): COYO700M에서 추출한 약 500만 개의 GRIT 이미지-텍스트 쌍을 활용했습니다. 앞서 우리가 깊게 다루었던 2단계 Pseudo-labeling전략을 통해 누락된 객체 박스와 레이블을 완벽하게 뻥튀기(Scaling up)하여 대규모 어휘집을 확보한 데이터셋입니다.

이 표는 LVIS 데이터셋을 학습에 사용하지 않고 제로샷으로 평가한 결과인데, GenerateU는 추론 시 카테고리 이름을 보지 않음에도 불구하고 카테고리 이름을 사용하는 Open-set 모델인 GLIP과 대등한 성능을 보인다.

Swin-Tiny 백본 기준으로 보았을 때, 하이브리드 방식으로 진행한 GenerateU는 mAP 26.8을 기록했다. 이는 GLIP의 mAP 26.0보다 더 우수한 성적이다. 힌트 아예 없이 Open-ended상태에서 생성한 결과가 이 정도 성적인 것은 엄청난 파장이다.

APrAP_r의 급상승

VG데이터만 사용했을 때, rare 카테고리 점수(APrAP_r)는 17.4이지만, GRIT5M을 추가하니 20.0으로 급상승 하였다. 이는 3.4. Enrich Label Diversity에서 이미지 텍스트의 풍부한 어휘력이 희귀 객체의 인지 능력을 대폭 올린다라는 가설을 입증한 것이다.

Scale-up의 유연성

백본을 Swin-Large로 키우자 전체 mAP가 27.9까지 올라가며, 완전 지도학습 모델인 MDETR(24.2)을 가볍게 뛰어넘었다. 이는 아키텍처가 커져도 생성 메커니즘이 무너지지 않고 확장성(Scalability)이 훌륭함을 입증한다.

4.2. Evaluation protocol and metrics

선택지 중에서 고르는 기존 OVOD와는 달리, 지어내어 쓴 단어(Generative Open-Ended)를 어떻게 공정하게 채점할 것인가에 대해 저자들은 혁신적인 평가 모델을 제안합니다.

  • (a) 시맨틱 유사도 매핑 (Similarity Score):
    예를 들어, 사람이 라벨링한 정답은 laptop인데 모델이 PC나 computer라고 생성했다면 기존 방식에서는 오답 처리됩니다. 저자들은 이를 해결하기 위해 모델 학습에는 전혀 관여하지 않은 오프라인 텍스트 인코더(CLIP 또는 BERT-large)를 가져왔습니다. 모델이 뱉은 단어와 정답 단어의 임베딩 간 유사도를 계산하여, 데이터셋의 사전 정의된 카테고리로 매핑해 준 뒤 일반적인 고정 AP(Average Precision) 점수를 산출해 냈습니다.
  • (b) 텍스트 품질 평가 (METEOR):
    Dense Captioning에서 주로 쓰이는 자연어 처리(NLP) 평가 메트릭인 METEOR를 도입하여 생성된 단어의 언어적 퀄리티를 다각도로 검증했습니다.
  • 벤치마크 타겟: 1,203개의 방대한 클래스를 가진 LVIS 데이터셋을 타겟으로 삼아, 빈도수에 따라 rare (APrAP_r), common (APcAP_c), frequent (APfAP_f), 그리고 전체 평균 mAP를 쪼개어 정밀 측정했습니다.

4.3. Implementation Details

  • Backbone: Swin-T, Swin-L for Visual Encoder
  • Detector: Deformable DETR (6 encoder layers and 6 decoder layers)
  • Language Model: Flan T5-base
  • GPU: 16 A100 GPUs
  • frozen MMLM: KOSMOS-2
파라미터
OptimizerAdamW
Weight Decay0.05
Learning Rate (Vision Backbone / Detection Head)2×1042 \times 10^{-4}
Learning Rate (Language Model)3×1043 \times 10^{-4}
Object queries NN300
Beam Size3 (default)

4.4. Generative Open-Ended Detection Results

"Remarkably, we observe that even with only VG as training data, our model demonstrates commendable performance on zero-shot LVIS. This result suggests that predefined class names might not be necessary for open-world object detection during inference, especially when models are trained with extensive visual concepts."

타겟 데이터인 LVIS의 정답지 목록을 전혀 제공받지 않았음에도 불구하고, Visual Genome(VG)데이터셋의 객체-텍스트 쌍 만으로 학습했을 때에도 zero-shot LVIS에서 mAPmAP25.4가 나온 점이다.

기존 비전 모델들이 고정된 Classification Head로 인해 카테고리의 특정 틀 안에 종속되었던 반면, GenerateU는 풍부한 시각적 개념을 얻어 모델의 텍스트 생성 능력과 End-to-End로 연결해둔 덕분에 추론 시 카테고리 목록이 필요 없는 효율성이 입증되었다.

"In contrast to open vocabulary object detection methods, we do not need to switch the classifier to the specific category text embeddings."

기존 OVOD 모델들은 새로운 데이터셋(예: COCO)을 테스트하려면, 그 데이터셋이 가진 클래스 명칭들을 다시 텍스트 인코더에 넣어 새로운 '분류기 가중치 행렬(Classifier text embeddings)'을 동적으로 생성해 교체해 주어야 했다.

하지만 GenerateU는 주관식 모델이므로 데이터셋이 바뀌어도 그 어떤 아키텍처 수정이나 분류기 교체 작업 없이(Without requiring any modifications) 그냥 이미지만 밀어 넣으면 즉시 작동합니다

4.5. Ablation Study


저자들은 기존 MMLM을 활용하는 방식과 GenerateU의 학습법을 비교하였다.

  • Init from MMLM (KOSMOS-2 기반)
    • 이미지 인코더와 언어 모델을 모두 Freeze하고, Detection Head만 학습했을 때, 전체 mAP 14.3
    • 이미지 인코더만 Train: mAP가 21.9로 상승
  • Init from LLM (FlanT5-base 기반 - GenerateU)
    • 이미지 인코더, 탐지 헤드, 언어 모델을 전부 열어두고 통째로 학습(Train)시키는 엔드투엔드 정공법을 썼을 때: mAP 26.8 (APrAP_r 20.0)로 최고 성능을 달성

언어 모델이 단어를 생성할 때 얼마나 많은 후보군을 고려할지 결정하는 하이퍼파라미터인 Beam Size에 따른 성능 그래프이다.

  • 빔 사이즈가 1일 때는 희귀 객체 점수가 12.3으로 매우 낮았다.
  • 빔 사이즈를 2, 3으로 키워나감에 따라 APrAP_r점수가 17.2 \rightarrow 20.0으로 상승한다.

    빔 서치를 적용하면 단어 디코딩 과정에서 다채로운 동의어(Synonyms)와 계층적 단어 표현들이 함께 탐색 된다.

    이 유연성 덕분에 데이터셋에서 자주 등장하지 않는 롱테일(Long-tail) 및 희귀 카테고리(APrAP_r)의 텍스트 생성 정확도가 비약적으로 향상되는 효과를 낳았다. 저자들은 가성비가 가장 좋은 3을 기본 빔 사이즈 세팅으로 채택했다.

Region-word Alignment

위에서 다룬 영역-단어 정렬 손실(LalignL_{align})의 유무에 따른 성능 차이 비교 테이블이다.

  • VG 데이터 셋팅:

    • LalignL_{align} 없이 탐지 손실과 언어 생성 손실만 썼을 때: mAP 22.5
  • LalignL_{align}을 추가했을 때: mAP 25.4 (+2.90 수직 상승). 특히 흔한 객체(APcAP_c) 점수가 19.1에서 22.4로 +3.90이나 대폭 올랐습니다.

    핵심 인사이트: T5 언어 모델의 디코더 6개 레이어마다 얼어있는 CLIP 텍스트 임베딩을 매칭시켜 주는 보조 감독(Auxiliary supervision) 장치가 , 모델이 시각적 특징과 언어적 표현 간의 기초 체력(Alignment)을 다지는 데 강력한 부스터 역할을 수행했음을 입증한다.

4.6. Qualitative Resutls


수치적인 mAP 점수만으로는 GenerateU가 고정된 어휘 제한을 뛰어넘는 능력을 온전히 설명할 수는 없다.

"As shown in Figure 5, our model can identify a more diverse range of objects compared to ground truth annotations. These visualizations not only affirm the reliability of our detection framework but also demonstrate its ability to detect a wider variety of objects, providing valuable insights into the model’s strengths."

Human-based GT는 사람이 직접 라벨링하여 필연적으로 누락된 객체가 많다. 반면 GenrateU는 정답에 묶여있지 않기 때문에, 오히려 Human-based GT보다 더 Dense한 식별이 가능하다.


5. Conclusion

GenerateU는 객체 검출을 사전에 정의된 카테고리 매칭이 아닌, '자율 서술형 텍스트 생성 작업'으로 재구성하여 패러다임을 바꾸었다. 이를 통해 사람이 추론 단계에서 일일이 클래스 후보 목록을 주어야 했던 제약을 소거한 것이다.

카테고리 이름을 아예 보지 못한 극도의 제약 속에서도 zero-shot LVIS 환경에서 기존 최고 수준의 Open-vocabulary, GLIP과 대등한 성능을 보이며, 생성형 오픈월드 시나리오의 실용성을 다진 것이다.

저자들은 MS의 Kosmos-2와 GenerateU를 가혹한 실험 환경 속에서 비교를 진행했다.

  • 상황 A (기본 배치): 책상 위에 휴대폰(Mobile phone)과 컵(Cup)이 서로 완전히 분리되어 따로따로 놓여 있습니다.

    이 상황에서는 Kosmos-2와 GenerateU 모두 두 객체의 위치와 이름을 잘 식별한다.

  • 상황 B(복잡한 배치): 사물의 배치를 바꾸어, 상황 A (기본 배치): 책상 위에 휴대폰(Mobile phone)과 컵(Cup)이 서로 완전히 분리되어 따로따로 놓여 있다.

    컵이 휴대폰 위에 겹쳐서 놓이는 가혹한 환경으로 변경되면 성능의 차이가 확연히 드러난다.

    이 상황에서 마이크로소프트의 Kosmos-2는 실제 시각 데이터보다 텍스트 문맥의 통계적 확률에 지나치게 의존한 나머지 휴대폰을 노트북(Laptop)으로 오독하는 치명적인 문맥 기반 오류를 범힌디.

    반면 GenerateU는 텍스트 디코딩 전에 클래스 무관 탐지기(Class-agnostic Deformable DETR)를 통해 순수한 픽셀 영역 단위의 시각 특징을 견고하게 추출하기 때문에, 사물의 배치가 기괴하게 꼬이더라도 언어 모델의 뇌피셜에 휘둘리지 않고 두 객체를 끝까지 정확하고 일관되게 식별해 내는 뛰어난 물리적 강인성을 증명한다.

0개의 댓글