什么是圖形神經網絡(GNN)?
譯文【51CTO.com快譯】圖形在人們的工作和生活中無處不在。例如,社交網絡就是一張人際關系圖,從A點到B點所走的道路就構成了一個圖形,而將網頁連接到其他網頁的鏈接也構成一個圖形。當企業為員工發放薪酬時,其付款會通過金融機構的流程圖進行。
基本上,任何由鏈接實體組成的東西都可以是圖形表示。圖形是可視化人員、對象和概念之間關系的一種好工具。然而,除了可視化信息之外,圖形也可以成為訓練復雜任務機器學習模型的良好數據來源。
圖形神經網絡(GNN)作為一種機器學習算法,可以從圖中提取重要信息并進行有用的預測。隨著圖形變得越來越普遍、信息更豐富,人工神經網絡變得越來越流行和強大,圖形神經網絡(GNN)已經成為許多重要應用的強大工具。
用于神經網絡處理的轉換圖
每個圖形都是由節點和邊組成的。例如,在社交網絡中,節點可以表示用戶及其特征(例如姓名、性別、年齡、城市),而邊可以表示用戶之間的關系。更復雜的社交圖包括其他類型的節點,例如城市、運動隊、新聞媒體,以及描述用戶與這些節點之間關系的邊。
然而,圖形結構不太適合機器學習。神經網絡期望以統一格式接收數據,多層感知器需要固定數量的輸入特征。卷積神經網絡需要一個網格來表示它們處理的數據的不同維度(例如,圖像的寬度、高度和顏色通道)。
圖形有著不同的結構和大小,因此通常并不符合神經網絡所期望的矩形陣列。圖形還具有其他特征,使其與經典神經網絡設計的信息類型不同。例如,圖形只要節點的關系保持不變,改變節點的順序和位置就不會產生影響。相比之下,改變像素的順序會產生不同的圖像,并會導致處理它們的神經網絡表現不同。
為了使圖形對深度學習算法有用,它們的數據必須轉換成可以由神經網絡處理的格式。用于表示圖形數據的格式類型可能因圖形類型和預期應用而異,但一般而言,關鍵是將信息表示為一系列矩陣。
例如在一個社交網絡圖中,節點可以表示為用戶特征表。節點表中的每一行包含有關一個實體(例如用戶、客戶、銀行交易)的信息,這是一種可以提供圖形神經網絡的信息類型。
但是圖形神經網絡(GNN)也可以從圖形包含的其他信息中學習。邊是連接節點的線段,可以用同樣的方式表示,每行包含用戶的ID和附加信息,如日期、關系類型等。最后,圖形的一般連通性可以表示為鄰接矩陣,顯示哪些節點相互連接。
當所有這些信息都提供給神經網絡時,它可以提取超出圖形各個組件中包含的簡單信息的模式和見解。
圖形嵌入
圖形神經網絡(GNN)可以像任何其他神經網絡一樣創建,使用完全連接層、卷積層、池化層等。層的類型和數量取決于圖形數據的類型和復雜性以及所需的輸出。
圖形神經網絡(GNN)接收格式化的圖形數據作為輸入,并生成一個數值向量,表示有關節點及其關系的相關信息。
這種向量表示稱為“圖形嵌入”。圖形嵌入通常用于機器學習中,將復雜的信息轉換為可以區分和學習的結構。例如,自然語言處理系統使用單詞嵌入來創建單詞及其關系的數字表示。
從圖形中收集數據并將它們與從前一層獲得的值聚合。例如,在社交網絡中,圖形神經網絡(GNN)的第一層會將用戶的數據與其朋友的數據結合起來,下一層將添加朋友的朋友的數據等等。最后,圖形神經網絡(GNN)的輸出層產生嵌入,它是節點數據及其對圖中其他節點的知識的向量表示。
有趣的是,這個過程與卷積神經網絡如何從像素數據中提取特征非常相似。因此,一種非常流行的圖形神經網絡(GNN)架構是圖形卷積神經網絡(GCN),它使用卷積層來創建圖形嵌入。
圖形神經網絡(GNN)的應用
一旦有了一個可以學習圖嵌入的神經網絡,就可以用它來完成不同的任務。
以下是圖形神經網絡(GNN)的一些應用:
- 節點分類:圖形神經網絡(GNN)的強大應用之一是向節點添加新信息或填補信息缺失的空白。例如,假設正在運行一個社交網絡并且發現了一些機器人帳戶。現在企業想了解其網絡中是否還有其他機器人帳戶,可以訓練圖形神經網絡(GNN),根據他們的圖形嵌入與已知機器人的圖形嵌入的接近程度,將社交網絡中的其他用戶分類為“機器人”或“非機器人”。
- 邊的預測:另一種使用圖形神經網絡(GNN)的方法是找到可以為圖形增加價值的新邊。以社交網絡為例,圖形神經網絡(GNN)可以找到在嵌入空間中與某人關系密切但還不是朋友的用戶(節點)(也就是沒有將他彼此聯系起來的邊),然后可以將這些用戶作為朋友推薦介紹給他。
- 聚類:圖形神經網絡(GNN)可以從圖中收集新的結構信息。例如,在一個社交網絡中,每個人都以一種或另一種方式與他人相互關聯(通過朋友或朋友的朋友等),圖形神經網絡(GNN)可以在嵌入空間中找到形成集群的節點。這些集群可以指向具有相似興趣、活動或其他不顯眼特征的用戶組,無論他們的關系有多密切。聚類是基于機器學習的營銷中使用的主要工具之一。
圖形神經網絡(GNN)是非常強大的工具。他們已經在路線規劃、欺詐檢測、網絡優化和藥物研究等領域得到廣泛的應用。只要有相關實體的圖形,圖形神經網絡(GNN)就可以幫助從現有數據中獲得最大的價值。
原文標題:What are graph neural networks (GNN)?,作者:Ben Dickson
【51CTO譯稿,合作站點轉載請注明原文譯者和出處為51CTO.com】