Graph 10 - Community Detection
10 Jul 2021Community 是 Graph 中會出現的結構,是一群有相似特徵或高度連結的群體,有時會需要找出一張 Graph 中有幾個 Community ,或是可以藉由 Community 將 Graph 分解成幾個部分,分別去計算以增加演算法效率,總之, Community 不管是本身作為任務目標還是幫助演算法,都非常有用,以下介紹如何找出 Graph 中的 Community 。
Read More →Community 是 Graph 中會出現的結構,是一群有相似特徵或高度連結的群體,有時會需要找出一張 Graph 中有幾個 Community ,或是可以藉由 Community 將 Graph 分解成幾個部分,分別去計算以增加演算法效率,總之, Community 不管是本身作為任務目標還是幫助演算法,都非常有用,以下介紹如何找出 Graph 中的 Community 。
Read More →在真實世界中,Graph Data的取得可能還不那麼容易,因此有人提出了Graph Generative Model,既然Graph不好取得,那就提出一個能生成合理Graph的模型。另外,在驗證自己的某個 Graph model 是否可行或某個想法是否正確時,也很常會用以下方法大量產生 Graph 去測試,例如想測試avg degree很高的Graph的效果,比起去找一個符合條件的真實資料,直接生成會比較方便。
Read More →前面著重在建構GNN會遇到的問題,這篇把重點放在GNN效果的相關議題。
整個GNN的建立過程如下
Input Graph -> Graph Neural Network -> Node Embeddings -> Prediction Head -> Prediction -> Loss function and Evaluation metric
前面大都只討論作法,沒有特別討論會引發的一些問題以及如何解決,以下會重新回顧實作GNN Layer的過程並把會遇到的問題與解法拿出來討論。
Read More →GraphSAGE是一種讓AGG function更彈性的模型,GAT則是加入了Attention機制,對於GCN來說每個neighbor一樣重要,而GAT會去學習哪些neighbor比較重要。
Read More →