一種興趣和網絡結構雙內聚的社交網絡社區(qū)發(fā)現(xiàn)方法
【專利摘要】本發(fā)明公開一種興趣和網絡結構雙內聚的社交網絡社區(qū)發(fā)現(xiàn)方法。它首先將用戶在社交網絡中所發(fā)布的內容進行歸檔,并使用已有興趣特征提取方法提取各用戶的興趣特征,進而采用交集運算獲取各用戶關系的興趣特征集,形成社交網絡R-C模型。在此基礎上,采用已有的相似度計算方法計算具有共同用戶的兩個用戶關系的興趣特征相似度;接著,以R-C模型中的用戶關系為節(jié)點,以兩個用戶關系之間是否有共同好友為邊,以用戶關系間的興趣特征相似度為邊的權值,形成社交網絡加權無向圖;再接著,采用已有的加權無向網絡社區(qū)發(fā)現(xiàn)算法對挖掘用戶關系社區(qū);最后,將用戶關系社區(qū)中的用戶關系直接映射為其所關聯(lián)的兩個用戶,形成社交網絡用戶社區(qū)。
【專利說明】—種興趣和網絡結構雙內聚的社交網絡社區(qū)發(fā)現(xiàn)方法
【技術領域】
[0001]本發(fā)明涉及智能信息處理和數(shù)據挖掘領域,具體地說是一種在社交網絡上挖掘興趣和網絡結構雙內聚的社區(qū)的方法。
【背景技術】
[0002]社區(qū)發(fā)現(xiàn)是指在社會網絡中,發(fā)現(xiàn)內聚的子群。社區(qū)發(fā)現(xiàn)是社會網絡分析的重要問題,它有助于人們進一步認識、理解和掌握所研究的復雜網絡對象,進而,實現(xiàn)更深入的應用研究,例如個性化推薦,朋友推薦,大規(guī)模網絡壓縮求解,異質網絡分析,社會網絡演變等。興趣和網絡結構雙內聚的用戶社區(qū)發(fā)現(xiàn)是精準的市場營銷和準確的個性化推薦服務等的重要研究內容?,F(xiàn)實生活中,人們往往傳播其所能接觸到的感興趣的信息。因此,好的用戶社區(qū)發(fā)現(xiàn)應同時滿足網絡結構和興趣雙方面的內聚。網絡結構是社區(qū)內部節(jié)點間信息傳播的橋梁,興趣是信息傳播的原因。
[0003]得益于移動互聯(lián)網的發(fā)展,微博用戶規(guī)模及其社會影響力迅速增長。世界上最大的微博社區(qū)Twitter有不少于5億的注冊用戶,每月活躍用戶為2.3億,而日活躍用戶為1億,每天推文5億次1。最大的中文微博社區(qū)新浪微博也擁有超過5億的注冊用戶,每天有高達4.62千萬的活躍用戶和不少于1億的微博。社交網絡是現(xiàn)實社會的縮影,它為人們提供了巨量的有價值的研究數(shù)據。人們使用社交網絡進行政治、市場營銷等活動,社交網絡已成為一個公認的發(fā)表意見與看法的平臺。
[0004]目前,針對社交網絡用戶社區(qū)發(fā)現(xiàn)的方法大致可分為三種:①基于用戶內容(文本聚類法)。將用戶所發(fā)布的內容進行興趣特征提取,然后,基于興趣特征進行用戶聚類;該類方法忽略了社交網絡網絡結構(用戶關系)在信息傳播中的橋梁作用。②基于用戶聯(lián)系。提取社交網絡的關注或好友關系,將問題轉化為圖論等問題進行社區(qū)發(fā)現(xiàn);該類方法沒有考慮用戶的興趣特征,因此,無法證明其興趣的內聚性。③綜合方法。將用戶內容和用戶聯(lián)系相結合,基于內容提取基于興趣的用戶社區(qū),基于用戶聯(lián)系提取基于聯(lián)系的用戶社區(qū),再采用某種方法將兩個社區(qū)進行融合,形成興趣和網絡結構雙內聚的用戶社區(qū);該類方法由于需要進行兩次社區(qū)發(fā)現(xiàn),且需要進行社區(qū)融合;因此,算法效率較低。
[0005]文本聚類法主要通過計算社區(qū)內節(jié)點的文本內容的相似性,根據相似性將文本內容相似的節(jié)點劃分為社區(qū)。早在1999年,Kleinberg等人提出了基于內容的網頁聚類方法,即著名的HITS算法。主題模型是文本聚類法最典型的算法。2003年,Blei等人提出了 LDA模型,LDA模型認為文檔是多個主題的概率分布。2004年,Syeyvers等人認為主題是多個關鍵詞的概率分布,用戶也以某種概率分布對多個主題感興趣,并提出了 AT (Author-Topic)模型用于發(fā)現(xiàn)用戶、文檔、主題和關鍵詞之間的關系。2007年,McCal lum等人基于發(fā)送-接受關系提出了 ART(Author-Recipient-Topic)模型用于聚類具有相似興趣的用戶。在ART模型的基礎上,2008 年,Pathak 等人提出 CART (Community-Author-Recipient-Topic)模型。這些模型都忽略了用戶之間顯著的用戶關系,從而可能導致社區(qū)發(fā)現(xiàn)結果的不合理。
[0006]基于網絡結構的社區(qū)發(fā)現(xiàn)算法是目前較為流行且研究較多的方法。這類方法根據用戶之間的相互關系將社區(qū)網絡劃分為社區(qū)內聯(lián)系緊密,社區(qū)之間聯(lián)系稀疏的多個子社區(qū)。1970年,B.W.Kernighan和S.Lin針對圖分割問題提出了 KL算法,該算法應用于復雜網絡社區(qū)發(fā)現(xiàn),就是社區(qū)發(fā)現(xiàn)圖分割法的典型算法。圖分割法通過迭代的方式,將圖分解為最優(yōu)的兩個子圖,反復處理,直至得到足夠數(shù)目的子圖。2002年,M.Girvan和Μ.E.J.Newman提出了 GN算法,它通過反復識別和刪除網絡中邊介數(shù)最大的連接,實現(xiàn)復雜網絡聚類。GN算法的復雜度較高,但它啟發(fā)了人們對復雜網絡社區(qū)發(fā)現(xiàn)的思路。2004年,Μ.E.J.Newman和M.Girvan提出的網絡模塊性評價函數(shù)-模塊度Q。Q函數(shù)為社區(qū)內的實際連接數(shù)目與隨機連接下社區(qū)內的期望連接數(shù)目之差,它描述了所發(fā)現(xiàn)社區(qū)的優(yōu)劣。Q值越大則社區(qū)結構越好。在此基礎上,Newman提出了基于局部搜索的快速復雜網絡聚類算法,即快速Newman算法??焖貼ewman算法通過局部搜索,找到極大化的Q值,從而實現(xiàn)社區(qū)劃分。同年,Newman等人從算法復雜度的角度出發(fā),通過引入模塊度增量矩陣和堆結構,將快速Newman算法演進為了 CNM算法。2005年,R.Guimera和L.A.N.Amaral以優(yōu)化目標函數(shù)Q為目標,提出了基于模擬退火算法(Simulated Annealing, SA)的復雜網絡聚類算法_GA算法。SA的引入使得GA算法具有找到全局最優(yōu)解的能力;因而,GA算法具有很好的聚類精度?;谀K度優(yōu)化的聚合方法是目前比較流行的社區(qū)發(fā)現(xiàn)算法,并被擴充到了加權網絡社區(qū)發(fā)現(xiàn)、有向網絡社區(qū)發(fā)現(xiàn)和重疊社區(qū)發(fā)現(xiàn)等。雖然,基于網絡結構(用戶關系)的社區(qū)發(fā)現(xiàn)算法能夠對用戶進行聚類,但由于其忽略了用戶之間的共同興趣特征;因此,不能保證社區(qū)發(fā)現(xiàn)的興趣內聚性。
[0007]針對上述兩種社區(qū)發(fā)現(xiàn)在興趣社區(qū)發(fā)現(xiàn)上的不足。2012年,Zhang等人提出了將用戶關系同用戶內容進行結合,發(fā)現(xiàn)用戶社區(qū)。他們采用NMF方法進行基于用戶關系的社區(qū)發(fā)現(xiàn),采用AT模型用于興趣社區(qū)的發(fā)現(xiàn),并在此基礎上,將兩種社區(qū)發(fā)現(xiàn)結果進行融合,并在Tweets和Delic1us上進行了驗證。燕飛等人首先對個人興趣進行聚類,得到基于興趣的行動者社區(qū),然后使用社會網絡拓撲結構信息,對興趣社區(qū)進行擴展,并在Flickr上進行了實驗分析。這些方法雖然得到了較好的興趣社區(qū)發(fā)現(xiàn),并能將用戶根據其興趣劃分到多個不同的社區(qū),符合實際情況,但其算法邏輯較為復雜,而且復雜度較高。
[0008]真實世界中的社區(qū)結構大多數(shù)都是重疊且具有層次結構。社交網絡用戶往往具有多樣化的興趣特征;因此,社交網絡中的用戶社區(qū)發(fā)現(xiàn)是重疊社區(qū)發(fā)現(xiàn)問題。CPM算法是目前流行的重疊社區(qū)算法,其在自然和社會學等領域都有所應用,且被推廣到了加權網絡的重疊社區(qū)發(fā)現(xiàn)。然而,CPM算法認為社區(qū)是強連通的簇;其對社區(qū)苛刻的定義使得在稀疏網絡(如新浪微博用戶聯(lián)系網絡等)中社區(qū)發(fā)現(xiàn)效果較差。此外,CPM算法需要指定k值,且復雜度較高,也制約了 CPM算法在大數(shù)據網絡中的運用。2010年,Ahn等人提出了邊社區(qū)概念及其算法-LCA算法,并在生物網絡、社會網絡和其他代表性網絡(哲學家關系網、單詞關系網和Amazon, com產品聯(lián)系網)上,對照CPM算法、Infomap算法和快速Newman算法,驗證了 LCA算法能發(fā)現(xiàn)質量更好的重疊社區(qū)。
[0009]LCA算法以邊作為聚類節(jié)點,對邊進行聚類,并根據邊所屬的社區(qū),將節(jié)點劃分到多個不同的社區(qū)。在一個具有N個節(jié)點的加權網絡中,LCA算法假定對于任一節(jié)點i都有屬性向星 = (An,..., AiN),且
[0010]4 =f Σ w>Aj+wy
[0011]其中,為邊eu的權重,η⑴為與節(jié)點i有連接關系的所有鄰居節(jié)點集合,匕為集合n(i)的元素數(shù)量,當i = j時,δ u = 1,其他情況為0。在LCA算法中,邊eu的權重
表征具有聯(lián)系的兩個節(jié)點i和j在某種性質上相關度;通常權重值越高,相關度越大。根據不同的應用,w.j的具體含義也略有不同;在具體應用中,可根據社區(qū)發(fā)現(xiàn)的不同目的和網絡的不同特征采用不同的方法進行計算。如為了發(fā)現(xiàn)電影演員之間的協(xié)作關系,可以以演員為節(jié)點,演員之間是否有合作電影為邊,演員間合作的電影數(shù)為邊的權重,構建演員關系網絡;此時,將表示演員間協(xié)作程度。又如,為了發(fā)現(xiàn)內容和結構雙內聚的社交網絡用戶社區(qū),可以以用戶為節(jié)點,用戶關系為邊,用戶發(fā)布內容之間的相似性為邊的權重,構建社交網絡模型;此時,wu表示社交網絡用戶之間興趣的相似程度;再如,為了挖掘Amazon上不同產品間的關系,可以構建以產品為節(jié)點,用戶是否同時購買某兩種產品為邊,產品所包含的用戶標簽的相似度值為邊的權重,構建產品網絡模型;此時,表示產品間用戶標簽的相似程度。
[0012]在此基礎上,LCA算法采用Tanimoto系數(shù)計算公式計算具有公共節(jié)點k的兩條邊eik和ejk之間的相似度。由于邊eik和ejk具有公共節(jié)點k, LCA算法認為節(jié)點k的鄰居節(jié)點對該兩條邊相似度的貢獻不大,即邊eik和的計算只考慮節(jié)點i和節(jié)點j的鄰居節(jié)點。因此,邊eik和%的相似度計算公式為
[0013]S^ik>ejk^= 2 |',2;
KI +K1-V?
[0014]在計算邊邊之間相似度的基礎上,LCA算法采用單邊聚類方法對邊聚類,直至形成一個社區(qū)。最后,采用最優(yōu)社區(qū)密度對層次進行切分,形成多個社區(qū)。顯然,上述公式在邊邊的相似度計算上,僅從網絡結構出發(fā),忽略了邊的真實特征。
[0015]綜上,目前社交網絡用戶社區(qū)發(fā)現(xiàn)方法存在如下不足:①算法考慮不全面;②算法效率較低;?LCA算法未考慮邊的真實興趣特征。圍繞這些不足,本
【發(fā)明者】對社交網絡進行R-C模型構建,建立以用戶關系為節(jié)點,以用戶關系之間是否有共同用戶為邊,從用戶所發(fā)布的內容提取用戶的興趣特征,進而轉化為用戶關系的興趣特征,在此基礎上,進行社交網絡用戶社區(qū)發(fā)現(xiàn),得出本發(fā)明專利。
【發(fā)明內容】
[0016]本發(fā)明的目的是在社交網絡中挖掘興趣和網絡結構雙內聚的用戶社區(qū),具體涉及一種社交網絡興趣和網絡結構雙內聚的用戶社區(qū)發(fā)現(xiàn)方法。該方法首先構建了社交網絡R-C模型,并在此基礎上,將R-C模型轉化為加權無向圖的社區(qū)發(fā)現(xiàn)。
[0017]社交網絡R-C模型以社交網絡的用戶關系為節(jié)點,以用戶關系間是否有共同用戶為邊,以用戶關系所關聯(lián)的兩個用戶的加權興趣集的交集為節(jié)點屬性。
[0018]社交網絡R-C模型將用戶所發(fā)布的所有內容合并成一個文檔,再采用已有的主題提取模型提取各文檔的興趣特征。各文檔的興趣特征集為一個加權興趣集,表征該文檔所對應用戶的興趣特征。
[0019]針對每一個用戶關系,R-C模型將該兩個加權興趣特征集的公共部分視為交集運算。即有,若給定一個集合A = {a1; a2,...,am},其每個元素都含權值,即第i個元素%的權值為wai,則稱A為權值集合。A又表示為:A = {(a1; wal), (a2, wa2),..., (am, wam)}。若有權值集合 A — {? wal),(a2? wa2),...,(&m? wam)}和 B — {(bj? w^j),(b2,w^),...,(bn,wbn)},則集合A和B的交集為:A η B = {(c,w。)I c為A和B的共同元素,若c = ai = b」,有wc = min(wai, wbJ)},其中min()函數(shù)為取最小值。
[0020]在社交網絡R-C模型的基礎上,針對每兩個具有公共用戶的用戶關系,采用已有的相似度計算公式計算其相似度,進而將社交網絡R-C轉化為以用戶關系為節(jié)點,以用戶關系間是否有共同用戶為邊,以用戶關系間的相似度為權重的加權無向圖;接著,采用已有的加權無向圖社區(qū)發(fā)現(xiàn)算法完成用戶關系的社區(qū)發(fā)現(xiàn);最后,直接將用戶關系社區(qū)中的用戶關系映射為用戶,形成用戶社區(qū)。
[0021]綜上,本發(fā)明所公開的社交網絡社區(qū)發(fā)現(xiàn)算法,包括如下步驟:
[0022]1.構建社交網絡R-C模型;
[0023]I1.在R-C模型中,采用已有的相似度計算方法計算具有共同用戶的兩個用戶關系的興趣特征相似度;
[0024]II1.以R-C模型中的用戶關系為節(jié)點,以兩個用戶關系之間是否有共同好友為邊,以用戶關系間的興趣特征相似度為邊的權值,形成社交網絡加權無向圖;
[0025]IV.采用已有的加權無向網絡社區(qū)發(fā)現(xiàn)算法對上述網絡進行用戶關系社區(qū)發(fā)現(xiàn);
[0026]V.逐一遍歷用戶關系社區(qū),將用戶關系社區(qū)中的用戶關系直接映射為其所關聯(lián)的兩個用戶,形成社交網絡用戶社區(qū),完成社交網絡社區(qū)發(fā)現(xiàn)。
[0027]其中,社交網絡R-C模型的構建包含如下步驟:
[0028]1.將用戶在社交網絡中所發(fā)布的所有可獲取內容合并為一個文檔,形成社交網絡內容集合;
[0029]I1.對內容集合中的內容進行分詞,并采用已有基于內容的主題提取方法提取各內容的主題集合,形成帶權值的用戶興趣集;
[0030]II1.依據用戶關系所關聯(lián)的兩個用戶的興趣集,采用帶權值的交集運算形成用戶關系興趣特征集;
[0031]IV.以用戶關系為節(jié)點,以兩個用戶關系之間是否有共同好友為邊,以用戶關系的興趣特征集為節(jié)點的屬性,形成社交網絡R-C模型。
[0032]一個社交網絡的真實內容通常包含三部分內容:用戶集合U,用戶關系集合L和由u所產生的各類內容τ(主要為社交網絡內容及其評論內容)。因此,一個社交網絡通??梢员硎緸?S=卬,1^,1'),其中3表示社交網絡。針對不同的研究和應用,該模型略有不同。圖2下半部分是一個社交網絡真實內容及其關系示意圖。U= {U1;U2,U3}為社交網絡用戶集合,L= {Lph}為用戶聯(lián)系的集合,也是社交網絡內容T傳播的紐帶,T =為社交網絡內容集合,T,為U,的所發(fā)布內容集合。
[0033]參照圖1,為社交網絡模型示意圖,上半部分為社交網絡R-C模型示意,下半部分為現(xiàn)有社交網絡模型示意。社交網絡用戶社區(qū)發(fā)現(xiàn)即是在社交網絡S中發(fā)現(xiàn)L和T同時內聚的U社區(qū)。若以T作為研究對象,采用文本聚類的方法進行社區(qū)發(fā)現(xiàn),該方法能夠形成興趣內聚的U社區(qū);但由于忽略了關系L的重要作用,不能保證信息在所發(fā)現(xiàn)的社區(qū)內部能夠暢通傳播。若以L作為聚類條件進行U社區(qū)發(fā)現(xiàn),無法保證所形成的社區(qū)的興趣內聚。因此,合理的U社區(qū)發(fā)現(xiàn)應綜合考慮L和T?,F(xiàn)有的綜合方法采用某種方法融合由L和T所發(fā)現(xiàn)的兩類U社區(qū),形成網絡結構和興趣雙內聚的U社區(qū)。先后兩次社區(qū)發(fā)現(xiàn)及社區(qū)融合導致了該類社區(qū)發(fā)現(xiàn)算法效率較低。而導致該算法需要進行兩次社區(qū)發(fā)現(xiàn),其最根本的原因是沒有充分利用L的信息和價值。L作為用戶之間的相互關系,其已經體現(xiàn)了 U的存在;因此,在興趣社區(qū)發(fā)現(xiàn)中如果以L為社區(qū)發(fā)現(xiàn)對象,以T作為L的屬性進行L社區(qū)發(fā)現(xiàn),通過一次社區(qū)發(fā)現(xiàn)找出L社區(qū),進而轉化為U社區(qū),將能簡化社區(qū)發(fā)現(xiàn)復雜度。
[0034]參照圖1,為社交網絡模型示意圖。上半部分顯示了社交網絡R-C模型示意圖。它將原有模型中的用戶關系L= {l1;l2}映射成網絡節(jié)點r= {Ri,R2}。U/是用戶關系札和R2潛在的連接關系,它體現(xiàn)了 Ri和R2之間存在著共同用戶。同時,用戶關系L還潛在著所關聯(lián)的兩個用戶之間的共同興趣特征。社交網絡內容T是用戶興趣集的具體表現(xiàn);因此,通過對用戶關系所關聯(lián)的兩個用戶的社交網絡內容T進行興趣特征提取,可進一步獲得用戶關系的所關聯(lián)的用戶的共同興趣特征C,實現(xiàn)對R-C模型中用戶關系興趣特征的描述。從而,將原有社交網絡模型轉化為R-C模型,即S = {R,C}。
[0035]由于用戶往往具有多個不同的興趣,現(xiàn)有的方法通常根據用戶內容計算出用戶對各不同興趣感興趣的程度。因此,用戶興趣集是一個帶權值的興趣集合。
[0036]在社交網絡R-C模型的基礎上,進行R社區(qū)發(fā)現(xiàn),最后將R直接映射為其關聯(lián)的用戶,轉化為U社區(qū)。它在綜合考慮用戶聯(lián)系和用戶內容的基礎上,提高用戶社區(qū)發(fā)現(xiàn)效率,并解決了 LCA算法在社區(qū)發(fā)現(xiàn)上沒有充分考慮邊的興趣特征的問題。
[0037]雖然R-C模型和LCA算法都采用邊進行聚類,但兩者具有本質的不同,具體表現(xiàn)在;
[0038]1.LCA算法只是將邊作為一個聚類的對象,其邊并不具有興趣特征描述。而R-C模型在社區(qū)發(fā)現(xiàn)上,將用戶關系作為實體進行聚類;在R-C模型中,用戶關系不僅僅只是聚類的對象,其還具有其所關聯(lián)的兩個用戶的興趣特征描述。因此,R-C模型更有利于挖掘內容和結構雙內聚的社區(qū)結構。
[0039]2.LCA算法僅僅只是從網絡結構的角度出發(fā)進行社區(qū)發(fā)現(xiàn);且認為,兩條具有公共節(jié)點的邊,其公共節(jié)點的屬性對該兩條邊的相似度的貢獻不大,即LCA算法忽略了公共節(jié)點的屬性特征。因此,LCA算法忽略了邊的真實特征。而R-C模型通過對邊所關聯(lián)的兩個節(jié)點的特征取交集,保留了邊的真實特征。
[0040]3.針對各類型的網絡,LCA算法根據不同的社區(qū)發(fā)現(xiàn)目標,構建加權或無權網絡,進而從邊的角度出發(fā)進行社區(qū)發(fā)現(xiàn),各節(jié)點的屬性特征在構建網絡時就已轉化為數(shù)值。而R-C模型首先將用戶關系構建為網絡節(jié)點,并從用戶關系所關聯(lián)的兩個用戶的興趣獲取該用戶關系的特征,接著根據用戶關系的特征計算用戶關系間的權重,最后進行社區(qū)發(fā)現(xiàn)。由于R-C模型在進行社區(qū)發(fā)現(xiàn)前才將屬性特征轉化為數(shù)值,因而能挖掘更為真實的社區(qū)結構。
[0041]由于社交網絡是稀疏網絡,其用戶關系和用戶數(shù)屬于同一數(shù)量級,因此,本發(fā)明所公開的社區(qū)發(fā)現(xiàn)方法在聚類的時間復雜度與傳統(tǒng)基于用戶的社區(qū)發(fā)現(xiàn)算法相當。
[0042]綜上,本發(fā)明所公開的社區(qū)發(fā)現(xiàn)方法具有如下特點:
[0043]1.能挖掘興趣和網絡結構雙內聚的用戶社區(qū);
[0044]2.算法效率高。
【專利附圖】
【附圖說明】
[0045]圖1是傳統(tǒng)社交網絡模型和本發(fā)明的社交網絡R-C模型示意圖。
[0046]圖2是本發(fā)明進行社交網絡社區(qū)發(fā)現(xiàn)的較佳工作流程圖。
[0047]圖3是本發(fā)明較佳實施例的社交網絡示例圖。
【具體實施方式】
[0048]參照圖2,為本發(fā)明進行社交網絡社區(qū)發(fā)現(xiàn)的較佳工作流程圖。在對社交網絡中用戶所發(fā)布內容進行歸檔形成社交網絡內容集合T后,本發(fā)明使用LDA模型從社交網絡內容T提取用戶興趣集I = {II,12,...},進而通過交集運算,計算用戶關系的興趣特征集C。用戶關系的興趣特征集C和用戶關系集合R構成社交網絡R-C模型。接著,本發(fā)明通過計算有潛在聯(lián)系的用戶關系之間的興趣相似度,將社交網絡R-C模型轉換為加權無向網絡,并使用較為成熟的加權無向網絡社區(qū)發(fā)現(xiàn)算法進行R社區(qū)發(fā)現(xiàn)。由于CNM算法的聚類復雜度較低,本發(fā)明使用加權CNM算法進行R社區(qū)發(fā)現(xiàn)。最后,將R直接映射為相應的U,形成U社區(qū)。
[0049]具體地,使用社交網絡R-C模型進行社區(qū)發(fā)現(xiàn)的方法步驟如下:
[0050]1.社交網絡內容T集合構建。將社交網絡內容依據其所屬的用戶進行歸類,形成T集合;
[0051]2.用戶興趣集I計算。對T集合中的社交網絡內容進行分詞,并采用相關模型(如,LDA模型等)構建用戶興趣集合I ;
[0052]3.用戶關系特征集C計算。依據用戶關系所對應的兩個用戶興趣特征集,使用定義3所描述的方法取交集形成用戶關系興趣特征集C ;
[0053]4.用戶關系相似度計算。對于無共同用戶的用戶關系,將不進行相似度計算。對于有公共用戶的兩個用戶關系,采用Tanimoto系數(shù)計算公式計算其的相似度。即,其計算公式如下:
[。。54] W)=|cfSf?
[0055]5.R社區(qū)發(fā)現(xiàn)。采用加權無向網絡社區(qū)發(fā)現(xiàn)算法(如,CNM算法等)對上述網絡進行R社區(qū)發(fā)現(xiàn)。
[0056]6.U社區(qū)形成。R-C模型中,任一 R都包含兩個具有用戶關系的用戶。對于某個R社區(qū),其所包含的所有R所對應的用戶集形成該R社區(qū)所對應的U社區(qū)。依次遍歷所發(fā)現(xiàn)的所有R社區(qū),形成U社區(qū)。
[0057]參照圖3,為本發(fā)明較佳實施例的社交網絡示例圖。它給出了 LCA算法未考慮邊的真實興趣特性而導致社區(qū)發(fā)現(xiàn)不準確的一個案例。該案例由3個節(jié)點(用戶兩條邊(用戶關系)e12和e13組成。假定節(jié)點ηι、η2和n3的興趣特征及其權重分別為::0.5,I2:0.5)、⑴:0.5)和(12:1)。采用Tanimoto系數(shù)計算公式分別求得邊e12和e13的權重w12和w13為0.5和0.5 ;進而可知,邊e12和e13之間的相似度為0.5。因此,若采用LCA算法,由于邊e12和e13間較高的相似度,使得e12和e13將被劃分到一個社區(qū),即,節(jié)點和n3都歸屬于同一個社區(qū)。而事實上,rii和n2的共同興趣為Ip rii和n3的共同興趣為12,而n2和n3之間無共同興趣;因此,好的社區(qū)發(fā)現(xiàn)應能將其劃分為ηι、η2和ηι、η3兩個不同的社區(qū)結構。顯然,LCA算法因未考慮e12和e13的真實興趣特征,使得其社區(qū)發(fā)現(xiàn)不夠合理。而本發(fā)明所公開的方法首先計算出邊e12和e13所對應的用戶關系的興趣特征分別為Q ={(11;0.5)}和(:2 = {(I2,0.5)}。由于(^和(:2完全不同,因此,不論采用哪種聚類方法,e12和e13都分屬于不同的興趣社區(qū),最終,發(fā)現(xiàn)真實的興趣社區(qū)。因此,本發(fā)明所公開的方法較LCA能挖掘出更好的社區(qū)結構。
[0058]以上所述,僅為本發(fā)明的【具體實施方式】,但本發(fā)明的保護范圍并不局限于此,任何熟悉本【技術領域】的技術人員在本發(fā)明揭露的技術范圍內,可輕易想到變化或替換,都應涵蓋在本發(fā)明的保護范圍之內。因此,本發(fā)明的保護范圍應所述以權利要求的保護范圍為準。
【權利要求】
1.一種興趣和網絡結構雙內聚的社交網絡社區(qū)發(fā)現(xiàn)方法,其特征在于,所述方法包括如下步驟: 1.構建社交網絡R-C模型; I1.在R-C模型中,采用已有的相似度計算方法計算具有共同用戶的兩個用戶關系的興趣特征相似度; II1.以R-C模型中的用戶關系為節(jié)點,以兩個用戶關系之間是否有共同好友為邊,以用戶關系間的興趣特征相似度為邊的權值,形成社交網絡加權無向圖; IV.采用已有的加權無向網絡社區(qū)發(fā)現(xiàn)算法對上述網絡進行用戶關系社區(qū)發(fā)現(xiàn); V.逐一遍歷用戶關系社區(qū),將用戶關系社區(qū)中的用戶關系直接映射為其所關聯(lián)的兩個用戶,形成社交網絡用戶社區(qū),完成社交網絡社區(qū)發(fā)現(xiàn)。
2.如權利要求1所述的社交網絡R-C模型,其特征在于,其構建步驟如下: 1.將用戶在社交網絡中所發(fā)布的所有可荻取內容合并為一個文檔,形成社交網絡內容集合; I1.對內容集合中的內容進行分詞,并采用已有基于內容的主題提取方法提取各內容的主題集合,形成帶權值的用戶興趣集; II1.依據用戶關系所關聯(lián)的兩個用戶的興趣集,采用帶權值的交集運算形成用戶關系興趣特征集; IV.以用戶關系為節(jié)點,以兩個用戶關系之間是否有共同好友為邊,以用戶關系的興趣特征集為節(jié)點的屬性,形成社交網絡R-C模型。
3.如權利要求2所述的帶權值的用戶興趣集,其特征在于,每個興趣都具有權值,該權值描述了用戶對該興趣的感興趣程度。
4.如權利要求2所述的帶權值的交集運算,其特征在于,運算結果為兩個集合的共同興趣,共同興趣的權值為該興趣在兩個集合中權值的較小值。
【文檔編號】G06F17/30GK104268271SQ201410540031
【公開日】2015年1月7日 申請日期:2014年10月13日 優(yōu)先權日:2014年10月13日
【發(fā)明者】周小平 申請人:北京建筑大學