一種基于標(biāo)簽影響力的半同步社區(qū)發(fā)現(xiàn)方法
【專利摘要】本發(fā)明涉及一種基于標(biāo)簽影響力的半同步社區(qū)發(fā)現(xiàn)方法,包括以下步驟:步驟S1:對(duì)于給定社會(huì)網(wǎng)絡(luò),計(jì)算每個(gè)網(wǎng)絡(luò)節(jié)點(diǎn)的影響力,并根據(jù)影響力大小對(duì)網(wǎng)絡(luò)節(jié)點(diǎn)降序排序;步驟S2:依據(jù)影響力大小初始化網(wǎng)絡(luò)節(jié)點(diǎn)標(biāo)簽;步驟S3:利用半同步標(biāo)簽傳播算法ISLPA對(duì)網(wǎng)絡(luò)節(jié)點(diǎn)標(biāo)簽進(jìn)行迭代更新;步驟S4:根據(jù)網(wǎng)絡(luò)節(jié)點(diǎn)標(biāo)簽進(jìn)行網(wǎng)絡(luò)節(jié)點(diǎn)的社區(qū)劃分并輸出,即對(duì)于所有網(wǎng)絡(luò)節(jié)點(diǎn),通過將具有相同標(biāo)簽者歸屬到同一社區(qū)的方法構(gòu)造網(wǎng)絡(luò)的社區(qū)結(jié)構(gòu)。該方法能夠提高社區(qū)發(fā)現(xiàn)的有效性和穩(wěn)定性,有效發(fā)現(xiàn)隱藏于社交網(wǎng)絡(luò)的社區(qū)結(jié)構(gòu)模式。
【專利說明】
一種基于標(biāo)簽影響力的半同步社區(qū)發(fā)現(xiàn)方法
技術(shù)領(lǐng)域
[0001] 本發(fā)明涉及網(wǎng)絡(luò)社區(qū)發(fā)現(xiàn)技術(shù)領(lǐng)域,特別是一種應(yīng)用于社會(huì)網(wǎng)絡(luò)的基于標(biāo)簽影響 力的半同步社區(qū)發(fā)現(xiàn)方法。
【背景技術(shù)】
[0002] 諸如萬維網(wǎng)、社會(huì)關(guān)系網(wǎng)絡(luò)與生物網(wǎng)絡(luò)等多種自然或社會(huì)復(fù)雜系統(tǒng)都可以用復(fù)雜 網(wǎng)絡(luò)來描述,復(fù)雜網(wǎng)絡(luò)具有度冪律分布、高聚集系數(shù)與模塊化社區(qū)等特征。本質(zhì)上,網(wǎng)絡(luò)的 社區(qū)結(jié)構(gòu)是指這樣的節(jié)點(diǎn)集合:集合內(nèi)的節(jié)點(diǎn)之間的鏈接稠密而集合內(nèi)節(jié)點(diǎn)與集合外節(jié)點(diǎn) 的鏈接稀疏。例如,具有復(fù)雜網(wǎng)絡(luò)研究興趣的學(xué)者之間聯(lián)系比較緊密,他們構(gòu)成一個(gè)社區(qū), 目前常在一起探討問題,而與圖形圖像研究者溝通不多。社區(qū)結(jié)構(gòu)能夠刻畫復(fù)雜系統(tǒng)功能 部件間的拓?fù)潢P(guān)系,從復(fù)雜系統(tǒng)網(wǎng)絡(luò)中挖掘出隱藏的潛在有價(jià)值的社區(qū)結(jié)構(gòu)模式是一個(gè)很 有意義但包含挑戰(zhàn)的工作。
[0003] 近年來,網(wǎng)絡(luò)社區(qū)發(fā)現(xiàn)研究同時(shí)在物理學(xué)、社會(huì)學(xué)與計(jì)算機(jī)科學(xué)等不同領(lǐng)域中備 受關(guān)注,涌現(xiàn)出的算法五花八門。絕大多數(shù)現(xiàn)有的社區(qū)發(fā)現(xiàn)算法都有著較高的計(jì)算復(fù)雜度, 例如,GN算法的時(shí)間復(fù)雜度為0(m 2n),模塊度優(yōu)化法的時(shí)間復(fù)雜度為0(mklogn)。過高的計(jì) 算成本使得這些傳統(tǒng)社區(qū)發(fā)現(xiàn)方法無法滿足大規(guī)模復(fù)雜網(wǎng)絡(luò)社區(qū)模式發(fā)現(xiàn)的需要。在此背 景下,具有近似線性時(shí)間復(fù)雜度的標(biāo)簽傳播算法(Label Propagation Algorithm,LPA)在 大規(guī)模網(wǎng)絡(luò)社區(qū)發(fā)現(xiàn)研究中倍受青睞。
[0004] Raghavan等人最早于2007年首先提出基于標(biāo)簽傳播算法的社區(qū)發(fā)現(xiàn)方法RAK,該 方法首先將每個(gè)節(jié)點(diǎn)初始化為一個(gè)獨(dú)特的社區(qū)標(biāo)簽,然后通過迭代過程將每個(gè)節(jié)點(diǎn)的標(biāo)簽 都更新為其大多數(shù)鄰近節(jié)點(diǎn)的標(biāo)簽,最后密集連接的節(jié)點(diǎn)組會(huì)逐步從一個(gè)獨(dú)特標(biāo)簽變成了 一個(gè)具有共識(shí)的社區(qū)節(jié)點(diǎn)從而形成網(wǎng)絡(luò)社區(qū)結(jié)構(gòu)。RAK承襲了標(biāo)簽傳播算法的高效計(jì)算特 性,但由于其在初始標(biāo)簽、選擇鄰居節(jié)點(diǎn)和更新順序等方面都采用隨機(jī)策略,這使得發(fā)現(xiàn)的 網(wǎng)絡(luò)社區(qū)結(jié)構(gòu)具有很大隨機(jī)性,甚至可能產(chǎn)生所有節(jié)點(diǎn)屬于同一社區(qū)的奇異解。針對(duì)此,社 區(qū)發(fā)現(xiàn)研究者從多個(gè)方面對(duì)LPA算法進(jìn)行了改進(jìn)。
[0005]隨機(jī)初始標(biāo)簽方面,Subelj等人提出一種新的標(biāo)簽傳播算法DPA以層次方式將防 御保護(hù)與進(jìn)攻擴(kuò)展兩種社區(qū)形成策略組合起來,通過遞歸方式提取社區(qū)核心與調(diào)整社區(qū)核 心來發(fā)現(xiàn)微小社區(qū)(whisker communities) Ieung等人通過Web網(wǎng)絡(luò)社區(qū)發(fā)現(xiàn)的實(shí)驗(yàn),發(fā)現(xiàn) 節(jié)點(diǎn)標(biāo)簽跳衰減策略與節(jié)點(diǎn)強(qiáng)度傳播策略能有效提升LPA算法的性能。考慮到隨機(jī)選取鄰 居節(jié)點(diǎn)標(biāo)簽的更新策略會(huì)降低LPA算法的魯棒性,Zhang等人提出在出現(xiàn)多個(gè)最優(yōu)的不同標(biāo) 簽時(shí)應(yīng)選擇與當(dāng)前待更新節(jié)點(diǎn)存在局部環(huán)的標(biāo)簽對(duì)當(dāng)前節(jié)點(diǎn)更新。Lin等人提出一種基于 社區(qū)核的標(biāo)簽傳播算法CK-LPA,根據(jù)節(jié)點(diǎn)在網(wǎng)絡(luò)中的重要性對(duì)其賦值并以此值對(duì)節(jié)點(diǎn)標(biāo)簽 進(jìn)行異步更新。為了避免產(chǎn)生眾多碎小社區(qū),趙卓翔等人提出了一種基于標(biāo)簽影響力的社 區(qū)發(fā)現(xiàn)算法LIB,該算法首先選取一個(gè)小的頂點(diǎn)集作為種子集并賦予每個(gè)種子唯一的標(biāo)簽 再以種子集作為起點(diǎn)進(jìn)行傳播,在對(duì)節(jié)點(diǎn)標(biāo)簽更新時(shí)需要對(duì)頂點(diǎn)鄰居中相同標(biāo)簽所占比 例、頂點(diǎn)度數(shù)和邊的權(quán)重等多種因素進(jìn)行綜合考慮。為了避免產(chǎn)生怪獸社區(qū)(同一網(wǎng)絡(luò)內(nèi)所 有節(jié)點(diǎn)都隸屬同一個(gè)社區(qū)),Barber等人提出了一種模塊化標(biāo)簽傳播算法LPAm,通過給定一 個(gè)目標(biāo)函數(shù),使得標(biāo)簽傳播算法在迭代傳播過程中受到約束,將社區(qū)發(fā)現(xiàn)的問題轉(zhuǎn)化成為 尋找目標(biāo)函數(shù)最優(yōu)解的問題,在鄰居標(biāo)簽個(gè)數(shù)相同的基礎(chǔ)上定義一個(gè)目標(biāo)函數(shù)利用標(biāo)簽傳 播算法發(fā)現(xiàn)函數(shù)的局部化的最優(yōu)值。注意到LPAm因容易陷入模塊度局部極大值而損害結(jié)果 社區(qū)的準(zhǔn)確性,Liu等人提出了 LPAm+算法,將LPAm算法與多步貪心聚合(MSG)相結(jié)合,利用 MSG同時(shí)合并多個(gè)相似社區(qū)以避免陷入局部最大值,實(shí)現(xiàn)更加精準(zhǔn)地檢測(cè)網(wǎng)絡(luò)社區(qū)。Subelj 等人提出的BPA算法,先計(jì)算每個(gè)節(jié)點(diǎn)的平衡因子,再通過累加相同標(biāo)簽的平衡因子來選取 最大的鄰居集合,避免了奇異解的產(chǎn)生。
[0006] 上述算法雖然在一定程度上提升了結(jié)果社區(qū)的質(zhì)量,但依然存在由隨機(jī)更新策略 引起的算法穩(wěn)定性問題。針對(duì)于此,本文提出了一種基于影響力的半同步標(biāo)簽傳播算法 (Influence-driven Semi-synchronous Label Propagation Algorithm,ISLPA)〇
【發(fā)明內(nèi)容】
[0007] 本發(fā)明的目的在于提供一種基于標(biāo)簽影響力的半同步社區(qū)發(fā)現(xiàn)方法,該方法能夠 提高社區(qū)發(fā)現(xiàn)的有效性和穩(wěn)定性,有效發(fā)現(xiàn)隱藏于社交網(wǎng)絡(luò)的社區(qū)結(jié)構(gòu)模式。
[0008] 為實(shí)現(xiàn)上述目的,本發(fā)明的技術(shù)方案是:一種基于標(biāo)簽影響力的半同步社區(qū)發(fā)現(xiàn) 方法,包括以下步驟: 步驟SI:對(duì)于給定社會(huì)網(wǎng)絡(luò),計(jì)算每個(gè)網(wǎng)絡(luò)節(jié)點(diǎn)的影響力,并根據(jù)影響力大小對(duì)網(wǎng)絡(luò)節(jié) 點(diǎn)降序排序; 步驟S2:依據(jù)影響力大小初始化網(wǎng)絡(luò)節(jié)點(diǎn)標(biāo)簽; 步驟S3:利用半同步標(biāo)簽傳播算法ISLPA對(duì)網(wǎng)絡(luò)節(jié)點(diǎn)標(biāo)簽進(jìn)行迭代更新; 步驟S4:根據(jù)網(wǎng)絡(luò)節(jié)點(diǎn)標(biāo)簽進(jìn)行網(wǎng)絡(luò)節(jié)點(diǎn)的社區(qū)劃分并輸出,即對(duì)于所有網(wǎng)絡(luò)節(jié)點(diǎn),通 過將具有相同標(biāo)簽者歸屬到同一社區(qū)的方法構(gòu)造網(wǎng)絡(luò)的社區(qū)結(jié)構(gòu)。
[0009] 進(jìn)一步的,所述步驟Si中,對(duì)于網(wǎng)絡(luò)節(jié)點(diǎn)t/,其影響力為:
其中,u)為節(jié)點(diǎn)u的度,M u)是節(jié)點(diǎn)u的鄰居集合; 在所有節(jié)點(diǎn)的影響力計(jì)算完畢后,對(duì)節(jié)點(diǎn)進(jìn)行依影響力的降序排序。
[0010] 進(jìn)一步的,所述步驟S2中,重復(fù)如下操作直至全部節(jié)點(diǎn)標(biāo)記完畢:選擇當(dāng)前最大影 響力的節(jié)點(diǎn)進(jìn)行標(biāo)簽賦值,若有多個(gè)并列最大影響力的節(jié)點(diǎn),則按照排列順序選擇,在所述 最大影響力的節(jié)點(diǎn)標(biāo)簽賦值完畢后,對(duì)其鄰居節(jié)點(diǎn)按照排列順序進(jìn)行標(biāo)記。
[0011] 進(jìn)一步的,所述步驟S3中,利用半同步標(biāo)簽傳播算法ISLPA對(duì)網(wǎng)絡(luò)節(jié)點(diǎn)標(biāo)簽進(jìn)行迭 代更新,具體包括以下步驟: 步驟S31:選擇具有最大影響力的節(jié)點(diǎn)作為待更新節(jié)點(diǎn)t/; 步驟S32:對(duì)于待更新節(jié)點(diǎn)u,選擇標(biāo)5
是節(jié)點(diǎn)待更新的標(biāo)簽,〇(t/)是節(jié)點(diǎn)鄰居節(jié)點(diǎn)的集合,4Λ,乃是克羅內(nèi)克函數(shù),的所有 標(biāo)簽為的鄰居節(jié)點(diǎn)構(gòu)成集合V; 步驟S33:將節(jié)點(diǎn)與集合V中的節(jié)點(diǎn)進(jìn)行狀態(tài)劃分,即對(duì)于集合V中的任意節(jié)點(diǎn)r,將其 歸屬為如下3種狀態(tài)中的一種:已更新的第一狀態(tài)、節(jié)點(diǎn)可根據(jù)節(jié)點(diǎn)r更新的第二狀態(tài)和節(jié) 點(diǎn)不可根據(jù)節(jié)點(diǎn)r更新的第三狀態(tài); 步驟S34:根據(jù)如下情況判斷待更新節(jié)點(diǎn)t/是否可以更新:1)集合V中所有節(jié)點(diǎn)都未更新 且節(jié)點(diǎn)相對(duì)集合V中所有節(jié)點(diǎn)為第二狀態(tài),則節(jié)點(diǎn)只能等待其他節(jié)點(diǎn)更新;2)雖然集合V 中節(jié)點(diǎn)相對(duì)集合V中所有節(jié)點(diǎn)為第二狀態(tài),但是集合V中具有第一狀態(tài)的節(jié)點(diǎn),則節(jié)點(diǎn)可 以更新;3)節(jié)點(diǎn)相對(duì)集合V中所有節(jié)點(diǎn)為第三狀態(tài),節(jié)點(diǎn)可以更新; 步驟S35:若節(jié)點(diǎn)滿足更新條件則更新其標(biāo)簽,否則等待條件滿足; 步驟S36:迭代執(zhí)行步驟S31~S35,直至模塊度收斂條件滿足。
[0012] 本發(fā)明的有益效果是提供了一種基于標(biāo)簽影響力的半同步社區(qū)發(fā)現(xiàn)方法,相較于 傳統(tǒng)的網(wǎng)絡(luò)社區(qū)發(fā)現(xiàn)方法,本發(fā)明方法從更新機(jī)制上進(jìn)行突破,采用半同步策略,通過計(jì)算 節(jié)點(diǎn)的影響力,從初始標(biāo)簽、選擇鄰居節(jié)點(diǎn)和更新順序三方面來提升標(biāo)簽傳播算法的性能, 能顯著提高社區(qū)發(fā)現(xiàn)的有效性與穩(wěn)定性,有效發(fā)現(xiàn)隱藏于社交網(wǎng)絡(luò)的社區(qū)結(jié)構(gòu)模式,可廣 泛應(yīng)用于微博網(wǎng)絡(luò)、郵件網(wǎng)絡(luò)、BBS論壇網(wǎng)絡(luò)等各種社交平臺(tái),可以提升信息主動(dòng)服務(wù)質(zhì)量、 增強(qiáng)網(wǎng)絡(luò)文化安全等。
【附圖說明】
[0013] 圖1是本發(fā)明實(shí)施例的實(shí)現(xiàn)流程圖。
[0014] 圖2是本發(fā)明實(shí)施例中半同步更新機(jī)制實(shí)現(xiàn)過程的示意圖((I)原始網(wǎng)絡(luò);(II)節(jié) 點(diǎn)標(biāo)簽隨機(jī)化;(III)節(jié)點(diǎn)著色;(IV)節(jié)點(diǎn)標(biāo)簽迭代傳播)。
[0015] 圖3是本發(fā)明實(shí)施例中完全圖著色異步更新的示意圖。
[0016] 圖4是本發(fā)明實(shí)施例中振蕩現(xiàn)象產(chǎn)生的原因的示意圖。
[0017]圖5是本發(fā)明實(shí)施例中待更新節(jié)點(diǎn)u鄰居狀態(tài)的示意圖。
[0018] 圖6是本發(fā)明實(shí)施例中單向邊變換指向的示意圖((I)節(jié)點(diǎn)u更新前;(II)節(jié)點(diǎn)u更 新后)。
[0019] 圖7是本發(fā)明實(shí)施例中節(jié)點(diǎn)u所選擇的標(biāo)簽集合的3種情況的示意圖((I)情況1; (II)情況2; (III)情況3)。
[0020]
【具體實(shí)施方式】
[0021]本發(fā)明一種基于標(biāo)簽影響力的半同步社區(qū)發(fā)現(xiàn)方法,如圖1所示,包括以下步驟: 步驟SI:對(duì)于給定社會(huì)網(wǎng)絡(luò),計(jì)算每個(gè)網(wǎng)絡(luò)節(jié)點(diǎn)的影響力,并根據(jù)影響力大小對(duì)網(wǎng)絡(luò)節(jié) 點(diǎn)降序排序。
[0022]對(duì)于網(wǎng)絡(luò)節(jié)點(diǎn)t/,其影響力為:
其中,u)為節(jié)點(diǎn)u的度,M u)是節(jié)點(diǎn)u的鄰居集合; 在所有節(jié)點(diǎn)的影響力計(jì)算完畢后,運(yùn)用快速排序方法對(duì)節(jié)點(diǎn)進(jìn)行依影響力的降序排 序。
[0023] 步驟S2:依據(jù)影響力大小初始化網(wǎng)絡(luò)節(jié)點(diǎn)標(biāo)簽。具體方法如下: 重復(fù)如下操作直至全部節(jié)點(diǎn)標(biāo)記完畢:選擇當(dāng)前最大影響力的節(jié)點(diǎn)進(jìn)行標(biāo)簽賦值,若 有多個(gè)并列最大影響力的節(jié)點(diǎn),則按照排列順序選擇,在所述最大影響力的節(jié)點(diǎn)標(biāo)簽賦值 完畢后,對(duì)其鄰居節(jié)點(diǎn)按照排列順序進(jìn)行標(biāo)記。
[0024] 步驟S3:利用半同步標(biāo)簽傳播算法ISLPA對(duì)網(wǎng)絡(luò)節(jié)點(diǎn)標(biāo)簽進(jìn)行迭代更新。具體包括 以下步驟: 步驟S31:選擇具有最大影響力的節(jié)點(diǎn)作為待更新節(jié)點(diǎn)t/。
[0025] 步驟S32:對(duì)于待更新節(jié)點(diǎn)t/,選擇標(biāo)?
,其 中』~是節(jié)點(diǎn)待更新的標(biāo)簽,仏)是節(jié)點(diǎn)鄰居節(jié)點(diǎn)的集合,{人,乃是克羅內(nèi)克函數(shù),的 所有標(biāo)簽為的鄰居節(jié)點(diǎn)構(gòu)成集合V。
[0026] 步驟S33:將節(jié)點(diǎn)與集合V中的節(jié)點(diǎn)進(jìn)行狀態(tài)劃分,即對(duì)于集合V中的任意節(jié)點(diǎn) 將其歸屬為如下3種狀態(tài)中的一種:已更新的第一狀態(tài)、節(jié)點(diǎn)可根據(jù)節(jié)點(diǎn)r更新的第二狀態(tài) 和節(jié)點(diǎn)《不可根據(jù)節(jié)點(diǎn)r更新的第三狀態(tài)。在本實(shí)施例中,第一狀態(tài)設(shè)為黃色狀態(tài),第二狀態(tài) 設(shè)為紅色狀態(tài),第三狀態(tài)設(shè)為綠色狀態(tài),即3種狀態(tài)為:已更新的黃色狀態(tài)、節(jié)點(diǎn)可根據(jù)節(jié) 點(diǎn)^更新的紅色狀態(tài)和節(jié)點(diǎn)不可根據(jù)節(jié)點(diǎn)r更新的綠色狀態(tài)。
[0027] 步驟S34:根據(jù)如下情況判斷待更新節(jié)點(diǎn)是否可以更新:1)集合V中所有節(jié)點(diǎn)都未 更新且節(jié)點(diǎn)相對(duì)集合V中所有節(jié)點(diǎn)為紅色狀態(tài),則節(jié)點(diǎn)只能等待其他節(jié)點(diǎn)更新;2)雖然集 合V中節(jié)點(diǎn)相對(duì)集合V中所有節(jié)點(diǎn)為紅色狀態(tài),但是集合V中具有黃色狀態(tài)的節(jié)點(diǎn),則節(jié)點(diǎn) 可以更新;3)節(jié)點(diǎn)相對(duì)集合V中所有節(jié)點(diǎn)為綠色狀態(tài),節(jié)點(diǎn)可以更新。
[0028] 步驟S35:若節(jié)點(diǎn)t/滿足更新條件則更新其標(biāo)簽,否則等待條件滿足。
[0029] 步驟S36:迭代執(zhí)行步驟S31~S35,直至模塊度收斂條件滿足。模塊度收斂條件為: 模塊度值連續(xù)T次迭代不改變。
[0030] 步驟S4:根據(jù)網(wǎng)絡(luò)節(jié)點(diǎn)標(biāo)簽進(jìn)行網(wǎng)絡(luò)節(jié)點(diǎn)的社區(qū)劃分并輸出,即對(duì)于所有網(wǎng)絡(luò)節(jié) 點(diǎn),通過將具有相同標(biāo)簽者歸屬到同一社區(qū)的方法構(gòu)造網(wǎng)絡(luò)的社區(qū)結(jié)構(gòu)。
[0031] 下面結(jié)合附圖及具體實(shí)施例對(duì)本發(fā)明作進(jìn)一步的詳細(xì)說明。為了方便詳細(xì)闡述本 發(fā)明,首先對(duì)標(biāo)簽傳播算法進(jìn)行簡(jiǎn)介,然后分析現(xiàn)有半同步更新的標(biāo)簽傳播算法的不足。 [0032]標(biāo)簽傳播算法 標(biāo)簽傳播算法是由Zhu等人于2002年提出,它是一種基于圖的半監(jiān)督學(xué)習(xí)方法,其基本 思路是利用樣本間的關(guān)系建立以節(jié)點(diǎn)相似度為邊的數(shù)據(jù)節(jié)點(diǎn)完全圖模型并用已標(biāo)記節(jié)點(diǎn) 的標(biāo)簽信息去預(yù)測(cè)未標(biāo)記節(jié)點(diǎn)的標(biāo)簽信息。Raghavan等人首先將LPA算法應(yīng)用于網(wǎng)絡(luò)社區(qū) 發(fā)現(xiàn)研究中,根據(jù)當(dāng)前節(jié)點(diǎn)的鄰居節(jié)點(diǎn)的社區(qū)標(biāo)簽來更新其社區(qū)隸屬標(biāo)簽。其基本計(jì)算框 架可簡(jiǎn)述如下: 1)節(jié)點(diǎn)標(biāo)簽初始化:每個(gè)網(wǎng)絡(luò)節(jié)點(diǎn)賦予唯一的初始社區(qū)標(biāo)簽。
[0033] 2)節(jié)點(diǎn)標(biāo)簽更新:重復(fù)如下操作直到結(jié)束條件(標(biāo)簽傳播穩(wěn)定或達(dá)到最大迭代次 數(shù))滿足。對(duì)每個(gè)節(jié)點(diǎn)X,令其鄰居節(jié)點(diǎn)標(biāo)簽集合為N(x) = {xi,X2,···,Xk},若多重集合N(X)中 具有最大重?cái)?shù)的元素是唯一的,則以元素作為節(jié)點(diǎn)X的新標(biāo)簽,否則隨機(jī)選擇一個(gè)具有最大 重?cái)?shù)的元素作為節(jié)點(diǎn)X的新標(biāo)簽。
[0034] 3)網(wǎng)絡(luò)社區(qū)提取:具有相同標(biāo)簽的節(jié)點(diǎn)屬于同一個(gè)社區(qū)。
[0035] 由于具有計(jì)算高效性(近似線性的時(shí)間復(fù)雜度)與牢固數(shù)學(xué)基礎(chǔ)等優(yōu)勢(shì),標(biāo)簽傳播 算法近年來在社區(qū)發(fā)現(xiàn)研究中備受關(guān)注。
[0036] 半同步更新機(jī)制 現(xiàn)有的半同步更新機(jī)制主要包含著色和傳播兩個(gè)子過程。著色過程主要負(fù)責(zé)著色網(wǎng)絡(luò) 節(jié)點(diǎn),即:在滿足相鄰節(jié)點(diǎn)不能同色的條件下,使用盡量少的顏色數(shù)完成所有網(wǎng)絡(luò)節(jié)點(diǎn)的顏 色標(biāo)記。而傳播過程則實(shí)現(xiàn)標(biāo)簽以某種指定顏色順序在節(jié)點(diǎn)間半同步迭代傳播,以避免節(jié) 點(diǎn)振蕩問題。為了直觀起見,下面基于圖2說明半同步更新機(jī)制。對(duì)于如圖2(1)的原始網(wǎng)絡(luò) G,經(jīng)過網(wǎng)絡(luò)節(jié)點(diǎn)社區(qū)標(biāo)簽隨機(jī)初始化操作可得如圖2(11)的網(wǎng)絡(luò)社區(qū)結(jié)構(gòu),在著色操作的 作用下生成如圖2(111)的著色網(wǎng)絡(luò)社區(qū)結(jié)構(gòu),由圖2(111)可知,此時(shí)的著色數(shù)為3,分別用 紅色、藍(lán)色與黃色表示,最后通過圖2(IV)中的兩次迭代實(shí)現(xiàn)節(jié)點(diǎn)標(biāo)簽的傳播,從而達(dá)到社 區(qū)發(fā)現(xiàn)的目的。
[0037] 從上面的傳播過程可以看出,現(xiàn)有的半同步更新機(jī)制存在以下不足:1)節(jié)點(diǎn)標(biāo)簽 迭代傳播所依賴的顏色順序是一成不變的,這種固定的標(biāo)簽傳播模式難以滿足挖掘復(fù)雜網(wǎng) 絡(luò)社區(qū)結(jié)構(gòu)的需要;2)無法實(shí)現(xiàn)類完全圖網(wǎng)絡(luò)節(jié)點(diǎn)標(biāo)簽的同步更新,其原因是:在著色后的 完全圖中,每個(gè)節(jié)點(diǎn)顏色各不相同,從而使得在節(jié)點(diǎn)顏色順序的迭代中節(jié)點(diǎn)標(biāo)簽輪流更新 等效于異步更新。如圖3,完全圖著色后,所有節(jié)點(diǎn)標(biāo)記為不同顏色,迭代過程中5個(gè)節(jié)點(diǎn)輪 流更新等效于異步更新。
[0038] 從上面分析可知,現(xiàn)有半同步更新的標(biāo)簽傳播算法雖然能有效避免振蕩問題,但 是由于其限制了所有相鄰節(jié)點(diǎn)間的同步傳播,使得在某些情況下反而沒法凸顯算法的同步 特性。
[0039] 為了進(jìn)一步分析現(xiàn)有半同步更新的標(biāo)簽傳播算法無法體現(xiàn)同步特性的原因,有必 要對(duì)振蕩問題的根本原因進(jìn)行分析。循環(huán)振蕩現(xiàn)象,是指兩個(gè)相鄰節(jié)點(diǎn)無限次地只根據(jù)對(duì) 方上一次迭代的標(biāo)簽來更新自己的標(biāo)簽。如圖4所示,節(jié)點(diǎn)t/和r在tl時(shí)刻獲取了對(duì)方上一次 迭代的標(biāo)簽,并都根據(jù)?-打欠迭代的標(biāo)簽更新自己,類似地,下一次迭代對(duì)方又將上一次的 標(biāo)簽傳回來。
[0040] 由此可見,振蕩問題產(chǎn)生的根本原因是兩個(gè)未更新的節(jié)點(diǎn)同時(shí)根據(jù)過時(shí)標(biāo)簽進(jìn)行 更新,且必須同時(shí)滿足三個(gè)條件:1)兩個(gè)節(jié)點(diǎn)都沒有更新;2)同時(shí)進(jìn)行更新;3)均根據(jù)對(duì)方 過時(shí)標(biāo)簽更新。
[0041] 而在傳統(tǒng)半同步算法中,如圖5所示,為了避免振蕩問題,待更新節(jié)點(diǎn)不能與其鄰 居節(jié)點(diǎn)集N(U)同步更新,然而事實(shí)上,在N(U)中能完全滿足振蕩3條件的節(jié)點(diǎn)僅僅是N(U)的 子集,且大部分鄰居節(jié)點(diǎn)并未與節(jié)點(diǎn)u進(jìn)行標(biāo)簽傳播,因而與節(jié)點(diǎn)u的更新操作無關(guān)。由此可 見,傳統(tǒng)半同步算法在節(jié)點(diǎn)半同步更新過程中施加的限制條件過于嚴(yán)格,使得計(jì)算效率比 較低且增加了結(jié)果社區(qū)的不穩(wěn)定性。
[0042] 為此,本發(fā)明提出一種更加靈活的半同步更新策略,其基本思路是:對(duì)于任意待更 新節(jié)點(diǎn)t/,先根據(jù)標(biāo)簽傳播策略選取更新節(jié)點(diǎn)的更新標(biāo)簽?鄰居中所有標(biāo)簽為/ 的節(jié)點(diǎn) 構(gòu)造成鄰居集合V,再根據(jù)集合V中節(jié)點(diǎn)的狀態(tài)判斷節(jié)點(diǎn)是否可以更新。若集合V中存在節(jié) 點(diǎn),對(duì)節(jié)點(diǎn)來說可根據(jù)其更新,即可進(jìn)行更新。而節(jié)點(diǎn)是否能更新只跟鄰居集合V中節(jié)點(diǎn) 的狀態(tài)有關(guān),與其他鄰居節(jié)點(diǎn)無關(guān)。如圖5所示,扇形區(qū)域中集合V中的節(jié)點(diǎn)共有3種顏色:黃 色(已更新),紅色(節(jié)點(diǎn)可根據(jù)此節(jié)點(diǎn)更新),綠色(節(jié)點(diǎn)不可根據(jù)此節(jié)點(diǎn)更新)。
[0043] 為了避免相鄰節(jié)點(diǎn)同時(shí)進(jìn)行更新(破壞振蕩的條件2),本文將無向邊初始為單向, 邊的初始指向定為影響力大的節(jié)點(diǎn)指向影響力小的節(jié)點(diǎn)(節(jié)點(diǎn)影響力計(jì)算詳見2.2),對(duì)于 每個(gè)待更新節(jié)點(diǎn)更新后,與其連接的所有邊都變?yōu)闊o向邊。如圖6所示,(I)中節(jié)點(diǎn)(綠色) 指向節(jié)點(diǎn)K紅色),此時(shí)節(jié)點(diǎn)U可以根據(jù)節(jié)點(diǎn)F?行更新,而節(jié)點(diǎn)K不可根據(jù)節(jié)點(diǎn)U更新。節(jié)點(diǎn)U 更新后(變?yōu)辄S色),邊變?yōu)闊o向邊,如(II)所示,此時(shí)節(jié)點(diǎn)雨根據(jù)節(jié)點(diǎn)更新。所以,對(duì)于 每個(gè)節(jié)點(diǎn)狀態(tài)分為兩種:1)全局狀態(tài),更新后為黃色,其所有鄰接邊變?yōu)闊o向,不再受單向 邊限制,即對(duì)于所有節(jié)點(diǎn)來說均可根據(jù)其進(jìn)行更新,無需考慮其相對(duì)狀態(tài);2)相對(duì)狀態(tài),根 據(jù)邊的指向分為綠色和紅色,如節(jié)點(diǎn)u相對(duì)節(jié)點(diǎn)r為綠色,節(jié)點(diǎn)u可以根據(jù)節(jié)點(diǎn)行更新。
[0044] 另外,我們還需清楚地知道,節(jié)點(diǎn)更新是從鄰居標(biāo)簽集合V中選取,并不僅僅局限 于某一個(gè)相鄰節(jié)點(diǎn),對(duì)于集合V只需其中一個(gè)節(jié)點(diǎn)^對(duì)節(jié)點(diǎn)u來說可根據(jù)其更新(節(jié)點(diǎn)u相對(duì) 其為綠色),否則等待集合V中任意一個(gè)節(jié)點(diǎn)更新??偟膩碚f,對(duì)于每個(gè)待更新節(jié)點(diǎn)t/,在更新 前所選擇的鄰居集合存在3種情況,對(duì)應(yīng)兩種選擇,如圖7所示。
[0045] 1)情況I,集合V中所有節(jié)點(diǎn)都未更新且節(jié)點(diǎn)相對(duì)所有節(jié)點(diǎn)為紅色(節(jié)點(diǎn)不可根 據(jù)其更新),這種情況則只能等待其他節(jié)點(diǎn)更新。
[0046] 2)情況II,雖然集合V中節(jié)點(diǎn)u相對(duì)所有節(jié)點(diǎn)為紅色,但是有節(jié)點(diǎn)(黃色)更新,節(jié)點(diǎn) 相對(duì)更新節(jié)點(diǎn)為綠色,所以可以更新,已更新的節(jié)點(diǎn)間傳播不會(huì)出現(xiàn)振蕩問題。
[0047] 3)情況III,集合V中存在節(jié)點(diǎn),節(jié)點(diǎn)相對(duì)其來說為綠色,所以節(jié)點(diǎn)可以更新。 [0048]節(jié)點(diǎn)標(biāo)簽初始化 傳統(tǒng)LPA算法中網(wǎng)絡(luò)節(jié)點(diǎn)的初始標(biāo)簽是隨機(jī)生成的,并沒有考慮節(jié)點(diǎn)特性及其鄰居的 關(guān)系。粗糙的隨機(jī)初始化策略往往會(huì)導(dǎo)致在后續(xù)的標(biāo)簽傳播過程中出現(xiàn)大量零散孤立的小 社區(qū),從而使得一些更有意義的大社區(qū)無法形成。另外,由于節(jié)點(diǎn)標(biāo)簽隨機(jī)初始化策略賦予 每個(gè)節(jié)點(diǎn)一個(gè)唯一的初始標(biāo)簽,這會(huì)形成標(biāo)簽傳播過程中的"逆流"現(xiàn)象,即:很多影響力較 小的節(jié)點(diǎn)在標(biāo)簽傳播過程中會(huì)反過來影響一些影響力較大的節(jié)點(diǎn)。
[0049]為此,本發(fā)明提出一種基于節(jié)點(diǎn)影響力(節(jié)點(diǎn)影響力的計(jì)算方法見公式(1)和(2)) 的標(biāo)簽初始化策略。簡(jiǎn)而言之,就是在對(duì)每個(gè)節(jié)點(diǎn)初始標(biāo)簽時(shí),優(yōu)先選擇影響力大的節(jié)點(diǎn)。 具體的初始化過程可簡(jiǎn)述如下: 1)計(jì)算每個(gè)節(jié)點(diǎn)的影響力,并根據(jù)影響力進(jìn)行排序。
[0050] 2)選擇當(dāng)前最大影響力的節(jié)點(diǎn)進(jìn)行標(biāo)簽賦值,若有并列最大,按照排列順序選擇。
[0051] 3)對(duì)選擇最大的節(jié)點(diǎn)標(biāo)記后,對(duì)其鄰居按照排列順序進(jìn)行標(biāo)記。
[0052] 4)重復(fù)步驟2)直至全部節(jié)點(diǎn)標(biāo)記完畢。
[(
其中j0( u)表示節(jié)點(diǎn)u的影響力,u)表示節(jié)點(diǎn)u的度,M r)是節(jié)點(diǎn)r的鄰居集合。
[0054]標(biāo)簽傳播策略 LPA算法中,當(dāng)節(jié)點(diǎn)存在多個(gè)同等最大數(shù)量的標(biāo)簽時(shí),采用隨機(jī)策略解決沖突。Tibely 等人提出了一個(gè)等效公式即將節(jié)點(diǎn)標(biāo)簽的選擇轉(zhuǎn)換成目標(biāo)函數(shù)最優(yōu)解的選擇(存在多個(gè)最 優(yōu)解時(shí)隨機(jī)選擇其中一個(gè))。對(duì)于每個(gè)節(jié)點(diǎn)更新的目標(biāo)函數(shù)如下:
其中人表示當(dāng)前節(jié)點(diǎn)K的標(biāo)簽,/ i/是節(jié)點(diǎn)U更新的標(biāo)簽,M U)是節(jié)點(diǎn)U鄰居節(jié)點(diǎn)的集合, 4Λ,乃是克羅內(nèi)克函數(shù)。公式的最優(yōu)解即為節(jié)點(diǎn)鄰居節(jié)點(diǎn)中標(biāo)簽數(shù)量最多的標(biāo)簽。 原始LPA算法選擇鄰居標(biāo)簽,采用的是公式(3),計(jì)算鄰居中相同標(biāo)簽的最大個(gè)數(shù),隨機(jī) 從多個(gè)最大值中選擇一個(gè)更新自己的標(biāo)簽。本文結(jié)合初始標(biāo)簽選取中的影響力來選擇最具 影響力的鄰居團(tuán)體,以減少隨機(jī)性,使結(jié)果更加穩(wěn)定。對(duì)于節(jié)點(diǎn)u選擇更新節(jié)點(diǎn)的公式如下:
性能評(píng)測(cè) 為了定量地分析ISLPA算法的性能,我們選擇3個(gè)基準(zhǔn)真實(shí)網(wǎng)絡(luò)數(shù)據(jù)集和3個(gè)LFR網(wǎng)絡(luò)生 成程序數(shù)據(jù)集作為實(shí)驗(yàn)數(shù)據(jù)集。實(shí)驗(yàn)環(huán)境為:CPU為Intel ? Core2 i5-3230M,內(nèi)存4G;0S為 Win7。3個(gè)真實(shí)網(wǎng)絡(luò)數(shù)據(jù)集分別是Zachary ' s karate club空手道倶樂部數(shù)據(jù)集、American College football美國足球隊(duì)網(wǎng)絡(luò)數(shù)據(jù)集和Activities of Dolphin Groups海膝群體活 動(dòng)數(shù)據(jù)集。另外3個(gè)人工網(wǎng)絡(luò)數(shù)據(jù)集由LFR程序生成。LFR在社區(qū)發(fā)現(xiàn)測(cè)試方面應(yīng)用廣泛,網(wǎng) 絡(luò)的節(jié)點(diǎn)數(shù)、平均節(jié)點(diǎn)度、μ等相關(guān)參數(shù)都可以靈活設(shè)置,能夠生成較高質(zhì)量的網(wǎng)絡(luò)測(cè)試數(shù) 據(jù)。其中,混合參數(shù)μ表示網(wǎng)絡(luò)中社區(qū)間的連接數(shù)占所有邊總和的比例即μ越大,生成網(wǎng)絡(luò)的 社區(qū)結(jié)構(gòu)越不明顯。實(shí)驗(yàn)網(wǎng)絡(luò)特征描述見表1。
[0055] 評(píng)價(jià)標(biāo)準(zhǔn) 本實(shí)驗(yàn)采用模塊度辦卩標(biāo)準(zhǔn)化互信息NMI (Normalized Mutual information)兩個(gè)指 標(biāo)對(duì)ISLPA算法的有效性與魯棒性進(jìn)行評(píng)價(jià)。模塊度0是當(dāng)前使用最為廣泛的社區(qū)質(zhì)量指 標(biāo),其值等于網(wǎng)絡(luò)中社區(qū)內(nèi)部邊所占的比例減去另一個(gè)隨機(jī)網(wǎng)絡(luò)中社區(qū)內(nèi)部邊所占的比 例,縣體可形忒化加下,
其中,威示網(wǎng)絡(luò)中的邊數(shù);當(dāng)節(jié)點(diǎn)i與節(jié)點(diǎn)7相連時(shí),尤7等于1,反之為0山表示節(jié)點(diǎn)i的 度數(shù);幻表示節(jié)點(diǎn)』'所屬社區(qū);4幻,幻)為克羅內(nèi)克函數(shù),當(dāng)幻·=幻時(shí),4幻,幻)=1,否則,《幻, &)=〇。網(wǎng)絡(luò)社區(qū)模塊化程度與0是正相關(guān)的,即當(dāng)社區(qū)結(jié)構(gòu)明顯時(shí),訪妾近1;當(dāng)社區(qū)結(jié)構(gòu)不 明顯時(shí),訪妾近O。
[0056] NMI是一種基于信息論理論的社區(qū)質(zhì)量評(píng)價(jià)指標(biāo),它通過計(jì)算已知社區(qū)結(jié)構(gòu)和由 算法得到的社區(qū)結(jié)構(gòu)之間的相似度來實(shí)現(xiàn)網(wǎng)絡(luò)社區(qū)結(jié)構(gòu)質(zhì)量的測(cè)度,其值越大說明算法結(jié) 果社區(qū)與真實(shí)社區(qū)結(jié)構(gòu)相一致的程度越高,具體公式如下:
(6) 其中Pres為算法劃分集合,產(chǎn)^為網(wǎng)絡(luò)真實(shí)劃分集合,和/3為對(duì)應(yīng)劃分社區(qū)個(gè)數(shù),4為 社區(qū)的節(jié)點(diǎn)集合。
[0057]有效性分析 本節(jié)模塊度與標(biāo)準(zhǔn)化互信息兩個(gè)方面來評(píng)價(jià)ISLPA算法的有效性,也即是結(jié)果網(wǎng)絡(luò)社 區(qū)質(zhì)量。具體地,將ISLPA算法與其他3種代表性算法(LPA、LPA-S與LPAm)在6個(gè)數(shù)據(jù)集上進(jìn) 行實(shí)驗(yàn)比較。其中,LPA、LPAm采用異步更新方式,LPA-S采用的是全同步更新方式,本文提出 的ISLPA為半同步更新方式。表2與表3分別給出了四種算法在實(shí)驗(yàn)數(shù)據(jù)集上運(yùn)行50次所得 的0直與匪I值。由表2可以看出,不論在真實(shí)網(wǎng)絡(luò)中,還是在人工網(wǎng)絡(luò)中,ISLPA算法都表現(xiàn) 出較好的收斂性。其中,ISLPA算法在真實(shí)網(wǎng)絡(luò)Karate劃分結(jié)果0直固定為0.3715,已完全接 近實(shí)際劃分。雖然在Football網(wǎng)絡(luò)中劃分結(jié)果要低于原始LPA算法,但是各算法之間差距較 小,主要原因是Football網(wǎng)是由美國足球高校代表隊(duì)組成,隊(duì)與隊(duì)之間的差別較小,即網(wǎng)絡(luò) 結(jié)構(gòu)不是很明顯,而改進(jìn)算法則是通過尋找網(wǎng)絡(luò)結(jié)構(gòu)中的獨(dú)特之處來提升算法的效果,比 如尋找影響力最大、節(jié)點(diǎn)度大的節(jié)點(diǎn)。所以在Football網(wǎng)絡(luò)中改進(jìn)算法無法發(fā)揮其特性。在 其他網(wǎng)絡(luò)中,與另外3種算法對(duì)比略顯優(yōu)勢(shì)。可見,ISLPA算法在社區(qū)結(jié)構(gòu)明顯的網(wǎng)絡(luò)中具有 較好的收斂性。在網(wǎng)絡(luò)規(guī)模較大的人工網(wǎng)絡(luò)中,ISLPA算法相對(duì)于其他算法仍然存在優(yōu)勢(shì), 從0直的方差可以看出算法在隨機(jī)策略上的改進(jìn)達(dá)到了預(yù)期的效果,提高了劃分結(jié)果的穩(wěn) 定性。 從表3測(cè)試網(wǎng)絡(luò)上的NMI值對(duì)比中,可以看出ISLPA算法對(duì)Karate網(wǎng)絡(luò)的劃分已經(jīng)完全
[0058] 接近實(shí)際劃分,對(duì)其他網(wǎng)絡(luò)的劃分也有較好的效果。從同步更新方式的LPA-S與異步更新方 式的LPA、LPAM算法對(duì)比中,我們可以看到在大多數(shù)網(wǎng)絡(luò)中同步更新比異步更新劃分效果 好,同步更新受隨機(jī)選擇的影響較小,穩(wěn)定性要高于異步更新方式的算法。本文提出的 ISLPA算法為了避免振蕩問題,采用半同步更新機(jī)制,并在更新順序上考慮到節(jié)點(diǎn)影響力, 使得影響力高的節(jié)點(diǎn)能優(yōu)先更新。所以,在更新順序上不僅沒有受到隨機(jī)選擇的影響,而且 節(jié)點(diǎn)更新的次序比較有序,能更準(zhǔn)確地發(fā)現(xiàn)社區(qū)結(jié)構(gòu)。在諸如Karate與Dophins之類的社區(qū) 結(jié)構(gòu)模塊性較強(qiáng)的網(wǎng)絡(luò)中,ISLPA算法相對(duì)于其他算法有明顯的優(yōu)勢(shì)。在大型人工網(wǎng)絡(luò)中, ISLPA算法50次NMI均值分別為0.9210、0.8887、0.8113遠(yuǎn)遠(yuǎn)大于其他算法,幾乎接近于實(shí)際 網(wǎng)絡(luò)劃分。總的來說,與其他算法對(duì)比,不僅從均值意義上看,ISLPA算法展現(xiàn)出明顯的優(yōu) 勢(shì)。而且從方差意義上看,ISLPA算法的最佳結(jié)果社區(qū)結(jié)構(gòu)的AMi的分布更加均勻。因而,我 們的方法具有更好的有效性。
[Ouoyj
魯棒性分析 為了評(píng)價(jià)ISLPA算法的魯棒性,我們通過調(diào)節(jié)混合參數(shù)μ(混合參數(shù)μ越小社區(qū)結(jié)構(gòu)越明 顯)來構(gòu)造社區(qū)模塊度各異的不同人工網(wǎng)絡(luò)。表4為4種LPA算法在不同網(wǎng)絡(luò)中的劃分結(jié)果 (繼I值)。從表4可以看出,當(dāng)網(wǎng)絡(luò)結(jié)構(gòu)明顯(μ〈0.1)的時(shí),ISLPA算法的劃分結(jié)果更接近于實(shí) 際劃分,ΛΜ?值高達(dá)0.9以上,與其他算法相比有明顯的優(yōu)勢(shì)。隨著混合參數(shù)μ的增大,社區(qū)結(jié) 構(gòu)變得越來越模糊,社區(qū)發(fā)現(xiàn)的難度也逐步增大。各算法的劃分效果都隨著混合參數(shù)μ的增 大而降低,但I(xiàn)SLPA算法相對(duì)于其他算法依然存在優(yōu)勢(shì)。由此不難得出這樣的結(jié)論:在社區(qū) 結(jié)構(gòu)明顯的網(wǎng)絡(luò)中,節(jié)點(diǎn)之間的差異很大,根據(jù)節(jié)點(diǎn)的影響力等特性能更準(zhǔn)確地發(fā)現(xiàn)網(wǎng)絡(luò) 的社區(qū)結(jié)構(gòu)。優(yōu)先更新影響力大的節(jié)點(diǎn),不僅能避免"逆流"現(xiàn)象,還使得節(jié)點(diǎn)更新的順序更 加有序,進(jìn)而使得算法產(chǎn)生的結(jié)果更加穩(wěn)定。
[0060] 以上是本發(fā)明的較佳實(shí)施例,凡依本發(fā)明技術(shù)方案所作的改變,所產(chǎn)生的功能作用未 超出本發(fā)明技術(shù)方案的范圍時(shí),均屬于本發(fā)明的保護(hù)范圍。
【主權(quán)項(xiàng)】
1. 一種基于標(biāo)簽影響力的半同步社區(qū)發(fā)現(xiàn)方法,其特征在于,包括W下步驟: 步驟S1:對(duì)于給定社會(huì)網(wǎng)絡(luò),計(jì)算每個(gè)網(wǎng)絡(luò)節(jié)點(diǎn)的影響力,并根據(jù)影響力大小對(duì)網(wǎng)絡(luò)節(jié) 點(diǎn)降序排序; 步驟S2:依據(jù)影響力大小初始化網(wǎng)絡(luò)節(jié)點(diǎn)標(biāo)簽; 步驟S3:利用半同步標(biāo)簽傳播算法ISLPA對(duì)網(wǎng)絡(luò)節(jié)點(diǎn)標(biāo)簽進(jìn)行迭代更新; 步驟S4:根據(jù)網(wǎng)絡(luò)節(jié)點(diǎn)標(biāo)簽進(jìn)行網(wǎng)絡(luò)節(jié)點(diǎn)的社區(qū)劃分并輸出,即對(duì)于所有網(wǎng)絡(luò)節(jié)點(diǎn),通 過將具有相同標(biāo)簽者歸屬到同一社區(qū)的方法構(gòu)造網(wǎng)絡(luò)的社區(qū)結(jié)構(gòu)。2. 根據(jù)權(quán)利要求1所述的一種基于標(biāo)簽影響力的半同步社區(qū)發(fā)現(xiàn)方法,其特征在于,所 述步驟S1中,對(duì)于網(wǎng)絡(luò)節(jié)點(diǎn)U,其影響力為:其中,U)為節(jié)點(diǎn)U的度,Μ U)是節(jié)點(diǎn)U的鄰居集合; 在所有節(jié)點(diǎn)的影響力計(jì)算完畢后,對(duì)節(jié)點(diǎn)進(jìn)行依影響力的降序排序。3. 根據(jù)權(quán)利要求1所述的一種基于標(biāo)簽影響力的半同步社區(qū)發(fā)現(xiàn)方法,其特征在于,所 述步驟S2中,重復(fù)如下操作直至全部節(jié)點(diǎn)標(biāo)記完畢:選擇當(dāng)前最大影響力的節(jié)點(diǎn)進(jìn)行標(biāo)簽 賦值,若有多個(gè)并列最大影響力的節(jié)點(diǎn),則按照排列順序選擇,在所述最大影響力的節(jié)點(diǎn)標(biāo) 簽賦值完畢后,對(duì)其鄰居節(jié)點(diǎn)按照排列順序進(jìn)行標(biāo)記。4. 根據(jù)權(quán)利要求1所述的一種基于標(biāo)簽影響力的半同步社區(qū)發(fā)現(xiàn)方法,其特征在于,所 述步驟S3中,利用半同步標(biāo)簽傳播算法ISLPA對(duì)網(wǎng)絡(luò)節(jié)點(diǎn)標(biāo)簽進(jìn)行迭代更新,具體包括W下 步驟: 步驟S31:選擇具有最大影響力的節(jié)點(diǎn)作為待更新節(jié)點(diǎn)U; 步驟S32:對(duì)于待更新節(jié)點(diǎn)U,選擇標(biāo)簽其中尸U 是節(jié)點(diǎn)U待更新的標(biāo)簽,《U)是節(jié)點(diǎn)U鄰居節(jié)點(diǎn)的集合,《Λ,J)是克羅內(nèi)克函數(shù),U的所有 標(biāo)簽為尸。的鄰居節(jié)點(diǎn)構(gòu)成集合V; 步驟533:將節(jié)點(diǎn)《與集合¥中的節(jié)點(diǎn)進(jìn)行狀態(tài)劃分,即對(duì)于集合¥中的任意節(jié)點(diǎn)^^將其 歸屬為如下巧巾狀態(tài)中的一種:已更新的第一狀態(tài)、節(jié)點(diǎn)U可根據(jù)節(jié)點(diǎn)新的第二狀態(tài)和節(jié) 點(diǎn)U不可根據(jù)節(jié)點(diǎn)新的第Ξ狀態(tài); 步驟S34:根據(jù)如下情況判斷待更新節(jié)點(diǎn)U是否可W更新:1)集合V中所有節(jié)點(diǎn)都未更新 且節(jié)點(diǎn)袖對(duì)集合V中所有節(jié)點(diǎn)為第二狀態(tài),則節(jié)點(diǎn)U只能等待其他節(jié)點(diǎn)更新;2)雖然集合V 中節(jié)點(diǎn)過目對(duì)集合V中所有節(jié)點(diǎn)為第二狀態(tài),但是集合V中具有第一狀態(tài)的節(jié)點(diǎn),則節(jié)點(diǎn)U可 W更新;3)節(jié)點(diǎn)過目對(duì)集合V中所有節(jié)點(diǎn)為第Ξ狀態(tài),節(jié)點(diǎn)U可W更新; 步驟S35:若節(jié)點(diǎn)U滿足更新條件則更新其標(biāo)簽,否則等待條件滿足; 步驟S36:迭代執(zhí)行步驟S3 ^S35,直至模塊度收斂條件滿足。
【文檔編號(hào)】G06F17/30GK105938608SQ201610225804
【公開日】2016年9月14日
【申請(qǐng)日】2016年4月12日
【發(fā)明人】黃發(fā)良, 何萬莉, 李璇, 元昌安, 汪焱, 潘傳迪
【申請(qǐng)人】福建師范大學(xué)