Representation Learning for Attributed Multiplex Heterogeneous Network 論文閱讀筆記

摘要部分

網絡嵌入(圖嵌入)在真實世界中已經有了非常大規模的應用,然而現存的一些網絡嵌入(圖嵌入)相關的方法主要還是集中在同質網絡的應用場景下,即節點和邊的類型都是單一類型的情況下。但是真實世界網絡中每個節點的類型都多種,每條邊的類型也有多種,而且每一個節點都具有不同且繁多的屬性。所以本論文提出了一種在Attributed Multiplex Heterogeneous Network中進行嵌入學習的統一框架,並提供了充分了數學理論分析,還在數據集Amazon, YouTube, Twitter, and Alibaba上進行了大量的實驗。實驗結果表明,利用此框架學習到的嵌入有驚人的性能提升,F1 scores可提高5.99-28.23%,而且該框架還成功地部署在全球領先的電子商務公司阿里巴巴集團的推薦系統上。對產品推薦進行離線A/B測試的結果進一步證實了該框架在實踐中的有效性和效率。

 

代碼

https://github.com/cenyk1230/GATNE

 

引入

網絡嵌入或網絡表示學習是一種在保持網絡結構和固有屬性的同時,將網絡中的節點映射到低維連續空間的一種很有前景的方法。最近,由於下游網絡學習任務如節點分類、鏈路預測和社區檢測的顯著進步,它引起了極大的關注。Deepwalk、LINE和Node2VEC,是將深度學習技術引入網絡分析以學習節點嵌入的開拓性工作。NetMF[29]對不同的網絡嵌入算法給出了等價的理論分析,之後的NetSMF[28]通過稀疏化給出了可擴展的解決方案。儘管如此,它們被設計成只處理具有單一類型節點和邊緣的同構網絡。現實世界的網絡結構應用,如電子商務,則要複雜得多,不僅包括多類型的節點和或邊緣,還包括一組豐富的屬性。由於其重要性和挑戰性的要求,在研究複雜網絡嵌入學習的文獻中進行了大量的嘗試。根據網絡拓撲結構(同質或異構)和屬性(有無屬性),我們對六種不同類型的網絡進行了分類,並分別總結了它們的相對綜合發展,分別在表1中分爲不帶屬性的同質網絡(或HUN)、帶屬性的同構網絡(或AHON)、不帶屬性的異構網絡(或HEN)、帶屬性的異構網絡(或AHEN)、多重異構網絡(或MHEN)和屬性複用異構網絡(或AMHEN)。可以看出,最後一種,即對節點多類型、邊多類型且帶權重的異質網絡的研究最少。

 

例如,在電子商務系統中,用戶可以與項目進行多種類型的交互,如單擊、轉換、添加到購物車、添加到首選項。圖1說明了這樣一個例子。顯然,“使用者”和“物品”具有本質上不同的性質,不應受到平等對待。此外,不同的用戶項交互意味着不同的興趣水平,應該給予不同的待遇。否則,系統無法精確地捕獲用戶的行爲模式和偏好,不足以實際使用。

 

挑戰:

 

 

左邊舉例說明了一個屬性化多工異構網絡的示例。圖形左邊的用戶與屬性相關聯,包括性別、年齡和位置。同樣,圖中左邊的項目包括價格和品牌等屬性。用戶和項之間的邊緣類型來自四個交互,包括單擊、加載項首選項、添加到購物車和轉換。中間的三個子圖代表了三種不同的圖形設置方式,包括自下而上的HUN、MHEN和AMHEN。右邊部分展示了在阿里巴巴數據集上所提出的模型在深度行走上的性能改進。可以看到,與深度行走相比,Gatne-I的性能提升了28.23%。

 

此圖總結了當前研究領域中的6大網絡類型,以及每一種網絡類型對應的經典的研究方法。(非常重要)清楚地告訴我們當前的研究領域中,哪些研究領域還研究得不夠,便於我們深入研究和學習。

 

=====================================================================

最近更新(2020年2月21日)

=====================================================================

 

網絡嵌入相關研究領域

1. Network Embedding

針對網絡嵌入的相關工作主要有兩大部分構成,一部分是圖嵌入,一部分是圖神經網絡。圖嵌入方面的相關代表有Deepwalk、LINE、Node2vec以及NetMF,Deepwalk源於NLP(自然語言處理)方面的Word2vec,將Word2vec應用到社交網絡體現出了良好的效果,LINE主要是針對大規模網絡,Node2vec是在Deepwalk的隨機遊走上進行了改進,使得遊走不再變得那麼隨機,使得其概率可控,具體就不做過多贅述。對於圖神經網絡,GCN通過卷積神經網絡結合了鄰居節點的特徵表示融入到節點的表示中,GraphSAGE它就是一個典型的生成式模型,且它結合了節點的結構信息,而且,它不是直接爲每個節點生成嵌入,而是生成一個可以表示節點嵌入的函數表示形式,這樣的模型,也就是這種生成式模型,有助於它在訓練期間對未觀察到的節點進行歸納和判斷。

2. Heterogeneous NetworkEmbedding

異構網絡具有各種類型的節點和/或邊緣的場景。衆所周知,這種網絡很難挖掘,因爲異質內容和結構的組合是很多的。創建這樣的數據的多維嵌入,爲多種現成的多維數據挖掘技術打開了大門。儘管這一問題很重要,但在嵌入動態和異構數據的可伸縮網絡方面所做的努力有限。HNE就在網絡中加入了內容信息以及網絡拓撲結構信息來表示異質網絡中的不同節點,PTE是從標記信息和不同層次的單詞共現信息構建大規模異構文本網絡,然後再嵌入到低維空間中,metapath2vec中又提出了一種基於異質網絡的元路徑的隨機遊走法則,根據人爲規定的Pattern(模式)進行遊走,再使用異質的skip-gram對元路徑上的每個節點嵌入表示,HERec提出了基於隨機遊走策略產生一個有一定意義的節點序列,然後再去學習首先由一組融合函數轉換並隨後集成到擴展矩陣因式分解(M F)模型中的網絡嵌入

3. Multiplex Heterogeneous Network Embedding

現有的方法,通常研究節點之間只具有單一關係的網絡,且它只捕獲網絡的單個視圖。然而,在現實中,節點之間通常存在多種類型的關係,產生具有多個視圖的網絡,或者多重網絡嵌入。PMNE就提出了一個方法,此方法能將一個Multiplex network投影到一個連續的向量空間,MVE則引入了注意力機制協助嵌入具有多個視圖的網絡,MNE則爲每個節點使用一個常見的嵌入和幾個附加的基於每種不同邊類型的嵌入,這是由一個統一的網絡嵌入模型共同學習的。Mvn2vec探討了通過同時建模、保存和協作分別在不同視圖中表示邊緣的語義意義來實現更好的嵌入結果的可行性。

4. Attributed Network Embedding

帶屬性的網絡嵌入的目標是找一個低維向量來表示網絡中的節點,且最大化這個低維向量能夠保存原網絡結構的拓撲結構以及屬性的能力,TADW這個方法,是在矩陣分解框架下,將節點的文本特徵納入網絡表示學習,LANE將標籤信息集成到屬性網絡嵌入中,同時還保持了它們的相關性,AANE提出了一個聯合學習過程,其能夠以分佈式方式進行加速屬性網絡嵌入,SNE提出了一種通過捕捉結構鄰近性和屬性鄰近性來嵌入社交網絡的通用框架,DANE能夠捕捉高度非線性且能夠既在網絡拓撲結構和節點屬性上,保留多種鄰近性特徵,ANRL使用了 neighbor enhancement autoencoder(鄰居增強自動編碼器)來對節點屬性信息進行建模,再使用基於屬性信息編碼的attribute-aware skip-gram model模型來捕捉網絡結構。

 

5. 問題定義(Problem Definition)

(因爲這一部分不是重點,問題定義部分截圖表示,具體描述請參考原論文)

 

 

===============================  重點!! ==========================================

===============================  重點!! ==========================================

===============================  重點!! ==========================================

 

 

6. GATNE-T和GATNE-I方法

這一部分,我們重點解釋一下本論文提出來的GATNE模型,一個是Transductive Model: GATNE-T、一個是Inductive Model: GATNE-I。同時,這篇論文也與最近很流行的模型MNE進行了理論對比,因爲一個網絡中,現實中的真實情況是社交網絡只能觀察到部分而不是全部都能觀察到,那麼爲了解決部分觀察的問題,那麼本論文又在GATNE-T的模型上做了一個延伸,生成了一個新模型,叫作:GATNE-I

 

6.1  Transductive Model: GATNE-T

 

從上面這張圖中,我們來詳細談談GATNE-T模型,這個模型的應用對象是帶有屬性的多重異質網絡,GATNE-T將每個節點的整體嵌入分離成“基本嵌入”和“邊嵌入”兩部分,如上圖中間部分的上下兩個部分——“base embedding”和“edge embedding”。其中base embedding的目的是分離出網絡的拓撲特徵,edge embedding(邊嵌入)是針對某一特定節點在不同的邊類型上嵌入表示,以這個節點爲例,我們想要計算它的邊嵌入,就首先要觀察跟它相連的邊類型有幾種,我們可以發現跟它相連的邊類型有2種:橙色和藍色,那麼我們針對這個節點分別將橙色類型的邊和藍色類型的邊分離出來就形成了新的2個網絡結構,,通過公式分別將鄰居節點進行聚合,其中k表示與節點i相連的k階鄰居,比如上圖,上圖就只採用了一階鄰居描述方式,表示基於節點i且與節點i相連的邊類型爲r的網絡的聚合嵌入表示,表示節點i在邊類型r上的鄰居集合,那麼最開始的邊嵌入是隨機初始化的。那麼我們通過參考GraphSAGE模型可以計算出每種邊類型的嵌入表示,有兩種方式,如果採用平均池化則爲:,如果採用最大池化則爲:

 

接下來,我們將基於不同邊類型網絡各自生成的某一特定節點i的邊嵌入表示爲等等,我們將基於不同邊類型網絡生成的不同邊嵌入合併爲一個矩陣爲:,U的shape爲s x m,其中m表示邊類型的數目,s表示每個邊嵌入的維度。由於不同的邊類型具有不同的重要性,在這裏引入了“自注意力機制”,來計算不同類型的邊嵌入的重要係數爲,其計算公式爲:,其中的都是基於邊類型r的可訓練的參數,因此,節點i在邊類型r上上的整體嵌入爲:,其中爲超參數(人爲定義),爲可訓練的轉換矩陣。公式進行變化可表示爲:,自注意力係數通過softmax算出爲

 

總的來說,GATNE-T模型對每個節點的嵌入表示,沒有融合節點屬性,而是針對與節點相連的不同類型的邊類型分別聚合鄰居節點生成各自的邊嵌入表示,然後再引入自注意力機制進行計算各自的注意力係數(即各自不同的重要性)來進行一個融合,從而得到節點的整體嵌入表示。此模型充分地考慮了異質邊類型對節點嵌入的影響,但是並未考慮節點附加屬性對節點嵌入表示的影響,於是,在此模型的基礎上進行延伸擴展,提出了GATNE-I模型。

 

 

 

6.2  Inductive Model: GATNE-I

在現實的社交網絡中,通常存在一些觀察不到的數據,那麼GATNE-T模型的侷限性就是不能處理那麼觀測(觀察)不到的數據,然後,在現實生活大量的應用中,被網絡化的數據常常是部分被觀測到,於是提出了模型GATNE-I,此模型能夠更好地處理那些不能被觀測到的數據部分。

 

GATNE-I模型與GATNE-T其中的一個區別就在對的定義上,然而GATNE-I對的初始化提出了另外一種方式,就是通過將節點i的屬性向量通過一個函數轉換後再作爲bi進行運算,,xi爲節點i的屬性向量,hz()函數爲轉換函數,z的意思就是節點i所對應的節點類型,針對不同的節點類型生成函數hz()也不同(h()也可能爲多層感知機),因爲不同類型的節點對應的屬性也具有不同的維度。

 

其中GATNE-T模型中採用隨機初始化的方式,然後GATNE-I模型也採用了函數變換的方式,通過函數變換節點屬性得到預處理後的值作爲,記作。對於GATNE-I更特別的一點是,,在計算整體嵌入的過程中,加入了額外的屬性字段,其中是超參,是對於不同類型節點的一個轉換矩陣。

 

從以上我們可以看出,GATNE-T和GATNE-I最大的區別就在的初始化生成方式。在GATNE-T模型中,都是直接參與節點嵌入運算且不能處理那些在訓練中看不到的節點,然而對於GATNE-I,它模型不再爲每一個節點直接訓練,而是通過訓練兩個函數,將節點屬性xi分別通過兩個函數生成,這樣有助於在訓練過程中哪怕看不到這個節點,但是隻要這個節點有它所對應的原特徵就可以。

 

6.3 模型優化方法

這部分我會講一下如何去優化和學習這兩個模型。首先,我們通過隨機遊走生成節點序列,然後利用skip-gram模型針對生成的節點序列進行學習嵌入表示,但是由於我們輸入的網絡形式爲異質網絡形式,所以這裏我們採用的是metapath2vec中的基於元路徑的隨機遊走模式,給定一個pattern:,遊走定義:

(具體論文可參照metapath2vec)

因爲基於元路徑的隨機遊走方式可以保障不同類型節點之間的語義關係,然後進而可以更好地與skip-gram模型進行融合,那麼我們假設在邊類型爲r的網絡上隨機遊走的長度爲l,,我們取出其中一個節點對,其中C爲的上下文節點集合,其中c是此節點的上下文窗口半徑。

 

因此我們知道了節點vi以及它的上下文節點集合C,那麼我們的目標就是去優化這個函數:

其中表示所有可優化的參數,然後我們根據metapath2vec利用異質的softmax函數來計算在已知vi的情況下,vj出現的概率:

其中是節點的上下文節點,是在邊類型爲r的節點i的整體嵌入表示。

最後再採用異質的負樣本採樣,針對每一個節點對,去近似這個函數:

 

其中的激活函數爲:(sigmoid函數)

 

具體算法如下:

 

7. 實驗部分

實驗主要採用鏈接預測的方式進行比較本論文提出的方法和之前一個state-of-the-art方法進行對比,以及參數的敏感性、收斂性、以及其規模,最後將介紹此方法運用到阿里巴巴推薦系統上的測試結果。

 

數據集:

 

 

Amazon:在這個數據集中,我們只使用電子產品類別的產品元數據,包括產品屬性和產品之間的共同購買鏈接,產品屬性包括價格、銷售等級、品牌和類別

YouTuBe:YouTube數據集是一個多路雙向網絡數據集,由15088個YouTube用戶之間的五種類型的交互組成,邊緣的類型包括用戶之間的聯繫人、共享朋友、共享訂閱、共享訂閱者和共享最喜歡的視頻

Twitter:推特數據集是關於2012年7月1日至7日發現希格斯玻色子的推特,它由450,000多個Twitter用戶之間的四個方向關係組成,這些關係是Twitter用戶之間的關係、回覆、提及和友誼/追隨者關係。

Alibaba:阿里巴巴數據集由四種類型的交互組成,包括單擊、添加到首選項、添加到購物車,以及用戶和項目兩種類型節點之間的轉換。抽樣的阿里巴巴數據集被表示爲阿里巴巴-s,還在阿里巴巴的分佈式雲平臺上提供了整個數據集的評估,完整的數據集被表示爲阿里巴巴。

 

8. 實驗效果分析

鏈接預測是學術界和工業界共同的任務。對於學術界來說,它被廣泛用於評估不同方法獲得的網絡嵌入的質量。在這個行業中,鏈接預測是一項非常艱鉅的任務,因爲在現實世界中,我們通常面臨部分鏈接的圖表,特別是對於依賴用戶和項目之間的鏈接進行推薦的電子商務公司。我們從原始圖中隱藏一組邊/非邊,並在剩餘的圖上進行訓練。

 

本論文的實驗創建了一個驗證/測試集,其中包含5%/10%的隨機選擇的正邊,每個邊緣類型的隨機選擇負邊的等效數,且驗證集還用於超參數調優和早期停止,測試集用於評估性能,並且只在調好的超參數下運行一次,本論文還在實驗中使用了一些常用的評估標準,即Roc曲線下的面積(Roc-auc)和Pr曲線(Pr-auc)。並且,還使用了F1分數作爲評估的另一個度量。

爲了避免閾值效應[37],假設還給出了測試集中的隱藏邊數。所有這些度量都是在選定的邊緣類型之間統一平均的。

 

量化的結果:(如上圖所示)

三個公共數據集和Alibaba-s的實驗結果如上表所示,GATNE的性能優於各種數據集中的各種基線。由於節點屬性有限,GATNE-t在Amazon數據集上獲得了比GATNE-i更好的性能。阿里巴巴數據集的節點屬性豐富,使GATNE-I獲得最佳性能。ANRL對節點屬性是否豐富非常敏感,在Amazon數據集上得到了最糟糕的結果。用戶和項目的不同節點屬性也限制了ANRL在Alibaba-s數據集上的性能。在youtube和twitter數據集上,非常敏感GATNE-I的表現與GATNE-T類似,因爲這兩個數據集的節點屬性是deepwalk的節點嵌入,這是由網絡結構生成的。

 

阿里巴巴數據集上的體現:上表,列出了阿里巴巴數據集的實驗結果。在阿里巴巴數據集上,GATNE的性能非常好,並達到了最好的性能,PR-auc的性能提升率爲2.18%,Roc-auc的性能提升率爲5.78%,F1分數爲5.99%,與以前最好的算法相比,效果最好。在大規模數據集中,GATNE-I的性能優於GATNE-T模型,這表明歸納方法在大規模屬性多重異構網絡上工作得更好,這在現實世界中通常是如此。

收斂性:本論文也分析了模型在阿里巴巴數據集上的收斂性。結果如圖(a)所示,表明GATNE-I收斂得更快,而且,在極大規模的真實世界數據集上獲得比GATNE-T更好的性能。

 

可伸縮性分析:論文研究了GATNE的可伸縮性,它已經部署在多個工作人員上進行優化。(b)顯示了阿里巴巴數據集上的工人數量。圖中顯示,GATNE在分佈式平臺上是相當可伸縮的,當我們將工人數量相加時,培訓時間顯著減少,最後,誘導模型需要不到2小時才能與150名分佈式工人收斂。我們還發現,隨着工人數量的增加,GATNE-I的訓練速度幾乎呈線性增加,但小於150。而GATNE-T收斂較慢,當工人數量大於100時,它的訓練速度即將達到極限。除了最佳的性能外,GATNE也是可擴展的,足以在實踐中採用。

參數敏感性:我們研究了GATNE中不同超參數的靈敏度,包括整體嵌入維數d和邊緣嵌入維數s。上圖說明了GATNE從默認的(d=200,s=10)改變base嵌入維d或邊緣嵌入維數s時的性能。我們可以得出結論,在較大的基邊嵌入尺寸範圍內,GATNE的性能相對穩定,當base邊嵌入尺寸過小或過大時,性能下降。

 

 

9. 離線的A/B測試

在阿里巴巴的分佈式雲平臺上爲其推薦系統部署了歸納模型GATNE-I。培訓數據集約有1億用戶和1000萬項,每天有100億次交互。我們使用該模型爲用戶和項目生成嵌入向量。對於每個用戶,我們使用具有歐幾里德距離的k最近鄰(KNN)來計算用戶最有可能單擊的top-n項。實驗目標是最大限度地提高頂級命中率。在a/b測試的框架下,我們對gatne-i、mne和Deepwalk進行了離線測試。結果表明,與MNE和Deepwalk相比,Gatne-I的命中率分別提高了3.26%和24.26%。

 

10. 結論

在本論文中形式化了屬性多重異構網絡嵌入問題,並提出了GATNE來解決它的傳輸和感應設置。我們將Gatne-I的整體節點嵌入分爲三個部分:基嵌入、邊緣嵌入和屬性嵌入。基嵌入和屬性嵌入在不同類型的邊緣之間共享,而邊緣嵌入是通過鄰域信息的聚集和自我注意機制來計算的。與以前最先進的方法相比,我們提出的方法在多個具有挑戰性的數據集上實現了更好的性能。該方法已在阿里巴巴的推薦系統上成功地部署和評估,具有良好的可擴展性和可擴展性。

 

 

 

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章