ICLR 2020丨論「鄰里關係」的學問:度量和改進圖信息在圖神經網絡中的使用

ai科技評論 發佈 2020-05-25T04:03:36+00:00

本文介紹的是 ICLR 2020 論文《Measuring and Improving the Use of GraphInformation in Graph Neural Networks》,作者為香港中文大學計算機系的碩士二年級研究生侯逸帆。

本文介紹的是 ICLR 2020 論文《Measuring and Improving the Use of GraphInformation in Graph Neural Networks》,作者為香港中文大學計算機系的碩士二年級研究生侯逸帆。

文 | 侯逸帆

編 | 叢 末

論文地址:https://openreview.net/pdf?id=rkeIIkHKvS近年來,圖神經網絡(GNN)在社交網絡、知識圖譜、推薦系統甚至生命科學等領域得到了越來越廣泛的應用。但在複雜的圖數據中,我們很難高效利用實體之間的相互依賴關係。在由清華計算機系主辦的 AI Time PhD直播間,香港中文大學計算機系的碩士二年級研究生侯逸帆,分享了自己的團隊在被譽為「深度學習中的頂會」——ICLR (2020)中發表的研究成果。讓我們看看這位學霸是如何巧妙利用節點的「鄰里關係」,來選擇圖數據和改進圖神經網絡吧!

1

背景知識a)圖數據與數據分類圖是一種強大的數據結構,能夠輕鬆地表示實體(即節點)之間的各種關係(即邊)。

實體可以是社交網絡中的用戶個體,或者分子結構圖中的原子。

關係可以是社交網絡中用戶之間的朋友關係、相似性關係等,或者分子結構圖中原子之間的相互關係。

一般在圖數據中,節點(實體)的選擇是固定的,但是邊的構建方法卻多種多樣。例如社交網絡中,既可以依據用戶的相似性,也可以將其交互行為、好友關係構建成邊,從而組成網絡。

因此,當分布相對均勻的原始數據分類較為困難時,如果能根據一些額外的關係信息、把同類點之間的距離「拉近」,從而有效地調整數據分布,那麼分類的邊界選擇會更加容易,從而其任務表現也會獲得很好的性能提升。

b)圖神經網絡圖神經網絡(GNN)廣泛應用於圖數據的表示學習。它可以利用圖中的關係信息,捕捉到節點鄰居的豐富特徵,從而提升下游基於圖數據的任務表現。

通用的GNN框架搭建方法如下:

Step 1: 使用聚合器(Aggregate)將鄰居的特徵聚集起來。

不同節點的鄰居數量不同,因此這一步能將任意數目的鄰居點的特徵向量整合為固定長度的向量。

聚合的方法:mean, sum, weighted sum…

從降噪的角度出發:mean(能抑制噪聲) >= weighted sum > pooling > sum(會放大噪聲)。

Step 2: 使用組合器(Combine)把聚合完的特徵向量和節點自身的特徵向量組合為一個新的特徵向量。

組合的方法:concatenate, mean, weighted sum…

從保留信息的能力出發:concatenate(乘以參數矩陣來決定向量中的有用部分) > mean = weighted sum(對信息有一定失真)

實際上,並不是所有節點的鄰居都包含特定任務的相關信息。因此,數據關係既可能提供正面信息也可能造成負干擾!比如圖中,拉近不同類點之間的距離,反而會讓分類問題更加複雜。如此利用額外信息,會起到相反效果!

問題來了:什麼樣的圖數據(關係),是適合目前的圖神經網絡的?

答案:利用數據關係帶來的性能提升,和原始圖數據中節點從鄰居獲取的信息的「數量」和「質量」有關!為此,可以用兩種平滑度度量方法,來衡量這兩個方面!

2 兩個平滑度度量a)背景:KL散度(或信息增益)

已知S(surrounding)後對原系統C(context)的信息增益:通俗來講,C和S的歐式距離越大,其二者特徵越不相似,鄰居節點能帶來的信息增益越大,導致對節點特徵的改變越大。

b)背景:圖信號處理後的平滑度

Lambda(傅立葉變換的頻率)很小時,表示信號頻率和很低,平滑程度很高。

Lambda很大時,表示信號頻率很高,表現為很不平滑(平滑度很低)。

c)信息度量一:特徵平滑度

對圖上所有節點,算出每個節點與鄰居節點的距離之和的平方,然後對所有節點進行加和,取曼哈頓距離,最後除以特徵維度和邊的數目,得到特徵平滑度。數學證明KL散度與特徵平滑度成正比,即信息增益的大小與特徵平滑度成正相關。

d)信息度量二:標籤平滑度針對圖中所有的邊,計算連接不同類別節點的邊的比例,得到取值範圍為0-1的值。直觀上,標籤平滑度為零時,只有同類數據會被「拉近「。

注意:現實中無法獲知測試集的標籤信息,因此可用訓練集已知的標籤平滑度來近似真實的位置的標籤平滑度。

3 神奇的CS-GNN模型

於是,侯逸帆提出了一種新的模型CS-GNN,該模型利用這兩個平滑度指標選擇性地聚集鄰居信息,以放大有用信息,減少負干擾!

注意這裡存在一個tradeoff:儘可能地選同類別(保證信息增益的質量)的不相似的(提高信息增益的大小)鄰居。

實驗結果證明了的方法對於給定任務測量圖形的平滑度值的有效性,並且CS-GNN能夠獲得更多有用的信息,以實現優於現有方法的性能!

4

答疑互動問:result部分的OOM是指什麼?該程序跑起來,需要什麼樣的伺服器?答:一般來說對於圖數據,會經常有OOM(Out of memory)的情況出現。一般一個16G的卡跑帶attention的GNN節點數不能超過10W。過大的話就只能通過鄰居採樣等方法優化,或者是持續用IO幾個batch讀一次。問:有點好奇特徵平滑度和標籤平滑度有特定閾值嗎?比如達到什麼範圍時圖數據的效果最好?答:因為這兩個值是信息增益的一個近似,很難去用他們得到一些精確的結論。不過還是可以用這兩個值幫助大家選擇圖數據或者理解改進圖神經網絡的。

關鍵字: