王晨陽, 劉垣, 郭李華, 肖琳
(福建工程學院 信息科學與工程學院, 福建 福州 350118)
近年來,互聯(lián)網(wǎng)快消品市場迅速發(fā)展,涌現(xiàn)出一大批快消品電商網(wǎng)站,如阿里1688零售通、京東掌柜寶、掌合天下、惠民網(wǎng)、易酒批、便利寶、進貨寶等??煜冯娚叹W(wǎng)站主要為廣大下游便利店提供一站式的采購進貨服務,所以它的用戶通常就是便利店。面對海量的信息,高效的推薦算法無疑將對快消品電商網(wǎng)站的成功起到至關重要的作用,它能夠在信息過載的環(huán)境中幫助用戶發(fā)現(xiàn)他們感興趣的物品[1]。協(xié)同過濾推薦系統(tǒng)是一個已經(jīng)在電子商務系統(tǒng)中廣泛應用的一種個性化推薦算法[2]。該方法首先找到和目標用戶興趣相似的用戶集合,然后根據(jù)這個集合的評分數(shù)據(jù)向目標用戶推薦商品。算法的關鍵是用戶的興趣相似性度量準則。對用戶相似性度量準則的研究有很多,如文獻[1-2]在計算用戶相似性度量中引入了位置信息,但是位置信息只是作為商品的一個屬性,對推薦的作用較弱;文獻[3]將位置信息聚類為位置簇,雖然強化了位置信息的推薦作用,但位置之間的距離所產(chǎn)生的推薦意義沒有融入到推薦模型中。在快消品電商領域,因為快消品的流通具有區(qū)域的相似性,因此地理位置較近的便利店,他們的興趣相似度也會相應更高。本文提出一種融合位置相似性度量的協(xié)同過濾推薦算法,根據(jù)用戶的位置以及位置之間的距離算出用戶的位置相似度,再與用戶的興趣相似性加權得到一個新的用戶相似度,最后在一個真實的快消品電商網(wǎng)站數(shù)據(jù)集上驗證了該算法的可行性。
基于用戶的協(xié)同過濾推薦算法是推薦系統(tǒng)中最古老的算法,包括2個步驟:1)找到與目標用戶興趣相似的最近鄰居集合;2)根據(jù)最近鄰居集合中用戶對商品的評分向目標用戶進行推薦。其中步驟1)的關鍵是用戶相似性的計算方法。最常用的有Jaccard相似性、余弦相似性、修正余弦相似性和相關相似性[4-6]。
給定用戶u和v,令N(u)表示用戶u有過評分的商品集合,N(v)表示用戶v有過評分的商品集合。利用Jaccard公式計算用戶u和v之間的相似度,Jaccard系數(shù)定義為N(u)與N(v)交集的大小與N(u)、N(v)并集的大小比值,定義如下。
(1)
給定用戶u和v,令A和B表示用戶u和v對n個商品的評分向量。使用兩個向量之間夾角的余弦值度量用戶間的相似性。公式如下:
(2)
余弦相似性度量未考慮到用戶評分尺度問題,如在評分區(qū)間[1-5]的情況下,對用戶i來說評分3以上就是自己喜歡的,而對于用戶j,評分4以上才是自己喜歡的。通過減去用戶對商品的平均評分,修正的余弦相似性改善了用戶評分尺度偏好問題。給定用戶u和v,令I表示所有商品的集合,Ru和Rv分別表示用戶u和v對商品的平均評分值,Ru,i和Rv,i分別表示用戶u和v對商品i的評分,如果用戶u對商品i沒有評分,則Ru,i=0。使用修正余弦相似性度量用戶u和用戶v之間的相似性,公式如下。
(3)
(4)
融合位置相似性度量的協(xié)同過濾推薦算法(collaborative filtering recommendation algorithm with the fusion of location similarity measurement,CF-FLSM)的推薦流程如圖1。算法分為3步:第1步:根據(jù)目標用戶的位置搜索出周邊的用戶集合near(N),即距離最近的用戶集合,以縮小用戶范圍;第2步:
圖1 CF-FLSM的推薦流程Fig.1 Recommendation process of CF-FLSM
在第1步中搜索出來的用戶集合near(N)中,結合用戶歷史行為利用余弦相似性計算出用戶之間的興趣相似性,結合用戶的位置信息算出用戶之間的位置相似性;第3步:按照適當?shù)臋嘀貙⒂脩糁g的興趣相似性和位置相似性進行合并處理,得到一個新的用戶相似性,用于產(chǎn)生最終的推薦結果。
本文分析了某快消品電商網(wǎng)站在福州地區(qū)的注冊用戶(因為快消品電商網(wǎng)站服務的對象是便利店,所以這里的用戶就是便利店)的歷史采購進貨記錄。圖2是該地區(qū)注冊用戶的地理位置分布圖。
隨機選定N(本文實驗過程中N取100)個用戶,分別計算出與目標用戶距離(單位:km)[0,1]、(1,2]、(2,3]、(3,5]、(5,8]、(8,10]內(nèi)的用戶有過共同評分商品的平均數(shù)量,得出的具有共同評分的商品數(shù)量與用戶之間距離的關系如圖3所示。
圖2 注冊用戶的地理分布圖Fig.2 Geographic distribution map of registered users
圖3 興趣相似性與距離的關系 Fig.3 Relationship between interest similarity and distance
從圖3可知,用戶之間共同評分的商品數(shù)量與用戶之間的距離成反比。這說明在同一地區(qū)內(nèi),用戶之間的偏好相似度對用戶之間的距離是敏感的,這也符合快消品電商市場銷售的現(xiàn)狀。因此,本文提出如下度量方法計算用戶之間的位置相似性:
(5)
將用戶位置相似性度量融合到傳統(tǒng)的用戶興趣相似性度量,兩者進行加權合并處理得出一個新的用戶相似性。
(6)
其中λ表示sim(u,v)dis的權重,可以根據(jù)實際情況適當調(diào)整λ的值。
算出用戶之間的相似度后,可以根據(jù)與目標用戶興趣最相似的K個用戶向目標用戶推薦商品。首先可利用以下公式預測出目標用戶對與目標用戶最相似的K個用戶有過評分但目標用戶未曾評分的商品的評分預測值。
(7)
其中,S(u,k)是根據(jù)公式(6)計算出的與目標用戶u興趣最相似的K個用戶的集合,N(i)是對商品i有過評分的用戶集合,sim(u,v)為用戶u和用戶v的相似度;Rv,i為用戶v對物品i的評分。
最后將評分預測值最高的前Top-N項商品向目標用戶做推薦。
選取某快消品電商網(wǎng)站在福州地區(qū)的2016年真實數(shù)據(jù)來驗證上面提出的算法。該數(shù)據(jù)集在該地區(qū)的每個用戶都維護一個固定的地位經(jīng)緯度坐標,各項數(shù)據(jù)統(tǒng)計值如表1所示。
表1 實驗數(shù)據(jù)集Tab.1 Experimental dataset
將數(shù)據(jù)集按照用戶對商品評分的時間倒序排序選取20%作為測試集,剩下的80%作為訓練集。并隨機選擇test_U家用戶作為測試用戶,在訓練集上計算用戶的相似性,最后在測試集上分別對每個測試用戶進行商品推薦預測。
網(wǎng)站在做商品推薦時,通常是為用戶提供一個個性化的推薦欄目,就是推薦系統(tǒng)里的Top-N推薦。對Top-N推薦結果進行評測的指標通常是采用準確率和召回率。
準確率評測的是最終的推薦結果中有多少比例是正確推薦的。
(8)
召回率評測的是推薦正確的商品占實際用戶喜歡的商品集合的多少。
(9)
其中U為測試用戶集合,就是3.1節(jié)中隨機選擇的測試用戶數(shù)test_U;R(u)表示對測試用戶u在測試集上的推薦商品集合;T(u)為測試用戶u在測試集上實際喜歡的商品集合。
在CF-FLSM和CF的實驗過程中,測試用戶數(shù)test_U取值為50,用戶最近鄰的數(shù)目near_N取值為200,用戶之間的位置相似性度量權重λ取值為0.5,在推薦商品數(shù)目Top-N的不同取值下,分別算出測試用戶集的平均準確率和召回率如表2、表3所示。
表2 CF-FLSM的推薦結果Tab.2 Recommendation results of CF-FLSM
表3 CF的推薦結果Tab.3 Recommendation results of CF
兩者的實驗結果的比較如圖4所示,本文提出的CF-FLSM相對于傳統(tǒng)的協(xié)同過濾算法,準確率和召回率分別提高了3.74%和3.91%。
圖4 CF-FLSM和CF的實驗結果對比圖 Fig.4 Comparison of experimental results of CF-FLSM and CF
調(diào)研國內(nèi)眾多知名快消品電商平臺,其注冊用戶通常是便利店,而便利店都有一個固定的地理位置。本文提出的融合位置相似性度量的協(xié)同過濾(CF-FLSM)推薦算法,能夠有效利用位置以及位置之間的距離信息,從而提高快消品電商平臺商品推薦的準確率和召回率。但是CF-FLSM在推薦的過程中并未考慮時間的因素,而快消品的流通活躍度通常和季節(jié)有關,比如啤酒飲料在夏季會相對比較活躍,而白酒紅酒在冬季會相對比較活躍。在快消品電商網(wǎng)站推薦算法中加入時間維度,是將來的研究方向。
[1] 申園園,余文.一種基于位置服務信息的移動推薦模型[J].計算機應用與軟件,2016,33(12):203-206.
[2] 王付強,彭甫镕,丁小煥,等.基于位置的非對稱相似度量的協(xié)同過濾推薦算法[J].計算機應用,2016,36(1):171-174,180.
[3] 鄭慧,李冰,陳冬林,等.基于位置簇的移動生活服務個性化推薦技術[J].計算機應用,2015,35(4):1148-1153.
[4] 項亮.推薦系統(tǒng)實踐[M].北京:人民郵電出版社,2012:45-64.
[5] 李春,朱珍民,高曉芳,等.基于鄰居決策的協(xié)同過濾推薦算法[J].計算機工程,2010,36(13):34-39.
[6] 彭德巍,胡斌.一種基于用戶特征和時間的協(xié)同過濾算法[J].武漢理工大學學報,2009,31(3):24-28.
[7] 馬胡雙,石永革,高勝保.基于特征增益與多級優(yōu)化的協(xié)同過濾個性化推薦算法[J].科學技術與工程,2016,16(21):272-277.
[8] 張春永,陳群.一種基于LBS的移動個性化推薦系統(tǒng)[J].科學技術與工程,2011,11(30):7439-7442,7447.
[9] Cacheda F, Formoso V, Femandez D, et al. Comparison of collaborative filtering algorithms: limitations of current techniques and proposals for scalable, high-performance recommender systems[J]. ACM Transactions on the Web,2011,5(1):1-33.
[10] Liu H, Hu Z, Mian A, et al. A new user similarity model to improve the accuracy of collaborative filtering[J].Knowledge-Based Systems,2014,56(3):156-166.