專利名稱:基于拓撲分析的網(wǎng)絡(luò)社區(qū)發(fā)現(xiàn)方法
技術(shù)領(lǐng)域:
本發(fā)明涉及用于分析節(jié)點之間相互關(guān)系的方法,特別涉及一種基于拓撲分析的網(wǎng)絡(luò)社區(qū)發(fā)現(xiàn)方法。
背景技術(shù):
社會網(wǎng)絡(luò)是由一些個人或組織以及它們之間的聯(lián)系所構(gòu)成的集合,這種關(guān)系可能是同事、朋友、親屬等各種關(guān)系?,F(xiàn)實世界中的社會網(wǎng)絡(luò),不僅包括狹義的社會網(wǎng)絡(luò),還包括技術(shù)、生物和經(jīng)濟等網(wǎng)絡(luò)實例,如電力網(wǎng)格、電話交換網(wǎng)、萬維網(wǎng)、科學家合著關(guān)系網(wǎng)和引用關(guān)系網(wǎng)。隨著網(wǎng)絡(luò)技術(shù)的發(fā)展,特別是像Facebook、Twitter,以及國內(nèi)的人人網(wǎng),開心網(wǎng)等在線社會網(wǎng)絡(luò)網(wǎng)站的涌現(xiàn),越來多的個人用戶加入到由這些虛擬關(guān)系所構(gòu)筑的網(wǎng)絡(luò)中,我們稱這樣的網(wǎng)絡(luò)為社會網(wǎng)絡(luò)。社會網(wǎng)絡(luò)的研究特別是社區(qū)發(fā)現(xiàn)的研究對我們研究人類社會有特別重要的意義。可以幫助我們更好理解發(fā)現(xiàn)社會網(wǎng)絡(luò)的成長歷程與未來發(fā)展發(fā)現(xiàn)。特別是在線社會網(wǎng)絡(luò)的迅猛發(fā)展,使得社會網(wǎng)絡(luò)數(shù)據(jù)的獲取與研究更加方便快捷。社會網(wǎng)絡(luò)社區(qū)發(fā)現(xiàn)方法可以提高社會網(wǎng)絡(luò)的個性化推薦質(zhì)量,是目前社會網(wǎng)絡(luò)分析領(lǐng)域的研究熱點之一。目前已存在一些相關(guān)的社會網(wǎng)絡(luò)社區(qū)發(fā)現(xiàn)方法。例如,申請?zhí)枮?00810224175. 5,名稱為“一種復(fù)雜網(wǎng)絡(luò)中的社區(qū)劃分方法”的發(fā)明專利公開了一種以若干個不同的局部帶有影響力的節(jié)點為核心,并使節(jié)點的影響力從核心逐層向外均勻擴散,最終形成以影響力最大的節(jié)點為核心,相互關(guān)聯(lián)形成局部區(qū)域的方法。按照所采用的基本求解策略,可以歸納為兩大類基于優(yōu)化的方法和啟發(fā)式方法。前者將社會網(wǎng)絡(luò)社區(qū)發(fā)現(xiàn)問題轉(zhuǎn)化為優(yōu)化問題,通過最優(yōu)化預(yù)定義的目標函數(shù)來計算社會網(wǎng)絡(luò)的社區(qū)結(jié)構(gòu),例如,譜方法將網(wǎng)絡(luò)聚類問題轉(zhuǎn)化為二次型優(yōu)化問題,通過計算特殊矩陣的特征向量來優(yōu)化預(yù)定義的“截”函數(shù),“截”即指子網(wǎng)間的連接密度.具有最小“截”的劃分被認為是最優(yōu)的網(wǎng)絡(luò)劃分,針對不同問題,提出了不同的“截”函數(shù), 例如,針對分布式系統(tǒng)負載平衡提出的“平均截”、針對大規(guī)模集成電路設(shè)計提出的“比率截”以及針對圖像分割提出的“規(guī)范截”等。而后者將社會網(wǎng)絡(luò)社區(qū)問題轉(zhuǎn)化為預(yù)定義啟發(fā)式規(guī)則的設(shè)計問題,例如,由Girvan和Newman在2002年提出的Girvan和Newman (簡稱GN)算法也采用反復(fù)識別和刪除簇間連接的策略聚類復(fù)雜網(wǎng)絡(luò),但GN算法采用了新的啟發(fā)式規(guī)則簇間連接的邊介數(shù)應(yīng)大于簇內(nèi)連接的邊介數(shù),連接的邊介數(shù)定義為網(wǎng)絡(luò)中經(jīng)過該連接的任意兩點間最短路徑的條數(shù),GN算法通過反復(fù)計算邊介數(shù)、識別簇間連接、刪除簇間連接,以自頂向下的方式建立一棵層次聚類樹。目前存在的相關(guān)方法得到的社區(qū)發(fā)現(xiàn)結(jié)果正確率還不夠理想。
發(fā)明內(nèi)容
本發(fā)明針對現(xiàn)有方法步驟復(fù)雜,所得社區(qū)發(fā)現(xiàn)結(jié)果正確率不高的缺點,提供了一種步驟少,社區(qū)發(fā)現(xiàn)準確率高的新型基于拓撲分析的網(wǎng)絡(luò)社區(qū)發(fā)現(xiàn)方法。為實現(xiàn)上述目的,本發(fā)明可采取下述技術(shù)方案基于拓撲分析的網(wǎng)絡(luò)社區(qū)發(fā)現(xiàn)方法,包括以下具體步驟
步驟一建立所述社會網(wǎng)絡(luò)拓撲結(jié)構(gòu)的鄰接矩陣M,所述拓撲結(jié)構(gòu)包括N個節(jié)點,所述鄰接矩陣M為NXN的矩陣;
步驟二 確定所述社會網(wǎng)絡(luò)拓撲結(jié)構(gòu)中所包含的社區(qū)數(shù)目K ;
步驟三以所述鄰接矩陣M的冪作為所述社會網(wǎng)絡(luò)拓撲結(jié)構(gòu)的分析矩陣M,;
步驟四計算所述分析矩陣M’每一行所有數(shù)值的總和,根據(jù)計算得到的所述分析矩陣M’每一行的總和對所述社會網(wǎng)絡(luò)拓撲結(jié)構(gòu)的節(jié)點進行遞減排序;
步驟五根據(jù)所述步驟四的排序結(jié)果,選擇所述分析矩陣M’每一行的總和最大的前K個節(jié)點作為所述社會網(wǎng)絡(luò)的中心節(jié)點;
步驟六確定所述中心節(jié)點與所述社會網(wǎng)絡(luò)中每個節(jié)點的親近度,在所述分析矩陣M’上分別找到與所述中心節(jié)點相對應(yīng)的行,所述行中每一列的數(shù)值即為所述中心節(jié)點與所述社會網(wǎng)絡(luò)中每個節(jié)點的親近度;
步驟七將所述社會網(wǎng)絡(luò)劃 分成K個社區(qū),將所述中心節(jié)點分別與所述社區(qū)一一對應(yīng),將所述社區(qū)網(wǎng)絡(luò)中除了中心節(jié)點之外的其他節(jié)點歸入與所述其他節(jié)點具有最大親近度的中心節(jié)點所對應(yīng)的社區(qū)。作為優(yōu)選,所述步驟二中,所述社區(qū)數(shù)目K為所述社會網(wǎng)絡(luò)中已經(jīng)發(fā)現(xiàn)的社區(qū)數(shù)目,或者為所述社會網(wǎng)絡(luò)的直徑,所述社會網(wǎng)絡(luò)的直徑為所述社會網(wǎng)絡(luò)中任意兩個節(jié)點之間最短距離的最大值。作為優(yōu)選,所述步驟三中,以所述鄰接矩陣M的六次冪作為所述社會網(wǎng)絡(luò)拓撲結(jié)構(gòu)的分析矩陣M’。上述技術(shù)方案中的社會網(wǎng)絡(luò)的直徑可以依照已經(jīng)公開的文獻所記載的方法進行計算,以下文獻(Skiena, Steven.1mplementing discrete mathematics -combinatorics and graph theory with Mathematica. Addison-Wesleyj 1990,p. 107.)已經(jīng)公開了上述計算社會網(wǎng)絡(luò)直徑的方法。本發(fā)明由于采用了以上技術(shù)方案,具有顯著的技術(shù)效果
本發(fā)明方法不需要諸如節(jié)點標簽、連接邊標簽等額外信息,僅僅使用最為基本的拓撲連接信息達到社區(qū)發(fā)現(xiàn)結(jié)果,具有較高的普適性。同時,也很容易與其他方法相結(jié)合以提高社區(qū)發(fā)現(xiàn)結(jié)果質(zhì)量。與現(xiàn)有的一些社區(qū)發(fā)現(xiàn)方法相比,本發(fā)明方法每一步驟計算是確定的,而不是具有隨機性不確定性。在社區(qū)發(fā)現(xiàn)結(jié)果上,本發(fā)明方法得到的社區(qū)結(jié)果正確率要比現(xiàn)有算法更高。
圖1為實施例1的網(wǎng)絡(luò)社區(qū)組織關(guān)系示意圖。圖2為實施例1的鄰接矩陣的結(jié)果示意圖。圖3為實施例1的分析矩陣的結(jié)果示意圖。
具體實施例方式下面結(jié)合實施例對本發(fā)明作進一步的詳細描述。實施例1基于拓撲分析的網(wǎng)絡(luò)社區(qū)發(fā)現(xiàn)方法,以社會網(wǎng)絡(luò)社區(qū)發(fā)現(xiàn)的經(jīng)典例子zachary網(wǎng)絡(luò)為例,本實施例所使用的社會網(wǎng)絡(luò)如圖1所示,zachary網(wǎng)絡(luò)是一個空手道俱樂部網(wǎng)絡(luò),共有34名成員,該俱樂部主席和教練由于產(chǎn)生分歧矛盾,導(dǎo)致俱樂部成員選擇自己支持的一方而分成2個社區(qū)。這是一個比較具有代表性的社會網(wǎng)絡(luò),大部分社區(qū)發(fā)現(xiàn)方法都會用這個數(shù)據(jù)集進行測試。包括以下具體步驟
步驟一建立所述社會網(wǎng)絡(luò)拓撲結(jié)構(gòu)的鄰接矩陣M,所述拓撲結(jié)構(gòu)包括N個節(jié)點,所述鄰接矩陣M為NXN的矩陣。鄰接矩陣是指矩陣中的元素只為O或者1,0表示行和列代表的社會網(wǎng)絡(luò)中的節(jié)點不相連,I表示行和列代表的社會網(wǎng)絡(luò)中的節(jié)點是相連的。由圖1可知,這里的社會網(wǎng)絡(luò)包括有34個節(jié)點,因此生成的鄰接矩陣M為34X34的矩陣,所得到的鄰接矩陣M如圖2所示。步驟二 確定所述社會網(wǎng)絡(luò)拓撲結(jié)構(gòu)中所包含的社區(qū)數(shù)目K。所述社區(qū)數(shù)目K為所述社會網(wǎng)絡(luò)中已經(jīng)發(fā)現(xiàn)的社區(qū)數(shù)目,或者為所述社會網(wǎng)絡(luò)的直徑,所述社會網(wǎng)絡(luò)的直徑為所述社會網(wǎng)絡(luò)中任意兩個節(jié)點之間最短距離的最大值。步驟三以所述鄰接矩陣M的六次冪作為所述社會網(wǎng)絡(luò)拓撲結(jié)構(gòu)的分析矩陣M’。這里,分析矩陣M’也是一個34X34的矩陣,所得到的分析矩陣M’如圖3所示。步驟四計算所述分析矩陣M,每一行所有數(shù)值的總和,根據(jù)計算得到的所述分析矩陣M’每一行的總和對所述社會網(wǎng)絡(luò)拓撲結(jié)構(gòu)的節(jié)點進行遞減排序。步驟五根據(jù)所述步驟四的排序結(jié)果,選擇所述分析矩陣M’每一行的總和最大的前K個節(jié)點作為所述社會網(wǎng)絡(luò)的中心節(jié)點。步驟六確定所述中心節(jié)點與所述社會網(wǎng)絡(luò)中每個節(jié)點的親近度,上述分析矩陣M,的橫坐標、縱坐標分別表示節(jié)點的編號,分析矩陣M’的值就是所述的親近度。在所述分析矩陣M’上分別找到與所 述中心節(jié)點相對應(yīng)的行,所述行中每一列的數(shù)值即為所述中心節(jié)點與所述社會網(wǎng)絡(luò)中每個節(jié)點的親近度。步驟七將所述社會網(wǎng)絡(luò)劃分成K個社區(qū),將所述中心節(jié)點分別與所述社區(qū)一一對應(yīng),將所述社區(qū)網(wǎng)絡(luò)中除了中心節(jié)點之外的其他節(jié)點歸入與所述其他節(jié)點具有最大親近度的中心節(jié)點所對應(yīng)的社區(qū)。我們可以發(fā)現(xiàn),通過上述方法所得到的社區(qū)發(fā)現(xiàn)的結(jié)果與zachary社會網(wǎng)絡(luò)的真實社區(qū)情況完全一樣??傊?,以上所述僅為本發(fā)明的較佳實施例,凡依本發(fā)明申請專利范圍所作的均等變化與修飾,皆應(yīng)屬本發(fā)明專利的涵蓋范圍。
權(quán)利要求
1.一種基于拓撲分析的網(wǎng)絡(luò)社區(qū)發(fā)現(xiàn)方法,其特征在于,包括以下具體步驟步驟一建立所述社會網(wǎng)絡(luò)拓撲結(jié)構(gòu)的鄰接矩陣M,所述拓撲結(jié)構(gòu)包括N個節(jié)點,所述鄰接矩陣M為NXN的矩陣;步驟二 確定所述社會網(wǎng)絡(luò)拓撲結(jié)構(gòu)中所包含的社區(qū)數(shù)目K ;步驟三以所述鄰接矩陣M的冪作為所述社會網(wǎng)絡(luò)拓撲結(jié)構(gòu)的分析矩陣M,;步驟四計算所述分析矩陣M’每一行所有數(shù)值的總和,根據(jù)計算得到的所述分析矩陣 M’每一行的總和對所述社會網(wǎng)絡(luò)拓撲結(jié)構(gòu)的節(jié)點進行遞減排序;步驟五根據(jù)所述步驟四的排序結(jié)果,選擇所述分析矩陣M’每一行的總和最大的前K 個節(jié)點作為所述社會網(wǎng)絡(luò)的中心節(jié)點;步驟六確定所述中心節(jié)點與所述社會網(wǎng)絡(luò)中每個節(jié)點的親近度,在所述分析矩陣M’ 上分別找到與所述中心節(jié)點相對應(yīng)的行,所述行中每一列的數(shù)值即為所述中心節(jié)點與所述社會網(wǎng)絡(luò)中每個節(jié)點的親近度;步驟七將所述社會網(wǎng)絡(luò)劃分成K個社區(qū),將所述中心節(jié)點分別與所述社區(qū)一一對應(yīng), 將所述社區(qū)網(wǎng)絡(luò)中除了中心節(jié)點之外的其他節(jié)點歸入與所述其他節(jié)點具有最大親近度的中心節(jié)點所對應(yīng)的社區(qū)。
2.根據(jù)權(quán)利要求1所述基于拓撲分析的網(wǎng)絡(luò)社區(qū)發(fā)現(xiàn)方法,其特征在于,所述步驟二中,所述社區(qū)數(shù)目K為所述社會網(wǎng)絡(luò)中已經(jīng)發(fā)現(xiàn)的社區(qū)數(shù)目,或者為所述社會網(wǎng)絡(luò)的直徑, 所述社會網(wǎng)絡(luò)的直徑為所述社會網(wǎng)絡(luò)中任意兩個節(jié)點之間最短距離的最大值。
3.根據(jù)權(quán)利要求1所述基于拓撲分析的網(wǎng)絡(luò)社區(qū)發(fā)現(xiàn)方法,其特征在于,所述步驟三中,以所述鄰接矩陣M的六次冪作為所述社會網(wǎng)絡(luò)拓撲結(jié)構(gòu)的分析矩陣M’。
全文摘要
本發(fā)明涉及用于分析節(jié)點之間相互關(guān)系的方法,公開了一種基于拓撲分析的網(wǎng)絡(luò)社區(qū)發(fā)現(xiàn)方法,通過拓撲分析處理社會網(wǎng)絡(luò),達到社區(qū)發(fā)現(xiàn)的結(jié)果。本發(fā)明的優(yōu)點在于,采用確定的計算步驟獲得社區(qū)發(fā)現(xiàn)的效果,無需諸如節(jié)點標簽、連接邊標簽等額外信息,僅僅使用最為基本的拓撲連接信息和確定的步驟即可達到社區(qū)發(fā)現(xiàn)的結(jié)果,普適性較高,社區(qū)發(fā)現(xiàn)結(jié)果的正確率較高,具有較高的應(yīng)用價值。
文檔編號H04L12/24GK103051476SQ201210565139
公開日2013年4月17日 申請日期2012年12月24日 優(yōu)先權(quán)日2012年12月24日
發(fā)明者王益文, 姚敏 申請人:浙江大學