AI바라기의 인공지능

VLM : 빠른 논문 리뷰 : Interaction-Centric Knowledge Infusion and Transfer for Open-Vocabulary Scene Graph Generation 본문

논문리뷰

VLM : 빠른 논문 리뷰 : Interaction-Centric Knowledge Infusion and Transfer for Open-Vocabulary Scene Graph Generation

AI바라기 2025. 12. 19. 16:41

Terminologies

  • Open-Vocabulary Scene Graph Generation (OVSGG): 학습 데이터에 존재하지 않는 새로운 객체(Novel Object)나 관계(Novel Relation)까지 인식하여 이미지 내의 구조적 의미(Scene Graph)를 생성하는 과제.
  • Knowledge Infusion & Transfer: VLM 기반 OVSGG의 일반적인 2단계 파이프라인. 대규모 데이터셋으로 VLM을 Pre-training하여 지식을 주입(Infusion)하고, Task-specific 데이터셋으로 Fine-tuning하여 지식을 전이(Transfer)하는 과정.
  • Pseudo-supervision: Region-level annotation(bbox 등)이 부족한 데이터에서 캡션 등을 통해 모델이 스스로 생성한 라벨을 학습에 사용하는 기법. 본 논문에서는 Grounding DINO를 이용해 위치 정보를 생성함.
  • Bidirectional Interaction Prompt (BIP): Knowledge Infusion 단계에서 사용된 프롬프트 기법. 단순히 객체 이름만 나열하는 것이 아니라, 능동태(Subject-Predicate-Object)와 수동태(Object-CounterAction-Subject) 형태의 문장을 만들어 상호작용의 문맥을 반영함.
  • Interaction-Guided Query Selection (IGQS): Knowledge Transfer 단계에서 사용된 쿼리 선택 기법. 단순히 객체 존재 확률이 높은 영역이 아니라, '상호작용'과의 관련성이 높은 Visual Token을 우선적으로 선택하여 Object Query로 초기화함.
  • Interaction-Consistent Knowledge Distillation (ICKD): Teacher 모델(VLM)의 지식을 Student 모델로 전이할 때 사용하는 손실 함수. 개별 특징뿐만 아니라 Triplet 간의 구조적 관계(Relative relationship)까지 보존하도록 설계됨.

Purpose of the Paper

  • Existing Limitation (Object-Centric Paradigm): 기존 OVSGG 모델들은 Object-Centric 방식을 따릅니다. 이는 동일한 객체 카테고리(예: 'man') 내에서 상호작용을 하고 있는 인스턴스(holding a surfboard)와 그렇지 않은 인스턴스(standing)를 구분하지 못하는 한계가 있습니다.
    • Issue 1 (Pre-training): 상호작용 여부를 고려하지 않고 객체를 탐지하여 부정확한 Pseudo-supervision (Noisy Label)을 생성함.
    • Issue 2 (Fine-tuning): 수많은 비상호작용(Non-interacting) 객체 쿼리들이 생성되어, 실제 정답(Ground-Truth)과의 Bipartite Graph Matching 과정에서 혼란을 야기함.
  • Proposed Approach: 본 논문은 이러한 한계를 극복하기 위해 Interaction-Centric 패러다임인 ACC (interACtion-Centric end-to-end OVSGG framework) 를 제안합니다. 객체 자체보다는 '상호작용'의 문맥과 동적인 관계를 명시적으로 모델링하여, 지식 주입(Infusion)과 전이(Transfer) 과정에서 발생하는 Mismatch 문제를 최소화하는 것이 목적입니다.

Key Contributions & Novelty

  • Interaction-Centric Knowledge Infusion (with BIP)
    • Novelty: 기존 방식이 단순히 객체 이름(e.g., "man", "surfboard")으로 Grounding을 수행해 모호성을 가졌던 것과 달리, Bidirectional Interaction Prompt (BIP) 를 제안함.
    • Details: LLM을 활용해 Counter-action(반대 행동)을 생성하고, 정방향(Action)과 역방향(Counter-action) 문장을 모두 활용해 Grounding 모델이 상호작용 문맥을 파악하도록 유도함. 이를 통해 상호작용과 무관한 객체를 배제하고 정교한 Pseudo-supervision을 생성함.
  • Interaction-Guided Query Selection (IGQS)
    • Novelty: 기존의 단순 객체 점수 기반 쿼리 선택을 넘어, 상호작용 가능성을 우선순위로 두는 2단계 Selection 메커니즘 도입.
    • Details:
      • Step I: Visual token과 Relation class token 간의 유사도를 반영해 1차 필터링.
      • Step II: VLM Text Encoder에서 추출한 Interaction Token (상호작용 문맥이 포함된 토큰)을 활용해, 실제 관계를 맺고 있는 객체 쿼리를 선별하고 배경 노이즈(Non-interacting objects)를 제거함.
  • Interaction-Consistent Knowledge Distillation (ICKD)
    • Novelty: 단순한 Feature Alignment(L1/MSE loss)를 넘어, Teacher 모델이 가진 '관계적 구조'를 보존하는 새로운 Distillation 기법 적용.
    • Details: VRD (Visual-concept Retention Distillation) 로 점별(Point-wise) 의미를 맞추고, RRD (Relative-interaction Retention Distillation) 를 통해 Triplet 간의 상대적인 구조적 유사도(Structure Similarity)를 정렬하여, 배경과 상호작용 쌍을 구분하는 능력을 Student 모델에 전이함.

Experimental Highlights

  • Datasets: Visual Genome (VG), GQA, PSG 데이터셋 사용.
  • Evaluation Protocol: OvR-SGG (Novel Relation) 및 OvD+R-SGG (Novel Object & Relation) 설정에서 Scene Graph Detection (SGDET) 프로토콜 사용.
  • State-of-the-art Performance:
    • VG Dataset: ACC는 기존 SOTA인 OvSGTR 및 RAHP를 모든 지표에서 능가함.
    • Significant Gain: OvR-SGG 설정에서 Novel Relation 카테고리에 대해 RAHP 대비 +1.78% R@100 성능 향상을 기록하며 강력한 일반화 성능 입증.
    • OvD+R-SGG 설정(Swin-B backbone)에서 Novel Relation의 R@100은 21.73% 로 OvSGTR(18.22%) 대비 큰 폭으로 향상됨.
  • Ablation Study:
    • IGQS 효과: 쿼리 선택 전략(IGQS) 적용 시 R@100이 약 3.00% 향상되어, 상호작용하지 않는 객체 쿼리를 제거하는 것이 성능에 치명적임을 증명함.
    • Pre-training 효과: COCO 데이터셋 Pre-training 시 ACC 방식을 적용하면 기존 방식 대비 +0.91% ~ +1.40% R@100 성능 향상이 있음을 확인.

Limitations and Future Work

  • Small Object Detection: 배경에 있는 작은 객체(e.g., hat in background)나 미묘한 상호작용은 여전히 탐지하기 어려워 Mismatch가 발생할 수 있음.
  • Ambiguous Matching: 동일 이미지 내에서 같은 종류의 관계(Triplet category)를 가진 여러 피사체 쌍이 존재할 경우(e.g., 여러 사람이 각각 말을 타고 있는 경우), Subject와 Object를 서로 잘못 매칭하는 오류가 발생할 수 있음.
  • Computational Efficiency: IGQS의 Step II 과정에서 Interaction Token을 얻기 위해 추가적인 연산이 필요하여 Inference 속도에 영향을 줄 수 있음.
  • Future Work:
    • 실시간(Real-time) 처리가 가능하도록 알고리즘의 계산 효율성(Computational Efficiency)을 개선하는 연구.
    • VLM에 내재된 편향(Bias)이 모델에 전파되는 것을 방지하고, 공정성(Fairness)을 확보하는 연구.

Overall Summary

이 논문은 기존 Open-Vocabulary Scene Graph Generation (OVSGG) 연구들이 '객체 중심(Object-Centric)'으로 접근하여 상호작용 중인 객체와 그렇지 않은 객체를 구분하지 못하는 한계를 지적합니다. 이를 해결하기 위해 저자들은 ACC (interACtion-Centric) 프레임워크를 제안하며, 지식 주입 단계에서는 Bidirectional Interaction Prompt를 통해 정교한 가상 라벨을 생성하고, 지식 전이 단계에서는 Interaction-Guided Query Selection Structure-aware Distillation을 통해 상호작용 관련 객체에 집중하도록 설계했습니다. ACC는 3가지 주요 벤치마크(VG, GQA, PSG)에서 SOTA를 달성하며, 상호작용 중심의 패러다임이 OVSGG의 일반화 성능과 정확도를 크게 향상시킬 수 있음을 입증했습니다.


쉬운 설명

기존의 AI는 "공 던지는 사람"을 찾으라고 하면, 그냥 "사람"이라는 카테고리만 보고 공을 던지든 가만히 서 있든 모든 사람을 다 찾아내서 헷갈려 했습니다(Object-Centric).

하지만 이 논문에서 제안한 ACC 방식은 다릅니다.

  1. 학습 준비 단계(Infusion): "사람이 공을 던지다", "공이 사람에 의해 던져지다"처럼 앞뒤 문맥을 다 따져서, 진짜 '던지는 행동'을 하는 사람만 콕 집어서 공부합니다(Bidirectional Prompt).
  2. 실전 단계(Transfer): 수많은 후보들 중에서 그냥 사람인 것들 말고, '무언가와 상호작용하는 느낌(Interaction Token)'이 강한 사람만 골라내서 정답을 맞춥니다(Guided Query Selection).

결과적으로, 군중 속에서 그냥 서 있는 사람이 아니라 진짜 행동을 하고 있는 사람과 물체의 관계를 훨씬 더 정확하게 찾아낼 수 있게 되었습니다.

 

 

 

 

 

 

 

 

 

 

 

 

 

주인장 이해

더보기

Phase 1: Knowledge Infusion (고품질 학습 데이터 생성)

이 단계는 VLM을 이용해 정답지(Label)가 없는 데이터에 정답을 만들어주는 과정입니다.

  1. [Input] 이미지와 그 이미지를 설명하는 텍스트 캡션(Image Caption)을 입력받습니다.
  2. [Parsing] 캡션을 언어 분석기로 분해하여 <주어-동사-목적어> 형태의 텍스트 Triplet들을 추출합니다.
  3. [Bidirectional Prompt] 추출된 Triplet을 LLM에 넣어 **'능동태 문장(Action)'**과 '수동태 문장(Counter-action)' 두 가지 형태의 프롬프트로 변환합니다.
  4. [Interaction Grounding] VLM(Grounding DINO)이 이 두 가지 문장을 동시에 참조하여, 단순 객체가 아닌 '상호작용 문맥'에 맞는 객체의 위치(Bounding Box)를 찾아냅니다.
  5. [Pseudo-Labeling] 찾아낸 위치 정보와 관계 정보를 결합하여, 노이즈가 제거된 고품질의 **가상 정답 데이터(Pseudo-Supervision)**를 완성합니다.

Phase 2: Knowledge Transfer (모델 추론 및 학습)

이 단계는 위에서 만든 데이터를 이용해 OVSGG 모델이 이미지를 Scene Graph로 바꾸는 과정입니다.

  1. [Feature Encoding] 입력 이미지를 Visual Encoder(Swin Transformer 등)에 통과시켜 다차원 **Visual Map(시각 정보)**을 추출합니다.
  2. [Step I Selection] Visual Map의 각 픽셀(토큰)들이 '객체' 및 '관계' 텍스트 임베딩과 얼마나 유사한지 계산하여 1차 후보를 추립니다.
  3. [Step II Selection (핵심)] VLM 텍스트 인코더에서 생성된 **'상호작용 토큰'**과 비교하여, 실제 관계를 맺고 있을 확률이 높은 토큰을 최종 Object Query로 선발합니다.
  4. [Decoding] 선발된 쿼리들을 DETR 디코더에 입력하여, 이미지 전체의 문맥(Context)을 반영해 객체의 위치와 특징을 정교하게 다듬습니다.
  5. [Classification] 디코더를 통과한 쿼리 정보를 바탕으로 **객체의 종류(Object Class)**와 **두 객체 사이의 관계(Relation Class)**를 예측합니다.
  6. [Distillation (학습 시)] Teacher 모델(Pre-trained VLM)의 지식을 배우되, **객체 간의 관계적 구조(Structure)**까지 똑같이 모방하도록 특수한 손실 함수(ICKD)로 학습합니다.
  7. [Output] 최종적으로 이미지 내 객체들의 위치(BBox), 이름(Label), 그리고 그들 사이의 **관계(Predicate)**가 모두 연결된 Scene Graph를 출력합니다.