一、神經網絡基礎
近年來,機器學習領域的發展迅速,主要表現在多種神經網絡架構的出現。盡管不同的神經網絡架構相差甚遠,但現有的神經網絡架構可以分為幾個類別:
卷積神經網路是前饋神經網路的特殊形式,FNN通常是全連接的神經網路,CNN則保留了局部鏈接性,CNN通常包含卷積層、池化層和數個全連接層。目前有數個經典的CNN 架構,如LeNet、AlexNet、VGG、和GoogleLeNet。
循環神經網絡不僅僅從其他神經元接收信號和輸入信息,同時有自身的歷史信息。
圖神經網絡專門用來處理結構數據,如社交網絡、分子結構、知識圖譜等數據。
二、卷積圖神經網絡
卷積神經網絡在深度學習領域取得了很大的成功,因此人們自認希望在圖上定義卷積運算。這一方面的研究成果一般被分為兩類:基于譜分解的方法和基于空間結構的方法,這兩類方法各自均有很多變體。
2.1 基于譜分解的方法
基于譜分解的方法處理圖的譜域相關表示,常用的有四種經典模型:Spectral NetWork、ChebNet、GCN、AGCN。
- Spectral Network通過計算圖的拉普拉斯矩陣的特征分解,在傅里葉域中定義卷積計算。
- ChebNet利用切比雪夫多項式的前K階逼近卷積核,省去了計算拉普拉斯矩陣特征向量的過程。
- GCN 在ChebNet的基礎上將層級卷積運算的K限制為1,以緩解模型在節點的度分布范圍較大的圖上存在的局部結構過擬合的問題。GCN模型作為譜分解相關方法的簡化,同樣可以被視為一種基于空間結構的方法。
- AGCN自適應圖卷積網絡會學習“殘差”圖拉普拉斯矩陣并將其添加到原始的拉普拉斯矩陣中。
2.2 基于空間的方法
基于譜域的方法學習到的卷積核都依賴于拉普拉斯矩陣的特征基向量,取決于圖的結構。這就意味著針對特定結構訓練的模型不能直接應用于具有不同結構的圖,即模型的泛化性能較差。
基于空間結構的方法直接在圖上定義卷積運算,從而針對在空間上相鄰的鄰域進行運算。
主流基于空間的方法如下:
三、循環圖神經網絡
圖神經網絡的另一種趨勢是在前向傳播過程中使用GRU或LSTM等RNN的門控機制,這樣可以彌補基礎GNN的不足,并提高長距離信息傳播的有效性。循環圖神經網絡與卷積圖神經網絡相比,在不同的層使用了相同的參數,這使得參數能夠逐步收斂。卷積圖神經網絡在不同的層使用不同的參數,從而能夠提取不同尺度的特征。
經典循環圖神經網絡有以下幾種:
四、圖注意力網絡
注意力機制已成功用于許多基于序列的任務,例如機器翻譯、機器閱讀等。與GCN平等對待所有相鄰節點不同,注意力機制可以為每個相鄰節點分配不同的注意力分數,從而識別出較為重要的相鄰節點。
GAT是堆疊簡單的圖注意力層來實現。
GaAN使用了多頭注意力機制,區別在于GaAN使用鍵-值注意力機制和點積注意力機制,而GAT使用全連接層來計算注意力系數。
五、圖殘差網絡
在神經網絡的許多應用中,人們試著展開或堆疊圖神經網絡層,以獲得更好的結果,因為更多的層(假設K層)可以使每個節點都能從K跳的相鄰節點收集更多信息。但是實驗表明,增加模型的深度無法改善模型性能,原因是更多的層會從成倍增加的鄰域成員中傳播噪聲信息。
為了解決上述問題,一個很自然的想法是借鑒計算機視覺領域-使用殘差。但是,使用殘差鏈接,大多數深層GCN也不比雙層GCN強。
所以使用跳躍連接解決上述問題: