摘要: 跨社交網(wǎng)絡(luò)的用戶身份識別(UIL)的本質(zhì)是通過各種方法發(fā)現(xiàn)跨社交平臺上的同一用戶或者實體. 現(xiàn)有方法的最新思路主要是對網(wǎng)絡(luò)中節(jié)點的各種結(jié)構(gòu)或?qū)傩蕴卣鬟M行聚合,然后構(gòu)建相應(yīng)的深度學習模型,學習相同用戶在不同網(wǎng)絡(luò)中特征的相似性,以此來實現(xiàn)不同網(wǎng)絡(luò)中相同用戶的對齊. 但是大多數(shù)方法較少考慮用戶的屬性信息或者是只用單一方法來處理不同類型的屬性特征,這樣處理的后果就是不能完美捕獲到屬性文本中的有效特征. 此外,現(xiàn)有的方法是對2 個網(wǎng)絡(luò)分別在各自的嵌入空間進行學習然后映射到同一個公共空間,也就只能學習到各自網(wǎng)絡(luò)的信息. 本文提出了一個新的方法,即基于合并子圖的雙通道跨網(wǎng)絡(luò)用戶身份識別(TCUIL). 為了解決獲取節(jié)點特征單一性問題,提出了多維特征提取方法實現(xiàn)了針對不同特征采用不同方法進行處理. 為了解決2 個網(wǎng)絡(luò)嵌入空間互不相交的問題,提出了圖合并方法實現(xiàn)了2 個網(wǎng)絡(luò)中信息的交互. 此外,為了能學習到2 個網(wǎng)絡(luò)的多維度信息,設(shè)計了雙通道網(wǎng)絡(luò)結(jié)構(gòu)實現(xiàn)了對網(wǎng)絡(luò)拓撲結(jié)構(gòu)、屬性特征、節(jié)點間關(guān)系特征的有效學習. 通過在2個真實數(shù)據(jù)集上的大量實驗,證明了本文方法優(yōu)于現(xiàn)有最先進的對齊方法. 我們在2 個真實數(shù)據(jù)集(社交網(wǎng)絡(luò)和合著網(wǎng)絡(luò))上進行了大量實驗,在F1 方面社交網(wǎng)絡(luò)至少提高了44. 32%,合著網(wǎng)絡(luò)至少提高了25. 04%.
關(guān)鍵詞: 社交網(wǎng)絡(luò); 用戶身份識別; 合并子圖; 圖神經(jīng)網(wǎng)絡(luò)
中圖分類號: TP391. 1 文獻標志碼: A DOI: 10. 19907/j. 0490-6756. 2024. 040001
1 引言
隨著在線社交網(wǎng)絡(luò)平臺(Online Social Network,OSN)的日益普及,各種各樣的社交網(wǎng)絡(luò)平臺應(yīng)運而生,如微博、豆瓣、騰訊、Facebook、Twitter和LinkedIn 等. 這些平臺迅速融入并在一定程度上豐富了人們的生活. 不同社交媒體平臺的內(nèi)容風格迥異,用戶為滿足不同的需求,會同時使用多個社交媒體平臺. 每個平臺只有很小一部分用戶僅使用該平臺. 而跨社交網(wǎng)絡(luò)用戶身份識別的本質(zhì)在于通過分析多個虛擬賬號的交互模式、行為模式和偏好等,推斷出背后的實體用戶. 該問題的研究對網(wǎng)絡(luò)安全、推薦系統(tǒng)和數(shù)據(jù)挖掘等領(lǐng)域都有著重要意義[1].
早期的研究通過利用用戶配置文件屬性來解決UIL 問題,包括用戶簡介[2-4](例如:用戶名,頭像,地理位置)和用戶生成的內(nèi)容[5- 7](例如:推文,帖子). 許多基于屬性的方法大都是轉(zhuǎn)化為對特定字符串的相似性比較的問題. 然而,對于像用戶名或者地理位置這類屬性,它們都極短,由幾個詞組成. 而用戶的生成內(nèi)容則通常是長文本,包含多個段落,語句間具有強相關(guān)性. 因此,在進行特征處理時,不區(qū)分內(nèi)容長度而采用單一的方法既不能覆蓋整個不同屬性的特征集,也不能捕獲屬性文本中的高級語義特征. 直觀地說,每個用戶的社交鄰居只能涉及來自同一社交網(wǎng)絡(luò)的用戶. 因此大多數(shù)方法都是在2 個網(wǎng)絡(luò)分別學習,然后通過投影將2 個網(wǎng)絡(luò)映射到1 個公共相關(guān)空間或者直接將一個網(wǎng)絡(luò)映射到另一個網(wǎng)絡(luò)[8-10]. 但是這類方法存在一個問題:2 個網(wǎng)絡(luò)分別在各自的嵌入空間進行特征學習,那么所提取的用戶對特征是相互獨立毫無交集的. 一方面,這可能會導致一對錨節(jié)點的嵌入表示差別很大;另一方面,如果對2 個網(wǎng)絡(luò)中的信息分別進行學習,這可能忽略跨網(wǎng)絡(luò)的許多有價值的補充信息.
為了解決上述問題,本文提出了基于合并子圖的雙通道跨網(wǎng)絡(luò)用戶身份識別方法TCUIL. 本文的主要研究貢獻總結(jié)如下.
(1) 提出新的監(jiān)督UIL 方法TCUIL,該方法由多維特征提取、子圖合并、雙通道圖網(wǎng)絡(luò)結(jié)構(gòu)組成. 與現(xiàn)有的方法不同,TCUIL 將跨網(wǎng)絡(luò)的鏈路預測轉(zhuǎn)化為單個網(wǎng)絡(luò)內(nèi)的鏈路預測問題.
(2) TCUIL 根據(jù)屬性信息的類型采用不同的嵌入方法,以此得到每個屬性更有效的嵌入表示.
(3) 提出子圖合并的方法,將2 個目標節(jié)點及各自鄰居節(jié)點提取至1 個圖中,可以同時捕獲目標節(jié)點對在2 個網(wǎng)絡(luò)的交互關(guān)系.
(4) 設(shè)計雙通道網(wǎng)絡(luò)結(jié)構(gòu). 具體來說,使用圖卷積神經(jīng)網(wǎng)絡(luò)GCN 提取網(wǎng)絡(luò)拓撲結(jié)構(gòu)以及傳統(tǒng)的屬性特征,同時,使用DeepWalk 提取節(jié)點間的關(guān)系特征. 2 個通道并行執(zhí)行,從多個維度學習合并子圖的節(jié)點表示.
(5) 進行了充分實驗,從準確率、召回率等維度與CENALP、MAUIL 等方法進行了比較,驗證了本文方法的有效性.
2 相關(guān)工作
跨在線社交網(wǎng)絡(luò)的用戶身份鏈接是社交媒體中的新興任務(wù),近年來受到越來越多的關(guān)注. 跨社交網(wǎng)絡(luò)用戶身份識別也被稱為用戶身份關(guān)聯(lián)、錨鏈路預測和實體對齊等,按照傳統(tǒng)的方法對數(shù)據(jù)挖掘和機器學習模型進行分類,我們將現(xiàn)有的模型歸納為3 組:監(jiān)督模型、半監(jiān)督模型和無監(jiān)督模型[11].
基于監(jiān)督學習的用戶對齊方法需要將預先匹配的用戶對作為標記數(shù)據(jù),然后使用訓練好的模型對待匹配的候選用戶對進行預測[12]. 大多數(shù)文獻涉及監(jiān)督學習的方法,其目的是學習排名模型或二進制分類器來識別用戶身份. 由于獲取帶標簽的匹配用戶身份對的成本較高,因此提出了一些無監(jiān)督模型來解決UIL 問題. 目前,基于無監(jiān)督學習的方法來實現(xiàn)用戶身份識別主要有2 種模式:一種是設(shè)計一組規(guī)則,對具有較強辨識度的屬性特征自動獲取標記數(shù)據(jù),然后進行有監(jiān)督的對齊;另一種模式就是通過無監(jiān)督的表示學習抽取候選用戶特征,然后利用對齊算法識別匹配用戶. 無監(jiān)督方法不依賴標記數(shù)據(jù),但是無監(jiān)督方法通常比有監(jiān)督方法性能差. 于是,一些半監(jiān)督方法充分利用少量標記樣本和大量未標記數(shù)據(jù)被用來解決UIL 問題.
無論上述哪種方法,其核心大都是需要通過一定的方式提取用戶不同維度的特征,然后基于特征訓練相應(yīng)的模型實現(xiàn)鏈路預測. 在特征提取方面,現(xiàn)有方法主要關(guān)注用戶的屬性和結(jié)構(gòu)特征,對節(jié)點間關(guān)系特征關(guān)注較少,而用戶關(guān)系中含的虛假信息量更少. 同時,采取單一方法提取特征既不能涵蓋整個不同屬性特征集,也不能捕獲屬性文本中的高級語義特征. 在模型方面,近年來,部分研究將圖神經(jīng)網(wǎng)絡(luò)應(yīng)用于用戶對齊任務(wù),現(xiàn)有的GNN 模型大多局限于局部結(jié)構(gòu)信息,然而部分研究多直接將GNN 模型“ 移植”到無權(quán)跨社交網(wǎng)絡(luò)用戶對齊任務(wù)中,未結(jié)合現(xiàn)實需求做出有針對性的改進與調(diào)整. 這些問題導致跨網(wǎng)絡(luò)用戶對齊的效果還有很大的提升空間,因此,如何進一步挖掘能夠反應(yīng)用戶相似性的特征,進一步構(gòu)造能夠更加敏銳地捕獲到相似性特征的模型,是跨網(wǎng)絡(luò)對齊領(lǐng)域需要持續(xù)進行研究的內(nèi)容.
3 TCUIL 方法
3. 1 概述
本節(jié)主要介紹方法TCUIL 的詳細信息. 如圖1 所示,該模型有3 個組成部分:多維特征提取、圖合并和雙通道網(wǎng)絡(luò)結(jié)構(gòu). 結(jié)合用戶屬性和網(wǎng)絡(luò)結(jié)構(gòu)信息的應(yīng)用是近年來的研究熱點. 而這些信息從內(nèi)容上來看差異性很大,所以針對不同的特征,用不同的方法進行提取和處理. 多維特征提取則用于融合2 個網(wǎng)絡(luò)中所有節(jié)點的屬性信息和拓撲結(jié)構(gòu),以此得到信息量更為豐富的節(jié)點低維嵌入.
圖合并則是基于將2 個網(wǎng)絡(luò)的嵌入空間交互在一起的思想而提出的. 基于合并后的子圖進行特征學習,不僅能夠?qū)崿F(xiàn)對網(wǎng)絡(luò)中相鄰節(jié)點特征的學習,還能實現(xiàn)對另外一個網(wǎng)絡(luò)中間接相鄰節(jié)點特征的學習. 因此,這就將網(wǎng)絡(luò)間鏈路預測轉(zhuǎn)換為網(wǎng)絡(luò)內(nèi)兩節(jié)點的鏈路預測問題.
雙通道網(wǎng)絡(luò)結(jié)構(gòu)則是對由每個節(jié)點對構(gòu)建的新網(wǎng)絡(luò)中的特征進行學習. 為了能夠使用用戶的多個維度的信息進行用戶身份識別,本文設(shè)計了雙通道結(jié)構(gòu),一方面使用多層圖卷積神經(jīng)網(wǎng)絡(luò)GCN[13]挖掘網(wǎng)絡(luò)拓撲結(jié)構(gòu)并提取傳統(tǒng)的屬性特征,另一方面使用深度游走(DeepWalk)[14]構(gòu)建頂點序列并從中學習節(jié)點間的關(guān)系特征. 雙通道并行學習,將輸出特征進行拼接,然后送入Transformer[15]得到節(jié)點最終特征表示. 最后通過前饋神經(jīng)網(wǎng)絡(luò)實現(xiàn)二分類任務(wù).
為了實現(xiàn)用戶身份鏈接,給定任意節(jié)點對(vs,vt),節(jié)點分別來自2 個不同的網(wǎng)絡(luò)Gs 和Gt. 我們預測該節(jié)點對是否屬于現(xiàn)實世界同一用戶通過觀察前饋神經(jīng)網(wǎng)絡(luò)最后輸出的二分類預測值,如果預測值為True,則表明vs 和vt 屬于同一用戶,反之,則屬于不同用戶. 圖1 展示了TCUIL 的概述.
3. 2 多維特征提取
綜合考慮用戶屬性信息和網(wǎng)絡(luò)拓撲結(jié)構(gòu)來實現(xiàn)跨社交網(wǎng)絡(luò)的用戶身份鏈接,包含信息更為豐富,可以提高用戶身份識別的性能[16]. 用戶屬性信息根據(jù)文本長短劃分為詞級別屬性嵌入和文本級別屬性嵌入.
3. 2. 1 詞級別屬性嵌入
短文本主要由用戶配置信息組成,包括用戶名和位置信息等屬性. 在大多數(shù)情況下,1 個用戶在1 個社交網(wǎng)絡(luò)中只擁有1個賬戶,該賬戶由唯一的用戶名標識,而同一用戶在不同的社交網(wǎng)絡(luò)中的多個賬戶通常是相同或相似的用戶名. 本節(jié)采用Word2vec[17]方法來捕獲用戶屬性信息的詞級別特征.
用戶vi 在社交網(wǎng)絡(luò)中的詞級別屬性文本表示為awi. 在我們選取的這些社交平臺上,主要是以中文和英文為主,對中英文分別使用jieba 和NLTK分詞工具,將屬性awi劃分為有m 個單詞的序列w wi = w wi1, w wi2,…,w wik,…, w wim,其中w wik 是awi中第k 個單詞. 使用用戶名屬性來對上述表達進行解釋. 假設(shè)網(wǎng)絡(luò)中某用戶的用戶名為awi=\"ThumbPeak 拇指山\",它可以被標記為如下所示的單詞序列,其后跟著的是單詞的計數(shù)數(shù)字:w wi =\"ThumbPeak\":1, \"拇指\":1,\"山\":1, others:0. 所有詞級別屬性信息構(gòu)成1 個詞匯表,每個單詞在詞匯表中的ID 唯一.
我們將具有n 個用戶的社交網(wǎng)絡(luò)中的詞級別屬性集合表示為Aw = { aw1,aw2,…,awi,…,awn }. 每1個屬性awi的w wi 都可以看作1 個用于深度學習的詞級別文檔,則共有n 個詞級別文檔構(gòu)成訓練時的語料庫. 本文計劃使用CBOW 語言模型訓練語料庫中的詞向量. 在訓練過程中,文檔w wi 中的任意w wik 的詞向量都是dw 維的向量,記為xik ∈ Rdw × 1. 用戶vi 的詞級別屬性集的特征向量x wi 是通過對文檔wi 中的所有詞的詞向量求和得到,將所有用戶的詞級嵌入向量構(gòu)造為詞級特征矩陣Fw.
3. 2. 2 文本級別屬性嵌入
文本級屬性主要指用戶生成內(nèi)容UGC,如用戶發(fā)布的帖子、關(guān)注的電影信息等. 我們認為同一用戶在不同社交網(wǎng)絡(luò)平臺上關(guān)注的內(nèi)容和發(fā)布評論的語言風格是相似的. 這里我們對長文本使用長短期記憶網(wǎng)絡(luò)(LSTM)[18]進行嵌入學習.
用戶vi 在社交網(wǎng)絡(luò)中的文本級別屬性文本表示為atei ,用戶的每個行為信息作為1 個句子,該用戶發(fā)布的所有內(nèi)容聚合在一起構(gòu)成相應(yīng)的長文本屬性. 屬性atei 的每個句子都可以劃分為有m 個單詞的序列w tei = w tei1, w tei2,…,w teik,…, w teim,其中w teik 表示句子中的第k個單詞. 因此可以得到網(wǎng)絡(luò)中所有用戶的文本級別屬性集合Ate ={ ate1,ate2,…,atei ,…,aten },文本級別屬性atei 中的每個句子對應(yīng)的序列w tei 被視為文本級別文檔. 同樣使用CBOW 語言模型來訓練語料庫中的詞向量,文檔w tei 中的任意wik 的詞向量都是dte 維的向量. 句向量則通過將該句子的所有詞向量累加得到,記為xik ∈ Rdte × 1.
由于文本級別屬性是用戶生成內(nèi)容,每個文本的句子長短不一致,文本級別文檔中詞語總數(shù)也不一致. 因此文本級屬性經(jīng)過詞嵌入轉(zhuǎn)換成低維向量后需要進行補齊或截斷操作. 考慮到過長的文本反而會給LSTM 帶來超長訓練時間的問題,我們設(shè)置每個用戶文本級別屬性的最大句子數(shù)Wmax 為200,然后將文本句子總數(shù)低于Wmax 的嵌入用0 補齊,高于Wmax 的則截斷. 最終得到用戶vi 的初始文本級別屬性特征F tei0 ∈ RWmax × dte 作為LSTM 的輸入. LSTM 會返回output 和hidden,其中output 包含輸入序列中每個句子的輸出向量,最后1 個句子的輸出向量x tei 代表用戶vi 的文本語義向量;hidden 是1 個元組,元組中的第1 個元素代表每個詞的隱藏層向量,第2 個元素代表所需遺忘的元素. 因此取output 的最后1 個輸出向量構(gòu)成文本級別屬性集合的特征矩陣Fte.
Fte ={x tei |i = 1,…,n} (3)
3. 2. 3 拓撲結(jié)構(gòu)嵌入
中心性(Centrality)是社交網(wǎng)絡(luò)分析(Social Network Analysis, SNA)中的重要概念,可以幫助我們理解節(jié)點(即網(wǎng)絡(luò)中的個體或群體)在網(wǎng)絡(luò)中的位置和影響力,通常用數(shù)字或度量來表示,被稱為中心度[19]. 對于節(jié)點的中心性而言,有表征節(jié)點局部結(jié)構(gòu)特征的局部中心性,有表征節(jié)點全局結(jié)構(gòu)特征的全局中心性,還有一些其他中心性,我們從不同類型的中心性指標中,分別選取了一些知名的中心性方法,捕獲用戶在社交網(wǎng)絡(luò)中的結(jié)構(gòu)特征. 本文采用了8 種判定中心性的度量指標來捕獲整個網(wǎng)絡(luò)的結(jié)構(gòu)性特征.具體包括以下8 個指標:度中心性、特征向量中心性、介數(shù)中心性、緊密中心性、PageRank、K-core、聚類系數(shù)、局部中心性. 節(jié)點vi 的結(jié)構(gòu)向量是上述8個度量指標的拼接. 將所有用戶的結(jié)構(gòu)嵌入向量拼接起來構(gòu)成結(jié)構(gòu)特征矩陣Fs.
Fs ={x si |i = 1,…,n} (4)
3. 2. 4 用戶中間表示
通過上述對社交網(wǎng)絡(luò)中用戶的多維特征進行建模,分別得到描述用戶詳細信息的屬性特征和代表用戶社交關(guān)系的結(jié)構(gòu)特征矩陣,并將3 個特征矩陣串聯(lián)起來構(gòu)建用戶中間特征矩陣.
F = Fw ∥ Fte ∥ Fs (5)
3. 3 圖合并
通過上一部分,將屬性嵌入與結(jié)構(gòu)嵌入進行拼接即可得到帶有節(jié)點特征矩陣F 的網(wǎng)絡(luò). 接著是圖合并,由2 部分組成:子圖提取和子圖合并. 2個節(jié)點之間的鏈接是否存在,可以通過以節(jié)點為中心的圖拓撲來確定. 通常,當涉及到更多拓撲信息時,我們可以獲得更好的性能. 然而在實際問題中,1 個網(wǎng)絡(luò)中的節(jié)點可能非常多,每次預測如果都考慮整個圖,會帶來更多的計算成本和內(nèi)存消耗[20]. 為了在計算成本和預測性能之間尋求平衡,我們對2 個目標節(jié)點分別在各自網(wǎng)絡(luò)中提取了khop子圖來學習特征和預測潛在鏈接的存在[21]. 與此同時,一般的跨網(wǎng)絡(luò)鏈路預測方法都是將2 個網(wǎng)絡(luò)的高維數(shù)據(jù)空間通過某種形式的映射函數(shù)表示成低維連續(xù)的向量空間,然后基于它們的向量表示學習相似度評分函數(shù)去匹配實體. 在整個過程中,最明顯的缺陷就是2 個網(wǎng)絡(luò)都只能學習到該網(wǎng)絡(luò)本身的信息. 于是,我們提出子圖合并的方法,通過預先對齊的節(jié)點對將2 個子圖合并為1 個網(wǎng)絡(luò),這就轉(zhuǎn)換為在1 個網(wǎng)絡(luò)中預測用戶對齊的問題. 更重要的是,在后續(xù)圖卷積的過程中,基于合并后的子圖進行卷積,不僅能夠?qū)崿F(xiàn)對網(wǎng)絡(luò)中相鄰節(jié)點特征的聚合,還能實現(xiàn)對另外1 個網(wǎng)絡(luò)中間接相鄰節(jié)點特征的聚合.
3. 3. 1 子圖提取
具體做法如下:給定1 個節(jié)點對(vs, vt),根據(jù)節(jié)點id 分別找到各自對應(yīng)所在的網(wǎng)絡(luò). 以節(jié)點vs 為例,首先提取1 跳鄰域. 給定網(wǎng)絡(luò)Gs 和列表NodeList 即可得到鄰域,其中,NodeList 是存有要找尋1 跳鄰域的節(jié)點id 的列表,初始列表只有目標節(jié)點id,即NodeList=[vs]. 經(jīng)過1 輪后,將找到的與vs 直接相連的節(jié)點集N_neighbor 加入至列表NodeList 中. 以此類推,如果想要得到目標節(jié)點的k-hop 子圖,將上述過程執(zhí)行k 次即可得到該子圖所包含的所有節(jié)點. 需要注意的是,每輪更新節(jié)點集合NodeList 后都要進行去重操作. 根據(jù)子圖包含的全部節(jié)點就可從原始圖Gs 中誘導出節(jié)點vs 的子圖Sub_Gs ( v ),同時,子圖中節(jié)點的屬性表示和原始圖共享. 子圖提取的總體過程如算法1 所示.
3. 3. 2 子圖合并
該方法的具體做法如下:通過第3. 3. 1 節(jié)的處理,我們已經(jīng)得到由1 個節(jié)點對(vs, vt)所提取的2 個k-hop 子圖. 首先,對2 個子網(wǎng)絡(luò)Sub_Gs 和Sub_Gt 的節(jié)點集和邊集進行并集操作,即可得到由2 個互不相交的子圖構(gòu)成的合并圖Gm. Gm 中節(jié)點的屬性表示和2 個原始圖共享. 然后依次遍歷少量已知的預先對齊種子集S. 對于每個種子節(jié)點對(vs1, vt1),我們首先將2 個節(jié)點的特征表示做平均,并將該值賦給節(jié)點vs1,替換其原有特征. 其次,找到與vt1 直接相連的鄰域節(jié)點集合N_neighbor,然后依次增加由N_neighbor 中所有節(jié)點和vs1 組成的邊,最后刪除節(jié)點vt1. 重復此操作,直到將種子集S 中所有節(jié)點對遍歷結(jié)束,最后得到的網(wǎng)絡(luò)就是將2 個子圖合并后的結(jié)果. 子圖合并的偽代碼如算法2 所示.
3. 4 雙通道網(wǎng)絡(luò)結(jié)構(gòu)
通過上述多維特征提取和圖合并,已經(jīng)得到由1 個節(jié)點對(vs, vt)所誘發(fā)的合并子圖,接下來就需要學習該圖所有節(jié)點的特征表示來實現(xiàn)鏈路預測功能. 隨著圖結(jié)構(gòu)變得越來越普遍、信息變得越來越豐富,圖神經(jīng)網(wǎng)絡(luò)(GNN)已經(jīng)成為許多重要應(yīng)用的強大工具[22]. 本文采用的圖卷積網(wǎng)絡(luò)GGN通過聚合來自其鄰域的特征信息來封裝每個節(jié)點的隱藏表示,它能直接對圖的拓撲結(jié)構(gòu)和頂點的屬性信息進行學習. 與此同時,TCUIL 采用Deep?Walk 對網(wǎng)絡(luò)中節(jié)點的關(guān)系特征進行并行學習.DeepWalk 基于隨機游走策略得到一系列節(jié)點序列,每條序列包含目標節(jié)點的1 跳或2 跳鄰域節(jié)點. 基于此,DeepWalk 能學習到鄰域間甚至鄰域的鄰域間的關(guān)聯(lián). GCN 與DeepWalk 雙通道互相補充提取到用戶的多維度特征. 基于GNNs 的模型難以解決長期依賴問題,縮放GNN 的深度或?qū)挾炔蛔阋詳U大感受野,GNNs 過深或過寬反而會導致梯度消失和過度平滑問題[23],我們在對2 種表征方法進行拼接的基礎(chǔ)上提出使用基于Transformer的自我關(guān)注來學習長距離的成對關(guān)系.
GCN 是一種直接處理圖結(jié)構(gòu)數(shù)據(jù)的神經(jīng)網(wǎng)絡(luò)模型,它們將1 個圖作為輸入,并為每個節(jié)點輸出1個標簽. GCN 基于信息擴散機制,通過與鄰域節(jié)點周期性交換信息來更新節(jié)點表示,直到達到穩(wěn)定均衡. 節(jié)點的隱藏狀態(tài)由式(6)可以得到,其中f是將輸入投影到d 維空間的轉(zhuǎn)移函數(shù),h( t )v 表示節(jié)點的狀態(tài)向量,xv 表示節(jié)點的特征向量,節(jié)點的初始特征向量由特征矩陣F 得到,xe( v,u ) 表示邊的特征矩陣. 每個GCN 編碼器都以當前層節(jié)點表示的隱藏狀態(tài)作為輸入,計算新的節(jié)點表示,如式(7)所示. 其中A 是表示節(jié)點間連通性的鄰接矩陣,H 是當前節(jié)點表示,H ( 0 ) = F,W 是學習到的參數(shù),σ 為激活函數(shù).
給定屬性社交網(wǎng)絡(luò)Gs =(Vs,Es,As ),DeepWalk采用隨機游走的方式隨機選擇起點vsi,然后從與節(jié)點vsi存在連接關(guān)系的所有節(jié)點中以相同概率選擇下一跳節(jié)點,由此得到長度為L 的節(jié)點序列. 可以同時設(shè)置多個游走器并行執(zhí)行. 接著,DeepWalk利用與詞嵌入skip-gram 模型相同的思路,將隨機游走序列與文本中的詞進行類比,實現(xiàn)對網(wǎng)絡(luò)節(jié)點的表示學習. 在長度為L 的隨機游走序列{ vs1,vs2 ,. . . ,vsi,. . . ,vsL } 中,DeepWalk 使用節(jié)點vsi預測其上下文節(jié)點來學習其嵌入,其目標是最小化損失函數(shù),如式(8)所示.
-log p ({vsi- w ,…,vsi+ w }\vsi|vsi) (8)
其中,{ vsi- w ,. . . ,vsi+ w } \vsi是節(jié)點vsi在滑動窗口為w 的范圍內(nèi)的上下文節(jié)點所構(gòu)成的序列,不包括vsi本身. p ( { vsi- w ,. . . ,vsi+ w } \vsi|vsi) 表示節(jié)點vsi出現(xiàn)的情況下序列中其他節(jié)點出現(xiàn)的概率. 通過使用獨立性假設(shè),條件概率p ( { vsi- w ,. . . ,vsi+ w } \vsi|vsi)近似為式(9)形式.
通過借助隨機梯度下降算法更新節(jié)點的向量表示,得到網(wǎng)絡(luò)中所有節(jié)點的嵌入表示HD. 然后將其與GCNs 得到的嵌入表示HG 做拼接處理得到H. H 是整個合并子圖的嵌入,將其作為Transformer的輸入.
H = HG ∥ HD (10)
然后,我們將鏈路預測任務(wù)視為二元分類問題,并通過最小化所有潛在鏈路的交叉熵損失來訓練神經(jīng)網(wǎng)絡(luò),如式(11)所示.
其中,Lt 是要預測的鏈接集合;pl 是鏈接l 在網(wǎng)絡(luò)中存在的概率;yl ∈ ( 0,1 ) 是目標鏈接的標簽,表示該鏈路是否存在.
4 實驗
本節(jié)主要介紹實驗所使用的數(shù)據(jù)集、實驗設(shè)計以及實驗結(jié)果與分析.
4. 1 數(shù)據(jù)集
為了更好地評估TCUIL 模型的性能,本文在2 個數(shù)據(jù)集上進行實驗,包括2 個社交網(wǎng)絡(luò)和2 個學術(shù)合著網(wǎng)絡(luò),均由Chen 等[8]提供.
社交網(wǎng)絡(luò):該數(shù)據(jù)集被稱為微博-豆瓣(WD),指的是中國2 個流行的社交網(wǎng)絡(luò)平臺:新浪微博和豆瓣. 該社交網(wǎng)絡(luò)數(shù)據(jù)集包含9714 個微博用戶以及9526 個豆瓣用戶,每個用戶都包含了用戶名、地理位置和用戶生成內(nèi)容等信息.
合著網(wǎng)絡(luò):DBLP 是計算機領(lǐng)域內(nèi)以作者為核心的英文文獻數(shù)據(jù)庫系統(tǒng),并且公開免費. 本文所使用的數(shù)據(jù)集由Chen 等[10]提取的2 個不同時期的DBLP 數(shù)據(jù)庫中的部分數(shù)據(jù)構(gòu)成. WD 和DBLPs數(shù)據(jù)集的具體信息如表1 所示.
4. 2 實驗設(shè)計
4. 2. 1 基線方法
在這項工作中,我們選擇以下基線方法來評估本文模型的性能.
(1) PALE[9]:一種基于嵌入的技術(shù),它通過最大化邊緣頂點的共現(xiàn)似然來學習節(jié)點嵌入,然后應(yīng)用線性或多層感知器(MLP)作為映射函數(shù).PALE 是一個基于監(jiān)督學習的UIL 模型.
(2) DeepLink[10]:一種新穎的基于半監(jiān)督學習方式的端到端方法,DeepLink 對網(wǎng)絡(luò)節(jié)點進行采樣,并學習將網(wǎng)絡(luò)節(jié)點編碼為矢量表示,以捕獲局部和全局網(wǎng)絡(luò)結(jié)構(gòu),進一步通過深度神經(jīng)網(wǎng)絡(luò)對齊錨節(jié)點.
(3) MAUIL[8]:一種新穎的半監(jiān)督模型,可以實現(xiàn)對任意2 個社交網(wǎng)絡(luò)進行用戶身份識別. 首先使用無監(jiān)督方法表達不同類型的屬性特征,然后基于正則規(guī)范化相關(guān)分析(RCCA)的線性投影將社會網(wǎng)絡(luò)投射到用于用戶身份鏈接的公共關(guān)聯(lián)空間中.
(4) CENALP[24]:一個聯(lián)合鏈接預測和網(wǎng)絡(luò)對齊的框架. CENALP 通過跨網(wǎng)絡(luò)帶偏隨機游走得到節(jié)點嵌入,然后基于節(jié)點相似性找尋最可靠的候選節(jié)點.
4. 2. 2 參數(shù)設(shè)置
本節(jié)概述了訓練TCUIL 模型參數(shù),涉及屬性嵌入、圖合并和網(wǎng)絡(luò)結(jié)構(gòu)設(shè)置.
(1) 在對屬性文本嵌入過程中,即便對不同類型的屬性采用不同的嵌入方法,所有特征的維度仍是相同的. 例如,dw = dte = 100.
(2) 在對2 個目標節(jié)點提取子圖過程中,提取鄰域的范圍是2 跳鄰域,即hop=2;在去除掉重復鄰域的情況下,每個節(jié)點在每跳鄰域上都最多采樣20 個鄰域節(jié)點.
(3) 在圖網(wǎng)絡(luò)結(jié)構(gòu)中,我們使用了具有2 層卷積層的GCN,輸入維度為308,中間層維度為128,輸出維度為64. DeepWalk 的輸出維度也為64.Transformer 的詞嵌入維度為128,編碼層數(shù)為1.
4. 2. 3 研究問題
在這項工作中,我們解決了以下研究問題.
RQ1:與基準方法相比,TCUIL 的表現(xiàn)如何.與基線模型進行比較,驗證所提出的TCUIL 模型的總體表現(xiàn)性能的優(yōu)越性.
RQ2:如何驗證TCUIL 中每個組件的有效性. 研究使用不同文本嵌入方法對TCUIL 性能的影響、采用合并和不合并2 種方式進行后續(xù)特征學習以此驗證基于合并子圖進行用戶對齊的有效性和研究等3 個TCUIL 變體以評估雙通道網(wǎng)絡(luò)結(jié)構(gòu)的有效性.
4. 3 實驗結(jié)果與分析
4. 3. 1 RQ1:與以往工作的比較
表2 顯示了我們的對齊模型與基線方法在2 個數(shù)據(jù)集上的總體結(jié)果. 總的來說,我們的模型在準確率、精確率、召回率和F1 值4 個分類評估指標上都優(yōu)于所有基線模型(在WD 數(shù)據(jù)集,準確率至少提高了14. 11%,F(xiàn)1 值至少提高了44. 32%;在DBLSs 數(shù)據(jù)集,準確率至少提高了9. 58%,F(xiàn)1 值至少提高了25. 04%)
所有的基線方法根據(jù)訓練數(shù)據(jù)可以劃分為2類:一類是使用帶標簽數(shù)據(jù)訓練的監(jiān)督學習執(zhí)行UIL,包括PALE、TCUIL;一類是僅有一部分帶標簽數(shù)據(jù)的半監(jiān)督學習方法,包括DeepLink、CENALP、MAUIL. 從表2 可以清楚地看出,數(shù)據(jù)集的質(zhì)量會很大程度上影響模型的表現(xiàn)性能,所有模型在DBLPs 數(shù)據(jù)集上的表現(xiàn)都優(yōu)于WD. 例如,PALE 在DBLPs 上的F1 值提高了11. 72%,Deeplink 提高了5. 12%,MAUIL 提高了20. 76%,CENALP 提高了29. 75%,TCUIL 提高了2. 98%.這主要是因為WD 真實社交網(wǎng)絡(luò)的數(shù)據(jù)結(jié)構(gòu)完整性較低,無法為識別用戶身份提供有效線索. 首先是第1 類與TCUIL 模型同為監(jiān)督學習方法的PALE,雖然它利用觀察到的錨鏈路作為監(jiān)督信息,但是其在嵌入階段只捕獲了網(wǎng)絡(luò)的主要結(jié)構(gòu)規(guī)律. 因此,我們模型在WD 和DBLPs 上關(guān)于F1值的表現(xiàn)分別比PALE 模型高出多達79. 81% 和71. 07%. 然后是第2 類半監(jiān)督學習方法的實驗結(jié)果. DeepLink 模型采用深度神經(jīng)網(wǎng)絡(luò)來對UIL 進行自動特征提取與表示,在整個對比實驗中表現(xiàn)最差,在WD 中F1 值僅有7. 38%. CENALP 雖然提出了跨圖的節(jié)點嵌入技術(shù),但它僅是基于概率值在2 個網(wǎng)絡(luò)來回選取節(jié)點構(gòu)成節(jié)點序列以此學習節(jié)點表示,而TCUIL 是通過已知的錨節(jié)點在2個網(wǎng)絡(luò)間建立連接,在F1 值上至少提高了25. 04%. 在對比的所有基線模型中,MAUIL 是整體性能相對最好的方法. 這是因為MAUIL 與我們的方法類似,它同時考慮到了社交網(wǎng)絡(luò)結(jié)構(gòu)信息和社交賬戶文本屬性信息,涵蓋信息豐富. 但是其對文本嵌入和特征學習的方法與TCUIL 模型不同,我們模型在WD 上的F1 值提高了44. 32%,由此可看出我們提出的模型與基線方法相比,綜合考慮了用戶的結(jié)構(gòu)、屬性和關(guān)系特征,有較好的表現(xiàn).
4. 3. 2 RQ2:不同的文本嵌入方法
為了找出在我們提出的TCUIL 模型框架下,使用哪種長文本嵌入的模型達到的效果最好,我們進行了對比實驗. 表3 展示了使用不同方法處理長文本屬性信息對最終鏈路預測結(jié)果的影響. 這部分對4 種嵌入方法進行了比較. 首先是word2vec,它是最早的以詞語為基本處理單元的文本向量化方法. 在本次實驗中,首先得到屬性文本涵蓋的所有單詞的嵌入. 對于每個文本,將包含的單詞對應(yīng)的詞嵌入相加之后計算平均值即作為該長文本的最終嵌入表示. 其次,主題模型LDA 是一種文檔-主題生成模型,在生成文檔時,LDA 模型首先根據(jù)一定概率選擇主題,然后從這個主題的詞匯分布中以一定概率選擇詞語. 然后是BERT 模型,其本質(zhì)上是通過在海量語料庫上進行訓練,學習到了從語境中理解和生成文本的能力,從而用于為單詞學習好的特征表示. 對比試驗借助Simple Transformers庫,使用BERT 來實現(xiàn)文本向量化. 最后則是長短期記憶網(wǎng)絡(luò)LSTM,LSTM 是RNN 特殊的類型,可以學習長期依賴信息. 從表3 可以看出在4 個分類指標中,使用LSTM 對文本進行嵌入達到的效果最好. 在DBLPs 中,召回率相比另外3 種方法至少高出10. 49%,F(xiàn)1 值高出7. 18%. 因此,LSTM因其獨特的設(shè)計結(jié)構(gòu)天然地適合處理序列數(shù)據(jù).但用戶的屬性信息通常是變長序列數(shù)據(jù),最直觀的方式是使用文本截斷方法使序列長度相等,本文則通過截斷的方式固定序列長度在200.
4. 3. 3 RQ3:子圖合并
為了驗證TCUIL 模型所提出的子圖合并的有效性,進行了對比實驗.TCUIL-unmerged 表示對提取的2 個子圖不進行合并操作,其具體實現(xiàn)過程如下:針對所提取的每個子圖都單獨送進設(shè)計的雙通道網(wǎng)絡(luò)結(jié)構(gòu)中進行特征學習,得到嵌入表示后再分別提取目標節(jié)點對的輸出向量進行拼接操作,最后得到最終表示進行鏈路預測. 從圖2 的柱狀圖明顯看出,TCUIL相比于TCUIL-unmerged 的表現(xiàn)效果更好,在WD和DBLPs 上精確率分別提高了57. 65% 和24. 73%,在F1 值上更是提升了65. 68% 和47. 51%. 這主要得益于子圖合并通過錨鏈路將2個網(wǎng)絡(luò)緊密聯(lián)系起來,不僅能夠?qū)崿F(xiàn)對網(wǎng)絡(luò)中相鄰節(jié)點特征的學習,還能實現(xiàn)對另外一個網(wǎng)絡(luò)中間接相鄰節(jié)點特征的學習.
4. 3. 4 RQ4:子圖參數(shù)
為了有效地學習良好的高階特征,我們似乎需要1 個非常大的跳數(shù),以便提取的子圖包含整個網(wǎng)絡(luò)的絕大部分,這將導致大多數(shù)實際網(wǎng)絡(luò)無法承受時間和內(nèi)存消耗. 圖3和圖4 則是對所提取子圖的跳數(shù)以及對每個節(jié)點截取的鄰域數(shù)進行的對比實驗,從圖3 可知,預測結(jié)果的正確性并不是隨著跳數(shù)的增加而增加,當跳數(shù)大于等于2 后整體性能通常不增反減,這主要因為最有用的信息通常在局部結(jié)構(gòu)中,于是我們使用2 跳子圖來預測鏈路是否存在. 同時在提取子圖時并非選取所有的2 跳鄰域節(jié)點,由圖4 可看到當截取的鄰域數(shù)增加到30 時,2 個數(shù)據(jù)集的模型性能都有所下降. 繼續(xù)增加到40 后,DBLPs 上的精確率更是降低了23. 14%,即便在WD 上的表現(xiàn)可與鄰域數(shù)為20 時抗衡,但是從時間和內(nèi)存消耗方面考慮,我們?nèi)耘f選擇20 作為截取鄰域節(jié)點的數(shù)量. 由此可以看出,當子圖過大時反而會因為一些無用信息帶來干擾,使模型性能降低.4. 3. 5 RQ5:雙通道網(wǎng)絡(luò)結(jié)構(gòu) 在得到合并子圖中每個節(jié)點的低維嵌入后,需要通過特定的網(wǎng)絡(luò)結(jié)構(gòu)來對節(jié)點特征進行學習,進而提取所要預測節(jié)點對的嵌入來進行二分類的鏈路預測. 實驗研究了3 個變體主要用于驗證本文設(shè)計的雙通道網(wǎng)絡(luò)結(jié)構(gòu)的有效性. 其中,TCUIL-GT 表示只使用GCN 和Transformer 學習節(jié)點特征,TCUIL-GD 表示保留GCN 和DeepWalk 并刪除Transformer 部分,TCUIL-DT 表示保留DeepWalk 和Transformer,刪除GCN 部分. 從圖5 柱狀圖可以看出,我們提出的雙通道網(wǎng)絡(luò)結(jié)構(gòu)在4 個分類評估指標上均是表現(xiàn)最好的. 在DBLPs 數(shù)據(jù)集上關(guān)于召回率的表現(xiàn)比3 個變體高出至少14. 8%,這主要是因為該網(wǎng)絡(luò)結(jié)構(gòu)既考慮了目標節(jié)點的鄰域?qū)ζ涞挠绊?,又考慮了目標節(jié)點的鄰域間的相互影響.
5 結(jié)論
本文提出了基于合并子圖的雙通道跨網(wǎng)絡(luò)用戶身份識別方法TCUIL,其目標是在2 個帶屬性的網(wǎng)絡(luò)中尋找潛在的同一用戶身份. TCUIL 模型建立在多維屬性嵌入的基礎(chǔ)上,其核心是得到包含用戶結(jié)構(gòu)特征和屬性特征的嵌入. 具體來說,用戶初始嵌入由2 部分拼接而成:一是根據(jù)屬性文本的類型使用不同的文本嵌入方法得到的屬性嵌入;二是由多個中心性方法提取得到的結(jié)構(gòu)嵌入.最后通過設(shè)計的雙通道網(wǎng)絡(luò)結(jié)構(gòu)進行有效的表示學習,提升預測結(jié)果的準確性. 特別地,我們提出了子圖合并的方法,對于每個預測的節(jié)點對,將提取的2 個子圖通過已知錨鏈接進行合并,即可得到1 個同時包含2 個網(wǎng)絡(luò)部分節(jié)點的合并圖,使得基于1 個合并圖的表示學習即可同時實現(xiàn)對2 個網(wǎng)絡(luò)中節(jié)點特征的學習. 我們的實驗證明了本文模型在各方面的優(yōu)越性. 進一步,本文提出的用戶身份識別方法在實際社交網(wǎng)絡(luò)分析、推薦系統(tǒng)或其他相關(guān)領(lǐng)域中都有著重要的實際價值.
參考文獻:
[1] Luan M M, Zhao T, Yang X H, et al. A survey ofcross social network user identification at home and abroad[J]. Journal of Qilu University of Technology,2020, 34: 55.[欒孟孟,趙濤,楊星華,等. 國內(nèi)外跨社交網(wǎng)絡(luò)用戶身份識別綜述[J]. 齊魯工業(yè)大學學報, 2020, 34: 55.]
[2] Li Y, Peng Y, Zhang Z, et al. A deep dive into userdisplay names across social networks[J]. InformationSciences, 2018, 447: 186.
[3] Wu Z, Yu H, Liu S, et al. User identification acrossmultiple social networks based on information entropy[J]. Journal of Computer Applications, 2017,37: 2374.
[4] Chen H, XU Q, Huang R, et al. User identificationacross social networks based on user trajectory[J].Journal of Electronics amp; Information Technology,2018, 40: 2758.
[5] Kong X, Zhang J, Yu P S. Inferring anchor linksacross multiple heterogeneous social networks[C]//Proceedings of the 22nd ACM international conferenceon Information amp; Knowledge Management.New York: ACM, 2013: 179.
[6] Li Y, Zhang Z, Peng Y, et al. Matching user accountsbased on user generated content across socialnetworks[J]. Future Generation Computer Systems,2018, 83: 104.
[7] Nie Y, Jia Y, Li S, et al. Identifying users across socialnetworks based on dynamic core interests[J].Neurocomputing, 2016, 210: 107.
[8] Chen B, Chen X. MAUIL: Multilevel attribute em ?bedding for semisupervised user identity linkage[J].Information Sciences, 2022, 593: 527.
[9] Man T, Shen H, Liu S, et al. Predict anchor linksacross social networks via an embedding approach[C]// Proceedings of the Twenty-Eighth InternationalJoint Conference on Artificial Intelligence,IJCAI-16. New York: AAAI, 2016, 16: 1823.
[10] Zhou F, Liu L, Zhang K, et al. Deeplink: A deeplearning approach for user identity linkage[C]//IEEE INFOCOM 2018-IEEE conference on computercommunications. Honolulu, HI, USA:IEEE,2018: 1313.
[11] Shu K, Wang S, Tang J, et al. User identity linkageacross online social networks: A review[J]. ACMSigkdd Explorations Newsletter, 2017, 18: 5.
[12] Chen B Y, Chen X L. A survey on user alignmentacross social networks[J]. Journal of Xihua University(Natural Science Edition), 2021, 40: 11.
[13] Kipf T N, Welling M. Semi-supervised classificationwith graph convolutional networks[ EB/OL]. https://doi. org/10. 48550/arXiv. 1609. 02907.
[14] Perozzi B, Al-Rfou R, Skiena S. Deepwalk: Onlinelearning of social representations[C]//Proceedingsof the 20th ACM SIGKDD international conferenceon Knowledge discovery and data mining. New York:ACM, 2014: 701.
[15] Vaswani A, Shazeer N, Parmar N, et al. Attentionis all you need[J]. Advances in Neural InformationProcessing Systems, 2017, 30: 6000.
[16] Samad A, Qadir M, Nawaz I, et al. A comprehensivesurvey of link prediction techniques for social network[J]. EAI Endorsed Transactions on IndustrialNetworks and Intelligent Systems, 2020, 7: e3.
[17] Mikolov T, Chen K, Corrado G, et al. Efficient estimationof word representations in vector space[EB/OL]. https://doi. org/10. 48550/arXiv. 1301. 3781.
[18] Hochreiter S, Schmidhuber J. Long short-termmemory[J]. Neural Computation, 1997, 9: 1735.
[19] Opsahl T, Agneessens F, Skvoretz J. Node centralityin weighted networks: Generalizing degree andshortest paths[ J]. Social networks, 2010, 32: 245.
[20] Zhang M, Chen Y. Link prediction based on graphneural networks[J]. Advances in Neural InformationProcessing Systems, 2018, 31: 5171.
[21] Cai L, Li J, Wang J, et al. Line graph neural networksfor link prediction[J]. IEEE Transactions onPattern Analysis and Machine Intelligence, 2021,44: 5103.
[22] Wu Z, Pan S, Chen F, et al. A comprehensive surveyon graph neural networks[J]. IEEE Transactionson Neural Networks and Learning Systems, 2020,32: 4.
[23] Wu Z, Jain P, Wright M, et al. Representing longrangecontext for graph neural networks with globalattention[J]. Advances in Neural Information ProcessingSystems, 2021, 34: 13266.
[24] Du X, Yan J, Zha H. Joint link prediction and networkalignment via cross-graph embedding[C]//Proceedings of the Twenty-Eighth International JointConference on Artificial Intelligence, IJCAI-19. NewYork: AAAI, 2019: 2251.
(責任編輯: 伍少梅)
基金項目: 四川省科技廳重點研發(fā)項目(2021YFG0156)