專利名稱:針對復雜網絡的基于群思想改進的Fast-Newman聚類方法
技術領域:
本發(fā)明屬于社區(qū)網絡的數據挖掘領域,針對復雜網絡簇結構的聚類,具體涉及一種基于群思想改進目標函數的優(yōu)化類聚類方法。
背景技術:
隨著計算機、數學、物理、生物、社會學、復雜性科學等學科的不斷發(fā)展,人們發(fā)現,現實世界中的眾多系統(tǒng)都以復雜網絡的形式存在,如因特網、移動電話網、帶白紙交互網、神經元網等。由于這類網絡中節(jié)點和連接關系的異構性,簇結構(cluster structure)成為復雜網絡最普遍和最重要的拓撲結構屬性之一。網絡簇結構具有簇內節(jié)點相互連接緊密、簇間節(jié)點連接稀疏的特點。研究復雜網絡聚類算法和揭示真實的網絡簇結構是分析復雜網絡中節(jié)點關系隨時間的演化過程、信號或信息在網絡中的傳播速度與范圍以及預測網絡中節(jié)點的行為等眾多問題的基礎,具有重要的理論意義。同時,聚類算法已被應用于恐怖組織識別、社會網絡分析與組織管理、未知蛋白質功能預測、主控基因識別以及Web社區(qū)挖掘和搜索弓I擎等眾多領域,具有廣闊的應用前景。早期的復雜網絡聚類算法有譜方法和Kernighan-Lin算法(KL算法)。譜方法將復雜網絡建模為一個圖,并將聚類問題轉化成二次型優(yōu)化問題,通過計算特殊矩陣的特征向量來最小化預定義的“截函數”,從而產生分割網絡的效果。譜方法終止時需要依賴先驗知識,并且其遞歸平衡二分策略對于多簇網絡結構具有明顯劣勢。KL算法同樣基于圖分割思想,將極小化簇間連接與簇內連接數目之差作為優(yōu)化目標,通過不斷調整節(jié)點所屬簇結構,選擇并接受可以使目標函數極小化的候選解。KL算法在應用中同樣依賴先驗知識,并對初始解非常敏感,不好的初始解會導致聚類過程收斂速度緩慢并且結果較差。2002年,Flake等人基于最大流-最小截定理提出了啟發(fā)式聚類算法MaximumFlow Community (MFC算法)。Flake認為具有簇結構的網絡中,網絡“瓶頸”由簇間連接構成,MFC算法通過計算最小截集,識別網絡“瓶頸”,刪除簇間連接,將網絡逐漸分割成簇結構。但MFC算法基于連接進行聚類,不適用于節(jié)點異構的網絡。同年,Girvan和Newman提出了 Girvan-Newman算法(GN算法)。該算法同樣使用啟發(fā)式規(guī)則,通過反復計算網絡中的邊介數,識別并刪除簇間連接,生成一顆自頂向下的層次聚類樹。GN算法最大的缺點在于計算量過大,算法收斂速度慢,不適合應用于大規(guī)模網絡。2004年,Newman提出了的i^ast-Newman算法(FN算法),該算法是一種優(yōu)化算法,優(yōu)化目標是Newman和Girvan在同年提出的著名的網絡模塊性評價函數(或稱Q函數)。初始狀態(tài)下,FN算法將每一個節(jié)點看作一個簇,通過在迭代過程中最大化Q函數的合并操作,計算出自底向上的包含層次聚類過程的簇結構關系樹?;赒函數,Guimera和Amaral提出了融合模擬退火算法的Guimera-Amaral算法(GA算法),該算法通過計算候選解對應的Q函數值來評價其優(yōu)劣,并通過模擬退火策略的Metropolis準則決定是否接受候選解,這一算法是目前聚類精度最高的算法。除此以外,很多復雜網絡聚類算法都以最大化Q函數為優(yōu)化目標,這類算法解決了過度依賴初始解和啟發(fā)式算法中收斂速度過慢的問題。
但是,Q函數的優(yōu)化依然存在缺陷首先,基于優(yōu)化思想的聚類算法所識別出的網絡簇結構優(yōu)劣完全取決于優(yōu)化的目標函數,“有偏”的目標函數會導致“有偏”的解。由于Q函數是有偏的目標函數,所以,聚類精度在Q函數達到全局最大值時并非最高,此時的優(yōu)化算法聚類結果并不能完全準確地刻畫真實的網絡簇結構。其次,隨著復雜網絡規(guī)模的不斷擴大,優(yōu)化算法中目標函數值計算和迭代過程本身時間復雜度不斷提高,導致聚類運算消耗的時間和資源越來越多。
發(fā)明內容
針對目前FN算法中Q函數的優(yōu)化存在的缺陷聚類精度在Q函數達到全局最大值時并非最高,此時的聚類結果并不能完全準確地刻畫真實的網絡簇結構,并且隨著復雜網絡規(guī)模的不斷擴大,聚類消耗的時間和資源越來越多,本發(fā)明提出了一種針對復雜網絡的基于群思想改進的i^ast-Newman聚類方法。本發(fā)明提出的一種針對復雜網絡的基于群思想改進的i^st-Newman聚類方法,具體包括如下步驟步驟1 統(tǒng)計網絡中的所有節(jié)點,并為每個節(jié)點順序編號,設節(jié)點總數為N,i為節(jié)點的編號,1 < i ^ N,對網絡中的每個節(jié)點i,設置其所在的社區(qū)號為i ;步驟2 為每個節(jié)點i創(chuàng)建一個社區(qū)結構,并為各社區(qū)設置用于表示該社區(qū)是否存在的存活標記alive,將節(jié)點i加入社區(qū)i的社區(qū)成員中,設置該社區(qū)結構的參數alive的值為ture,ture表示該社區(qū)存在,false表示該社區(qū)不存在;設置當前網絡中存在的社區(qū)總數nalive為網絡中總的節(jié)點數N ;步驟3:對每個社區(qū)i,確定其內部的邊數in_edge[i]以及其內部的度數degree [i];步驟4:對每對社區(qū)i,j,確定兩者之間的邊數croSS_edge[i] [j],l≤i≤N,1≤j≤N,且i乒j ;步驟5 確定每個社區(qū)i的模塊性評價函數值Q' [i]
權利要求
1. 一種針對復雜網絡的基于群思想改進的i^st-Newman聚類方法,其特征在于,具體包括如下步驟步驟1 統(tǒng)計網絡中的所有節(jié)點,并為每個節(jié)點順序編號,設節(jié)點總數為N,i為節(jié)點的編號,1 < i < N,對網絡中的每個節(jié)點i,設置其所在的社區(qū)號為i ;步驟2 為每個節(jié)點i創(chuàng)建一個社區(qū)結構,并為各社區(qū)設置用于表示該社區(qū)是否存在的存活標記alive,將節(jié)點i加入社區(qū)i的社區(qū)成員中,設置該社區(qū)結構的參數alive的值為ture, ture表示該社區(qū)存在,false表示該社區(qū)不存在;設置當前網絡中存在的社區(qū)總數nalive為網絡中總的節(jié)點數N;步驟3:對每個社區(qū)i,確定其內部的邊數in_edge[i]以及其內部的度數degree[i];步驟4:對每對社區(qū)i,j,確定兩者之間的邊數croSS_edge[i] [j],l彡i彡N,1彡j彡N,且i乒j ;步驟5 確定每個社區(qū)i的模塊性評價函數值Q' [i]n4^e m d2m0 =Σ(1)1=1 rn dqm其中,m代表整個網絡的邊數,Hii代表社區(qū)i內的邊數iruedgetiLdiR表社區(qū)i內所有節(jié)點的度之和degree[i],q代表社區(qū)i對應的群,m,代表群q內的邊數,d,代表群q內所有節(jié)點的度之和;社區(qū)i對應的群q是指社區(qū)i與社區(qū)i相鄰社區(qū)的集合;所述的相鄰社區(qū)的定義為若社區(qū)i中至少存在一個節(jié)點與社區(qū)P中任意節(jié)點存在至少一條連邊,則社區(qū)i與社區(qū)P就是相鄰社區(qū);步驟6:設置變量maxQ',用于保存當前網絡中社區(qū)的最大Q'值;步驟7 判斷當前網絡中是否存在大于一個的社區(qū),若存在,則列舉當前網絡中所有的社區(qū)對i、j,然后執(zhí)行步驟8 ;否則,執(zhí)行步驟12 ;1彡i ^nalivea ^ j彡nalive,且i ^ j ;步驟8 判斷當前網絡中所有的社區(qū)對是否都已經被取過,若沒有,任意取一對沒有取過的社區(qū)對i,j,若全部被取過,轉步驟12執(zhí)行;步驟9 判斷社區(qū)i和社區(qū)j之間是否存在連接的邊,若存在,執(zhí)行步驟10,若不存在,轉步驟8執(zhí)行;步驟10:假定將社區(qū)i和社區(qū)j進行合并得到新社區(qū)i',i'為新社區(qū)號,確定新社區(qū)i'的內部的總邊數in_edge[i']以及內部的總度數degree [i ‘],然后確定新社區(qū)i'的模塊性評價函數值Q' [i']nalive'… (P Πm aqm其中,nalive'為假定將社區(qū)i和社區(qū)j進行合并情況下的當前網絡中存在的社區(qū)總數,其值為當前網絡中存在的社區(qū)總數nalive-1 代表社區(qū)i'對應的群,m代表整個網絡的邊數,HV代表社區(qū)i'內的邊數in_edge[i' ],πν代表群q'內的邊數,‘代表社區(qū)i'內所有節(jié)點的度之和,&代表群q'內所有節(jié)點的度之和;步驟11:比較得到的模塊性評價函數值Q' [i']是否大于當前的最大Q'值的變量maxQ',若否,不作更新,轉步驟8執(zhí)行;若是,更新maxQ'的值為新社區(qū)的模塊性評價函數值Q' [i],并將社區(qū)j合并到社區(qū)i中,然后轉步驟7執(zhí)行;步驟12:保存當前變量maxQ'中最大Q'值,以及最終社區(qū)劃分結構,然后結束本方法。
2.根據權利要求1所述的一種針對復雜網絡的基于群思想改進的i^st-Newman聚類方法,其特征在于,步驟10中所述的新社區(qū)i'內部的總邊數in_edge[i'],是將社區(qū)i的內部邊數加上社區(qū)j的內部邊數,再加上社區(qū)i和社區(qū)j之間連接的邊數得到,所述新社區(qū)i'內部的總度數degree[i']將社區(qū)j的度數加社區(qū)i的度數得到。
3.根據權利要求1所述的一種針對復雜網絡的基于群思想改進的i^st-Newman聚類方法,其特征在于,步驟11中所述的將社區(qū)j合并到社區(qū)i中,具體包括如下操作將社區(qū)j中的節(jié)點加入到社區(qū)i的社區(qū)成員中,將社區(qū)j中的節(jié)點的社區(qū)號修改為i,設置社區(qū)j的存活標記alive的值為false,更新社區(qū)i的內部的邊數in_edge[i]以及內部的總度數degree [i],更新社區(qū)i與當前整個網絡中存在的其他社區(qū)之間的邊數。
全文摘要
本發(fā)明公開了一種應用于復雜網絡的基于群思想改進的Fast-Newman聚類方法,引入群的思想,根據復雜網絡簇結構特點,定義了相鄰簇概念,改進了Newman提出的模塊性評價函數,并保存最大的模塊性評價函數值,使得聚類精度避免了在達到全局最大值時并非最高的問題,得到的聚類結果能夠更加準確地刻畫真實的網絡簇結構。本發(fā)明方法對大規(guī)模復雜網絡聚類分析的精度比原FN聚類方法有顯著提高,對于常見的具有規(guī)模大、連接稀疏且關系不均勻的復雜網絡,聚類效果尤其突出。
文檔編號H04L29/08GK102571431SQ201210004690
公開日2012年7月11日 申請日期2012年1月9日 優(yōu)先權日2011年12月2日
發(fā)明者戴彬, 牛建偉, 童超, 韓軍威 申請人:北京航空航天大學