《Reweighted Random Walks for Graph Matching》論文閱讀


1. 參考論文

  Reweighted Random Walks for Graph Matching【1】

  The pagerank citation ranking: Bringing order to the web【2】

   A spectral technique for correspondence problems using pairwise constraints【3】

2. 論文概述

  論文提出了全新的思路——馬爾科夫鏈去解決圖匹配問題,提出了“基本版” Random Walk 並從隨機游走角度恰好解釋了【3】的譜方法SM的理論。隨后根據【2】的思路改進成 RRM,通過實驗證明其效果還是蠻不錯的。

3. 論文介紹

  3.1 傳統問題描述

  傳統的圖匹配問題,優化的目標函數為:

   通過限制條件可以看出這是 IQP (integer quadratic program) 問題,其中 w 是兩個圖的相似度矩陣,x 是排列矩陣的列向量化(vec)

 

  3.2 Markov角度問題描述

  這是論文最核心的地方,即如何將傳統的圖匹配問轉化為隨機過程Markov的問題。我們先看平時場見的相似度矩陣 w 的形式:

觀察上圖(g),可以發現不管行、列,其坐標每一項代表含義都是兩圖中兩個點的假設對應關系,如 1a 。我們最終的目的也是找到類似如此的對應關系,只不過這里借助的是相似度矩陣。

  那么,作者就是從相似度矩陣出發,將其改造成隨機游走模型,如圖:

 兩個圖P、Q的點的對應關系就當作Grw的結點,而相似度矩陣的對角線上的值(即一階點的對應關系)當作Grw的 attribute,相似度矩陣非對角線上的 attribute 當作Grw的兩個頂點(如13--22)構成的邊的值。這樣一來,我們將相似度矩陣就變換成了Grw的形式,同時,整個圖匹配問題,變成了在改圖上的隨機游走過程,最終的目標成了在Grw上選點的過程—— To select the nodes in Grw( selecting reliable nodes in the Grw)

  而如何選點,論文借鑒了【2】.

 

  3.3 轉移矩陣

  Markov 過程需要一個轉移矩陣(概率矩陣),那么對應到這里,怎么構建呢?首先可以明確的是,肯定是從 w 入手,將其改造成轉移矩陣——每行和為1,每一項 ≥ 0(滿足)。

  對於前者條件,一種常見的思路是:

 

 即求 w 每一行的和,然后改行分別處以該數——但是其弊處明顯,文中提到這種做法會放大不匹配點的概率,即相似度矩陣本來是相似度值的大小,通過除法,會削弱相似度大的值,反之放大原本小的值的匹配概率(如 1 0 2;3 0 6;---->均為 1/3 0 2/3)

  作者采用將 w 矩陣每一項均除以 max(sum(和)),即以此做法保護原來相似度值較大的點。思路是這樣,然后為了滿足Markov的sum(行)=1的特點,需要改造轉移矩陣:

 

 其中左式 P 就是轉移矩陣,其中dmax = max(sum(行和)),d(向量)是每行和,式子第一項就是為了滿足轉移矩陣行和為1,同時底部第二行是為了保證P是個方陣,原本是 xP,既然 P 是多了一項,所以改造x,引入(x xabs)P,即如上圖右邊式子,上標n代表轉移次數

  而引入 xabs,其實就是對Grw再此進行改造,增加一個虛擬結點(absorb 吸收點),因為 P 的轉移概率是(0000....000 1), 即恰好代表 nm*nm+1 這個結點不會轉移到其他點,只能自轉移,概率為1。

  如下圖,就是引入該 abs 的圖

 

  3.4 為什么求解Markov鏈的穩態就是結果

  論文最終就是通過 P 轉移矩陣,求得 x 的穩態(穩態Markov鏈),我想因為 x 的初始分布(應該)可以平均分配(即隨機游走開始(1/mn*mn 1/mn*mn.....)),而Grw的edge代表了相似度,進一步該相似度被轉化成了P(即概率表示),那么最終得到的 x 的值(再還原回矩陣)代表了兩兩結點如何匹配的score,然后使用匈牙利算法即可選出該x還原回來的矩陣的最佳匹配score

  至於為什么穩態(轉移矩陣n次冪)一定存在:

  但是如果按上述設計轉移矩陣 P,其最終的迭代結果是 (00000....000 1),所以如果迭代到一定次數即可,得到近似解

 

  3.5 RM與SM效果的一致性證明

  作者提到,RM 是從隨機游走角度解釋了譜方法【2】的做法(即選取 w 的最大特征值),證明如下:

  首先引入一個概率分布

 其中 X^(n) 是隨機變量表示(2)轉移公式中節點在n時刻的位置,x(hat)ia(n) 是如上定義的概率,表示為游走到absorb node 點的條件概率。同時記

 

 同時給出定義、定理:

 

 

 然后

 

 這里一定要注意,個人覺得,按照上述P的轉移矩陣, XP---XPP----XPPP..... 最后X 一定變成了(0000   1),前面提過這點。所以這里 xhat(n) 表示的是條件概率,即不是以任意點開始游走,然后均以 absorb node 點為最終結果的的概率,也就是沒有算到最后穩態(迭代到穩態之前停止),那么

 根據 Perron Frobenius theorem,① w 是不可約的 ② x hat 是非負的,則上述 “lamda” 是最大左特征值,對應的 x hat 是特征向量。

而這正好同SM【3】觀點相同,得到近似解,則只要求 w 的最大特征向量,隨后矩陣化得到排列矩陣

 

    3.6 Reweighted Random Walk

  通過RW,已經達到了SM的效果,更進一步,作者還是根據【2】的思路設計了RRW——作者給出的RW的不足的解釋是IQP的subject限制條件未在Markov中體現(這里我不理解,是≤1這個條件未滿足?我覺得RRW最大的好處就是inflation,①在游走的時候讓相似度大的點得到更到的被選概率②jump的存在提供了游走的更多狀態空間,詳見下) :

 

   RRW就是改造轉移概率,提出 personalization jump,即在Grw中可以選擇①按照現有的邊走下一步②也可以直接jump到其點

 

 阿爾法就是選擇繼續按邊walk 還是 1-α 選擇jump。其中 r 是 reweighting jump vector 。

  關於 r 的設計,一種方法是:直接使用當前的 x ,弊端是會讓錯誤匹配(相似度點較小)的點不能在初期的迭代中排除掉。作者設計 r 從兩個角度:①  inflation ② bistochastic normalization。后者是歸一化成雙隨機矩陣。

  前者使用這樣一個公式:,用意是:

 

 

    Strong candidates are amplified while weak candidates are attenuated。

所以最終:

 

 

其中 fc函數就是實現 inflation 和 bistochastic normalization的

 

  3.7 RRW Algorithm

 

   最后得到的 x 是個矩陣score,類似如下:

 

通過匈牙利算法可以得到選擇行列匹配關系是score最大的。匈牙利算法


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM