Project page
Introduction
이 논문에서는 scene graph parsing 문제를 다룹니다. Scene graph parsing은 영상으로부터 물체들과 그 관계에 대한 정보를 그래프로 표현하는 것을 말합니다. 예를 들어, 아래 사진에서 scene graph는 사람("man", "woman")과 같은 중요한 물체, 소유("helmet", "glove"), 그리고 동작("riding") 등을 표현합니다.
이러한 그래프를 예측하는 일은 자연어 기반의 이미지 문제를 해결하는데 기여하였고, 컴퓨터비전 시스템의 응용 범위를 넓히는데 활용될 수 있는 잠재력을 가지고 있습니다. Object detection, object interactions, activity recognition과는 다르게 scene graph parsing은 모든 요소들의 복잡한 관계를 추론해야 하는 어려운 문제를 제시합니다.
Proposed Method
Formal definition
Scene graph G는 이미지의 semantic content에 대한 구조화된 표현이며 아래 정보를 포함합니다.
각각의 relationship은 start none, end node, 그리고 relationship label로 이루어진 triplet입니다.
Prevalent Relations in Visual Genome
Visual Genome 데이터셋의 scene graph에 대한 insight를 얻기 위하여, 물체와 관계들을 high-level로 카테고리를 만들어 보았습니다. 아래 표에서 보이는 바와 같이, 대부분의 relation은 geometric, possessive 이며 clothing과 part 가 전체 물체 중 삼분의 일을 차지했습니다. 한편, 동작들을 포함하는 semantic 관계는 자연적으로 거의 절반에 가깝지만 이 데이터셋에서 오직 8.7%만을 차지하였습니다.
아래 그림은 high-level type들을 사용하여 물체들과 물체들 사이의 관계를 도식화 한 것입니다. Clothing과 part 요소들은 거의 독점적으로 possessive 관계로 연결되었고 furniture과 building 요소들은 거의 geometric 관계로 연결되었습니다. 대부분의 semantic 관계는 사람에서 시작하며, 대부분의 edge가 artifacts, vehicles, location에 관계되었습니다. 이러한 구조적 예측 가능성과 geometric, part-object 관계가 대부분인 것은 scene graph의 생성에 common sense prior가 중요한 역할을 한다는 것을 의미합니다.
이렇게 물체와 관계들의 분포에 강한 dependency가 존재한다면, (head, edge, tail) 중에서 일부만 알아도 나머지를 대략 맞출 수 있지 않을까요? 그래서 세 요소들 중 일부를 알 때 나머지 요소에 의한 information gain을 알아보았습니다. 아래 그림은 어떤 요소가 주어진 경우 top-k 추측의 정확도를 나타낸 것입니다. 이 그래프에서 높게 위치한 곡선은 다른 값에 의해 잘 결정된다는 것을 의미합니다. 예를 들어, 가장 높이 있는 곡선인 하늘색(edge|head,tail)은 head와 tail이 주어졌을 때 edge, 즉 head와 tail의 관계는 거의 불확실성 없이 결정된다는 것을 뜻합니다. 아래 그림에서부터 전체적으로 edge가 관계에서 가지는 정보량이 거의 없음을 알 수 있습니다.
Larger Motifs
Scene graph는 local structure 뿐 아니라 더 고수준의 구조도 가지고 있었습니다. 여기서는 scene graph를 구성하는 object-relation-object 레이블들 중에서 mutual information이 높은 조합들을 뽑아 motif를 구성하였습니다. 모티프는 다음과 같은 조건을 만족하여야 합니다: 1) 모든 요소가 포함된 경우가 Visual Genome 학습 셋에서 50회 이상 존재하고 2) 모든 요소가 함께 존재하는 경우가 따로 존재하는 경우에 비해 10배 이상 많아야 합니다. 아래 그림의 오른쪽은 이러한 모티프의 예를 보여줍니다. 왼쪽은 모티프의 길이(모티프에 존재하는 edge의 갯수)에 따라 모티프가 존재하는 이미지의 비율을 표시한 것입니다. Visual Genome 데이터셋의 50% 이상의 이미지는 최소한 2개 이상의 조합을 가지는 모티프를 포함하였습니다.
Model
이 논문에서 제시하는 Stacked Motif Network은 graph G의 확률을 bounding box, object label, label relation 세 가지의 조건부 확률로 decompose 합니다. 즉 이미지에서 물체의 위치를 먼저 찾고(bounding box), 그것이 어떤 물체인지 레이블을 예측하고(labels), 마지막으로 각 물체들 사이의 관계를 예측(relations)하게 됩니다. Object 모델과 relation 모델은 각각 bounding box와 object를 linearize하고 LSTM을 사용하여 contextualized representation을 생성합니다.
전체 구조는 아래와 같습니다. 각각의 단계에 대해서는 아래에 설명합니다.
- Bounding Boxes
Detector로 Faster R-CNN을 사용합니다. Faster R-CNN은 이미지로부터 region proposal과 각각의 proposal에 해당하는 feature vector, object label probability를 함께 출력합니다.
- Objects
두 번째 stage에서는 Faster R-CNN에서 넘어온 bounding box, feature, label probability를 sequence로 만들고, bidirectional LSTM에 통과하여 contextualized representation을 생성합니다. 즉 Object context C는 아래와 같이 계산됩니다. W_1은 예측된 class들을 100-dimension으로 옮기는 parameter matrix 입니다.
Context 벡터는 각각의 proposal bounding region에 대하여 label들을 sequential하게 decode하는데 사용됩니다. 여기에도 LSTM이 사용됩니다. 아래 식의 o_i는 뒷쪽의 relation model에서 사용됩니다.
- Relations
세 번째 stage에서는 Faster R-CNN에서 넘어온 bounding box와 두 번째 stage인 object model에서 넘어온 object를 사용하여 마찬가지 방식으로 bidirectional LSTM을 통하여 contextualized representation을 생성합니다. W_2는 W_1과 같이 parameter matrix입니다.
Decoding 단계에서는 가능한 모든 edge에 대하여 어떤 relation을 가질 확률을 계산합니다. 아래 식에서 d는 biLSTM에서 넘어온 global context 이며 f_i,j는 union of boxes의 feature vector 입니다.
Experiment
Model Details
- Detectors
Detector는 VGG를 backbone으로 사용하는 Faster R-CNN을 사용했습니다. Visual Genome 데이터셋에 pre-trained 된 것을 사용하였습니다.
- Alternating Highway LSTMs
LSTM에서는 vanishing gradient 문제를 해결하기 위해 highway connection을 사용했습니다. 또 파라미터의 갯수를 줄이기 위하여 LSTM 방향을 교차하며 바꾸었습니다. 이를 식으로 표현하면 아래와 같습니다.
위 식에서 h_i는 hidden state를 의미하고, \delta는 방향을 의미합니다. 해당 레이어가 짝수번째이면 delta=1이고 홀수번째이면 delta=0이 됩니다. 논문에서 제시한 MOTIFNET 에서는 object context를 위하여 2개의 alternating highway LSTM을, edge context를 위하여 4개를 사용하였습니다.
- RoI Ordering for LSTMs
Bounding region을 LSTM에 넣어주기 전에 정렬(sort)하는 방법으로 아래 방식들을 실험해 보았습니다.
1) LeftRight (default): 중심 x 값을 기준으로 좌에서 우로 정렬합니다.
2) Confidence: non-background prediction의 최대 confidence를 기준으로 정렬합니다.
3) Size: 크기 기준으로 정렬합니다.
4) Random: 랜덤하게 정렬합니다.
- Predicate Visual Features
두 박스 사이의 predicate를 위한 visual feature를 얻기 위하여, 먼저 두 박스의 union에 해당하는 detector의 feature를 7x7x256 사이즈로 resize하여 얻습니다. Geometric relation은 박스당 하나씩 채널을 가지는 14x14x2 사이즈의 binary input을 활용합니다. 여기에 두 개의 conv layer를 적용하고 나온 7x7x256 feature에 detector feature를 더합니다. 마지막으로 VGG fc layer를 적용합니다.
Training
모든 annotated relation을 학습에 사용하였고, negative relation의 비율이 positive의 3배가 되도록 sampling 하였습니다. Loss term은 predicates에 대한 cross-entropy loss와 object context layer에서 예측된 objects에 대한 cross-entropy loss의 합입니다. Single-GPU에서 SGD를 사용하였고, batch size=6 으로 학습되었습니다.
Evaluation
학습과 마찬가지로 Visual Genome 데이터셋에서 이루어졌습니다. Evaluation을 위하여 세 가지 모드를 사용했습니다.
1) predicate classification: Edge label을 예측
2) scene graph classification: Box label과 edge label을 예측
3) scene graph detection: Boxes, box labels, edge label을 예측
모든 모드에서 recall이 계산되었습니다.
Frequency Baselines
Object label이 edge label에 대하여 highly predictive하다는 발견을 증명하기 위한 실험으로, 학습 셋에서의 통계만을 사용한 frequency baseline도 비교하였습니다. 이 FREQ 모델은 각각의 RoI에서 object label을 예측하는 것은 pretrained detector로 하지만, 두 박스 사이의 predicate probabilities는 학습 셋에서 두 물체 사이의 relation 분포로부터 얻었습니다. FREQ-OVERLAP 모델은 여기에 더하여 pair가 valid relation이 되기 위해서는 두 박스가 교차할 것을 요구하도록 하였습니다.
Results
기존 state-of-the-art 모델들과 비교했습니다. Frequency baseline이 이미 다른 모델들보다 높은 성능을 보여주고 있습니다. 이는 detection과 predicate classification에서의 성능 향상 때문으로 보입니다.
Conclusions
이 논문에서는 이미지를 이해하고 scene graph를 생성하는데 motif가 매우 큰 역할을 할 수 있다는 것을 보입니다. Visual Genome dataset을 분석함으로써, visual cue 없이도 prior만을 사용하는 baseline이 기존 연구의 SOTA 성능을 뛰어넘을 수 있다고 주장합니다. 여기서 나아가 higher-order structure와 global interaction을 고려할 수 있는 MotifNet을 제안하였습니다.
Share article