Network Motif 文獻調研
概述:Network motifs,可以認為是網路中頻繁出現的子圖模式,是複雜網路的"構建塊"。有兩篇發表在science上的論文給出motif比較權威的解釋:① MILO, Ron, et al將motifs描述為:recurring, significant patterns of inter-connections. ②BENSON et al. 將motif描述為:The most common higher-order structures are small network subgraphs, which we refer to as network motifs. Network motifs are considered building blocks for complex networks. Motifs在網路或圖上有許多應用,如角色發現,鏈路預測,蛋白質識別等等。為了便於瞭解motif的研究進展,進行了相關的文獻調研。
文獻調研涉及以下文獻:
[1] MILO, Ron, et al. Network motifs: simple building blocks of complex networks[J]. Science, 2002, 298.5594: 824-827.
[2] BENSON, Austin R.; GLEICH, David F.; LESKOVEC, Jure. Higher-order organization of complex networks[J]. Science, 2016, 353.6295: 163-166.
[3] Kashtan N, Itzkovitz S, Milo R, et al. Efficient sampling algorithm for estimating subgraph concentrations and detecting network motifs[J]. Bioinformatics, 2004, 20(11): 1746-1758.
[4] Schreiber F, Schwöbbermeyer H. MAVisto: a tool for the exploration of network motifs[J]. Bioinformatics, 2005, 21(17): 3572-3574.
[5] Wernicke S, Rasche F: FANMOD: a tool for fast network motif detection[J]. Bioinformatics 2006, 22:1152-1153.
[6] Kashani Z R M, Ahrabian H, Elahi E, et al. Kavosh: a new algorithm for finding network motifs[J]. BMC bioinformatics, 2009, 10(1): 318.
[7] Zhang Y, Parthasarathy S. Extracting Analyzing and Visualizing Triangle K-Core Motifs within Networks[C]. international conference on data engineering, 2012: 1049-1060.
[8] Lin W, Xiao X, Xie X, et al. Network motif discovery: A GPU approach[C]. international conference on data engineering, 2015: 831-842.
[9] Wang T, Peng J, Peng Q, et al. FSM: Fast and scalable network motif discovery for exploring higher-order network organizations[J]. Methods, 2020: 83-93.
[10] Wang L, Ren J, Xu B, et al. MODEL: Motif-Based Deep Feature Learning for Link Prediction[J]. IEEE Transactions on Computational Social Systems, 2020: 1-14.
[11] Yu Y, Lu Z, Liu J, et al. RUM: Network Representation Learning Using Motifs[C]. international conference on data engineering, 2019: 1382-1393.
[12] Monti F, Otness K, Bronstein M M, et al. MotifNet: a motif-based Graph Convolutional Network for directed graphs[J]. arXiv: Learning, 2018.
[13] Rossi R A, Ahmed N K, Koh E, et al. A structural graph representation learning framework[C]. web search and data mining, 2020: 483-491.
[14] Xia F, Wei H, Yu S, et al. A Survey of Measures for Network Motifs[J]. IEEE Access, 2019: 106576-106587.
文獻[1][2]是motif方面比較權威的論文;[3]-[7]是如何找motif的論文;[8][9]是關於motif的擴充;[10]-[13]是利用motif做網路表示學習的論文。[14]是motif相關指標介紹的論文。下面是部分論文的簡介。
文獻[1]: MILO, Ron, et al. Network motifs: simple building blocks of complex networks[J]. Science, 2002, 298.5594: 824-827.
概述: 本篇論文發表在science上,較為權威,是最早提出motifs概念的論文之一。本文將motifs描述為:recurring, significant patterns of inter-connections. 但是論文沒有給出motifs的公式化定義,而是基於統計的觀點,即network motifs 是出現頻繁的子圖,對比隨機網路有更高的出現概率。這裡的隨機網路是與真實網路節點數目相同,且“入邊”與“出邊”個數相同的網路,用來作為真實網路的對比。(The network motifs are those patterns for which the probability P of appearing in a randomized network an equal or greater number of times than in the real network is lower than a cutoff value.) 然後文章中採用z score來衡量motif出現的頻繁程度。zscore越大,代表子圖越有可能是motif。公式如右:。幾個真實網路示例如下圖。同時也有給出pvalue指標,則是越小越好。更多細節見論文。
文獻[2]: BENSON, Austin R.; GLEICH, David F.; LESKOVEC, Jure. Higher-order organization of complex networks[J]. Science, 2016, 353.6295: 163-166.
概述:本篇論文發表在science上;論文描述了什麼是network motifs, 即最常用的高階子圖,它是複雜網路的構建塊。(The most common higher-order structures are small network subgraphs, which we refer to as network motifs. Network motifs are considered building blocks for complex networks.) 論文沒有給出公式定義,也是通過描述結合圖示描述motifs, 如下圖所示。
文中提出的框架:
對於motif的使用:(沒有說怎麼生成motifs,而是直接使用給定的motif M來生成權值矩陣,矩陣中元素的值是節點i和j在M中出現的次數)。這裡說的給定motif,是說給定一種型別的motif,然後根據這種型別的motif從原始網路中找到符合的所有子圖。其中會涉及到子圖非同構的問題,本文沒有詳細說明。根據給定的motif M建立權值矩陣後,再使用專門的目標函式進行圖切分,以產生聚類結果,如下面的公式所示。
更多細節詳見論文。
小結:如果M表示motif型別,Mi表示一種型別的motif,則一個圖上,一種motif Mi是對應很多子圖的;根據該型別可以找圖上的符合Mi的所有子圖;這些子圖可以看作是原始網路的子集。
文獻[3]-[6]: 如何找network motif,包括列舉、識別、分類等問題。
[3] Kashtan N, Itzkovitz S, Milo R, et al. Efficient sampling algorithm for estimating subgraph concentrations and detecting network motifs[J]. Bioinformatics, 2004, 20(11): 1746-1758.
[4] Schreiber F, Schwöbbermeyer H. MAVisto: a tool for the exploration of network motifs[J]. Bioinformatics, 2005, 21(17): 3572-3574.
[5] Wernicke S, Rasche F: FANMOD: a tool for fast network motif detection[J]. Bioinformatics 2006, 22:1152-1153.
[6] Kashani Z R M, Ahrabian H, Elahi E, et al. Kavosh: a new algorithm for finding network motifs[J]. BMC bioinformatics, 2009, 10(1): 318.
文獻[3]提出了一種MFinder的演算法和相應的軟體;文獻[4]給出了一種MAVisto的工具;文獻[5]給出了一種FANMOD的工具;文獻[7]提出了一種Kavosh的演算法。上述的這些演算法或工具都是用於motif discovery。相關軟體或程式碼已經開源,見下面的連結:
l http://www.weizmann.ac.il/mcb/UriAlon/download/network-motif-software
l https://github.com/shmohammadi86/Kavosh
以文獻[6]為例,介紹一下發現motif的流程。
文獻[6]提出了一種Kavosh的演算法,用於發現k-size network motifs,對比其他演算法具有較低的記憶體和時間的開銷( We present a new algorithm (Kavosh), for finding k-size network motifs with less memory and CPU time in comparison to other existing algorithms)。該演算法有四個子任務,即子圖列舉、子圖分類、隨機圖生成、motif識別。(consists of four subtasks: Enumeration: finding all subgraphs of a given size that occur in the input graph; Classification: classifying each found sub-graph into isomorphic groups; Random graph generation: generating random graphs with respect to the input network (enumeration and classification are also performed on random graphs) and Motif identification: distinguishing motifs among all found sub-graphs on basis of statistical parameters.)。演算法具體可以分為4步,如下:
1) 子圖列舉:利用樹型結構,找出所有的k-size子圖。
2) 子圖分類:即給k-size子圖做標記,以互相區別。具體做法是就是根據子圖生成鄰接矩陣,輸入到NAUTY,產生canonical labeling,作為子圖的分類鑑別。其中,NAUTY是用於識別非同構圖的一種知名的演算法。
3) 產生隨機圖:這裡的隨機圖是與輸入圖具有相同的節點數以及相同的度分佈(包括入度、出度)的隨機產生的圖。實際使用中往往產生若干個隨機圖,然後同樣進行列舉、分類的操作。
4) motif識別:根據真實網路的子圖的統計資料,與隨機網路的子圖的平均統計資料,計算一些指標(Zscore, Pvalue等),從而得出頻繁程度高的子圖作為motif。
文獻[7]-[9]: 是一些關於motif的優化和擴充。
[7] Zhang Y, Parthasarathy S. Extracting Analyzing and Visualizing Triangle K-Core Motifs within Networks[C]. international conference on data engineering, 2012: 1049-1060.
文獻[7]發表於ICDE上,是資料探勘的頂級會議。論文提出被稱為K-Core和Triangle K-Core的motif。其中K-Core指的是子圖中的每個節點的度數至少為K;Triangle K-Core指的是這樣一種子圖,子圖中每條邊都至少關聯了K個三角形結構,如下圖所示。文章說明了Triangle K-Core比K-Core更接近於clique,即Triangle K-Core內部的節點關聯更為緊密。例子:an edge participating in 4 triangles implies a subgraph of 6 nodes and 9 edges (in the worst case);and it is closer to a 6-node clique (density: 9/15=60%, in the worst case)。這種Triangle K-Core的motif可以作為一種較好的高階的區域性結構,而不用像clique那樣有極其嚴格的連線要求。
[8] Lin W, Xiao X, Xie X, et al. Network motif discovery: A GPU approach[C]. international conference on data engineering, 2015: 831-842.
[9] Wang T, Peng J, Peng Q, et al. FSM: Fast and scalable network motif discovery for exploring higher-order network organizations[J]. Methods, 2020: 83-93.
文獻[10]-[11]: 是利用motif做network embedding的一些論文。
[10] Wang L, Ren J, Xu B, et al. MODEL: Motif-Based Deep Feature Learning for Link Prediction[J]. IEEE Transactions on Computational Social Systems, 2020: 1-14.
概述:根據motif從G中抽取子圖,得到一個motif(多個節點)和一個負樣本節點。然後每個節點都進入自編碼器(由nonlinear activation functions堆疊而成)中進行學習。設計特定的優化函式,優化的目標是讓motif內節點的向量更加靠近,讓motif的節點與負樣本節點更加遠離。最終獲取節點嵌入,並用於鏈路預測上。
模型框圖如下:
大概的思路是,根據給定的motif從G中抽取子圖,得到一個motif(多個節點)和一個負樣本節點。然後每個節點都進入自編碼器中進行學習。學習的目標是讓motif內節點的向量更加靠近,讓motif的節點與負樣本節點更加遠離。損失函式如下。
評價:本文中,motif的發現是引用前人的工作,自編碼器的構建也是前人的工作,創新點體現在兩者的結合上,以及多編碼器上。論文的任務是鏈路預測。(This method seamlessly incorporates motifs and deep learning model into link prediction.)
[11] Yu Y, Lu Z, Liu J, et al. RUM: Network Representation Learning Using Motifs[C]. international conference on data engineering, 2019: 1382-1393.
概述:本文發表在ICDE2019上,提出了一個使用motif做網路表示學習的模型RUM。在文中提出了兩種策略,即MotifWalk 和 MotifRe-weighting,用來形成motif-aware network embeddings. 示意圖如下圖所示,是一種網路粗化的策略,與隨機遊走比較相關。
本文未給出motif的定義,而是圖示。本文對motif的介紹是:A network motif is a small sub-network that represents an elemental and recurring pattern in a network. [20] has given a list for the shapes of motifs. 論文主要對三角結構進行處理,這樣做時間開銷比較小。
[12] Monti F, Otness K, Bronstein M M, et al. MotifNet: a motif-based Graph Convolutional Network for directed graphs[J]. arXiv: Learning, 2018.
概述:將motif與GCN結合而提出了MotifNet模型。論文對於motif的介紹如下圖所示。論文給出了motif粗略的定義,且基於motif產生權值矩陣,也是直接使用了Benson et al.的內容。論文將它與GCN結合做網路表示學習。
[13] Rossi R A, Ahmed N K, Koh E, et al. A structural graph representation learning framework[C]. web search and data mining, 2020: 483-491.
概述:論文利用motif生成K階的權值矩陣,然後利用矩陣分解類似的原理做圖表示學習。