https://arxiv.org/abs/1608.00187
요약.
visual relationship이란 object 간의 상호작용을 포착하는 것이다. 모든 가능한 관계를 포착하기는 어렵기 때문에 자주나오고 보편적인 관계들만 포착한다. objects와 predicates를 각각 훈련하여 나중에 합쳐서 한 이미지에 대한 여러 관계들을 포착한다.
해당 논문에서는 semantic word embedding을 통해 관계예측에 언어를 사용하였고 bounding box로 관계 예측의 대상인 object를 localize했다. 즉, content 기반으로 relationship understanding을 개선했다.
1. Introduction
Visual relationship detection
= detecting and localizing pairs of objects + classifying the predicate or interaction between each pair
- object detection에 비해 가능한 relationships의 semantic space가 큼
- 자주 발생하는 관계에 대해서 skewed 되어있음
- N objects, K predicates → O(N^2 *k)의 unique detectors를 train해야함
해당 논문에서는 두 가지 module을 사용한다.
1) visual appearance module
- learn appearance of objects & predicates → jointly predict relationships
- O(N+K) detectors만으로 O(N^2 *k)의 relationships을 감지할 수 있음
2) language module
- pre-trained word vectors를 사용함 & relationship embedding → 비슷한 관계들 추측에 도움됨
- 따라서 비슷한 관계들로 추론하여 zero-shot relationship detection이 가능하게 함
- (zero-shot: 모델이 학습과정에서 배우지 않은 작업을 수행하는 것)
2. Related Work
- object co-occurrence
- spatial relationships: above, below, inside, around
- & non-spatial relationships: pull(action), taller than(비교)
- human-object interaction
- visual relationships→ object localization을 개선함
- → images to language
논문에서 쓰인 데이터셋의 relationships들은 크게 5개의 카테고리로 나눠진다.
: verb, spatial, preposition, comparative, action
3. Visual Relationship Dataset
“visual relationships put objects in context”
object detection에서 쓰이는 데이터셋과 다르다.
object localized & interactions between pairs of object(predicates per object category)
+large number of possible relationships type 를 가지고 있어야 한다.
*Datasets
- Visual Phrases
- : focus on 17 common relationship types → 너무 적음
- Scene Graph dataset
- : 23,190 relationships , only 2.3 predicates per object category → 너무 적음
따라서 visual relationship prediction을 위한 데이터셋을 직접 만들게 된다.
- 5000 images with 100 object categories and 70 predicates
- ⇒ total 37993 relationships with 6672 relationship types, 24.25 predicates per object category
common하지 않는 relationship들도 포함한다. train과 test에 각각 4000, 1000 image를 사용했다. 또한, 1877 relationship들은 test에서만 나타나게 했다. (zero-shot)
4. Visual Relationship Prediction Model
Goal of model: detect visual relationships from an image
4.1 Training
supervised set of images with relationship annotations를 사용함.
relationship annotation에는 object들이 bounding box로 localize되어 있고 <object1 - predicate - object2> 이런식으로 label되어 있다.
train은 visual appearance와 language module을 object function에 합쳐서 훈련했다.
4.1.1 Visual Appearance Module
Visual Phrases에서는 각 relationship마다 separate detector를 학습한 반면, 이 모델에서는 object와 predicate 각각에 대해 individual appearance를 학습한다.
따라서 실제세계에서 자주 일어나지 않는 relationship이더라도 object와 predicate가 각각 자주 일어난다면 각각 따로 학습을 했기 때문에 해당 relationship을 탐지할 수 있다.
먼저 100개의 object들에 대해 CNN을 통해 분류하고, 다음으로 70개의 predicate들에 대해 두 물체의 bounding box의 union을 사용하여 두번째 CNN을 통해 분류한다.
- model V()

i, j → bounding box 1,2에 대한 object class
k → predicate class
R → relationship
Pi(O1) → CNN likelihoods of categorizing box O1 as object category i
CNN(O1, O2) → predicate CNN features extracted from the union of the O1, O2 boxes
4.1.2 Language Module
“relationships are semantically related to one another”
이 language module에서는 relationships를 embedding space로 투영시키고(1) 비슷한 relationship들끼리는 벡터 공간상 가깝게 있게 한다(2). likelihood prior on relationships에 대해서도 학습한다.
(1) Projection Function
- pre-trained word vectors를 사용함 (word2vec)
- 두 물체에 대한 두 벡터를 구한 후(word embedding space로 보냄) 그 둘을 relationship vector space로 transform시킨다(projection parameterized by W를 사용).
- 이 projection은 두 물체가 어떻게 상호작용하는지를 나타냄
- word2vec(): 단어를 300 dim으로 변환함
<relationship projection function>

- t_j: word of the jth object category
(2) Training project function
- optimize the projection function
- 휴리스틱을 이용하여 object와 predicate의 word2vec 거리에 비례하게 두 relationship의 거리를 계산한다.
- 예를 들어 <man-riding-horse>는 <man-riding-cow>가 <car-has-wheel>보다 더 거리가 가까워야 한다.

- d(R,R’)는 두 object와 두 relationship의 predicates의 코사인 거리의 합이다.
- variance를 최소로 하는 relationships pair(R,R’)를 찾는다.

(3) Likelihood of a relationship
- project function의 output은 visual relationship의 확률을 도출해야한다.
- 또한, 더 자주 나오는 relationship에 대해 높은 확률을 부과해야한다.

4.1.3 Objective function
: maximize the rank of the ground truth relationship R with bounding boxes O1, O2
- visual appearance module + language module
<rank loss function>

최종 목적식은 다음과 같다.

모두 convex function과 biqudratic function의 합이므로 quadratic closed form이다. 즉, 답이 무조건 존재한다. 람다1, 2는 각각 0.05, 0.002일때가 최적이다.
visual relationship이란 object 간의 상호작용을 포착하는 것이다. 모든 가능한 관계를 포착하기는 어렵기 때문에 자주나오고 보편적인 관계들만 포착한다. objects와 predicates를 각각 훈련하여 나중에 합쳐서 한 이미지에 대한 여러 관계들을 포착한다.
해당 논문에서는 semantic word embedding을 통해 관계예측에 언어를 사용하였고 bounding box로 관계 예측의 대상인 object를 localize했다. 즉, content 기반으로 relationship understanding을 개선했다.