高良誠(chéng)
(銅陵職業(yè)技術(shù)學(xué)院信息工程系,安徽 銅陵 244061)
隨著互聯(lián)網(wǎng)和移動(dòng)網(wǎng)絡(luò)技術(shù)的快速發(fā)展,社交網(wǎng)絡(luò)作為真實(shí)社會(huì)社交關(guān)系的有益補(bǔ)充,構(gòu)建了虛擬世界的朋友圈,極大地豐富了人們的工作方式和生活方式。社交網(wǎng)絡(luò)用戶(hù)數(shù)量飛速增長(zhǎng),信息過(guò)載問(wèn)題突出,在海量用戶(hù)中找到真正需要的朋友越來(lái)越困難,好友推薦系統(tǒng)可以有效改善用戶(hù)體驗(yàn),已成為社交網(wǎng)絡(luò)領(lǐng)域的研究熱點(diǎn)[1-4]。
基于社交關(guān)系的推薦,其推薦的多為認(rèn)識(shí)的好友或好友的好友,推薦范圍具有很大的局限性,對(duì)于好友數(shù)比較少的用戶(hù)難以產(chǎn)生好的推薦結(jié)果,不利于拓展朋友圈?;诰W(wǎng)絡(luò)內(nèi)容的推薦,可以讓用戶(hù)快速找到感興趣的人,但所推薦用戶(hù)的信任度不高,影響推薦效果。綜合考慮社交關(guān)系和網(wǎng)絡(luò)內(nèi)容及其它用戶(hù)信息,找到合適的融合參數(shù),可以有效平衡推薦的新穎度和信任度,大量文獻(xiàn)做了這方面的研究。本文提出一種社交網(wǎng)絡(luò)中融合用戶(hù)關(guān)系、興趣愛(ài)好、地理位置的好友推薦算法(A Friend recommendation algorithm Based on Relations-Interests-Lacations,RIL-FR),綜合考慮用戶(hù)社交關(guān)系、興趣愛(ài)好、地理位置等用戶(hù)信息,提升算法的精準(zhǔn)度。
好友推薦是網(wǎng)絡(luò)社交平臺(tái)的重要功能,高效的好友推薦算法能提升用戶(hù)交友體驗(yàn),快速擴(kuò)大用戶(hù)社交圈,好友推薦已成為社交網(wǎng)絡(luò)領(lǐng)域的研究熱點(diǎn)。胡文江等[5]在社交關(guān)系的基礎(chǔ)上加入愛(ài)好標(biāo)簽的相似度進(jìn)行推薦,但用戶(hù)往往不愿意主動(dòng)加入標(biāo)簽特征,導(dǎo)致推薦算法性能不佳。xu J等[6]提出了一種好友推薦算法,采用基于用戶(hù)-項(xiàng)目評(píng)分矩陣的概率矩陣分解法,通過(guò)加權(quán)平均來(lái)度量受信任用戶(hù)與目標(biāo)用戶(hù)的興趣相似性,加入用戶(hù)興趣信息后,能有效提高好友推薦算法的精度,但推薦用戶(hù)存在信任問(wèn)題。龍?jiān)銎G等[7]提出一種基于用戶(hù)交互的相似度計(jì)算算法KIFLink,根據(jù)用戶(hù)屬性、網(wǎng)絡(luò)拓?fù)浜徒换リP(guān)系進(jìn)行鏈路預(yù)測(cè),并對(duì)用戶(hù)屬性與交互行為進(jìn)行計(jì)算,以此來(lái)推薦好友。
隨著定位技術(shù)的發(fā)展,用戶(hù)地理位置信息在社交網(wǎng)絡(luò)中發(fā)揮著越來(lái)越重要的作用。地理位置信息與用戶(hù)在真實(shí)社會(huì)中的活動(dòng)相關(guān)聯(lián),一定程度上體現(xiàn)了用戶(hù)的行為模式、個(gè)人偏好。用戶(hù)行為在現(xiàn)實(shí)社會(huì)中受時(shí)空因素制約,距離的遠(yuǎn)近直接影響其社交范圍和社交能力,將地理位置信息融入到好友推薦算法中,使社交網(wǎng)絡(luò)與現(xiàn)實(shí)社會(huì)網(wǎng)絡(luò)有機(jī)結(jié)合,且用戶(hù)之間更容易產(chǎn)生信任,有助于提高算法的有效性。
孫建偉等[8]等使用評(píng)分矩陣對(duì)用戶(hù)位置進(jìn)行預(yù)估計(jì),綜合考慮用戶(hù)興趣相似度和信任度,提出了針對(duì)位置預(yù)估計(jì)的組合算法,提高了位置預(yù)估計(jì)的精確度。曾雪琳等[9]提出一種基于位置和好友關(guān)系的協(xié)同過(guò)濾LFBCF算法,綜合考慮用戶(hù)行為、用戶(hù)社交關(guān)系、位置關(guān)系進(jìn)行協(xié)同過(guò)濾,有效提升了算法的準(zhǔn)確率,但對(duì)用戶(hù)興趣考慮不夠。XING X等[10]提出一種多維相似度的好友推薦算法,計(jì)算興趣、時(shí)間等相似度并通過(guò)用戶(hù)之間位置距離差值進(jìn)行評(píng)價(jià),但算法對(duì)位置距離的處理較為簡(jiǎn)單。
本文提出一種社交網(wǎng)絡(luò)中融合用戶(hù)關(guān)系、興趣愛(ài)好、地理位置的好友推薦算法,綜合考慮用戶(hù)社交關(guān)系、興趣愛(ài)好、地理位置等用戶(hù)信息,計(jì)算相應(yīng)的相似度,在此基礎(chǔ)上,將三種相似度加權(quán)融合計(jì)算用戶(hù)之間最終相似度,測(cè)試最佳融合參數(shù),將其作為好友推薦算法的依據(jù),增加好友推薦新穎度和信任度,從而提升算法的精準(zhǔn)度。
根據(jù)六度分割原理,用戶(hù)能夠通過(guò)好友的好友來(lái)認(rèn)識(shí)社交網(wǎng)絡(luò)中任何用戶(hù),因此,兩個(gè)用戶(hù)的共同好友數(shù)量,直接影響他們成為好友的概率。用戶(hù)為校友關(guān)系或歷史上有共同居住地,將增加彼此信任度,他們之間成為好友的概率也會(huì)增加。
基于共同好友數(shù)、共同居住地?cái)?shù)、是否校友關(guān)系的信任相似度計(jì)算公式為:
其中:GF用戶(hù)u和v的好友相似度;PR為用戶(hù)u和v共同居住地?cái)?shù);AS為是否校友關(guān)系,取值0或1;w1、w2和w3為比例系數(shù)。
好友相似度Gf由式(2)計(jì)算:
其中:Fu為用戶(hù)u的好友集合;Fv為用戶(hù)v的好友集合;|Fu∩Fv|為用戶(hù)u和v的共同好友數(shù);|Fu∪Fv|為用戶(hù)u和v所有好友數(shù)。
具有相同興趣愛(ài)好的用戶(hù)在情感上容易產(chǎn)生共鳴,更容易成為好友。本文根據(jù)評(píng)論信息計(jì)算各個(gè)用戶(hù)與目標(biāo)用戶(hù)之間的興趣相似度值,基于皮爾遜相關(guān)系數(shù)(Pearson correlation coefficient,PCC)的相似性計(jì)算公式為:
其中:ri(u)為用戶(hù)u在項(xiàng)目i上的評(píng)分值;rˉi(u)為用戶(hù)u在整個(gè)項(xiàng)目上的平均評(píng)分值。
社交網(wǎng)絡(luò)和現(xiàn)實(shí)社會(huì)并非完全獨(dú)立的,某些場(chǎng)景下,現(xiàn)實(shí)社會(huì)關(guān)系會(huì)在社交網(wǎng)絡(luò)中體現(xiàn)?,F(xiàn)實(shí)社會(huì)中,兩個(gè)用戶(hù)之間距離的遠(yuǎn)近直接影響用戶(hù)的社交意愿,因而,用戶(hù)之間位置關(guān)系是社交網(wǎng)絡(luò)好友推薦的關(guān)鍵因素[11]。用戶(hù)u、v基于位置的相似度計(jì)算公式為:
其中:用戶(hù)u為目標(biāo)用戶(hù),(v1,v2,…,vM)為待推薦用戶(hù)集,du,vi按公式(5)計(jì)算:
其中:AS為是否校友;d(lu,lvi)為地點(diǎn)lu與地點(diǎn)lvi之間的距離,采用經(jīng)緯度距離公式(6)計(jì)算:
社交網(wǎng)絡(luò)中,用戶(hù)交友的偏好不盡相同,對(duì)信任相似度、興趣相似度、位置相似度也有所側(cè)重,本文對(duì)上述三個(gè)要素進(jìn)行融合,進(jìn)行加權(quán)處理,將融合計(jì)算出的最終相似度值作為推薦好友依據(jù),計(jì)算公式如下:
其中:Tru,v為信任相似度值;Hsimu,v為興趣相似度值;Distu,v為位置相似度值;α、β、γ為融合參數(shù)。
根據(jù)公式(7)計(jì)算出目標(biāo)用戶(hù)與待推薦用戶(hù)的最終相似度值,采用Top-n策略,將相似度值大的前n個(gè)用戶(hù)推薦給目標(biāo)用戶(hù)。
算法步驟如下:
1)對(duì)每個(gè)待推薦用戶(hù)集(v1,v2,…,vM)中用戶(hù),分別按照公式(1)、(3)、(4)計(jì)算與目標(biāo)用戶(hù)之間的相似性。
2)對(duì)每個(gè)待推薦用戶(hù)集(v1,v2,…,vM)中用戶(hù),按公式(7)融合計(jì)算與目標(biāo)用戶(hù)的相似度值
3)將步驟2)計(jì)算出的相似度值排序,根據(jù)Top-n策略,前n個(gè)用戶(hù)推薦給目標(biāo)用戶(hù)。
本文采用新浪微博數(shù)據(jù)集,對(duì)數(shù)據(jù)進(jìn)行預(yù)處理,刪除了簽到次數(shù)小于10和好友數(shù)小于6的用戶(hù),從剩余的數(shù)據(jù)中隨機(jī)選取2048個(gè)用戶(hù)進(jìn)行實(shí)驗(yàn),其中包含57339對(duì)好友關(guān)系數(shù)。設(shè)置參數(shù)w1=0.3,w2=0.05,w3=0.06,α=0.3,β=0.3,γ=0.6。
本文對(duì)RIL-FR算法、基于用戶(hù)的協(xié)同過(guò)濾算法(User-CF)[12]以及文獻(xiàn)[10],在準(zhǔn)確率、召回率以及F1-measure指標(biāo)方面進(jìn)行比較與分析。
準(zhǔn)確率的計(jì)算公式如下:
召回率的計(jì)算公式如下:
F1-measure的計(jì)算公式如下:
圖1為三種算法的準(zhǔn)確率對(duì)比。由圖1可見(jiàn),隨著推薦好友數(shù)量增加,三種算法的準(zhǔn)確率均下降,但本文算法的準(zhǔn)確率性能更佳。
圖1 三種算法的準(zhǔn)確率對(duì)比
圖2為三種算法的召回率對(duì)比。由圖2可見(jiàn),隨著推薦好友數(shù)量增加,三種算法召回率均上升,本文算法的召回率上升更明顯。
圖2 三種算法的召回率對(duì)比
圖3為三種算法的F1-measure對(duì)比。由圖3可見(jiàn),本文算法的F1-measure值指標(biāo)較好。
圖3 三種算法的F1-measure值對(duì)比
提出了一種融合用戶(hù)關(guān)系-興趣-位置的社交網(wǎng)絡(luò)好友推薦算法,綜合考慮用戶(hù)社交關(guān)系、興趣愛(ài)好、地理位置等用戶(hù)信息,計(jì)算用戶(hù)間的信任相似度、興趣相似度和位置相似度,在此基礎(chǔ)上,對(duì)上述三個(gè)相似度值進(jìn)行加權(quán)處理,將最終融合計(jì)算結(jié)果作為好友推薦算法的依據(jù),相似性值高的用戶(hù)被推薦的可能性增大。仿真實(shí)驗(yàn)表明,該算法準(zhǔn)確率和召回率性能較好。