안녕하세요. 이번에 소개할 논문은 Scene Graph Generation 분야의 논문으로, 계층적 관계와 상식 검증 두 가지 방법을 통해 Scene Graph Generation의 성능을 높이고, 잘못된 예측을 줄이는 방법을 제시한 논문입니다. 저는 최근에 LLM을 활용한 실험을 진행 중인데, 해당 논문을 통해 LLM 사용 방향성을 잡을 수 있을 것 같아 이 논문을 읽게 되었습니다. 그럼 바로 리뷰 시작하겠습니다.
1. Introduction
이 논문은 Scene Graph Generation 분야의 연구로, 계층적 관계를 이용해 간단하면서도 성능을 향상시킬 수 있는 접근법을 제시합니다. Scene Graph Generation은 이미지 내 객체와 그들 간의 관계를 추론하는 문제로, 단순히 Object Detection이나 Segmentation 보다 더 복잡한 태스크입니다. Object Detection 방법은 개별 객체들을 분리하여 다루지만, Scene Graph Generation은 이미지 전체를 그래프 형태로 표현합니다. 여기서 각 객체는 노드(Node)가 되고, 객체 간의 관계는 간선(Edge)이 됩니다. 기존 연구들은 visual scene에서의 정교한 관계들을 다루기 위해 복잡한 아키텍처를 설계해왔습니다. 이 연구에서는 Scene Graph Generation 성능을 향상시키기 위해 relation 카테고리 간의 자연스러운 계층(hierarchy)을 활용하는 방법을 보여줍니다.
장면 속에서 객체들이 서로 어떻게 연결되는지를 설명하는 방법은 다양합니다. 저자는 이를 더 잘 정리하기 위해, Neural Motifs의 정의를 참고하여, 장면 그래프에서 자주 등장하는 관계들을 크게 기하학적(geometric), 소유적(possessive), 의미적(semantic) 세 가지 슈퍼 카테고리로 나눕니다.
![](http://server.rcv.sejong.ac.kr:8080/wp-content/uploads/2025/02/스크린샷-2025-02-02-오후-8.25.05-1-1024x719.png)
예를 들어, Fig1 에서 볼 수 있듯이 기하학적 관계(Geometric)는 위치와 공간적인 관계를 나타내며, 소유적 관계(Possessive)는 물체가 다른 물체를 소유하거나 포함하는 경우, 의미적 관계(Semantic)는 개체들이 의미적으로 연결된 경우에 해당됩니다. 이러한 관계는 상식적인지(Commonsense-aligned) 또는 비상식적인지(Violated)도 구분됩니다. 저자는 모델이 이러한 관계를 명시적으로 활용할 수 있도록 설계하였습니다.
또한, 토큰 임베딩 공간에서 자동 군집화(Clustering)를 통해 사람이 개입하지 않고도 관계를 구분할 수 있는 방법을 제안합니다. 이를 통해 제안된 계층적 분류(Hierarchical Classification) 체계는 큰 카테고리부터 예측을 시작하여 그 안에서 더 구체적인 관계를 예측하는 방식으로, 두 단계로 나누어 더 정확한 장면 그래프 생성을 목표로 합니다.
기존의 Scene Graph Generation 모델은 이미지에서 객체들 사이의 관계를 예측할 때, 비현실적이거나 말이 안 되는 관계를 예측하는 문제가 있었습니다. 예를 들어, “bunny jumping plate”라는 말이 안 되는 관계가 예측될 수 있습니다. 이런 잘못된 예측을 unreasonable relationship라고 하는데, 저자는 이 문제를 해결하기 위해, LLM 과 VLM을 사용하여 모델이 예측한 관계가 상식에 맞는지 아닌지를 판단할 수 있는 검증 파이프라인을 추가로 제안합니다.
저자가 제안한 HIERCOM(HIErarchical Relation head and COMmonsense validation pipeline은 , HIER (계층적 관계 헤드)와 COM (상식 검증 파이프라인)으로 구성되어있습니다. 이는 간단하지만 기존의 Scene Graph Generation 모델의 성능을 향상시킬 수 있음을 실험을 통해 입증합니다 추가적으로, 언어 모델이 그 규모나 비전 기능의 유무와 관계없이 commonsense validation 태스크에서 잘 작동한다는 것을 보여주었습니다. 즉, 대형 모델이 아니더라도 작은 규모의 언어 모델만으로도 상식에 맞지 않는 관계를 잘 걸러낼 수 있음을 보여주었습니다. 이러한 일관된 성능 덕분에, HIERCOM 알고리즘은 소규모 언어 모델을 사용하더라도 효율적으로 Scene Graph Generation을 수행 가능하게 합니다.
2. Scene Graph Construction
![](http://server.rcv.sejong.ac.kr:8080/wp-content/uploads/2025/02/스크린샷-2025-02-03-오전-12.43.57-1024x430.png)
이 섹션에서는 Scene Graph Construction에 대해 설명하고 있으며, baseline model과 이를 개선하는 계층적 관계 헤드(Hierarchical Relation Head)와 상식 검증 파이프라인(Commonsense Validation Pipeline)을 소개합니다.
2.1. Baseline Model
저자는 Baseline Model로 Detection Transformer (DETR)을 사용합니다. 첫 번째 단계에서는 DETR을 사용하여 이미지를 분석하고, 이미지 내 객체들을 탐지합니다. 두 번째 단계에서는 MiDaS 방법을 사용하여 이미지에서 depth map을 추정합니다. 이 depth map은 기존 이미지 특징에 결합되어 새로운 이미지 특징을 생성합니다.
그 다음, 모델은 객체들(subject, object) 간의 관계를 예측하는데, 이를 위해 각 객체의 임베딩을 별도로 계산합니다. 이후 두 객체의 바운딩 박스를 내적 연산을 통해 특징을 추출한 후, 두 방향(객체 A -> 객체 B, 객체 B -> 객체 A)으로 결합하여 관계를 예측합니다.
마지막으로, 두 객체 간의 관계는 SoftMax 함수와 linear layer 을 사용하여 예측됩니다. 이를 통해 각 관계의 확률을 계산하고, 관계 rij와 rji를 추정합니다.
![](http://server.rcv.sejong.ac.kr:8080/wp-content/uploads/2025/02/스크린샷-2025-02-02-오후-10.49.48.png)
2.2. Hierarchical relation head
계층적 관계 헤드(hierarchical relation head)는 Bayes’ rule에서 영감을 받아 기존의 평면적인 분류 헤드를 대체한 방법으로, 관계를 더 세분화하여 더욱 정확한 예측을 가능하게 만듭니다. 모델은 먼저 관계의 슈퍼 카테고리(기하학적, 위치적, 의미적)를 예측하고, 각 카테고리 내에서 세부적인 관계를 예측합니다.
![](http://server.rcv.sejong.ac.kr:8080/wp-content/uploads/2025/02/스크린샷-2025-02-02-오후-11.12.05.png)
rsc_ij: 이 값은 3개의 관계 슈퍼 카테고리(기하학적, 소유적, 의미적)와 배경 클래스에 대한 확률을 나타냅니다. rgeo_ij, rpos_ij, rsem_ij: 각 관계는 기하학적, 소유적, 의미적 범주로 세분화되어 예측됩니다.
모델은 하나의 엣지에 대해 세 가지 다른 관계(predicates)를 예측합니다. 각 관계는 기하학적, 위치적, 의미적 등 서로 다른 유형의 슈퍼 카테고리에 속합니다. 이 세 가지 관계는 confidence ranking에 사용되어 모델이 각 관계의 예측 결과에 대해 얼마나 신뢰할 수 있는지 평가하고, 그 신뢰도를 바탕으로 순위를 매깁니다. 이를 통해 모델이 더 복잡한 관계를 예측하도록 설계합니다.
모델 학습을 위해 세 가지 손실 함수가 사용됩니다.
![](http://server.rcv.sejong.ac.kr:8080/wp-content/uploads/2025/02/스크린샷-2025-02-02-오후-11.12.42.png)
Lsup_rel은 슈퍼 카테고리에 대한 손실이며, Lsub_rel은 각 슈퍼 카테고리 내에서 세부적인 관계에 대한 손실, Lcontrastive는 contrastive loss 입니다. 이 손실 함수들을 조합해 모델이 계층적 구조를 반영하면서도 정교한 관계 예측을 수행하도록 합니다.
2.3. Commonsense validation
저자는 Language Models이나 Vision-Language Models을 사용해 Scene Graph Generation 결과를 평가하고, 상식에 맞는 예측만을 선택하는 방법을 제시합니다. 여기서는 LLaMA-3-8B와 같은 소형 오픈 소스 언어 모델이나 LLaVA-1.6-7B 같은 소형 비전-언어 모델을 사용합니다. 이 오픈 소스 모델을 사용하여 예측된 top m-n개의 관계(predicates)가 상식에 맞는지를 확인하는 방식으로 진행됩니다. 이 검증 과정은 상식에 어긋나는 예측을 걸러내는 역할을 합니다. 아래의 예시를 통해 프롬프트가 어떻게 설계되는지 확인할 수 있습니다.
![](http://server.rcv.sejong.ac.kr:8080/wp-content/uploads/2025/02/스크린샷-2025-02-02-오후-11.29.33-1-1024x913.png)
2.4. Seamless integration with existing frameworks
HIERCOM은 계층적 관계 헤드(Hierarchical Relation Head)와 상식 검증 파이프라인(Commonsense Validation Pipeline)으로 구성된 Plug-and-Play 모듈로, 기존의 SOTA 모델뿐만 아니라 baseline 모델에도 쉽게 통합될 수 있도록 설계됩니다. 구체적으로 계층적 관계 헤드는 baseline 모델의 분류 과정에서 last Linear Layer을 대체하여 관계 예측을 보다 정교하게 수행할 수 있도록 합니다. 이를 통해, 모델은 관계를 단순한 분류가 아닌 계층적 구조를 반영하여 처리하며, 보다 체계적인 방식으로 관계를 예측할 수 있습니다. 이후, 예측된 트리플릿(주어, 관계, 객체)은 상식 검증 파이프라인을 거치면서 물리적으로 불가능하거나 비논리적인 관계를 걸러냅니다. 이를 위해 소형 언어 모델이나 비전-언어 모델을 활용하여 예측된 관계가 실제로 상식에 부합하는지 확인하며, 높은 신뢰도를 가졌더라도 상식적으로 타당하지 않은 관계들은 제거합니다. 이러한 과정은 baseline 모델의 구조를 크게 변경하지 않으면서도 보다 정확하고 현실적인 관계 예측을 가능하게 합니다.
3. Experiments
3.1. Datasets and Evaluation Metrics
저자의 실험은 Visual Genome과 OpenImage V6 데이터셋을 사용하여 진행되었습니다.
- Visual Genome에서는 상위 150개의 객체 라벨과 50개의 관계를 선택하여, 총 75.7k개의 훈련 이미지와 32.4k개의 테스트 이미지를 사용합니다.
- OpenImage V6에서는 601개의 객체 라벨과 30개의 관계, 약 53.9k개의 훈련 이미지와 3.2k개의 테스트 이미지를 사용합니다.
저자는 세 가지 태스크을 수행합니다:
- Predicate classification (PredCLS): Ground-truth 바운딩 박스와 라벨을 기반으로 관계를 예측
- Scene graph classification (SGCLS): 바운딩 박스가 주어진 상황에서 관계를 예측
- Scene graph detection (SGDET): 객체에 대한 사전 지식 없이 예측된 바운딩 박스와 타겟 박스의 IoU가 0.5 이상인 관계를 예측
3.2 Numerical results
![](http://server.rcv.sejong.ac.kr:8080/wp-content/uploads/2025/02/스크린샷-2025-02-02-오후-11.46.13-1024x737.png)
![](http://server.rcv.sejong.ac.kr:8080/wp-content/uploads/2025/02/스크린샷-2025-02-02-오후-11.45.34.png)
표 1은 주요 실험 결과를 보여줍니다. 제안된 계층적 관계 헤드(hierarchical relation head)와 상식 검증 파이프라인(commonsense validation pipeline)은 모델에 독립적이기 때문에 다양한 백본 모델에서 제안된 모듈을 통합한 경우와 통합하지 않은 경우의 성능을 비교하였습니다. 저자의 분석 결과는 거의 모든 경우에서 제안된 모듈이 성능을 크게 향상시킨다는 것을 확인할 수 있습니다. 특히, R@k와 mR@k 지표에서 모든 세 가지 태스크에 대해 성능 향상이 있었습니다. 또한 표 5의 Zero-shot 결과에서도 성능 향상이 있음을 확인할 수 있습니다.
3.3. Visual results
![](http://server.rcv.sejong.ac.kr:8080/wp-content/uploads/2025/02/스크린샷-2025-02-02-오후-11.48.58-1024x502.png)
![](http://server.rcv.sejong.ac.kr:8080/wp-content/uploads/2025/02/스크린샷-2025-02-02-오후-11.49.17-1024x779.png)
그림 4는 예측된 장면 그래프의 일부를 보여줍니다. 이 그림은 각 이미지에 대해 상위 10개의 관계(predicates)를 포함하고 있습니다.두 번째 행은 최종 장면 그래프를 나타내고, 세 번째 행은 상식 검증 없이 수행된 실험을 보여줍니다.
상식 검증은 나타날 수 있었던 비합리적인 관계를 효과적으로 제거합니다. 예를 들어, “tree has hand”와 같은 관계는 상식 검증을 거친 후 처음 예측에서 제거됩니다. 또한, 주목할 점은 주석이 없는 유효한 예측(valid predictions)도 많다는 것입니다. 이러한 예측은 검은색으로 표시되며, true positives을 나타내는 분홍색 선(edge)의 수보다 훨씬 더 많은 수가 표시됩니다. 이는 데이터셋이 sparse하게 annotation 되어있다는 것을 알 수 있습니다. 그리고 주석되지 않았지만 실제로 유효한 예측이 많다는 것은, 모델이 주석된 데이터만으로 제한되지 않고, 더 넓은 범위에서 합리적인 예측을 할 수 있다는 것을 의미하는데, 이는 데이터에 주석되지 않은 관계들도 상식에 부합하며 실제로 타당한 예측일 수 있다는 것을 알 수 있네요. 파란색 선은 잘못된 예측을 나타내는데, 저자는 이러한 불완전한 주석에서도 다양한 관계 정보를 학습하고 있고, 광범위한 관계(predicates) 세트를 만드는 것이 실제 장면을 이해하는데 있어 도움이 된다는 것을 강조하고 있습니다.
3.4. More results on the hierarchical relation head
이 섹션에서는 hierarchical relation head에 대한 추가 실험 결과나 분석을 다룹니다.
Handling the long-tailed distribution
저자는 relation label의 long-tailed distribution를 처리하기 위해 새로운 알고리즘을 제안합니다. 기존의 방법들인 CogTree와 HML의 성능을 비교했는데, 이 두 방법은 각각 자체적인 계층 구조를 사용하기 때문에 저자가 제시한 계층적 예측 헤드를 사용하지 않았습니다. 이들 방법은 mR@k 점수에서 더 높은 성과를 보였지만, R@k 점수는 낮았습니다. 이에 대한 수치적 결과는 아래 표 2에 나와있는데, 저자가 제안한 모델-독립적 모듈이 SOTA mR@k 점수를 향상시키면서도 더 높은 R@k 점수를 동시에 달성할 수 있음을 보여줍니다. 또한, 그림 5에 나타난 히스토그램은 long-tail 부분에 있는 라벨에서 추가적인 개선을 얻을 수 있다는 것을 보여줍니다.
![](http://server.rcv.sejong.ac.kr:8080/wp-content/uploads/2025/02/스크린샷-2025-02-03-오전-12.14.31-1024x601.png)
![](http://server.rcv.sejong.ac.kr:8080/wp-content/uploads/2025/02/스크린샷-2025-02-03-오전-12.16.51-1024x244.png)
Automatic clustering of the relation hierarchy
![](http://server.rcv.sejong.ac.kr:8080/wp-content/uploads/2025/02/스크린샷-2025-02-03-오전-12.20.44-1024x801.png)
저자는 관계 계층을 자동으로 클러스터링하는 방법도 제안합니다. 기존의 Neural Motifs에서는 관계 계층을 사람이 직접 정의했지만, 이 연구에서는 자동 클러스터링을 통해 사람이 개입하지 않고도 관계를 그룹화할 수 있다는 아이디어를 제시합니다. 예를 들어, k-means와 같은 비지도 학습 방법을 사용해 사전 훈련된 임베딩 공간에서 관계를 클러스터링할 수 있습니다.
표 3에서는 CLIP-Text, GPT-2, BERT와 같은 임베딩 모델을 사용한 클러스터링 결과를 보여주며, 관계 라벨을 단어로 변환하여 토큰 임베딩을 활용한 결과를 다룹니다. 결과적으로, CLIP 모델은 기존에 사람이 정의한 계층과 가장 유사한 성과를 보였고, mR@k 점수도 더 높았습니다. 이를 통해 CLIP이 새로운 데이터셋에 대해 수동 클러스터링 없이도 잘 일반화할 수 있다는 점을 확인할 수 있습니다.
3.5. More results on the commonsense validation
이 섹션에서는 마찬가지로 상식 검증(commonsense validation)에 대한 추가 실험 결과를 다룹니다.
Different choices of foundation models
![](http://server.rcv.sejong.ac.kr:8080/wp-content/uploads/2025/02/스크린샷-2025-02-03-오전-12.26.41-1024x448.png)
표 7에서는 LLM과 VLM을 사용하여 상식 검증을 수행할 때, 모델의 크기와 비전 능력이 결과에 어떤 영향을 미치는지 비교하는 실험을 보여줍니다. 결과는 모델 크기나 비전 기능의 차이가 비상식적인 예측을 걸러내는데 거의 영향을 미치지 않는다는 것을 확인할 수 있었습니다. 이 결과는 LLaMA-3-8B 같은 작은 오픈소스 모델도 충분히 효과적으로 상식 검증을 수행할 수 있음을 의미하며, 따라서 local devices에서도 이러한 검증 시스템을 구현할 수 있다는 것을 보여줍니다.
Commonsense distillation
이 실험에서는 LLM을 사용하면 추론 속도가 느려지는 문제를 해결하기 위해, LLM의 상식 지식을 baseline 모델에 distillation하는 방법을 제안합니다. 먼저, LLM을 활용하여 예측된 관계(predicates) 중 상식에 부합하는 것(Saligned)과 상식을 위배하는 것(Sviolated)을 분류합니다. 이후, 이를 바탕으로 모델을 다시 훈련하는데, 상식에 부합하는 관계에는 낮은 가중치(λweak = 0.1)를, 상식을 위배하는 관계에는 높은 가중치(λstrong = 10)를 적용하여 추가적인 손실 함수(Lcs)를 사용합니다. 이를 통해 모델이 학습 과정에서 상식을 위반하는 관계를 더욱 강하게 억제하도록 유도합니다. 결과적으로, 이 방식으로 학습된 모델은 LLM을 직접 사용하는 방식과 비교해 성능 차이가 1% 이내로 매우 낮았고, 또한 학습된 모델이 추론 시 잘못된 예측을 스스로 필터링할 수 있으므로, LLM 없이도 상식 검증을 수행할 수 있는 가능성을 보여주었습니다.
4. Conclusion
이 연구에서는 계층적 관계(Hierarchical Relationships)를 활용하면 Scene Graph Generation의 성능을 향상시킬 수 있음을 보여주었습니다. 또한, 제안된 상식 검증 파이프라인(Commonsense Validation Pipeline)은 작은 규모의 오픈소스 언어 모델을 사용하더라도, 상식에 어긋나는 관계를 걸러낼 수 있음을 보여주었습니다. 두 가지 접근법 모두 특정 모델에 의존하지 않는 Model-Agnostic 설계여서 응용 가능성이 높은 연구라고 생각되네요.
안녕하세요 정의철 연구원님 리뷰 감사합니다.
“2.2. Hierarchical relation head에서 모델은 먼저 관계의 슈퍼 카테고리(기하학적, 위치적, 의미적)를 예측 한다고” 되어 있는데, 슈퍼 카테고리에 대한 정답값은 어떻게 만드냐요? LLM 사용하나요? 객체들을 슈퍼 카테고리로 분류하는 근거와 방법이 궁금합니다