引入空間衰減函數(shù)的興趣點(diǎn)推薦算法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明屬于計(jì)算機(jī)技術(shù)領(lǐng)域,具體設(shè)及一種引入空間衰減函數(shù)的興趣點(diǎn)推薦算 法。
【背景技術(shù)】
[0002] 隨著智能手機(jī)的普及和定位技術(shù)的發(fā)展,人們更容易獲得自己位置的實(shí)時(shí)信息, 從而促使了基于位置的社交網(wǎng)絡(luò)的出現(xiàn),例如大眾點(diǎn)評,F(xiàn)oursquare Ji邱ang等。由于運(yùn)些 網(wǎng)站收集了大量的用戶簽到信息,利用運(yùn)些簽到信息可W對用戶沒有訪問過的興趣點(diǎn)進(jìn)行 推薦。現(xiàn)實(shí)社會(huì)有大量景點(diǎn),用戶往往對目的地難W挾擇,服務(wù)提供商可W根據(jù)系統(tǒng)內(nèi)其他 用戶的簽到記錄W及用戶自身的特征對用戶推薦合適的興趣點(diǎn)。常用的推薦算法有基于內(nèi) 容的推薦,基于協(xié)同過濾的推薦,基于模型的推薦,W及混合推薦等。在興趣點(diǎn)推薦中,由于 用戶的數(shù)目巨大并且在不斷變化,而興趣點(diǎn)相對固定,因此基于興趣點(diǎn)相似度的協(xié)同過濾 推薦算法常常被用在興趣點(diǎn)推薦服務(wù)上,運(yùn)種算法首先要建立"用戶-興趣點(diǎn)"評價(jià)矩陣進(jìn) 行數(shù)據(jù)分析,矩陣中每個(gè)元素是用戶對興趣點(diǎn)的訪問次數(shù)或者評分?jǐn)?shù)據(jù)?;谖恢玫纳缃?網(wǎng)絡(luò)中包含了用戶訪問興趣點(diǎn)的地理位置等信息,運(yùn)就為我們在推薦算法中考慮空間衰減 性提供了方便。
[0003] 由于興趣點(diǎn)包含地理信息,一些研究者在基于位置的社交網(wǎng)絡(luò)中發(fā)現(xiàn)了人們的移 動(dòng)行為存在空間聚類現(xiàn)象,個(gè)人的訪問地點(diǎn)趨向于聚集在一起,利用運(yùn)種現(xiàn)象來幫助興趣 點(diǎn)推薦,例如,通過任意一對訪問地點(diǎn)之間距離的幕律分布來描述,或?qū)εd趣點(diǎn)分布直接執(zhí) 行密度估計(jì)。運(yùn)些算法僅僅考慮空間聚類現(xiàn)象對興趣點(diǎn)推薦的影響,而沒有考慮興趣點(diǎn)相 似度存在空間上的衰減現(xiàn)象。
[0004] 在興趣點(diǎn)推薦中空間衰減性是重要的因素,能對推薦結(jié)果產(chǎn)生重大影響。相隔的 距離越近,用戶感興趣地點(diǎn)的相似度越高,與間隔很遠(yuǎn)的興趣點(diǎn)相比在推薦算法中具有更 大的權(quán)重。
【發(fā)明內(nèi)容】
[0005] 本發(fā)明針對現(xiàn)有興趣點(diǎn)推薦算法僅僅考慮空間聚類現(xiàn)象對興趣點(diǎn)推薦的影響,而 沒有考慮興趣點(diǎn)相似度存在空間上的衰減現(xiàn)象,提出了一種引入空間衰減函數(shù)的興趣點(diǎn)推 薦算法,該算法利用興趣點(diǎn)之間相似度受到空間距離的影響,在求解興趣點(diǎn)之間相似度時(shí) 用距離作為參數(shù)的函數(shù)對興趣點(diǎn)相似度進(jìn)行加權(quán)。實(shí)際數(shù)據(jù)集上測試結(jié)果表明,該改進(jìn)算 法在精準(zhǔn)度、召回率和巧旨標(biāo)等方面比傳統(tǒng)基于興趣點(diǎn)的協(xié)同過濾推薦算法有更好的表現(xiàn)。
[0006] 本發(fā)明的具體步驟是:
[0007] 步驟1、收集簽到網(wǎng)站中用戶簽到數(shù)據(jù)。
[000引表1簽到網(wǎng)站中用戶簽到數(shù)據(jù)集
[0009]
[0010] 表1中:U代表用戶的編號(hào),I <u<m,m為收集的用戶總數(shù);V代表興趣點(diǎn)的編號(hào),I < V含n,n為興趣點(diǎn)總數(shù);ruv代表用戶U對興趣點(diǎn)V的評分,Av代表興趣點(diǎn)V的締度,Ov代表興趣 點(diǎn)V的經(jīng)度。
[0011] 步驟2、建立包含興趣點(diǎn)位置信息的"用戶-興趣點(diǎn)"評分矩陣R(mXn),評分矩陣含 m個(gè)用戶和n個(gè)興趣點(diǎn),興趣點(diǎn)的位置信息用興趣點(diǎn)的經(jīng)締度來表示,如表2所示。隨機(jī)選取 1/8的簽到興趣點(diǎn)作為測試集,剩余7/8的興趣點(diǎn)作為訓(xùn)練集。
[0012]表2包含興趣點(diǎn)位置信息的"用戶-興趣點(diǎn)'評分矩陣
[0013]
[0014] 步驟3、使用傳統(tǒng)興趣點(diǎn)相似度求解公式求解興趣點(diǎn)i,j之間的相似度w(i,j),1 < i <n,l含j含n;傳統(tǒng)興趣點(diǎn)相似度求解公式有:余弦相似度求解公式、修正余弦相似度求解 公式和皮爾遜相關(guān)系數(shù)相似度求解公式。
[001引相關(guān)參數(shù)設(shè)置:和rw分別表示用戶U對興趣點(diǎn)i和興趣點(diǎn)j的評分,用戶沒有對 興趣點(diǎn)評分被設(shè)置為0, n和O分別表示m個(gè)用戶對興趣點(diǎn)i和興趣點(diǎn)j的平均評分,萬表示 用戶U對興趣點(diǎn)的平均評分,U(i)和U(j)分別表示對興趣點(diǎn)i和興趣點(diǎn)j評分的用戶集合,U (i,j)表示同時(shí)對興趣點(diǎn)i,j評分的用戶集合。
[0016] 3.1余弦相似度求解公式。在余弦相似度求解公式中,通過興趣點(diǎn)評分向量之間的 夾角余弦來度量它們之間的相似度。興趣點(diǎn)i,j的余弦相似度如下:
[0017]
(1)
[0018] 3.2修正余弦相似度求解公式。它在余弦相似度基礎(chǔ)上進(jìn)行了改進(jìn),通過減去用戶 對興趣點(diǎn)的平均評分解決了余弦相似度沒有考慮用戶評分等級差異的問題。興趣點(diǎn)i,j的 修正余弦相似度如下:
[0019]
巧)
[0020] 3.3皮爾遜相關(guān)系數(shù)相似度求解公式。與修正余弦相似度一樣,它也解決了用戶評 分等級差異的問題。興趣點(diǎn)i,j的皮爾遜相關(guān)系數(shù)相似度如下:
[0021]
[0022] 步驟4、=種興趣點(diǎn)相似度求解公式分別代入興趣點(diǎn)的預(yù)測評分公式形成=種傳 統(tǒng)興趣點(diǎn)推薦算法,分別預(yù)測出用戶U對測試集內(nèi)各個(gè)興趣點(diǎn)的預(yù)測評分;用戶U對興趣點(diǎn)i 的預(yù)測評分公式如下:
[0023]
(4)
[0024] 式中,SQ,K)表示和興趣點(diǎn)i最相似的K個(gè)興趣點(diǎn)的集合,N(U)表示用戶U訪問興趣 點(diǎn)的集合。
[0025] 步驟5、每種傳統(tǒng)興趣點(diǎn)推薦算法都推薦出預(yù)測評分值最大的N個(gè)興趣點(diǎn)。
[0026] 步驟6、通過召回率、精準(zhǔn)度和F指標(biāo)評價(jià)傳統(tǒng)興趣點(diǎn)推薦算法的推薦性能。
[0027] RU)表示用戶U推薦的N個(gè)興趣點(diǎn)的集合,T(U)表示用戶U實(shí)際感興趣的興趣點(diǎn)集 合,則召回率Pi、精準(zhǔn)度P2和巧旨標(biāo)F,分別由下式求得:
[0028] (5)
[0029] (6)
[0030] W
[0031] 召回率描述的是在用戶實(shí)際感興趣的興趣點(diǎn)當(dāng)中被推薦的比例,精準(zhǔn)度描述的是 推薦列表當(dāng)中用戶實(shí)際感興趣的興趣點(diǎn)所占的比例,但運(yùn)2個(gè)指標(biāo)經(jīng)常出現(xiàn)相互矛盾的情 況,往往1個(gè)指標(biāo)增大的同時(shí)另1個(gè)指標(biāo)隨之減小,為了綜合考慮召回率和精準(zhǔn)度,還用到了 綜合評價(jià)指標(biāo)巧旨標(biāo)。
[0032] 步驟7、在推薦性能最好的傳統(tǒng)興趣點(diǎn)推薦算法基礎(chǔ)上引入空間衰減函數(shù),得到引 入空間衰減函數(shù)的興趣點(diǎn)推薦算法,具體如下:
[0033] 7.1找到推薦性能最好的傳統(tǒng)興趣點(diǎn)推薦算法。
[0034] 由推薦列表長度N的不同值,根據(jù)=種傳統(tǒng)興趣點(diǎn)推薦算法中召回率、精準(zhǔn)度和F 指標(biāo)選取最好的傳統(tǒng)興趣點(diǎn)推薦算法。
[0035] 7.2引入空間衰減函數(shù)^(1(1^)),其中(1(1^)是興趣點(diǎn)巧日興趣點(diǎn)^'之間的大圓距 離,大圓距離指的是從球面的一點(diǎn)出發(fā)沿球面到達(dá)球面上另一點(diǎn)所經(jīng)過的最短路徑的長 度。設(shè)置興趣點(diǎn)巧日興趣點(diǎn)j的編號(hào)分別是C和(1,1^〇^,1<(1如,分別用經(jīng)締度^。,0。)和 (Ad,0d)表示興趣點(diǎn)i和興趣點(diǎn)j的坐標(biāo),則大圓距離的計(jì)算公式如下:
[0036]
(技)
[0037] 式中,R表示地球的平均半徑,取值為6371.009虹1,(1。,如的單位為虹1。
[0038] 空間衰減函數(shù)f(d(i J))的定義需滿足下列條件:興趣點(diǎn)i和j之間的大圓距離越 大,則f(d(i J))越小,興趣點(diǎn)i和j之間的相似度越小,從而降低用戶對距離更遠(yuǎn)的興趣點(diǎn) 的簽到行為對推薦結(jié)果的影響。首先給出適合簽到網(wǎng)站中用戶簽到數(shù)據(jù)集的空間衰減函數(shù) 類型,然后對空間衰減函數(shù)預(yù)設(shè)參數(shù),并將含有預(yù)設(shè)參數(shù)的空間衰減函數(shù)作為權(quán)值代入步 驟7.3的公式中;在進(jìn)行推薦算法推薦性能實(shí)驗(yàn)時(shí),通過給定不同的空間衰減函數(shù)預(yù)設(shè)參數(shù) 值來得到不同的召回率、精確度和F指標(biāo),根據(jù)運(yùn)些指標(biāo)選取適合簽到網(wǎng)站中用戶簽到數(shù)據(jù) 集的空間衰減函數(shù)預(yù)設(shè)參數(shù)值,此時(shí),即可確定適合簽到網(wǎng)站中用戶簽到數(shù)據(jù)集的空間衰 減函數(shù)。
[0039] 7.3引入空間衰減函數(shù)的興趣點(diǎn)推薦算法如下:
[0040]
(9)
[0041] 式中:W" Q J)表示推薦性能最好的傳統(tǒng)興趣點(diǎn)推薦算法中運(yùn)用的傳統(tǒng)興趣點(diǎn)相 似度求解公式。
[0042] 本發(fā)明具有的有益效果:
[0043] 本發(fā)明首先給出適合特定簽到數(shù)據(jù)集的空間衰減函數(shù)類型,然后對空間衰減函數(shù) 預(yù)設(shè)參數(shù),并將含有預(yù)設(shè)參數(shù)的空間衰減函數(shù)作為權(quán)值參與興趣點(diǎn)相似度的計(jì)算當(dāng)中;在 進(jìn)行推薦算法推薦性能實(shí)驗(yàn)時(shí),通過給定不同的空間衰減函數(shù)預(yù)設(shè)參數(shù)值來得到不同的召 回率、精確度和巧旨標(biāo),根據(jù)運(yùn)些指標(biāo)選取適合本數(shù)據(jù)集的空間衰減函數(shù)預(yù)設(shè)參數(shù)值,此時(shí), 即可確定適合本數(shù)據(jù)集的空間衰減函數(shù)。本發(fā)明通過引入空間衰減函數(shù)可W提高興趣點(diǎn)推 薦算法的推薦性能,可廣泛應(yīng)用在大眾點(diǎn)評、Foursquare、Jiepang等含有位置信息的興趣 點(diǎn)推薦服務(wù)中,不僅適用于固定范圍內(nèi)的興趣點(diǎn),還可W對整個(gè)空間軸上的興趣點(diǎn)做推薦。
【附圖說明】
[0044] 圖1為=種傳統(tǒng)興趣點(diǎn)推薦算法針對實(shí)施例中簽到數(shù)據(jù)集的召回率、精準(zhǔn)度隨推 薦列表長度的變化示意圖。
[0045] 圖2為=種傳統(tǒng)興趣點(diǎn)推薦算法針對實(shí)施例中簽到數(shù)據(jù)集的F指標(biāo)隨推薦列表長 度的變化示意圖。
[0046] 圖3為實(shí)施例中引入空間衰減函數(shù)的興趣點(diǎn)推薦算法的推薦性能隨空間衰減參數(shù) Nd的變化不意圖。
[0047] 圖4為實(shí)施例中引入空間衰減函數(shù)的興趣點(diǎn)推薦算法與推薦性能最好的傳統(tǒng)興趣 點(diǎn)推薦算法的召回率和精確度隨推薦列表長度變化的對比圖。
[004引圖5為實(shí)施例中引入空間衰減函數(shù)的興趣點(diǎn)推薦算法與推薦性能最好的傳統(tǒng)興趣 點(diǎn)推薦算法的巧旨標(biāo)隨推薦列表長度變化的對比圖。
【具體實(shí)施方式】
[0049] 下面結(jié)合附圖及實(shí)施例對本發(fā)明作進(jìn)一步說明。
[0050] 引入時(shí)間衰減函數(shù)的興趣點(diǎn)推薦算法,具體步驟如下:
[0051 ]步驟1、實(shí)驗(yàn)抓取大眾點(diǎn)評網(wǎng)中杭州地區(qū)用戶2013年6月10日到2015年6月10日的 簽到數(shù)據(jù),共收集1276683條簽到信息,其中包括49870名用戶,6532個(gè)興趣點(diǎn)。大眾點(diǎn)評網(wǎng) 提供了興趣點(diǎn)的經(jīng)締度信息,運(yùn)對研究空間衰減性對興趣點(diǎn)推薦的影響提供了便利。
[0052] 步驟2、建立包含興趣點(diǎn)位置信息的"用戶-興趣點(diǎn)"評分矩陣R(mXn),收集的用戶 總數(shù)m = 49870,興趣點(diǎn)總數(shù)n = 6532,興趣點(diǎn)的位置信息用興趣點(diǎn)的經(jīng)締度來表示。隨機(jī)選 取1/8的簽到興趣點(diǎn)作為測試集,剩余7/8的興趣點(diǎn)作為訓(xùn)練集。
[0053] 步驟3、使用傳統(tǒng)興趣點(diǎn)相似度求解公式求解興趣點(diǎn)i,j之間的相似度w(i,j),1 < i <n,l含j含n;傳統(tǒng)興趣點(diǎn)相似度求解公式有:余弦相似度求解公式、修正余弦相似度求解 公式和皮爾遜相關(guān)系數(shù)相似度求解公式。
[0054] 相關(guān)參數(shù)設(shè)置:w(i, j)表示興趣點(diǎn)i,j之間的相似度,1 y如,1幻' <n,;Tui和ruj 分別表示用戶U對興趣點(diǎn)i和興趣點(diǎn)j的評分,用戶沒有對興趣點(diǎn)評分被設(shè)置為0,云和^分 別表示m個(gè)用戶對興趣點(diǎn)i和興趣點(diǎn)j的平均評分,;;;表示用戶U對興趣點(diǎn)的平均評分,U(i) 和U(j)分別表示對興趣點(diǎn)i和興趣點(diǎn)j評分的用戶集合,U(i,j)表示同時(shí)對興趣點(diǎn)i,j評分 的用戶集合。
[0055] 3.1余弦相似