黃泳航 湯庸 李春英 湯志康 劉繼偉
摘要:針對(duì)學(xué)術(shù)社交網(wǎng)絡(luò)獨(dú)有的社交性,構(gòu)建了基于社區(qū)劃分的學(xué)術(shù)論文推薦模型。模型選擇社區(qū)復(fù)雜好友關(guān)系網(wǎng)絡(luò)圖中最大連通分量作為數(shù)據(jù)處理邏輯單元,在此基礎(chǔ)上進(jìn)行核心關(guān)系網(wǎng)劃分,并采用非參數(shù)控制的方式,在所建立的核心關(guān)系網(wǎng)內(nèi)建立標(biāo)簽,在學(xué)術(shù)社交網(wǎng)絡(luò)中通過(guò)標(biāo)簽傳播進(jìn)行社區(qū)劃分,根據(jù)社區(qū)劃分結(jié)果在社區(qū)內(nèi)部的用戶之間推薦學(xué)術(shù)論文。該社區(qū)劃分算法與經(jīng)典社區(qū)劃分算法在人工網(wǎng)絡(luò)上進(jìn)行仿真實(shí)驗(yàn),結(jié)果表明該算法在不同特征的人工網(wǎng)絡(luò)上皆能取得良好的社區(qū)發(fā)現(xiàn)質(zhì)量。
關(guān)鍵詞:核心關(guān)系網(wǎng);社區(qū)劃分;標(biāo)簽傳播;自適應(yīng)閾值;學(xué)術(shù)論文推薦
中圖分類號(hào):TP391.3 文獻(xiàn)標(biāo)志碼:A
Abstract:An academic paper recommendation model based on community partition was proposed according to sociability in social network. The model regarded the largest connected component in complex network as the logic unit in data processing, and divided up the largest connected component into nonintersect kernel subnetwork. The labels would be established according to kernel subnetwork by nonparameter control mode. Communities were divided in scholar social network through label propagation, and academic papers were recommended among the users in the communities by the results of the community partition. The proposed community partition method was compared with the classic community partition method in the experiments on artificial network. The experimental results show that the proposed method can achieve good community partition qualities on different characteristic artificial networks.
Key words:kernel subnetwork; community partition; label propagation; selfadaptive threshold; academic paper recommendation
0 引言
近幾年,社交網(wǎng)站發(fā)展迅速,已滲入主流文化以及人們的日常生活中,備受網(wǎng)民關(guān)注[1]。隨著學(xué)術(shù)社交網(wǎng)絡(luò)的興起,學(xué)者在學(xué)術(shù)社交網(wǎng)絡(luò)中發(fā)掘論文的需求激增。面對(duì)學(xué)術(shù)社交網(wǎng)絡(luò)中海量的論文,學(xué)者難以檢索高質(zhì)量或獲取自己感興趣的論文;同時(shí),優(yōu)秀的推薦算法不僅可以為學(xué)者尋找其感興趣的論文,而且也可以為學(xué)術(shù)社交網(wǎng)絡(luò)謀取豐厚的利潤(rùn)。因此,發(fā)掘用戶感興趣的論文成為一個(gè)新的研究方向。
目前,關(guān)于社交網(wǎng)絡(luò)的推薦算法,國(guó)內(nèi)外的研究主要分為兩個(gè)方面:一個(gè)方面是以現(xiàn)有的信息為基礎(chǔ),通過(guò)語(yǔ)義分析進(jìn)行發(fā)掘建立推薦模型。例如,文獻(xiàn)[2]提出的信息庫(kù)學(xué)習(xí)自動(dòng)機(jī)的推薦模型,該模型是利用連續(xù)型學(xué)習(xí)自動(dòng)機(jī)在隨機(jī)和高噪聲環(huán)境中優(yōu)化參數(shù)的卓越性能,代替原有的梯度下降算法進(jìn)行大型稀疏矩陣的奇異值分解計(jì)算,使得重構(gòu)矩陣與原矩陣之間的誤差進(jìn)一步降低,提高了后續(xù)預(yù)測(cè)算法的精確度。文獻(xiàn)[3]對(duì)學(xué)生能力評(píng)估過(guò)程進(jìn)行主題建模,采用局部社區(qū)發(fā)現(xiàn)算法對(duì)學(xué)生各方面能力進(jìn)行合理的等級(jí)分類等。與此同時(shí),以用戶的使用習(xí)慣為基礎(chǔ),根據(jù)用戶的登錄信息等推薦模式也可以歸為此類。例如,文獻(xiàn)[4]通過(guò)考慮用戶對(duì)服務(wù)的興趣剖面以及服務(wù)對(duì)標(biāo)簽的滿足度剖面,所提出的基于用戶興趣和服務(wù)滿足度的服務(wù)搜索和推薦算法。文獻(xiàn)[5]以用戶所發(fā)表的內(nèi)容建立學(xué)習(xí)自動(dòng)機(jī)和訓(xùn)練樣本,在訓(xùn)練樣本的基礎(chǔ)上進(jìn)行推薦。文獻(xiàn)[6]則以多用戶所組成的群體為單位,根據(jù)群體所發(fā)表的信息與發(fā)表的地點(diǎn)建立的推薦模型等等。然而,這類算法建立于用戶所填寫的信息上,對(duì)一些缺乏信息的用戶欠缺考慮。對(duì)于這部分在社交網(wǎng)絡(luò)的惰性群體,認(rèn)為對(duì)最后的好友推薦結(jié)果影響力不大,往往采取直接剔除的方法,使得算法數(shù)據(jù)集的準(zhǔn)確性受到一定的影響,只能在具有大量活躍用戶的社區(qū)進(jìn)行推薦。另一方面是先在社交復(fù)雜網(wǎng)絡(luò)中固有的拓?fù)潢P(guān)系圖之上進(jìn)行社區(qū)發(fā)現(xiàn),劃分社區(qū)之后再發(fā)掘其中潛在關(guān)系進(jìn)行推薦。此方面的社區(qū)發(fā)現(xiàn)方式多種多樣。例如,文獻(xiàn)[7]利用拓?fù)鋱D中的完全子圖建立標(biāo)簽,根據(jù)標(biāo)簽在圖中的節(jié)點(diǎn)傳播結(jié)果劃分社區(qū)。文獻(xiàn)[8]則以拓?fù)鋱D中的三角形拓?fù)浣Y(jié)構(gòu)為網(wǎng)絡(luò)社區(qū)分層嵌套模式中的基本社區(qū)單元,經(jīng)過(guò)粗化迭代,令網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)圖中的高階多邊形逐步向低階多邊形演化,最終演化成社區(qū)。與此成為對(duì)比,文獻(xiàn)[9]則首先為每個(gè)節(jié)點(diǎn)賦予一個(gè)獨(dú)立的標(biāo)簽,然后根據(jù)節(jié)點(diǎn)的影響力大小進(jìn)行排序,在標(biāo)簽傳播的過(guò)程中,綜合網(wǎng)絡(luò)的結(jié)構(gòu)傳播特性和節(jié)點(diǎn)的屬性特征共同計(jì)算標(biāo)簽傳播的概率,同時(shí)利用節(jié)點(diǎn)的歷史標(biāo)簽記錄修正標(biāo)簽更新結(jié)果,最后將傳播后具有相同標(biāo)簽的節(jié)點(diǎn)劃分為同一社區(qū)。也有部分學(xué)者利用物理分析的方法進(jìn)行社區(qū)發(fā)現(xiàn)。例如,文獻(xiàn)[10]把拓?fù)潢P(guān)系圖上的節(jié)點(diǎn)視為粒子,在之間建立引力作用,通過(guò)彼此的引力關(guān)系劃分社區(qū);文獻(xiàn)[11]則是對(duì)邊建立多層光譜關(guān)系,通過(guò)一系列的數(shù)學(xué)分析求出社區(qū)。
然而,由于學(xué)術(shù)社交網(wǎng)絡(luò)存在大量的學(xué)術(shù)論文可供分享,以上算法忽視單一學(xué)者與分享論文形成一對(duì)多的關(guān)系,導(dǎo)致最終學(xué)術(shù)論文推薦并不理想。因此,部分學(xué)者在此基礎(chǔ)上,又針對(duì)學(xué)術(shù)論文推薦的特殊性提出不同的推薦模型:文獻(xiàn)[12]介紹了一種根據(jù)論文摘要建立數(shù)據(jù)庫(kù)索引,通過(guò)對(duì)索引進(jìn)行語(yǔ)義分析得出推薦結(jié)果的方法;文獻(xiàn)[13]則是基于論文的內(nèi)容與引用關(guān)系進(jìn)行推薦;文獻(xiàn)[14]通過(guò)提取論文的特征,建立集成的科技論文推薦框架,為科研社交網(wǎng)絡(luò)中的研究者提供個(gè)性化論文推薦服務(wù);文獻(xiàn)[15]則根據(jù)文檔在主題上的分布概率,考慮主題之間的關(guān)聯(lián),發(fā)掘文檔間的潛在關(guān)系建立垂直模型進(jìn)行推薦;文獻(xiàn)[16]則對(duì)PageRank算法和內(nèi)容過(guò)濾進(jìn)行改進(jìn),提出了一種面向論文投稿推薦的垂直搜索引擎的主要模塊設(shè)計(jì)及實(shí)現(xiàn)方法。雖然上述的方法對(duì)于學(xué)術(shù)論文的推薦有一定的貢獻(xiàn),但是在推薦的過(guò)程中忽視了學(xué)術(shù)社交網(wǎng)絡(luò)中的好友關(guān)系,造成一定程度上的精度丟失,從這些算法的推薦結(jié)果來(lái)看,為用戶所推薦論文與該用戶缺乏關(guān)聯(lián)度,推薦結(jié)果不是很理想。
針對(duì)學(xué)術(shù)社交網(wǎng)絡(luò)獨(dú)有的社交性,本文擬構(gòu)建一個(gè)基于社區(qū)劃分的學(xué)術(shù)論文推薦模型。該模型以學(xué)術(shù)社交網(wǎng)絡(luò)的好友關(guān)系拓?fù)鋱D為基礎(chǔ),在其中發(fā)現(xiàn)核心關(guān)系子網(wǎng)。以核心關(guān)系網(wǎng)中節(jié)點(diǎn)的標(biāo)簽和權(quán)重為基礎(chǔ),更新整個(gè)學(xué)術(shù)社交網(wǎng)絡(luò)中節(jié)點(diǎn)標(biāo)簽及權(quán)重。標(biāo)簽傳播過(guò)程中采用自適應(yīng)閾值方式剔除無(wú)意義標(biāo)簽進(jìn)行社區(qū)發(fā)現(xiàn)。在學(xué)術(shù)社交網(wǎng)絡(luò)中建立社區(qū),在社區(qū)內(nèi)好友間共享文獻(xiàn)達(dá)到論文推薦的目的。
1 自適應(yīng)標(biāo)簽傳播算法
本模型著重考慮學(xué)術(shù)社區(qū)中的社交關(guān)系,在推薦學(xué)術(shù)論文之前根據(jù)學(xué)術(shù)社交網(wǎng)絡(luò)中的好友拓?fù)潢P(guān)系圖發(fā)掘其中的社區(qū)。因此,本文首先提出基于核心關(guān)系網(wǎng)的社區(qū)劃分算法——自適應(yīng)標(biāo)簽傳播算法(Adaptive Label Propagation Algorithm, ALPA)。該社區(qū)劃分算法在學(xué)術(shù)社交網(wǎng)絡(luò)拓?fù)鋱D中發(fā)掘核心關(guān)系網(wǎng)并對(duì)核心關(guān)系網(wǎng)中的節(jié)點(diǎn)賦予標(biāo)簽和權(quán)重,然后采用同步標(biāo)簽傳播的方式計(jì)算全部節(jié)點(diǎn)的標(biāo)簽和權(quán)重,在算法的迭代過(guò)程中利用自適應(yīng)閾值剔除不合理的標(biāo)簽,最終擁有同一個(gè)標(biāo)簽的節(jié)點(diǎn)屬于同一個(gè)社區(qū)。
1.1 基本定義
定義1 完全圖。學(xué)術(shù)社交網(wǎng)絡(luò)的好友關(guān)系拓?fù)鋱D由圖G={V, E}表示,其中V表示用戶的集合,E表示好友關(guān)系的集合。若圖G存在子集Gs,且Gs中任意兩點(diǎn)都相鄰,則稱此圖為完全圖。
定義2 核心關(guān)系網(wǎng)。在圖G={V, E}中,以V中未賦予標(biāo)簽的度數(shù)最大的節(jié)點(diǎn)vi及其鄰接節(jié)點(diǎn)中未賦予標(biāo)簽的度數(shù)最大的節(jié)點(diǎn)vj為初始邊尋找完全圖Gs。若GsG,且不存在任何完全圖GtG,使得GsGt,則稱Gs為核心關(guān)系網(wǎng)。
1.2 算法初始化
因?yàn)樵撍惴ㄊ歉鶕?jù)核心關(guān)系網(wǎng)建立社區(qū),所以每一個(gè)社區(qū)至少包含一個(gè)核心關(guān)系網(wǎng)。據(jù)此,算法初始化的關(guān)鍵是在G中尋找核心關(guān)系網(wǎng)。具體過(guò)程如下所示。
1)對(duì)V中所有節(jié)點(diǎn)賦予label=0;
2)取V中l(wèi)abel=0的節(jié)點(diǎn),按照定義2尋找核心關(guān)系網(wǎng)。如果同時(shí)存在多個(gè)滿足label=0且度數(shù)最大的點(diǎn),則隨機(jī)選取一個(gè);
3)label=label+1;
4)將有序?qū)Γ╨abel,1)賦予給核心關(guān)系網(wǎng)節(jié)點(diǎn)對(duì)應(yīng)的標(biāo)簽集,結(jié)果為{(label,1)},其中l(wèi)abel為節(jié)點(diǎn)的標(biāo)簽,1為該標(biāo)簽對(duì)應(yīng)的權(quán)重;
5)重復(fù)2)~4),直到在G={V, E}中不存在核心關(guān)系網(wǎng),過(guò)程停止。
1.3 標(biāo)簽傳播
在核心關(guān)系網(wǎng)建立之后,利用自適應(yīng)標(biāo)簽傳播算法計(jì)算節(jié)點(diǎn)的標(biāo)簽和權(quán)重,達(dá)到極大限度地減少冗余標(biāo)簽,提高模型的穩(wěn)定性的目的。采用穩(wěn)定的同步標(biāo)簽傳播方式,根據(jù)復(fù)雜網(wǎng)絡(luò)小世界原則,節(jié)點(diǎn)在算法的多次迭代過(guò)程后一定會(huì)獲得標(biāo)簽。標(biāo)簽權(quán)重的大小與節(jié)點(diǎn)在多個(gè)標(biāo)簽中的度數(shù)分布有關(guān)。為了避免標(biāo)簽被過(guò)度傳播,一些權(quán)重較小的標(biāo)簽在算法迭代過(guò)程中不斷被剔除。具體標(biāo)簽更新規(guī)則如下所示。
1.4 算法復(fù)雜度分析
設(shè)復(fù)雜網(wǎng)絡(luò)圖G有n個(gè)節(jié)點(diǎn)。初始化的時(shí)候,對(duì)點(diǎn)集V中所有的節(jié)點(diǎn)賦予label=0,時(shí)間復(fù)雜度為O(n)。在圖中建立核心關(guān)系網(wǎng),由于要取label=0的度數(shù)最大的節(jié)點(diǎn)v,先對(duì)V中的所有節(jié)點(diǎn)按度數(shù)進(jìn)行排序,將消耗O(n2)的時(shí)間復(fù)雜度。算法初始化時(shí),需要考察每一個(gè)節(jié)點(diǎn)v的鄰接節(jié)點(diǎn)以建立核心關(guān)系網(wǎng),需要O(n log n)的時(shí)間復(fù)雜度。最終對(duì)核心關(guān)系網(wǎng)中的點(diǎn)賦予(label,1)的權(quán)重,考慮到圖的節(jié)點(diǎn)有可能都被劃入核心關(guān)系網(wǎng)中,故將達(dá)到O(n)的時(shí)間復(fù)雜度。因此,建立核心關(guān)系網(wǎng)的時(shí)間復(fù)雜度為最高階O(n2)。在標(biāo)簽傳播階段,每一個(gè)節(jié)點(diǎn)v的標(biāo)簽更新僅在其鄰接矩陣中進(jìn)行,此過(guò)程需要的時(shí)間復(fù)雜度為O(n log n)。最后刪除重疊社區(qū)的子社區(qū),時(shí)間復(fù)雜度同樣為O(n log n)。綜上,社區(qū)發(fā)現(xiàn)算法的時(shí)間復(fù)雜度為O(n)+O(n2)+O(n log n),近似為平方階O(n2)。
2 實(shí)驗(yàn)分析
2.1 社區(qū)劃分性能分析與評(píng)估
本文將設(shè)計(jì)實(shí)驗(yàn)對(duì)算法社區(qū)劃分性能進(jìn)行分析與評(píng)估。實(shí)驗(yàn)將采用Benchmark Graphs (BG)圖集作為人工網(wǎng)絡(luò)數(shù)據(jù)集。BG圖集是利用特定參數(shù)產(chǎn)生的、社區(qū)規(guī)模不均一分布的復(fù)雜網(wǎng)絡(luò),其是在社區(qū)發(fā)現(xiàn)算法缺乏統(tǒng)一評(píng)價(jià)標(biāo)準(zhǔn)情況下的一種用于直接反應(yīng)社區(qū)發(fā)現(xiàn)算法優(yōu)劣的人工網(wǎng)絡(luò)[17]。BG圖集將產(chǎn)生一個(gè)固有的社區(qū)劃分結(jié)果與其生成的人工網(wǎng)絡(luò)相匹配。如果一個(gè)社區(qū)劃分算法在BG圖集產(chǎn)生的人工網(wǎng)絡(luò)上劃分結(jié)果,與BG圖集固有的社區(qū)劃分結(jié)果越為吻合,則說(shuō)明該社區(qū)劃分算法越為精準(zhǔn)。
本文設(shè)置的BG圖集人工網(wǎng)絡(luò)具體參數(shù)如表1所示。n是網(wǎng)絡(luò)的節(jié)點(diǎn)數(shù),k為節(jié)點(diǎn)的平均度數(shù),kmax為節(jié)點(diǎn)的最大度數(shù),cmax是一個(gè)社區(qū)的最大節(jié)點(diǎn)數(shù),cmin為一個(gè)社區(qū)的最小節(jié)點(diǎn)數(shù)?;旌蠀?shù)μ決定社區(qū)結(jié)構(gòu)明顯程度,其取值范圍是[0,1]。取值越大,生成的人工網(wǎng)絡(luò)社區(qū)結(jié)構(gòu)越不明顯。當(dāng)取值為0時(shí),整個(gè)網(wǎng)絡(luò)是一個(gè)社區(qū);當(dāng)取值為1時(shí),則是一個(gè)隨機(jī)網(wǎng)絡(luò)。如圖4所示的,2個(gè)對(duì)應(yīng)μ值分別為0.1和0.8的人工網(wǎng)絡(luò),從中可以非常直觀地看出,μ值較小時(shí),BG圖集產(chǎn)生的人工網(wǎng)絡(luò)社區(qū)結(jié)構(gòu)明顯;而當(dāng)μ值較大時(shí),人工網(wǎng)絡(luò)的社區(qū)結(jié)構(gòu)則變得模糊。隨著設(shè)置的μ值增大,社區(qū)劃分算法越難以在此類型的人工網(wǎng)絡(luò)上實(shí)現(xiàn)社區(qū)劃分,劃分結(jié)果越難以與BG圖集固有的社區(qū)劃分結(jié)果吻合。
實(shí)驗(yàn)將本文算法與標(biāo)簽傳播算法(Label Propagation Algorithm, LPA)[19]、 COPRA算法[20]、CFinder算法[21]等經(jīng)典社區(qū)劃分算法進(jìn)行對(duì)比,對(duì)本文算法的社區(qū)劃分性能進(jìn)行評(píng)估。在實(shí)驗(yàn)運(yùn)行之前,由于COPRA算法在提前預(yù)測(cè)重疊社區(qū)數(shù)x的值才能執(zhí)行,考慮到設(shè)置的BG圖集重疊社區(qū)數(shù)為4,所以將COPRA算法的x分別預(yù)設(shè)為x=4,以最適狀態(tài)執(zhí)行,同時(shí)設(shè)置x=5作為此算法不能在最適狀態(tài)運(yùn)行時(shí)的對(duì)照組。
在上述數(shù)據(jù)集上分別運(yùn)行ALPA、COPRA算法(x=4)和COPRA算法(x=5)、LPA、CFinder算法各10次,使用式(1)計(jì)算NMI值,執(zhí)行多次取平均值,用于消除各算法在標(biāo)簽傳播時(shí)不穩(wěn)定所造成的誤差。各運(yùn)行10次取平均值作最終的結(jié)果,考慮執(zhí)行結(jié)果與BG圖集固有的社區(qū)劃分結(jié)果的吻合程度,從而評(píng)測(cè)各個(gè)算法的社區(qū)劃分性能。各個(gè)數(shù)據(jù)集上的實(shí)驗(yàn)結(jié)果如圖5所示。
當(dāng)μ≥0.3時(shí),LPA無(wú)法發(fā)現(xiàn)社區(qū)結(jié)構(gòu);同時(shí)當(dāng)μ≥0.6時(shí),COPRA算法無(wú)法發(fā)現(xiàn)社區(qū)結(jié)構(gòu)。而本文所提出的ALPA無(wú)論社區(qū)結(jié)構(gòu)是否明顯,皆能保持一個(gè)良好的社區(qū)發(fā)現(xiàn)質(zhì)量,雖然與此同時(shí)表現(xiàn)較好的CFinder算法也能夠在各個(gè)μ值上的數(shù)據(jù)集上發(fā)現(xiàn)社區(qū),但是社區(qū)發(fā)現(xiàn)性能隨著μ值的加大而不如ALPA,并且在各個(gè)數(shù)據(jù)集中出現(xiàn)不穩(wěn)定的現(xiàn)象。圖5(c)和(d)顯示的是在規(guī)模較小的人工網(wǎng)絡(luò)上的社區(qū)發(fā)現(xiàn)質(zhì)量。隨著社區(qū)結(jié)構(gòu)變得不明顯,LPA、COPRA算法的性能不斷下降,CFinder算法的性能在不穩(wěn)定的同時(shí),由始至終未能達(dá)到ALPA的高性能, ALPA則一直保持著較好的社區(qū)發(fā)現(xiàn)質(zhì)量。無(wú)論社區(qū)結(jié)構(gòu)如何,ALPA則仍然保持著良好的態(tài)勢(shì),能夠穩(wěn)定、良好地劃分社區(qū);同時(shí)ALPA無(wú)須像COPRA算法預(yù)設(shè)置復(fù)雜網(wǎng)絡(luò)可能重疊社區(qū)數(shù)x,由于具有自適應(yīng)的特點(diǎn)外,所以無(wú)論待發(fā)現(xiàn)復(fù)雜網(wǎng)絡(luò)社區(qū)規(guī)模大小,社區(qū)結(jié)構(gòu)是否模糊,皆能很好地發(fā)現(xiàn)社區(qū)。
2.2 推薦模型的應(yīng)用
通過(guò)上述的社區(qū)劃分性能分析與評(píng)估對(duì)比得知,ALPA具有良好的社區(qū)發(fā)現(xiàn)性能。因此可以將ALPA應(yīng)用于自主開發(fā)的面向科研工作者的社交網(wǎng)絡(luò)服務(wù)平臺(tái)——學(xué)者網(wǎng)(http://www.scholat.com),為用戶發(fā)掘更多潛在學(xué)術(shù)論文。利用ALPA在學(xué)者網(wǎng)內(nèi)的好友拓?fù)潢P(guān)系圖上劃分出社區(qū)結(jié)構(gòu),對(duì)同一社區(qū)中的用戶分享的論文以點(diǎn)擊率進(jìn)行倒序排序,并選擇點(diǎn)擊率前10位的論文推送給社區(qū)內(nèi)的每位學(xué)者。
本文在學(xué)者網(wǎng)用戶數(shù)據(jù)中選取11000條好友關(guān)系數(shù)據(jù),消除噪聲之后共10920條數(shù)據(jù)進(jìn)行實(shí)驗(yàn)。如圖6(a)所示,在應(yīng)用本算法之前,此10920條數(shù)據(jù)好友關(guān)系所構(gòu)成的是一個(gè)未劃分社區(qū)的好友關(guān)系復(fù)雜網(wǎng)絡(luò)。在該復(fù)雜網(wǎng)絡(luò)中,應(yīng)用ALPA經(jīng)歷5次迭代,如圖6(b)所示,最終劃分出181個(gè)極大團(tuán),108個(gè)社區(qū),對(duì)各個(gè)社區(qū)中的用戶,推薦該社區(qū)內(nèi)所有用戶所發(fā)表的論文。
通過(guò)使用本文的潛在好友推薦方法,學(xué)者網(wǎng)已為其注冊(cè)用戶提供了有效的潛在學(xué)術(shù)論文推薦服務(wù),如圖7所示。這是本文算法為學(xué)者網(wǎng)中一位屬于社區(qū)第1、2、3、7、28、56社區(qū)用戶所推薦的學(xué)術(shù)論文的效果圖,所推薦的學(xué)術(shù)論文皆是該用戶的好友所分享的,該用戶與其大多數(shù)好友之間存在共同興趣與研究領(lǐng)域,必然會(huì)樂(lè)于接受推薦結(jié)果,如果該用戶需要瀏覽更多推薦結(jié)果,可以點(diǎn)擊下方的按鈕,加載更多的論文推薦結(jié)果。
3 結(jié)語(yǔ)
本文設(shè)計(jì)了一種基于社區(qū)劃分的學(xué)術(shù)論文推薦模型。首先對(duì)算法進(jìn)行初始化,獲得復(fù)雜網(wǎng)絡(luò)中的全部核心關(guān)系網(wǎng),再根據(jù)核心關(guān)系網(wǎng)中節(jié)點(diǎn)的標(biāo)簽和權(quán)重,采用同步標(biāo)簽傳播方式更新網(wǎng)絡(luò)中節(jié)點(diǎn)的標(biāo)簽和權(quán)重,最終將網(wǎng)絡(luò)劃分為若干個(gè)社區(qū),并對(duì)社區(qū)內(nèi)的用戶推薦學(xué)術(shù)論文。ALPA采用自適應(yīng)閾值的處理方式剔除無(wú)意義的標(biāo)簽,避免了預(yù)先輸入?yún)?shù)對(duì)未知復(fù)雜網(wǎng)絡(luò)的局限性,因此其更能夠自適應(yīng)于真實(shí)的社交網(wǎng)絡(luò)。隨著社交網(wǎng)絡(luò)的蓬勃發(fā)展,社交網(wǎng)絡(luò)中用戶之間的關(guān)系也更加錯(cuò)綜復(fù)雜,規(guī)模也在迅速增大。在此背景下,如何提高推薦算法的時(shí)間復(fù)雜度是一個(gè)可以繼續(xù)研究的方向。另一方面,可以對(duì)該算法進(jìn)行并行化處理,使其能夠應(yīng)對(duì)復(fù)雜網(wǎng)絡(luò)大數(shù)據(jù)所帶來(lái)的挑戰(zhàn)。
參考文獻(xiàn):
[1]高嫻子,蔣建國(guó).近年來(lái)我國(guó)社交網(wǎng)絡(luò)發(fā)展研究[D].廣州:暨南大學(xué),2011:1-61.(GAO X Z, JIANG J G. Research on the development of Chinas social network[D]. Guangzhou: Jinan University, 2011:1-61.)
[2]荊羽純,葛昊,江文,等.一種基于學(xué)習(xí)自動(dòng)機(jī)的推薦算法改進(jìn)[J].計(jì)算機(jī)應(yīng)用研究,2016,34(1):32-34.(JING Y C, GE H, JIANG W, et al. Learning automatabased improvement for recommendation algorithm[J]. Application Research of Computers, 2016,34(1):32-34.)
[3]石博,何楚,卓桐,等.慕課教學(xué)中基于局部社區(qū)發(fā)現(xiàn)的主題交互模型[J].計(jì)算機(jī)應(yīng)用研究,2014,32(6):1724-1727.(SHI B, HE C, ZHUO T, et al. Topic interaction model based on local community detection for MOOC teaching process[J]. Application Research of Computers, 2014,32(6):1724-1727.)
[4]鄧華平,趙海燕,陳慶奎, 等.基于用戶興趣和服務(wù)滿足度的服務(wù)搜索和推薦算法[J].計(jì)算機(jī)應(yīng)用研究,2014,32(9):2613-2617.(DENG H P, ZHAO H Y, CHEN Q K, et al. Service search and recommendation algorithm based on users interest and service satisfaction[J]. Application Research of Computers, 2014, 32(9):2613-2617.)
[5]HANG Y. Incorporating phraselevel sentiment analysis on textual reviews for personalized recommendation[C]// WSDM 2015: Proceedings of the 8th ACM International Conference on Web Search and Data Mining.New York:ACM, 2015: 435-440.
[6]YUAN Q, CONG G, LIN C. COM: a generative model for group recommendation[C]// KDD14: Proceedings of the 20th ACM SIGKDD Conference on Knowledge Discovery and Data Mining. New York:ACM, 2014:80-90.
[7]沈海燕,李星毅.一種新的基于標(biāo)簽傳播的重疊社區(qū)發(fā)現(xiàn)算法 [J].軟件導(dǎo)刊,2015,14(4):59-62.(SHEN H Y, LI X Y. A new overlapping community structure detecting algorithm by label propagation[J]. Software Guide, 2015,14(4):59-62.)
[8]康穎,于博,古曉艷,等.一種面向大規(guī)模社會(huì)信息網(wǎng)絡(luò)的多層社區(qū)發(fā)現(xiàn)算法[J].計(jì)算機(jī)學(xué)報(bào), 2015,38(1):1-14.(KANG Y, YU B, GU X Y,et al. A multilevel community detection algorithm for largescale social information networks[J]. Chinese Journal of Computers, 2015,38(1):1-14.)
[9]劉世超,朱福喜,甘琳.基于標(biāo)簽傳播概率的重疊社區(qū)發(fā)現(xiàn)算法[J/OL].[2015-07-22].http://www.cnki.net/kcms/detail/11.1826.TP.20150722.1205.014.html.(LIU S C, ZHU F X, GAN L. A labelpropagationprobabilitybased algorithm for overlapping community detection[J/OL]. [2015-07-22].http://www.cnki.net/kcms/detail/11.1826.TP.20150722.1205.014.html)
[10]董宇欣,遲闊,印桂生.基于引力作用的可選粒度社區(qū)發(fā)現(xiàn)算法[J].哈爾濱工程大學(xué)學(xué)報(bào),2015,36(6):1-6.(DONG Y X, CHI K, YIN G S. Optional granularity community detection algorithm based on gravitation[J]. Journal of Harbin Engineering University, 2015,36(6):1-6.)
[11]ZHANG X, NEWMAN M. Multiway spectral community detection in networks[EB/OL].[2015-01-22]. http://arxiv.org/abs/1507.05108.
[12]HOXHA K, KIKA A, GANI E, et al. Towards a modular recommender system for research papers written in Albanian[J]. International Journal of Advanced Computer Science and Applications, 2015,5(4):160-168.
[13]蔡阿妮,周傲英. 基于內(nèi)容與引用關(guān)系的學(xué)術(shù)論文推薦[D].上海:華東師范大學(xué),2014:1-82.(CAI A N, ZHOU A Y. Recommending research paper based on content and citation graph[D].Shanghai: East China Normal University, 2014:1-82.)
[14]孫見山,劉志迎,馬建.科研社交網(wǎng)絡(luò)中的論文推薦[D].合肥:中國(guó)科學(xué)技術(shù)大學(xué), 2014:1-101.(SUN J S, LIU Z Y,MA J. Article recommendation in research social network[D].Hefei: University of Science and Technology of China, 2014:1-101.)
[15]黃澤明,魯明羽.基于主題模型的學(xué)術(shù)論文推薦系統(tǒng)研究[D].大連:大連海事大學(xué), 2013:1-68.(HUANG Z M, LU M Y. Research on recommended system of scholar paper based on topic model[D].Dalian: Dalian Maritime University, 2013:1-68.)
[16]徐鎮(zhèn),李廉.基于垂直搜索引擎的論文投稿推薦系統(tǒng)研究[D].蘭州:蘭州大學(xué),2014:1-67.(XU Z,LI X. Research on a recommendation system for paper submission based on vertical search engine[D]. Lanzhou: Lanzhou University, 2014:1-67.)
[17]LANCICHINETTI A, FORTUNATO S, RADICCHI F. Benchmark graphs for testing community detection algorithms[J]. Physical Review E, 2008,78(4):046110.
[18]LANCICHINETTI A, FORTUNATO S, KERTESZ J. Detecting the overlapping and hierarchical community structure in complex networks[J].New Journal of Physics, 2009,11(3):033015.
[19]RAGHAVAN U, ALBERT R, KUMARA S. Near linear time algorithm to detect community structures in largescale networks[J]. Physical Review E, 2011,84(3):036103.
[20]GREGORY S. Finding overlapping communities in networks by label [J].New Journal of Physics, 2010, 12(10):103018.
[21]PALLA G, DERENYI I, FARKAS I, et al. Uncovering the overlapping community structure of complex networks in nature and society[J]. Nature, 2005, 435(7043): 814-818.