Comparing stars: on approximating graph edit distance 2009

文章簡介

  1. 文章標題:Comparing stars: on approximating graph edit distance
  2. 文章鏈接
  3. 作者單位:
    清華大學:
    曾志平[email protected]
    王建勇[email protected]
    馮建華[email protected]
    周立柱[email protected]
    新加坡國立大學:
    安東尼·H·H [email protected]
  4. 文章來源:VLDB 2009

文章正文

摘要:

  圖形數據已經無處不在,並且基於相似性對其進行操作對於許多應用程序而言至關重要。圖形編輯距離是確定圖形之間相似性的最廣泛接受的措施之一,在模式識別,計算機視覺等領域具有廣泛的應用。不幸的是,圖形編輯距離計算的問題通常是NP-Hard。
  因此,在本文中,我們介紹了三種新穎的方法來計算多項式時間內兩個圖之間的編輯距離的上限和下限。應用這些方法,引入了兩種算法AppFull和AppSub來對圖形數據庫執行不同種類的圖形搜索。
  在真實數據集和合成數據集上都進行了全面的實驗研究,以檢驗邊界圖編輯距離方法的各個方面。結果表明,這些方法在圖的數量和圖的大小方面都實現了良好的可擴展性。這些算法的有效性也證實了在過濾和搜索圖形時使用邊界的有用性。

分析下界

  文章假設倆個圖之間的編輯距離爲k,其中k由邊的增加或刪除的數量k1,頂點的增加或刪除的數量k2,頂點的relabel數量k3構成。分析如下:

  1. 在增加一條邊的時候,過程如下:在倆個頂點之間增加一條邊,將會影響這倆個頂點的star結構。所以倆個圖之間的映射距離小於4
    在這裏插入圖片描述
  2. 刪除頂點或者增加頂點。增加頂點相當於把原來的虛擬頂點的標籤改成增加頂點的標籤,所以倆個圖之間的映射距離等於一,刪除頂點同理
  3. relabel頂點。relabel一個頂點,將會最多影響此頂點和鄰居頂點的星結構,所以倆個圖之間的映射距離最多爲此頂點的度加1
      綜上述,得到如下的不等式,並且經過變形,得到編輯距離的下屆。注意編輯距離小於等於k值。

在這裏插入圖片描述

文章比較重要的地方

在這裏插入圖片描述
請注意,由於二分圖中的映射僅考慮每個節點及其鄰居,因此與確定兩個圖形之間的最佳映射相比,確定二分圖中的最佳映射時,實際上對輸出的約束較少。因此匈牙利算法得出的映射關係,帶入到計算倆個圖之間的編輯距離的計算,並不是最優的情況。
在這裏插入圖片描述
2019.12.20
在這裏插入圖片描述

疑難點

  文章在分析二部圖匹配的時候,有句話沒有明白==“Note that since the mapping in the bipartite graph takes only each node and their neighbors into consideration, there are in fact less constraints on the output when determining the optimal mapping in the bipartite graphs compared to determining the optimal mapping between the two graphs.”==
  我的理解:把star結構之間的距離當成是倆個圖之間的距離,僅僅考慮了單個節點和他的鄰居,沒有考慮到圖的全局信息,因此在輸出時候約束少,比真實的GED要大,因此可以導出GED下界。

近似的子圖搜索:

這部分沒看懂

總結:

  本文介紹了三種圖編輯距離的bound,其中倆個是upper bound,一個是lower bound。LmλγL_m、\lambda 、\gamma表示對應的lower bound ,倆個uppper bound。它們和exact不同的是,exact_GED不能在多項式時間內計算,但是這三種bound可以。它們之間的關係可以用不等式
在這裏插入圖片描述
來表示,其計算複雜度如表3所示。
在這裏插入圖片描述
與圖形編輯距離的精確計算相比,這三種邊界算法效率更高且具有良好的效果。通過實驗比較,在圖的數量和圖的大小方面的可伸縮性很好。對於有向圖,也可以把這些特點利用起來。有向圖的star結構用下面的符號表示:
在這裏插入圖片描述
第一個元素表示根節點集合,第二個元素表示和根節點入度相關的點,第三個元素表示和根節點出度相關的節點集合,第四個元素表示標籤函數。 因此,可以將星編輯距離重新定義爲

在這裏插入圖片描述

文章提出的bound可以有效地應用在有向圖的領域中。最後文章把着些bound應用在倆種搜索中——相似圖搜索和子圖搜索,用算法AppFull和AppSub。(App:Approxiamte)

參考文獻

35 Feature-based similarity search in graph structures
缺點:未能考慮節點的不匹配
在這裏插入圖片描述

文章總結

1.解決問題

  計算圖編輯距離如果使用A* 算法是NP-Hard(多項式時間內難以計算)問題,計算複雜,爲了能在多項式時間內計算編輯距離,作者在證明了NP-H編輯距離的理論之後,提出了三種bound,這三種bound可以在搜索閾值內的圖時,起到縮小搜索範圍的作用。第一種bound的效率最高效,表示爲:
在這裏插入圖片描述
通過分析圖的度和計算倆個圖之間的映射距離,可以計算出這個lower bound,這種lower bound的效率最高。

2.使用方法

  提出上界和下界,縮小圖的搜索範圍。

3.文章不足

  在文章Graph Similarity Search with Edit Distance Constraint in Large Graph Databases中,舉了一個例子,說明了下界的提出仍然是loose的。因爲如果倆個圖中最大頂點度過大,那麼下界就會變得loose,從而導致下界效果不明顯。例子如下:
在這裏插入圖片描述

2020.4.20:
如何計算星結構中葉子節點的交集?
算法:
輸入:倆個集合A,B
輸出:A B中共同的元素

i=0 , j=0
創建一個空集合C
while i<|A| 且j<|B|,
	if(A[i]== B[J])
		C = C U A[j];
		i++,j++;
	else if (A[i]> B[J])
		j++;
	else if (A[i]< B[J])
		i++;
end while
return C;

在這裏插入圖片描述
其中L1範數表示一個矩陣每列元素取絕對值,然後把每列元素相加,在相加得到的和中取最大值。
引文23中:
什麼是置換矩陣(permutation matrix)?
參考資料,置換矩陣是一種將矩陣A的行或者列相互調換的矩陣,置換矩陣是一種方陣。與單位矩陣的外形類似,它的每一行有一個0,每一列有一個0。比如一個矩陣G1=[g1,g2,g3,g4,g5]TG_{1}=[g1,g2,g3,g4,g5]^{T},一個置換矩陣Pπ=[1000000010010000000100100]P_{\pi}=\begin{bmatrix}1 &0 &0 &0 &0 \\0 &0 &0 &1 &0 \\0 &1 &0 &0 &0 \\ 0 &0 &0 &0 &1 \\ 0 &0 &1 &0 &0 \end{bmatrix},如果要將矩陣的23行、45行相互調換,則可以左邊相乘置換矩陣。即PπG1=[g1,g3,g2,g5,g4]TP_{\pi} *G_{1} =[g1,g3,g2,g5,g4]^{T}。如果G1不是轉置矩陣,而是G1=[1,2,3,4,5]G_{1}=[1 ,2 ,3 ,4, 5],如果想要調換列的位置,則需要右乘轉置矩陣PπP_{\pi}.即G1Pπ=[1,2,3,4,5][1000000010010000000100100]=[1,3,5,2,4]G_{1} * P_{\pi}= [1 ,2 ,3 ,4, 5] *\begin{bmatrix}1 &0 &0 &0 &0 \\0 &0 &0 &1 &0 \\0 &1 &0 &0 &0 \\ 0 &0 &0 &0 &1 \\ 0 &0 &1 &0 &0 \end{bmatrix}=[1,3,5,2,4].
問題:
文章中提到,將GED問題轉變爲二元線性規劃問題鏈接。建立倆個圖的鄰居矩陣(都是方陣,若不是方陣,插入空節點ϵ\epsilonAg1,Ag2A^{g_{1}} ,A^{g_{2}},生成標籤矩陣C(也是方陣,矩陣元素爲0或者1,0表示矩陣的行對應的頂點標籤和列對應的標籤不相等)。尋找一個置換矩陣P(上邊所述,和單位矩陣E類似,每行每列只有一個0元素),倆個圖之間的編輯距離等價於:
在這裏插入圖片描述
其中算式的含義是什麼?

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章