日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Weisfeiler-Lehman(WL)算法

發(fā)布時間:2023/12/15 编程问答 72 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Weisfeiler-Lehman(WL)算法 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

Weisfeiler-Lehman 算法

  • Weisfeiler-Lehman(WL)算法
    • The Weisfeiler-Lehman Test of Isomorphism
    • The General Weisfeiler-Lehman Kernels
      • 1.The Weisfeiler-Lehman Kernel Framework
      • 2.The Weisfeiler-Lehman Subtree Kernel
        • 多圖上計算The Weisfeiler-Lehman Subtree Kernel
        • THE RAMON-GARTNER SUBTREE KERNEL
      • 3.The Weisfeiler-Lehman Edge Kernel
      • 4.The Weisfeiler-Lehman Shortest Path Kernel

Weisfeiler-Lehman(WL)算法

The Weisfeiler-Lehman Test of Isomorphism

  • 圖核使用來自Weisfeiler?LehmanWeisfeiler-LehmanWeisfeiler?Lehman同構(gòu)檢驗的概念,更具體地講是其一維變體,也稱為“樸素頂點修飾”
  • 該算法的關(guān)鍵思想是通過對相鄰節(jié)點的節(jié)點標(biāo)簽排序后的集合來擴展節(jié)點標(biāo)簽,并將這些擴展后的標(biāo)簽壓縮為新的短標(biāo)簽
  • alphabetalphabetalphabet ΣΣΣ必須足夠大才能使fff內(nèi)射性。 對于兩個圖,∣Σ∣=2n|Σ| = 2nΣ=2n個滿足條件。

  • (a)(a)a網(wǎng)絡(luò)中每個節(jié)點有一個labellabellabel,如圖中的彩色的1,2,3,4,51,2,3,4,512345
  • (b)(b)b標(biāo)簽擴展:做一階廣度優(yōu)先搜索,即只遍歷自己的鄰居。比如在圖(a)(a)a網(wǎng)絡(luò)GGG中原(5)(5)(5)號節(jié)點,變成(5,234)(5,234)(5,234),這是因為原(5)(5)5節(jié)點的一階鄰居有2,3和42,3和4234
  • (c)(c)c標(biāo)簽壓縮:僅僅只是把擴展標(biāo)簽映射成一個新標(biāo)簽,如 5,234=>135,234 => 135,234=>13
  • (d)(d)d壓縮標(biāo)簽替換擴展標(biāo)簽
  • (e)(e)e數(shù)標(biāo)簽:比如在GGG網(wǎng)絡(luò)中,含有111號標(biāo)簽222個,那么第一個數(shù)字就是222。這些標(biāo)簽的個數(shù)作為整個網(wǎng)絡(luò)的新特征

算法:
假設(shè)要測試同構(gòu)的兩張圖為GGGG’G’G,那么在結(jié)點vvv的第iii次迭代里,算法都分別做了四步處理:標(biāo)簽復(fù)合集定義、復(fù)合集排序、標(biāo)簽壓縮和重標(biāo)簽

  • WLtestWL\ testWL?test的復(fù)雜度是O(hm)O(hm)O(hm),其中h為iterationiterationiteration次數(shù),mmm是一次iterationiterationiterationmultisetmultisetmultiset的個數(shù)

一維的Weisfeiler?LehmanWeisfeiler-LehmanWeisfeiler?Lehman如下所示:


穩(wěn)定后,統(tǒng)計兩張圖的labellabellabel的分布,如果分布相同,則一般認(rèn)為兩張圖時同構(gòu)的。

注意:我們可以發(fā)現(xiàn),WLtestWL\ testWL?test方法的步驟和GNNsGNNsGNNs具有異曲同工之妙,都是通過不斷聚合鄰居信息,得到節(jié)點的新表示,這也是為什么KipfKipfKipf201720172017GCNGCNGCN的論文中單獨討論和GCNGCNGCNWLtestWL testWLtest關(guān)系的原因。而正是這種統(tǒng)一性,才使得本文能以 WLtestWL\ testWL?test 為基礎(chǔ)來分析GNNsGNNsGNNs框架。

The General Weisfeiler-Lehman Kernels

1.The Weisfeiler-Lehman Kernel Framework

  • Weisfeiler?LehmanalgorithmWeisfeiler-Lehman\ algorithmWeisfeiler?Lehman?algorithm 對圖GGGG′G'G的結(jié)點進行重標(biāo)簽時,只有當(dāng)兩個結(jié)點vvvv′v'v有相同的標(biāo)簽復(fù)合集,它們生成的新標(biāo)簽才一樣。
  • 因此,我們可以認(rèn)為對所有圖進行標(biāo)簽壓縮和重標(biāo)簽時,標(biāo)簽映射函數(shù)fff都是一樣的,定義為r((V,E,li))=(V,E,l(i+1))r((V, E, l_i)) = (V, E, l_{(i+1)})r((V,E,li?))=(V,E,l(i+1)?),其中,VVV是圖GGG的結(jié)點集,EEE是圖GGG的邊集,lil_ili?l(i+1)l_{(i+1)}l(i+1)?分別是Weisfeiler?LehmanalgorithmWeisfeiler-Lehman\ algorithmWeisfeiler?Lehman?algorithm 在第iii次和第i+1i+1i+1次迭代時生成的標(biāo)簽集。

    G0G_0G0?是原始圖,G1=r(G0)G_1 = r(G_0)G1?=r(G0?)是第一次重新貼標(biāo)產(chǎn)生的圖,依此類推.


    性質(zhì)
  • 1.半正定矩陣的行列式是非負的。
  • 2.兩個半正定矩陣的和是半正定的
  • 3.Gi=r?G(i?1)=(r2)?G(i?2)=....=(ri)?G0=(ri)?GG_i = r * G_{(i-1)} = (r^2) * G_{(i-2)} = .... = (r^i) * G_0 = (r^i) * GGi?=r?G(i?1)?=(r2)?G(i?2)?=....=(ri)?G0?=(ri)?G
    證明


    **請注意,**可以將非負實權(quán)重αiα_iαi?放在k(Gi,Gi′),i=0,1,...,hk(G_i,G_i'),i = {0,1,...,h}k(Gi?Gi?)i=0,1,...,h上,以獲得更一般的Weisfeiler?LehmanWeisfeiler-LehmanWeisfeiler?Lehman核定義:

2.The Weisfeiler-Lehman Subtree Kernel


ci(G,σij)c_i(G,σ_{ij})ci?(Gσij?)是圖形GGG中字母σijσ_{ij}σij?的出現(xiàn)次數(shù)。

也就是說,Weisfeiler-Lehman子樹內(nèi)核在兩個圖中計數(shù)共同的原始標(biāo)簽和壓縮標(biāo)簽

  • 假設(shè)基本內(nèi)核kkk是一個函數(shù),用于計算兩個圖中的匹配節(jié)點標(biāo)簽對:

多圖上計算The Weisfeiler-Lehman Subtree Kernel

算法:

  • NNN個圖和hhh次迭代的情況下,ΣΣΣ大小為Nn(h+1)Nn(h + 1)Nn(h+1)。


    舉例:


THE RAMON-GARTNER SUBTREE KERNEL

具有子樹高度hhhRamon?GartnerRamon-GartnerRamon?Gartner子樹內(nèi)核通過迭代比較它們的鄰域來比較圖G=(V,E,l)G =(V,E,l)G=(V,E,l)G0=(V0,E0,l)G_0 =(V_0,E_0,l)G0?=(V0?,E0?,l)中的所有節(jié)點對:



M(v,v′)M(v,v')M(vv)vvvv′v'v鄰域的子集的精確匹配集合。M(v,v′)M(v,v')M(vv)的每個元素RRR是來自v∈Vv∈VvVv0∈V0v_0∈V_0v0?V0?的鄰域的一組節(jié)點對,因此每對中的節(jié)點具有相同的標(biāo)記,并且不包含多于一對的節(jié)點。 因此,從直觀上講,kRGk_{RG}kRG?迭代地考慮來自GGG的節(jié)點vvv和來自G0G_0G0?v0v_0v0?的鄰居之間兩個相同標(biāo)記節(jié)點的所有匹配M(v,v′)M(v,v')M(vv)。 使參數(shù)λvλ_vλv?λv′λ_{v'}λv?等于單個參數(shù)λ會導(dǎo)致每個模式加權(quán)λλλ,并提高到模式中節(jié)點數(shù)的冪。

LINK TO THE WEISFEILER-LEHMAN SUBTREE KERNEL

3.The Weisfeiler-Lehman Edge Kernel

TheWeisfeiler?LehmanedgekernelThe\ Weisfeiler-Lehman\ edge\ kernelThe?Weisfeiler?Lehman?edge?kerneltheWeisfeiler?Lehmankernelframeworkthe\ Weisfeiler-Lehman\ kernel\ frameworkthe?Weisfeiler?Lehman?kernel?framework的另一個實例。 對于具有未加權(quán)邊的圖,我們考慮對兩個圖中具有相同標(biāo)記的端點(事件節(jié)點)的匹配邊對進行計數(shù)的基本內(nèi)核。 換句話說,基本內(nèi)核定義為

其中φE(G)φ_E(G)φE?(G)是對(a,b)(a,b)(ab)a,b∈Σa,b∈Σa,bΣ的出現(xiàn)次數(shù)的向量,它們表示GGG中邊的端點的有序標(biāo)簽. (a,b)(a,b)(ab)(a0,b0)(a_0,b_0)(a0?b0?)分別表示邊eeee0e_0e0?的端點的有序標(biāo)簽,以及DirackernelDirac\ kernelDirac?kernelδ,kEδ,k_EδkE?可以等效地表示為∑e∈E∑e0∈E′δ(a,a0)δ(b,b0)∑_{e∈E} ∑_{e_0∈E'}δ(a,a_0) δ(b,b_0)eE?e0?E?δ(aa0?)δ(bb0?)。如果邊緣通過分配權(quán)重的函數(shù)www加權(quán),則基本核kEk_EkE?可以定義為∑e∈E∑e0∈E′δ(a,a0)δ(b,b0)kw(w(e),w((e0))∑_{e∈E} ∑_{e_0∈E'}δ(a,a_0) δ(b,b_0)k_w(w(e),w((e_0))eE?e0?E?δ(aa0?)δ(bb0?)kw?(w(e)w((e0?)) ,其中kwk_wkw?是比較邊緣權(quán)重的內(nèi)核。

4.The Weisfeiler-Lehman Shortest Path Kernel

在這里,我們使用節(jié)點標(biāo)記的最短路徑內(nèi)核作為基礎(chǔ)內(nèi)核。

Weisfeiler-Lehman Graph Kernels

https://github.com/BorgwardtLab/GraphKernels

https://static.aminer.cn/misc/pdf/20190419.pdf
https://github.com/ysig/GraKeL

總結(jié)

以上是生活随笔為你收集整理的Weisfeiler-Lehman(WL)算法的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。