[發明專利]一種基于多特征的個性化餐廳推薦算法有效
| 申請號: | 201711324733.0 | 申請日: | 2017-12-13 |
| 公開(公告)號: | CN108171535B | 公開(公告)日: | 2022-01-28 |
| 發明(設計)人: | 史艷翠;廖富麗;張賢坤;孫迪 | 申請(專利權)人: | 天津科技大學 |
| 主分類號: | G06Q30/02 | 分類號: | G06Q30/02;G06F16/9536 |
| 代理公司: | 天津盛理知識產權代理有限公司 12209 | 代理人: | 王雨晴 |
| 地址: | 300222 天津市河*** | 國省代碼: | 天津;12 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 基于 特征 個性化 餐廳 推薦 算法 | ||
1.一種基于多特征的個性化餐廳推薦方法,其特征在于:包括以下步驟:
步驟A:數據預處理:讀取大眾點評網站上的餐廳數據,根據用戶對餐廳的評分構建用戶-項目評分矩陣,然后對該用戶-項目評分矩陣中的評分進行標準化處理,并根據時間戳信息計算評分的實際效用值;
步驟B:計算用戶自身影響力:通過分析用戶的多種特征,計算用戶自身影響力;
步驟C:計算用戶間影響力:首先使用步驟A預處理后的數據和改進的空值填充法預測用戶未去過的餐廳的評分,并根據該預測結果計算用戶間的偏好相似度;然后通過分析用戶的特征并結合步驟B獲得的用戶自身影響力以及用戶間的偏好相似度、用戶的粉絲信息和影響力的傳遞性計算用戶間影響力;
步驟D:預測用戶對未去過的餐廳的評分:根據步驟C計算得到的用戶間的影響力,為目標用戶選擇top Ku個近似鄰居,然后預測用戶對未去過的餐廳的評分;其中,Ku為選擇的近似鄰居的數量;
步驟E:為用戶推薦個性化的餐廳:根據步驟D獲得的用戶對未去過的餐廳的評分預測結果,對餐廳進行排序,為用戶推薦N個最可能去的餐廳;
所述步驟A的具體步驟包括:
(1)讀取大眾點評網站上的餐廳數據,根據用戶對餐廳的評分,構建用戶-餐廳評分矩陣(U×D),U表示用戶集合;D表示餐廳集合;rik∈(U×D)表示用戶ui∈U對餐廳dk∈D的評分;
(2)由于用戶評分習慣不同,因此使用均值中心化方法對用戶評分進行標準化處理,具體公式如下:
其中,r'ik表示標準化后的用戶評分;rik∈(U×D)表示用戶ui∈U對餐廳dk∈D的評分;表示用戶ui對所有餐廳評分的均值;ri,max和ri,min分別表示用戶ui對餐廳評分的最大值和最小值;
(3)用戶偏好隨時間遷移會發生變化,因此使用遺忘函數來計算評分的實際效用值,具體公式如下:
r”ik=r'ik*e-λΔt,Δt=t-t0
其中,r”ik表示經過標準化處理和遺忘函數計算后用戶ui對餐廳dk的評分;t表示評分時間,t0表示參考時間,λ表示時間衰減因子;
所述步驟B通過分析用戶的多種特征,計算用戶自身影響力,具體公式如下:
其中,表示用戶ui自身影響力;Fu表示除用戶ID外選取的用戶特征值的向量;表示Fu包含的特征值的數量;Vi,n∈Fu表示特征qn的值;δn表示特征qn的權重值;Vmax表示特征qn的最大值;
所述用戶的多種特征包括:用戶ID、評論數量、社區等級、注冊時長、粉絲數量和簽到次數;
所述步驟C的使用改進的空值填充法預測用戶對未去過的餐廳的評分的計算公式如下:
其中,hik表示根據空值填充法預測得到的用戶ui對餐廳dk的評分;Di,k表示用戶ui評價過的餐廳中與dk最相似的Kr個餐廳的集合;dg表示與餐廳dk最相似的某個餐廳;r”ig表示經過標準化處理和遺忘函數計算后得到的用戶ui對餐廳dg的評分,餐廳表示經過標準化處理和遺忘函數計算后得到的用戶i對餐廳評分的平均值;sim(dk,dg)表示餐廳dk和餐廳dg的相似度,其計算公式如下:
其中,Fr表示選擇的除餐廳ID外的餐廳特征的集合;fm表示餐廳的某個特征;表示餐廳dk的特征fm的取值;表示餐廳dg的特征fm的取值;表示在用戶ui評價的餐廳中,餐廳的特征fm的權重值,其計算公式如下:
其中,fx表示餐廳的某個特征;表示在用戶ui評價的餐廳中,餐廳的特征fm的波動值,其計算公式如下:
其中,Cm表示特征fm的取值的集合;cm,l表示特征fm的某個取值;表示在用戶ui評價的餐廳中,fm的取值是cm,l的餐廳的數量;表示僅考慮特征fm時,用戶ui評價的餐廳的平均數量;
所述餐廳特征的集合包括餐廳ID、餐廳的星級評分、餐廳的類型、餐廳的位置、餐廳的氛圍、餐廳的服務評分、餐廳的環境評分、餐廳的人均消費水平、餐廳的口味評分、餐廳的評論數量;
所述用戶間的偏好相似度計算公式如下:
其中,sim(ui,uj)表示用戶ui和用戶uj的偏好相似度;Dijo表示用戶ui和用戶uj共同評價過的餐廳的集合;Dijn表示通過空值填充預測得到的用戶ui和用戶uj共同評價過的餐廳的集合;如果用戶ui對餐廳dk進行了評分,r”ik表示經過標準化處理和遺忘函數計算后得到的用戶ui對餐廳dk的評分,如果用戶ui對餐廳dk未進行評分,r”ik表示使用空值填充法預測得到的用戶ui對餐廳dk的評分;表示用戶ui對所有餐廳評分的平均值;θ用來度量使用空值填充法預測得到的評分權重值;根據實驗結果,θ的值設置為0.8;
根據用戶粉絲信息和影響力傳遞性的用戶間影響力的計算公式如下:
其中,表示根據粉絲信息和影響力傳遞性計算得到的歸一化的用戶間影響力;表示根據粉絲信息和影響力傳遞性計算得到的用戶間影響力;ns表示兩個用戶間最短距離的跳數;Pi,j表示用戶ui和用戶uj之間跳數大于1的路徑的集合;pl表示某條路徑;npl表示路徑pl的跳數;σ表示影響力傳遞的衰減因子;
所述步驟C的用戶間影響力的計算公式如下:
其中,表示用戶ui對用戶uj的影響力;λ1,λ2和λ3是影響力的權重值,且λ1+λ2+λ3=1。
2.根據權利要求1所述的一種基于多特征的個性化餐廳推薦方法,其特征在于:所述步驟D的預測用戶對未去過的餐廳的評分的具體方法為:
(1)當預測的餐廳與用戶評價過的餐廳相似時,結合改進的協同過濾方法和空值填充法預測用戶對未去過的餐廳的評分;gik根據改進的協同過濾方法預測得到用戶ui對餐廳dk的評分,首先該方法需要找到對用戶ui最具影響力的用戶集合,然后根據這些用戶對用戶ui的影響力以及這些用戶對餐廳dk的評分預測用戶ui對餐廳dk的評分,預測公式如下:
其中,U'表示根據用戶間影響力選擇出的對用戶ui最有影響力的用戶的集合;uy表示對用戶ui最有影響力的某個用戶;表示用戶uy對用戶ui的影響力;r”yk表示經過標準化處理和遺忘函數計算后得到的用戶uy對餐廳dk的評分;表示經過標準化處理和遺忘函數計算后得到的用戶uy對所有餐廳評分的平均值;
結合改進的協同過濾方法和空值填充法預測用戶對未去過的餐廳的評分的計算公式如下:
r”ik=ε1*gik+ε2*hik,
其中,表示根據本發明預測得到的用戶ui對餐廳dk的評分,其值為[0,5]區間上的某個整數;ε1和ε2為權重值,且ε1+ε2=1;round()為四舍五入函數;ri,max和ri,min分別表示用戶ui對餐廳最初評分的最大值和最小值;
(2)當預測的餐廳和用戶評分過的餐廳特征完全不同時,使用空值填充法預測得到的評分值為0,即當預測的餐廳和用戶評分過的餐廳特征完全不同時,空值填充法失效,這時只能使用改進的協同過濾方法預測用戶評分,公式如下:
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于天津科技大學,未經天津科技大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201711324733.0/1.html,轉載請聲明來源鉆瓜專利網。





