Deep Learning of Graph Matching 閱讀筆記

Deep Learning of Graph Matching 閱讀筆記

CVPR2018的一篇文章,主要提出了一種利用深度神經網絡實現端到端圖匹配(Graph Matching)的方法. 該篇文章理論性較強,較難讀懂。。。node

論文連接網絡

 

介紹這篇文章以前,須要先了解一下什麼是圖匹配,圖匹配是幹嗎的。app

圖匹配

圖匹配簡單來講就是將已有的兩個圖中對應的頂點關聯起來實現能量函數最大。以多目標跟蹤任務來講,每幀圖像中的觀測均可以構成一個拓撲圖,但願將兩幀圖像中的拓撲圖匹配起來以實現同一條軌跡中的觀測成功匹配。框架

Formulationsvg

 

這裏須要說明的是,通常而言兩個圖之間節點的匹配,直接根據關聯矩陣就能夠了,好比 中分別有個節點,那麼關聯矩陣就決定了節點的匹配結果,可是這樣只考慮了兩個點之間的類似度而沒有考慮更高階信息。高階信息,提及來挺玄的,其實就是更全局的信息。好比這裏兩個點之間是否匹配不只僅取決這兩個點之間的類似度還要考慮這兩個點匹配的話對其餘匹配的影響,從而選取一種匹配使得整體的能量最大。函數

舉個簡單的例子,如今有兩個男孩 和兩個女孩, 有一個掙錢的工做必須男女搭檔完成(一股銅臭味,誰讓我掉錢眼裏了呢。。。),已知搭檔性價好比下:post

掙錢(元) A B
a 1000 900
b 800 600

如今讓你分組你怎麼分?性能

那麼這裏是怎麼刻畫高階信息的呢?實際上是二階信息。學習

還以這個例子來講,構建以下的矩陣spa

  Aa Ab Ba Bb
Aa 1000 0 0 1600
Ab 0 800 1700 0
Ba 0 1700 900 0
Bb 1600 0 0 600

對角線表示兩個點匹配的能量,稱爲邊的unary energy, 非對角線表示對應的兩個匹配同時成立的能量,好比(Aa, Bb)=1600表示Aa和Bb同時成立,(Aa,Ab)=0是由於A不可能同時分給兩我的。

這裏公式(1)其實約束有點問題 . 若是那麼約束不可能同時成立。


在使用深度學習框架學習的時候牽涉到大量的矩陣求導操做,因此論文首先給出了矩陣求導須要使用的公式:

這段話想說啥?無非就是矩陣的複合求導過程。

Deep Network Optimization for Graph Matching 框架

 

這裏咱們先來看看框架流程,先別管具體推導過程。首先利用深度學習框架生成每個頂點的深度特徵(Deep Feature Extractor), 而後將這些特徵送到Affinity Matrix Layer生成Affinity Matrix, 接着採用冪迭代(Power Iteration)的方法對Affinity Matrix進行分解,再而後經過Bi-Stochastic layer添加 one-to-one約束,最後兩層是用於計算網絡損失的。

能夠參考連接1,看看以前Affinity Matrix是怎麼用Power Iteration分解的

能夠發現矩陣分解部分就是直接將傳統的操做放到了網絡裏面,因此本文實現的Deep Learning的重點實際上是如何用深度網絡構建Affinity Matrix。

Deep Network Optimation

OK, 無論願不肯意,仍是介紹到了公式的部分。。。

首當其中的就是Affinity Matrix Layer,直觀上咱們將頂點組合成edge,再由edge組成pairs而後放到網絡裏天然能夠學到對應的能量,可是這樣會致使計算規模太大,並且Affinity Matrix還有對稱非負(元素非負)約束等。 而正是因爲這些特性,能夠將Affinity Matrix 分解成了兩個較小部分再進行運算。

 

那麼Affinity Matrix Layer的前向計算過程以下:

 

Power Iteration Layer

 

Bi-Stochastic Layer

 

Loss Layer

 

 


Experiments

實驗數據集我也不瞭解,具體就不介紹了,只看一下定性結果吧

Conclusion

We have presented an end-to-end learning framework for graph matching with general applicability to models containing deep feature extraction hierarchies and combinatorial optimization layers. We formulate the problem as a quadratic assignment under unary and pair-wise node relations represented using deep parametric feature hierarchies. All model parameters are trainable and the graph matching optimization is included within the learning formulation. As such, the main challenges are the calculation of backpropagated derivatives through complex matrix layers and the implementation of the entire framework (factorization of the affinity matrix, bi-stochastic layers) in a computationally efficient manner. Our experiments and ablation studies on diverse datasets like PASCAL VOC keypoints, Sintel and CUB show that fully learned graph matching models surpass nearest neighbor counterparts, or approaches that use deep feature hierarchies that were not refined jointly with (and constrained by) the quadratic assignment problem.

網絡的計算仍是至關耗時的,論文中也給出了一些加速的建議,不過這些加速會影響性能。

  

參考文獻

相關文章
相關標籤/搜索