關(guān)鍵詞:用戶(hù)興趣社區(qū);主題關(guān)系圖譜;主題挖掘;六度空間
0 引言
伴隨著互聯(lián)網(wǎng)的快速普及和用戶(hù)的大規(guī)模使用,各大平臺(tái)和系統(tǒng)的使用過(guò)程中產(chǎn)生了海量的數(shù)據(jù),且這些數(shù)據(jù)大多以文本形式保存?;谶@些數(shù)據(jù)進(jìn)行信息挖掘,對(duì)研究網(wǎng)絡(luò)社區(qū)可以提供極大的幫助。對(duì)用戶(hù)的興趣進(jìn)行分析與研究具有重要意義:用戶(hù)的行為、興趣愛(ài)好等,具有很高的社會(huì)研究?jī)r(jià)值,它們常常作為社交關(guān)系、信息傳播等相關(guān)學(xué)科的基礎(chǔ)研究對(duì)象。在復(fù)雜的社交網(wǎng)絡(luò)中發(fā)現(xiàn)社區(qū)結(jié)構(gòu),將有助于提高社交網(wǎng)站的個(gè)性化推薦系統(tǒng)、商家市場(chǎng)營(yíng)銷(xiāo)活動(dòng)、各類(lèi)媒體新聞推薦的精準(zhǔn)性,從而提升用戶(hù)體驗(yàn)。
針對(duì)上述研究,本文提出了一種基于知識(shí)圖譜構(gòu)建主題關(guān)系圖譜以實(shí)現(xiàn)用戶(hù)興趣社區(qū)發(fā)現(xiàn)的方法。主要貢獻(xiàn)如下:首先,利用TF-IDF(詞頻-逆向文件頻率)算法提取出訓(xùn)練集中所有主題詞,并將其與非主題詞一同存儲(chǔ)至Neo4j圖數(shù)據(jù)庫(kù)中,構(gòu)建主題關(guān)系圖譜。其次,基于六度空間理論及Neo4j最短路徑算法,提出短文本主題挖掘算法,該算法利用主題關(guān)系圖譜對(duì)短文本進(jìn)行主題關(guān)系恢復(fù),實(shí)現(xiàn)短文本到長(zhǎng)文本的逆向轉(zhuǎn)化,繼而挖掘主題。再次,在短文本主題挖掘過(guò)程中,使用主題遞歸相似度算法計(jì)算單詞之間的關(guān)聯(lián)度,并預(yù)訓(xùn)練出主題關(guān)聯(lián)度矩陣,最終實(shí)現(xiàn)用戶(hù)興趣社區(qū)關(guān)聯(lián)度的計(jì)算。
1 系統(tǒng)功能介紹
本文基于用戶(hù)發(fā)布的文本信息和社交關(guān)系等,分析用戶(hù)興趣愛(ài)好的主題相似度及關(guān)聯(lián)度,并對(duì)用戶(hù)的興趣愛(ài)好進(jìn)行挖掘和建模。
1.1 用戶(hù)信息分析與建模
想要挖掘用戶(hù)的興趣信息,較為有效的方式是直接分析用戶(hù)的信息。通過(guò)文本形式挖掘用戶(hù)的興趣并進(jìn)行建模,提取出相關(guān)文本的關(guān)鍵詞、進(jìn)行主題分析,從而描述用戶(hù)的興趣傾向。常用方法有TF-IDF(Term Frequency-Inverse Document Frequency) 和LDA(Latent Dirichlet Allocation) [1]等,也包括基于圖模型的詞語(yǔ)排序算法TextRank。TF-IDF 算法通過(guò)統(tǒng)計(jì)詞頻,并以頻率越低越重要的思想選取關(guān)鍵詞,其判斷方法簡(jiǎn)單,但忽略了文本中的語(yǔ)義信息。LDA模型被廣泛應(yīng)用于文本語(yǔ)義相似度計(jì)算中,作為一種三層貝葉斯模型,它可以提取主題作為用戶(hù)特征,但在處理短文本時(shí)效果并不理想。
社交平臺(tái)具有文本內(nèi)容短小的特點(diǎn),“文檔-詞”的映射關(guān)系比較稀疏。對(duì)此,主題模型的改進(jìn)思路如下:一是引入外部文本對(duì)原始文本進(jìn)行“擴(kuò)容”,Hong 從詞語(yǔ)出發(fā),將含有相同單詞的短文本進(jìn)行聚合;Phan則利用大量的額外知識(shí)(如Wiki) 豐富短文本的信息。二是基于同義詞關(guān)系進(jìn)行建模,BTM模型構(gòu)建全局的詞對(duì)集合,代替原始文本中的詞語(yǔ),從而豐富了文本中的主題映射關(guān)系。
1.2 用戶(hù)群體發(fā)現(xiàn)與興趣挖掘
在社交網(wǎng)絡(luò)中,用戶(hù)群體可以稱(chēng)為社區(qū)(commu?nity) 或簇(cluster) [2]。從網(wǎng)絡(luò)結(jié)構(gòu)來(lái)看,社區(qū)包括了用戶(hù)節(jié)點(diǎn)及用戶(hù)關(guān)系。通常,社區(qū)的發(fā)現(xiàn)有三種方式:以節(jié)點(diǎn)連接、以節(jié)點(diǎn)屬性連接,或者是將兩者進(jìn)行結(jié)合。通過(guò)內(nèi)容發(fā)現(xiàn)社區(qū)的方法有:Zhou[3]提出了一種融合用戶(hù)和話(huà)題的概率模型,用于挖掘與社區(qū)相關(guān)的話(huà)題語(yǔ)義。然而,僅僅從各自的角度來(lái)劃分社區(qū),其結(jié)果可能無(wú)法完整準(zhǔn)確地反映實(shí)際情況。部分研究者基于此問(wèn)題,將用戶(hù)連接關(guān)系和信息內(nèi)容進(jìn)行結(jié)合,并應(yīng)用于社區(qū)發(fā)現(xiàn)。Yan等[4]研究了綜合LDA和Link模型的方法,從主題語(yǔ)義和文檔關(guān)聯(lián)關(guān)系兩個(gè)角度對(duì)話(huà)題和作者群體進(jìn)行了建模。Yang等[5]組合使用條件模型和判別模型,分析了用戶(hù)連接關(guān)系和節(jié)點(diǎn)內(nèi)容,并提出了一種兩階段優(yōu)化算法用于社區(qū)發(fā)現(xiàn)。Qi 等[6]提出了一種改進(jìn)的矩陣分解算法(Edge-InducedMatrix Factorization,EIMF) 。Sachan 等對(duì)Pathak[7] 的“社區(qū)-作者-接收者-主題”模型提出了改進(jìn),結(jié)合交互話(huà)題和網(wǎng)絡(luò)結(jié)構(gòu)用于識(shí)別社區(qū)。
現(xiàn)有的很多社區(qū)發(fā)現(xiàn)方法主要包括基于連接關(guān)系的方法、基于信息內(nèi)容的方法以及兩者的結(jié)合。然而,由于社交網(wǎng)絡(luò)用戶(hù)可能存在于多個(gè)不同群體或社區(qū),使得社交網(wǎng)絡(luò)的類(lèi)型多樣且關(guān)系復(fù)雜。因此,想要單純通過(guò)連接信息來(lái)判斷關(guān)系類(lèi)型或基于這些關(guān)系組成的群體是非常困難的。過(guò)去,谷歌發(fā)布了其基于知識(shí)圖譜(Knowledge Graph,KG) 的搜索引擎產(chǎn)品。知識(shí)圖譜的本質(zhì)包含知識(shí)表示(Knowledge Representa?tion) 和知識(shí)庫(kù)(Knowledge Base) 。知識(shí)庫(kù)來(lái)源于知識(shí)構(gòu)建、知識(shí)抽取和知識(shí)融合,可用于語(yǔ)義搜索和知識(shí)問(wèn)答,非常適合文本語(yǔ)義推理和用戶(hù)社區(qū)發(fā)現(xiàn)。Neo4j圖數(shù)據(jù)庫(kù)最早在2010年發(fā)布,它是NoSQL數(shù)據(jù)庫(kù)的一種類(lèi)型。圖數(shù)據(jù)庫(kù)中主要存儲(chǔ)節(jié)點(diǎn)(Node) 和連接節(jié)點(diǎn)的關(guān)系(Relationship) 。節(jié)點(diǎn)、關(guān)系和屬性的數(shù)據(jù)存儲(chǔ)方式非常適合社交網(wǎng)絡(luò)的存儲(chǔ)和分析。
2 主題關(guān)系圖譜構(gòu)建及短文本主題挖掘算法
2.1 數(shù)據(jù)集預(yù)處理
本文通過(guò)使用來(lái)自非社交網(wǎng)絡(luò)的長(zhǎng)文本進(jìn)行主題關(guān)系圖譜的建模。由于用戶(hù)發(fā)布的文本信息并不會(huì)脫離外部語(yǔ)境,因此基于這些外部文本進(jìn)行訓(xùn)練,可以得到更完整的主題關(guān)系圖譜。主題關(guān)系圖譜主要由普通單詞、主題單詞及單詞間關(guān)系組成。結(jié)合圖數(shù)據(jù)庫(kù)的存儲(chǔ)原理,在主題關(guān)系圖譜中,單詞作為節(jié)點(diǎn)存儲(chǔ),主題則作為屬性存儲(chǔ)在關(guān)系之上。本文所提出的主題區(qū)別于傳統(tǒng)概念上的“主題”,前者具有標(biāo)簽或代號(hào)的含義,用于標(biāo)記兩個(gè)單詞之間的關(guān)系,以實(shí)現(xiàn)高關(guān)聯(lián)度單詞(即出現(xiàn)在同一文本中概率較高的單詞)的聚類(lèi)。因此,主題可以使用文本中的關(guān)鍵詞進(jìn)行表示。
2.2 分詞及主題選取
本文使用Jieba分詞工具將每條新聞進(jìn)行分詞,并去除停用詞。然后,使用TF-IDF算法對(duì)分詞后的關(guān)鍵詞進(jìn)行排序,選取權(quán)重最高的關(guān)鍵詞作為主題。
2.3 主題關(guān)系圖譜訓(xùn)練
在自然語(yǔ)言中,單詞間通過(guò)各種排列組合構(gòu)成句子,從而表達(dá)語(yǔ)義。因此,單詞間存在特定的聯(lián)系。分詞后,本文選擇Neo4j圖數(shù)據(jù)庫(kù)對(duì)單詞進(jìn)行存儲(chǔ)。由于單詞之間存在多對(duì)多的組合關(guān)系,在語(yǔ)料訓(xùn)練過(guò)程中,需要通過(guò)創(chuàng)建關(guān)聯(lián)表的方式來(lái)記錄不同單詞間的關(guān)系,并且需要將語(yǔ)料中的主題信息保存到單詞的關(guān)系中,以增強(qiáng)語(yǔ)義信息的維度。而圖數(shù)據(jù)庫(kù)正好符合上述存儲(chǔ)單詞和主題的要求。本文利用圖數(shù)據(jù)庫(kù)構(gòu)建主題關(guān)系圖譜(WordGraph) ,用于存儲(chǔ)單詞及單詞間的關(guān)系。具體來(lái)說(shuō),本文為每個(gè)單詞創(chuàng)建一個(gè)節(jié)點(diǎn),單詞的文本內(nèi)容作為節(jié)點(diǎn)的屬性。每?jī)蓚€(gè)相連的詞,依據(jù)前后順序使用有向關(guān)系進(jìn)行連接,主題的文本信息則作為關(guān)系的屬性。相同關(guān)系出現(xiàn)的次數(shù),也同樣作為關(guān)系的屬性進(jìn)行存儲(chǔ)。
在新聞?wù)Z料(NewsList) 的累計(jì)訓(xùn)練過(guò)程中,每個(gè)計(jì)算周期處理相鄰的兩個(gè)單詞,若WordGraph中已存在當(dāng)前單詞,則圖譜中不新增對(duì)應(yīng)單詞。單詞間的關(guān)系具有方向性,由文本中單詞的前后位置決定。后續(xù)訓(xùn)練中,若WordGraph中已存在相同方向的關(guān)系,則將關(guān)系中的rct屬性加1(rct表示同方向單詞對(duì)出現(xiàn)的次數(shù))。若兩個(gè)單詞所屬主題不包含在kw屬性中,則額外增加,例如原主題為kw1,當(dāng)前主題為kw2,則屬性r的表示方式為:r:{kw:’kw1|kw2’,rct:2}。
另外,主題詞同樣作為節(jié)點(diǎn)存儲(chǔ)于WordGraph 中。而判斷主題關(guān)聯(lián)度的重點(diǎn),便是在WordGraph中查找主題間的最優(yōu)路徑(BP, Best Path) 。由于兩個(gè)關(guān)聯(lián)度極低的單詞,在BP的查找上會(huì)遍歷近整個(gè)Word?Graph,因此在查找層數(shù)上需要設(shè)置閾值來(lái)提高性能。本文引入“六度空間理論”為閾值的設(shè)定提供理論依據(jù)。六度空間理論(Six Degrees of Separation) 指出,在社會(huì)網(wǎng)絡(luò)中,任何一個(gè)人通過(guò)6個(gè)中間人就能夠認(rèn)識(shí)任何一個(gè)陌生人。WordGraph擁有與社會(huì)網(wǎng)絡(luò)相似的結(jié)構(gòu),因此可以假設(shè),任何兩個(gè)不同的單詞,總能夠通過(guò)6層以?xún)?nèi)的路徑產(chǎn)生聯(lián)系。在Neo4j中可通過(guò)以下公式查詢(xún)兩個(gè)單詞間的最短路徑:
其中:w1、w2 代表需要查詢(xún)最短路徑的兩個(gè)單詞;F 代表shortestPath函數(shù)。p 是最短路徑的結(jié)果集,包含連接兩個(gè)單詞之間的所有單詞和關(guān)系,[*...6]表示要求所查詢(xún)路徑中關(guān)系層數(shù)不超過(guò)6。通過(guò)測(cè)試和統(tǒng)計(jì)后發(fā)現(xiàn),WordGraph詞匯量在1 000以上時(shí),80% 單詞間最短路徑在2~3層,且隨著詞匯量的上升,最短路徑將趨向于1~2層。
2.4 短文本逆轉(zhuǎn)換及主題挖掘
社交網(wǎng)絡(luò)中用戶(hù)發(fā)布的短文本信息存在稀疏性問(wèn)題,即文本層面的主題信息不明確或缺失?;谥黝}關(guān)系圖譜,可將短文本逆向轉(zhuǎn)換為關(guān)聯(lián)主題詞袋,繼而使用TF-IDF從詞袋中挖掘真正主題。
在主題關(guān)系圖譜中,以?xún)蓚€(gè)相鄰單詞的最短路徑為中心存在一個(gè)局部主題關(guān)系圖譜。假設(shè)存在一個(gè)由單詞W1和W2之間的2層最短路徑構(gòu)成的局部主題關(guān)系圖譜。短文本主題挖掘過(guò)程如下:查找短文本中每?jī)蓚€(gè)相鄰單詞間的局部主題關(guān)系圖譜,記為sWG,主題詞袋記為kwB。使用TF-IDF算法從主題詞袋中查找最終主題詞:
2.5 主題關(guān)聯(lián)度計(jì)算及其矩陣構(gòu)建
主題關(guān)聯(lián)度的計(jì)算思路為:兩個(gè)單詞間路徑的層數(shù)越少,則關(guān)聯(lián)度越高,階數(shù)越少,關(guān)聯(lián)度越高。
主題關(guān)聯(lián)度計(jì)算流程如下:通過(guò)Neo4j最短路徑算法查詢(xún)W1和W2間的首階單詞集合{W11,W12,…,W1n},然后按照詞順序計(jì)算所有單詞間主題關(guān)聯(lián)度的加權(quán)和平均。最終每?jī)蓚€(gè)單詞x1,x2的主題關(guān)聯(lián)度結(jié)果為relx1x2:
2.6 詞主題關(guān)聯(lián)度矩陣構(gòu)建(WTRM)
由主題關(guān)聯(lián)度的計(jì)算過(guò)程可知,每計(jì)算一次兩個(gè)單詞之間的主題關(guān)聯(lián)度,將消耗大量的計(jì)算資源,因此需要在預(yù)訓(xùn)練過(guò)程中對(duì)圖譜中的所有單詞進(jìn)行主題關(guān)聯(lián)度的預(yù)計(jì)算并存儲(chǔ)。由此,可以得到詞主題關(guān)聯(lián)度矩陣(Word Topic Relevance Matrix,WTRM) ,矩陣中的每一行代表一個(gè)單詞的詞向量(relxnx1,...,relxnxm)。本研究選取了微博平臺(tái)的特定數(shù)據(jù)集,該集合包含1000位用戶(hù)的詳細(xì)信息及他們之間超過(guò)2萬(wàn)條的互動(dòng)連接。為深化對(duì)用戶(hù)興趣特性的理解,實(shí)驗(yàn)采用人工標(biāo)注法,對(duì)這1 000名用戶(hù)中的900人進(jìn)行了精細(xì)標(biāo)注。標(biāo)注依據(jù)的興趣分類(lèi)體系涵蓋了50種不同的二級(jí)興趣子類(lèi)別,旨在全面描繪用戶(hù)的多元興趣結(jié)構(gòu)。實(shí)驗(yàn)選擇的對(duì)比方法為SocDim、wvRN和LGC。在探究用戶(hù)興趣聚類(lèi)的不同策略中,SocDim方法首先依據(jù)用戶(hù)間的社交連接來(lái)辨別并劃分關(guān)系群體,繼而運(yùn)用One-vs-Rest Support Vector Machine (SVM) 算法從這些群體中提取其典型興趣特征。另外,wvRN算法采取了一種基于局部鄰近節(jié)點(diǎn)的共識(shí)機(jī)制,通過(guò)節(jié)點(diǎn)間相互投票來(lái)量化單個(gè)用戶(hù)的興趣偏好。相比之下,LGC方法采用了生成式概率模型框架,其核心在于先以概率原則分割出用戶(hù)群體,然后將群體成員身份這一屬性視為關(guān)鍵特征,用于后續(xù)的模型訓(xùn)練過(guò)程。
針對(duì)上述方法,本文所提出的創(chuàng)新方案立足于WTRM模型,旨在通過(guò)計(jì)算用戶(hù)興趣與各類(lèi)標(biāo)簽在社區(qū)層面的相關(guān)性,以此揭示并提煉出用戶(hù)群體共享的興趣模式。為了驗(yàn)證所提方法的有效性,設(shè)計(jì)了如下實(shí)驗(yàn):利用已標(biāo)注興趣且歸屬群體明確的用戶(hù)數(shù)據(jù)集進(jìn)行訓(xùn)練,目的在于評(píng)估各方法對(duì)群體內(nèi)未標(biāo)注用戶(hù)興趣預(yù)測(cè)的準(zhǔn)確性。邏輯上,預(yù)測(cè)結(jié)果與實(shí)際興趣貼合度越高,則表明該方法在揭示群體共性興趣方面的效能越顯著。在此過(guò)程中,實(shí)驗(yàn)選用Macro-F1作為主要評(píng)價(jià)指標(biāo)。該指標(biāo)的計(jì)算邏輯包括兩步:首先,對(duì)每個(gè)類(lèi)別獨(dú)立計(jì)算其精確率與召回率,并據(jù)此得出各自的F1分?jǐn)?shù);其次,對(duì)所有類(lèi)別得到的F1分?jǐn)?shù)求平均值,從而得到最終的Macro-F1值,以此綜合反映模型在多類(lèi)別興趣預(yù)測(cè)上的均衡性能。設(shè)yi,y'ki∈ {0,1}分別為用戶(hù)i 的真實(shí)興趣標(biāo)簽和預(yù)測(cè)標(biāo)簽,對(duì)于類(lèi)別k的準(zhǔn)確率、召回率和F1的計(jì)算方法如下:
逐步提升了已標(biāo)注用戶(hù)樣本在總樣本中的比例,由初始的10%遞增至90%,旨在觀察各方法在不同標(biāo)注比例下對(duì)未標(biāo)注用戶(hù)興趣預(yù)測(cè)的效果變化。
3 結(jié)束語(yǔ)
本文所提出的基于WTRM的興趣相似度計(jì)算方法,綜合考慮了主題關(guān)聯(lián)度和詞向量相似度對(duì)用戶(hù)文本主題表達(dá)的影響,避免了僅考慮詞頻等單一特征所帶來(lái)的誤差,能進(jìn)一步提高興趣發(fā)現(xiàn)的能力。首先,通過(guò)TF-IDF提取語(yǔ)料中的主題詞;其次,配合圖數(shù)據(jù)庫(kù),將分詞后的單詞一起構(gòu)建成詞關(guān)系網(wǎng)絡(luò)。然后,基于六度空間理論及NEO4J的最短路徑算法,提出基于主題關(guān)系圖譜的短文本主題挖掘算法,并構(gòu)建詞主題關(guān)聯(lián)度矩陣。最后,從詞主題關(guān)聯(lián)度矩陣中得到詞向量,并計(jì)算相似度,從而獲得用戶(hù)社區(qū)文本信息的主題關(guān)聯(lián)度,進(jìn)而應(yīng)用于挖掘用戶(hù)群體興趣。