[DL輪読会]Graph R-CNN for Scene Graph Generation

330 Views

November 30, 18

スライド概要

2018/11/30
Deep Learning JP:
http://deeplearning.jp/seminar-2/

シェア

またはPlayer版

埋め込む »CMSなどでJSが使えない場合

(ダウンロード不可)

関連スライド

各ページのテキスト
1.

DEEP LEARNING JP [DL Papers] Graph R-CNN for Scene Graph Generation (ECCV2018) Norihisa Kobayashi http://deeplearning.jp/ 1

2.

書誌情報 タイトル: 著者: Graph R-CNN for Scene Graph Generation(ECCV 2018) (https://arxiv.org/abs/1808.00191) Jianwei Yang, Jiasen Lu, Stefan Lee, Dhruv Batra, Devi Parikh 概要: • 画像中の対象物の関係を検出するGraph R-CNNと呼ぶ新しいグラフ生成モデルを提案 • 画像内のオブジェクト間の関係性を扱う関係提案ネットワーク(RePN)を提案 • オブジェクトと関係間のコンテキスト情報を効果的に捕捉する注目グラフ畳み込みネットワーク (aGCN)を提案 • Scene Graph生成のための評価メトリック(SGGen+)を提案 2

3.

アジェンダ 1. 2. 3. 4. 5. 6. 概要 関連研究 提案手法 評価手法 実験 まとめ 3

4.

1. 概要 背景 • 視覚シーンの理解は、従来、画像内のオブジェクトの識別(画像認識)と、空間的範囲の予測 (物体検出)に焦点が当てられてきた。 • 画像認識や物体検出の技術は、近年著しく成熟しているが、シーンを理解するために不可欠な オブジェクトの集合の関係性を捉えることができていない。 • シーングラフは、画像キャプション、視覚的質問応答など、より高レベルの視覚情報タスクをサポート することができると考えられている シーングラフ表現を効率的かつ正確に抽出したい 4

5.

1. 概要 • シーングラフの生成には、画像内のオブジェクトおよび関係を合わせて検出する必要がある。 • 一つのアプローチとしては、オブジェクト提案のすべてのペアを潜在的なエッジとして結び、完全に接続されたグ ラフ上で推論すること。しかし、オブジェクトの提案数が増えたときには、2次的にスケールするため、すぐに実用 的でなくなる。 オブジェクトの数がnとすると、 オブジェクトと関係の数は O(𝑛2 )となり、計算量が膨大 5

6.

1. 概要 解決の方向性 オブジェクト同士は、関係性が高いものと低いものがある。 • タイヤ(黄色いノード)は、車(赤いノード)の上に発生しやすい [関係性が高い] • 車(赤いノード)は、建物(緑のノード)とはあまり関係性がない [関係性が低い] ⇒現実の世界では、相互に関係のあるオブジェクトは少ない。関係性があるものを厳選したい。 6

7.

1. 概要 Graph R-CNNの処理の流れ RPNを利用してシーン内 に見えるオブジェクトの集 合を抽出。 すべてのノード間の可能な 関係を考慮する。 RePNを介して、可能性の 低い関係を削除し、よりス パースな候補グラフ構造を 生成する。 aGCNで隣接ノードから 文脈情報を統合する。 7

8.

2. 関連研究 Faster R-CNN[Ren, Shaoqing, et al. NIPS 2015] • Fast R-CNNにRegion Proposal Network(RPN)を導入して、更に高速化したアルゴリズム。 • Region Proposal Network(RPN)は、Feature mapsを使って効率よく領域候補を生成する仕組み。 ② Sliding windowで切り出した Feature mapsから、領域候 補を生成 ① CNNの畳み込み層を使って Feature mapsを生成する 8

9.

2. 関連研究 Relationship Proposal Networks(Rel-PN)[Ji Zhang et al. CVPR 2017] • • subject、objects、predicatesを独立して予測し、有効な3つの組み合わせをscore付けする。 クラスに依存せず、シーングラフは生成しない 9

10.

2. 関連研究 Pixels to Graphs by Associative Embedding[Newell et al. NIPS 2017] • オブジェクト検出器を使わずに、画像ピクセルからシーングラフを直接生成することを提案 10

11.

3. 提案手法 Graph R-CNN 入力画像Iから、S=(V, E, O, R)を求めるモデルを作る。 すなわち、画像を入力した時に、物体位置と物体間の関係を出力するようなモデルを作る。 そのために、モデルを3つの要素(物体検出, 関係性検出, グラフラベリング)に分解する。 V:Iの物体領域と対応したグラフのノード E:物体間の関係性(グラフのエッジ) O:物体 R:物体のラベル 11

12.

3. 提案手法 Graph R-CNN 物体検出 関係性検出 グラフラベリング (Faster R-CNN) (RePN) (aGCN) 12

13.

3. 提案手法 Graph R-CNNの構造 RPNを利用してシーン内に見えるオ ブジェクトの集合を抽出。すべての ノード間の可能な関係を考慮する。 RePNを介して、可能性の低い関 係を削除し、よりスパースな候補グ ラフ構造を生成する aGCNで隣接ノードから文 脈情報を統合する Scene Graphを生成! 13

14.

3. 提案手法 Object proposals Object proposalsは、Faster R-CNNで実装。 出力は、空間的な位置𝑟𝑖𝑜 = {𝑥𝑖 , 𝑦𝑖 , 𝑤𝑖 , ℎ𝑖 }、特徴ベクトル𝑥𝑖𝑜 ∈ 𝑅𝑑 , クラス推定ラベル𝑝𝑖𝑜 ∈ 𝑅𝐶 の3つ。 これらをproposalの数n個並べたものを、𝑅𝑜 ∈ ℝ𝑛×4, 𝑋 𝑜 ∈ ℝ𝑛×𝑑, 𝑃 𝑜 ∈ ℝ𝑛×𝐶 とする。 14

15.

3. 提案手法 Relation Proposal Network(RePN) • • • Object proposalsによって、n個の物体領域候補が得られた時、connection は、𝑂 𝑛2 で計算可能。 しかし、基本的に多くの物体ペアは、関係性を持たないため、Relation Proposal Net(RePN)によって、その規則性をモデル化する。 RePNは、物体間の関連度合い(relatedness)を効率的に推定し、関連度 の低いエッジを切ることで、シーングラフ候補を減らす。 relatednessを推定し、関 連の低いエッジを切る • relatednessの推論には、クラス推定結果の分布𝑃 𝑂を使う。具体的には、𝑃 𝑂 が得られたらエッジの方向を含んだすべ ての組み合わせ𝑛・(𝑛 − 1)について、relatedness 𝑠𝑖𝑗 = 𝑓(𝑝𝑖𝑂 , 𝑝𝑗𝑂 )を計算する。 • 𝑓は、学習によって得られる関数で、ここでは[𝑃𝑖𝑂 , 𝑃𝑗𝑂]を入力とする多層パーセプトロン(MLP)を考える。 • そのまま計算すると、入力のペアの2乗回計算が必要になるため、非対称カーネル関数を使って計算を行う。 15

16.

3. 提案手法 Relation Proposal Network • relationshipにおけるsubject と objectの射影関数として、Φ(・)と Ψ(・)を定義。 • Φ(・) とΨ(・)に対して同じアーキテクチャで異なるパラメータを持つ、2つの多層パーセプトロン(MLP)を使用。 • この分解により、score matrix 𝑆 = {𝑠𝑖𝑗 }𝑛×𝑛が行列積で表現できる。 • すべての関連性スコアが0〜1の範囲になるように、最後にsigmoid関数を適用する。 • すべてのオブジェクトペアのスコア行列を取得した後、スコアを降順でソートし、top Kを選択する。 16

17.

3. 提案手法 Relation Proposal Network IoUの計算 • 𝐼, 𝑈はそれぞれ、bounding box間の交差(intersection)領域と、結合(union)領域。 • 2つの物体のペア{𝑢, 𝑣}, {𝑝, 𝑞}を対象とする点が、一般的なIoUと異なる。 以上の計算より、m個の物体ペアを表現したグラフ 𝑔 = (𝑉, 𝐸)を得て、 𝑟 }を取得する。 個々のペアのunion boxからvisual representations 𝑋 𝑟 = {𝑥1𝑟 , … , 𝑥𝑚 17

18.

3. 提案手法 グラフコンテキストを統合する • RePNによってグラフ構造をスパースにした後に、Attentional GCNsを使って、シーングラフのラベルを推測する。 18

19.

3. 提案手法 Attentional GCN • • グラフ構造から、contextual informationを得るためのモデル。 グラフ畳み込みネットワーク(GCN)をシーングラフ生成に拡張し、 attentionメカニズムを追加。 GCNは、グラフの各ノード𝑖が特徴量𝑧 𝑖 ∈ ℝ𝑑を持つとし、隣接ノードの特徴量を{𝑧𝑗 |𝑗 ∈ 𝑁(𝑖)}とする。 GCNに対して、学習される重み𝑊と隣接行列𝛼を使って以下のような変換を行う • • 𝜎は非線形関数ReLU 。𝑍 ∈ 𝑅𝑑×𝑇𝑛は特徴量を並べた行列。 隣接行列は、ノード𝑖, 𝑗が隣接関係にある時、α𝑖𝑗 = 1でそれ以外は0の値を持つ。ただし、ここでは対角成分は1とする。 重み行列に隣接行列を掛けることで、隣接関係がある所のみ重みが残る。 19

20.

3. 提案手法 Attentional GCN • 本論文では、GCNの𝛼を2層MLPを使って以下のように求める。 • • • 𝑤ℎ , 𝑊𝑎 は学習パラメータ。[・,・]は連結(concatenation)を表す。 𝛼はsoftmaxの値に関わらず対角成分は1、隣接関係が無いノードに対応する要素は0にする。 隣接行列にアテンションのメカニズムを追加している。 20

21.

3. 提案手法 aGCN for Scene Graph Generation • • ※Relation networks for object detection[Hu, H.et al. CVPR 2018] すべてのオブジェクトノード間にスキップ接続を挿入する。(他研究※にてパフォーマンスが向上することが示されている) 現状得られたグラフには、object ↔ relationship、relationship ↔ subject、object ↔ objectに関係する接 続がある。また、subject→relationshipと、relationship→subjectで接続の意味合いが変わることが考えられる。 そこで、タイプsからタイプoへの変換(例:s=subject → o=objectsへの変換)の重み行列を𝑊 𝑠𝑜 と定義すると 以下で表現できる。 objcetに関する特徴量の更新 objcet→objcet subject→relationship object→relationship relationshipに関する特徴量の更新 relationship→subject relationship→object 21

22.

3. 提案手法 loss function 𝑃(𝑉|𝐼)、𝑃(𝐸| 𝑉, 𝐼)、𝑃(𝑅, 𝑂| 𝑉, 𝐸, 𝐼)をそれぞれ教師ありで学習 Faster R-CNNのRPNと同様 の損失関数を使用 multi-class cross entropyを使って、 物体の分類、述語の分類を学習 binary cross entropyを使って、 各objectペアの関係性の有無を学習 22

23.

4. 評価指標 本論文では、Scene Graph生成のための評価メトリック(SGGen+)を提案 • • SGGenと呼ばれるこのメトリックの下では、正解のシーングラフは<object , relationship, subject>の集合と して表され、リコールは完全一致によって計算される。 3つの要素すべてが正しくラベル付けされ、subjectノードとobjectノードの両方が適切にローカライズされている (すなわち、境界ボックスIoU> 0.5)場合、生成されたシーングラフで「一致」とみなされる。 SGGenとSGGen+の違いを示す例 ※(b)が正解のグラフで、(c)〜(e)の赤文字が誤った予測 • • SGGenでは、<object , relationship, subject>の3つが一致している必要がある。 SGGen+は、singletons(objcect とpredicate)も考慮してスコアリングする。 23

24.

4. 評価指標 SGGen+ SGGen+は、グラフ内の<object , relationship, subject>の集合だけでなく、singletons(object とpredicate) も考慮して、スコアリングする。 𝐶(𝑂):正しくローカライズされ、認識されたobjectノードの数 𝐶(𝑃):正しく認識されたpredicateの数。 predicateの位置は、subjectとobjectの位置に依存するため、subjectとobjectの両方が 正しくローカライズされ、predicateが正しく認識される場合のみ、それを1と数える。 𝐶(𝑇):正しく認識された<object , relationship, subject> の数 𝑁:正解グラフのエントリ数(objectの数、predicateの数、relationshipの数、の合計) 24

25.

5. 実験 データセット :Visual Genome dataset • • • 訓練データ:75,651画像、 テストデータ:32,422画像に分割。 上位150個のオブジェクトクラスと、50個のリレーション クラスが選択されている。 各画像には、約11.5個のオブジェクトと、6.2個の関 係がある。 訓練 • 物体検出器を事前に学習させてから、シーングラフ生成モデル 全体を学習する2段階の学習を行う。 ハイパーパラメータ RPNからの提案数:256 オブジェクトペアのサンプリング:128 NMSの閾値:0.7 学習率:0.01 optimizer:SGD 出典:https://visualgenome.org/ 25

26.

5. 実験 Metrices 以下の4つのメトリックを使用 - 述語分類(PredCls) 2つのオブジェクト間の関係を評価する指標。 - フレーズ分類(PhrCls) 2つのオブジェクトカテゴリを評価する手法。 - シーングラフ生成(SGGen) オブジェクト検出(IoU > 0.5)およびオブジェクトペア間の関係を認識するためのパフォーマンス。 - 包括的なシーングラフ生成(SGGen+) SGGenによってカウントされたトリプレットの他に、シングルトンとペア(存在する場合)を考慮する。 26

27.

5. 実験 SGGenとSGGen+の比較 ランダムな不正なラベルを、1)関係なし、 2)関係あり、 3)関係ありなし両方のオブジェクトに割り当てる。 そして、不正なラベルの割合を20%、50%、100%のケースで比較する。 SGGen 1)関係のない組のみのため、影響は少ない(一貫して100に留まる)。 2)関係を持つオブジェクトのラベルエラーには、過度に影響を受ける。ラベルが不正の場合、スコアが0になる。 (1) (2) (3) SGGen+は、1)関係なし、2)関係ありの場合でもスコアが下がり、ラベルが不正であっても0以外のスコアが付く。 ⇒より包括的な指標であると考えられる。 27

28.

5. 実験 シーングラフ生成性能 • 反復メッセージパッシング(IMP)、マルチレベルシーン記述ネットワーク(MSDN)などの提案手法と比較。 • 上の3行は、元の論文に記載されている結果。下の4行は本研究にて再実装した結果。 • Graph R-CNNは、IMP†、MSDN†、NM-Freq †より優れた結果となった。 28

29.

5. 実験 モデル別の精度の比較 • Ablation studyの結果、RePNによって、SGGen、SGGen+を向上させていることがわかる。 29

30.

5. 実験 RePNを追加したときのカテゴリごとのオブジェクト検出パフォーマンスの変化 • • RePNを追加することで、ほぼすべてのカテゴリで検出パフォーマンスが上昇している。 他のオブジェクトと強い関係を持つ小さなオブジェクト(ラケット、シャツ、フロントガラス、ボトルなど)のカテゴリでの 検出性能が高く出た。 30

31.

5. 実験 定性的結果 • • 青色バウンディングボックスは正解領域。オレンジ色のバウンディングボックスは正しく予測した領域。 シーングラフの青い楕円形は正しい関係。緑色の楕円形は正しく予測した関係。 31

32.

6. まとめ 結論 • 画像中の対象物の関係を検出するGraph R-CNNと呼ぶ新しいグラフ生成モデルを提案 • 画像内のオブジェクト間の関係性を扱う関係提案ネットワーク(RePN)を提案 • オブジェクトと関係間のコンテキスト情報を効果的に捕捉する注目グラフ畳み込みネットワーク(aGCN)を 提案 • Scene Graph生成のための評価メトリック(SGGen+)を提案 32

33.

Appendix 参考文献 • Dai, B., Zhang, Y., Lin, D.: Detecting visual relationships with deep relational networks. In: CVPR (2017) • Das, A., Kottur, S., Gupta, K., Singh, A., Yadav, D., Moura, J.M., Parikh, D.,Batra, D.: Visual dialog. In: CVPR (2017) • Johnson, J., Krishna, R., Stark, M., Li, L.J., Shamma, D.A., Bernstein, M., Fei-Fei,L.: Image retrieval using scene graphs. In: CVPR (2015) • Hu, H., Gu, J., Zhang, Z., Dai, J., Wei, Y.: Relation networks for object detection. In: CVPR (2018) • Kipf, T.N., Welling, M.: Semi-supervised classification with graph convolutional networks. In: ICLR (2017) • Krishna, R., Zhu, Y., Groth, O., Johnson, J., Hata, K., Kravitz, J., Chen, S., Kalan-tidis, Y., Li, L.J., Shamma, D.A., et al.: Visual genome: Connecting language and vision using crowdsourced dense image annotations. IJCV 123(1), 32-73 (2017) • Li, Y., Ouyang, W., Wang, X.: Vip-cnn: A visual phrase reasoning convolutional neural network for visual relationship detection. In: CVPR (2017) • Newell, A., Deng, J.: Pixels to graphs by associative embedding. In: NIPS (2017) • Ren, S., He, K., Girshick, R., Sun, J.: Faster r-cnn: Towards real-time object detection with region proposal networks. In: NIPS (2015) • Xu, D., Zhu, Y., Choy, C.B., Fei-Fei, L.: Scene graph generation by iterative message passing. In: CVPR (2017) • Rel-PN Zhang, J., Elhoseiny, M., Cohen, S., Chang, W., Elgammal, A.: Relationship proposal networks. In: CVPR (2017) 33