線下商場基于LBS的推薦系統(tǒng)方案設(shè)計
編輯導(dǎo)讀:在現(xiàn)實生活中我們經(jīng)常會用淘寶、京東、百度等產(chǎn)品去搜索想要買的產(chǎn)品或者想要知道的訊息。在需求不明確的情況下,產(chǎn)品會對我們的需求進行深度挖掘和匹配,這就是推薦系統(tǒng)在起作用。
本文從搭建推薦系統(tǒng)的意義出發(fā),對推薦系統(tǒng)的設(shè)計和過程中需要注意的問題進行了分析總結(jié),供大家一同參考學(xué)習(xí)。
一、搭建推薦系統(tǒng)的意義
1. 降低物品信息過載困擾,幫助用戶快速找到喜愛商品
當前商場店鋪比較多,物品排列密密麻麻,對用戶的選擇造成一定的干擾,以至于無處下手,最后不了了之,而推薦系統(tǒng)的搭建一定程度上解決了信息過載問題,直接將潛在物品推薦到用戶面前,縮短購買路徑,提高下單量。
2. 深度挖掘商場內(nèi)長尾商品,提高GMV
經(jīng)過一系列商品數(shù)據(jù)采集、分析、打標操作,實現(xiàn)商品的統(tǒng)一化管理,深度挖掘長尾商品,將該類商品推送至目標客戶面前,提高其曝光度,降低商品對貨柜、店鋪位置的依賴,從而提高營業(yè)額。
3. 對于無目的客戶,推薦折扣商品、營銷活動,刺激購買欲望
針對對無購物目的的人群,推薦系統(tǒng)自動推薦低價好貨、熱門活動和限量商品,吸引客戶注意力,達到營銷和門店導(dǎo)流的目的,刺激客戶購買欲,從而提高下單量。
4. 通過購物車分析,推薦給客戶更多關(guān)聯(lián)商品,提高用戶的驚喜度和滿意度
針對老客戶,通過購物車分析,推薦給客戶性價比更高的類似商品,提高用戶購物體驗的驚喜度和滿意度。
二、數(shù)據(jù)采集與數(shù)據(jù)準備
針對上述需求,我們最終的目的是將人、貨、場進行匹配,為此我們需要收集用戶、商場、商品的數(shù)據(jù)信息。包括:
商場信息:
物品信息:
三、推薦算法實現(xiàn)
整個推薦算法主要利用商場的用戶行為數(shù)據(jù),采用基于鄰域的用戶協(xié)同過濾和物品協(xié)同過濾。
1. 基于商場用戶的協(xié)同過濾算法
基于用戶的協(xié)同過濾算法基本上分成2步:
- 通過分析商場用戶歷史訂單信息,計算該用戶的行為向量,找到相似的用戶群體。
- 將相似群體所有購買過的物品列表中,從中過濾掉已購買的商品后,將未接觸的商品同步推送給用戶。
首先,計算用戶相似度,找到相似的人群,通過兩兩用戶對比,得出該對用戶的相似度。具體算法如下:
假設(shè)有A,B 2個用戶,A用戶曾購買過{a,b,d},B 用戶曾購買{a,c},我們約定:
- N(A):代表A用戶所購買過的物品清單;
- N(B):代表B用戶所購買過的物品清單;
- W(AB):代表A、B用戶的相似度值;
那么根據(jù)余弦相似度公式得出:
假設(shè)現(xiàn)在有一組這樣的用戶購買記錄數(shù)據(jù),如下圖所示:
A用戶購買了{a、b、d},B用戶購買了{a、c},C用戶購買了{b、e},D用戶購買了{c、d、e},
我們可以得出:
W(AB)=0.409;
W(AC)=0.409;
W(AD)=0.333;
根據(jù)A用戶與所有其他用戶的相似度值從高到低排序,依次為B、C、D,一般情況下我們會選取與A用戶最相似的K個用戶用來做推薦,假設(shè)此時取k=3時,那么就是將B、C、D用戶的所有物品減去A已經(jīng)購買過的物品,從而得出可推薦列表,即{c,e}。
此時推薦列表是一個無序列表,為提高推薦的精準度,我們需要計算出A對以上列表項中各個物品的喜愛程度,進而把最符合A興趣的物品進行推薦。
分別計算用戶A對c、A對e物品的喜愛程度:
根據(jù)公式:
w(uv)是指用戶u與用戶v的相似度,r(vi)是指用戶v對物品i的喜愛程度,此處默認 =1 得出:
p(A,c)=W(AB) +W(AD)=0.409+0.333=0.742;
P(A,e)=W(AC)+W(AD)= 0.409+0.333=0.742;
2. 基于物品的協(xié)同過濾算法
基于物品的協(xié)同過濾算法基本上分成2步:
- 計算該商場內(nèi)商品/店鋪的的相似物品/店鋪集;
- 根據(jù)商品/店鋪相似性以及用戶對該類商品/店鋪的喜愛程度,將權(quán)重最高的商品/店鋪推送給用戶。
在這里我們做一個約定:商品/店鋪相似度的計算思路基于用戶對物品喜愛的人數(shù),我們默認:對物品a、物品b喜歡的人數(shù)越多,那么兩個物品之間的相似度越大。
我們約定:
- N(a):代表喜歡物品a的用戶名單;
- N(b):代表喜歡物品b用戶名單;
- W(ab):代表a、b用戶的相似度值;
那么同樣利用余弦相似度:
假設(shè),在數(shù)據(jù)采集中,有這樣一組用戶數(shù)據(jù):
A:{a,b,d}
B:{b,c,e}
C:{c,d}
D:{b,c,d}
E:{a,d}
我們通過構(gòu)造矩陣來得出物品相似度矩陣:
那么物品a和b的相似度即:
W(ab)=0.409;
W(ac)=0;
W(ad)=0.707;
W(ae)=0;
W(bc)=0.667;
W(bd)=0.333;
W(be)=0.578;
W(ce)=0 ;
W(de)=0 ;
利用公式,計算出用戶u對一個物品j的興趣:
當K=3時,選出與a最相似的物品為b、c、d;與b最接近的物品為c、d、e;
3. 其他的混合推薦算法
選用基于用戶標簽、基于上下文信息和基于社交數(shù)據(jù)作為用戶興趣擴展推薦,從而豐富推薦系統(tǒng)的結(jié)果。
四、冷啟動問題處理
當系統(tǒng)剛剛發(fā)布上線,數(shù)據(jù)準備不充分,想做精細化的個性化推薦就面臨很大挑戰(zhàn),這時就需要尋找合適的方法解決系統(tǒng)啟動后無推薦數(shù)據(jù)的問題,一般針對這些問題我們可以從幾個方面入手:
- 利用用戶注冊信息,給用戶推薦相應(yīng)物品;
- 利用社交數(shù)據(jù),推薦給用戶其好友購買過和感興趣的物品;
- 讓用戶自行選擇自己感興趣的品類,根據(jù)品類信息推薦相應(yīng)數(shù)據(jù);
- 推薦熱門物品;
五、推薦系統(tǒng)的評估與迭代
一個商業(yè)推薦系統(tǒng)的評估一般是從用戶滿意度、預(yù)測準確度、覆蓋率、多樣性、新穎性、驚喜度、信任度、實時性、健壯性、商業(yè)目標幾個維度來考慮。
1. 用戶滿意度
用戶是推薦系統(tǒng)的重要參與者,用戶滿意是推薦系統(tǒng)優(yōu)化的追求的目標。判斷用戶是否滿意,我們可以從以下幾個方面著手:
- 用戶問卷調(diào)查,通過問卷的形式直接獲得用戶的感受;
- 數(shù)據(jù)統(tǒng)計,我們可以統(tǒng)計用戶購買推薦商品的比率,如果用戶購買了推薦的商品,那么就表示在一定程度上用戶是滿意的。
2. 預(yù)測準確度
推薦系統(tǒng)的準確度衡量是離線實驗計算,在計算該指標時需要有一個離線的數(shù)據(jù)集,該數(shù)據(jù)集包含了用戶的歷史行為記錄,然后將這個數(shù)據(jù)集分成訓(xùn)練集和測試集。最后將訓(xùn)練集的模型計算結(jié)果與測試集進行對比,將預(yù)測行為與測試集行為的重合度作為預(yù)測準確度。
例如在TopN推薦中,一般通過準確率和召回率來度量。令,R(u)表示在訓(xùn)練集中給用戶推薦列表;T(u)是測試集上行為列表。
那么召回率(Recall)=
而準確率(Precision)=
3. 覆蓋率
覆蓋率是考核推薦系統(tǒng)對物品長尾的發(fā)掘能力。即推薦的物品集占總物品集合的比例?;蛘吒氈乱稽c就是統(tǒng)計推薦不同物品出現(xiàn)的次數(shù)分布,如果所有物品都曾出現(xiàn)在推薦列表,并且出現(xiàn)的次數(shù)差不多,那么就說明該系統(tǒng)覆蓋率比較高。
4. 多樣性
多樣性要求推薦列表需要覆蓋用戶不同興趣領(lǐng)域,既要考慮用戶的主興趣點又要照顧到用戶其他的興趣,從而擴大用戶瀏覽量,提高訂單量。
5.? 新穎性
一般推薦結(jié)果的平均流行度度量新穎性比較粗略,如果要提高新穎性的準確度需要做用戶調(diào)查。
6. 驚喜度
驚喜度對推薦系統(tǒng)是更高的要求,它是基本意思是如果推薦結(jié)果和用戶的歷史興趣不相似但卻讓用戶覺得滿意。
7. 信任度
如果推薦結(jié)果的可解釋性能提高用戶的信任度,比如提示用戶,你的xx好友曾購買過該商品,這樣更能讓用戶對推薦的商品感興趣。
8. 實時性
如果推薦結(jié)果能夠根據(jù)用戶的行為實時發(fā)生變化,那么就說明該系統(tǒng)實時性比較好,當前很多公司采用流式計算來提高系統(tǒng)的實時響應(yīng)度。
9. 健壯性
眾所周知,絕大部分的推薦系統(tǒng)都是通過分析用戶的行為實現(xiàn)推薦算法的,那么如果有人惡意注入行為攻擊,很容易導(dǎo)致推薦結(jié)果的不準確,所以一個好的推薦系統(tǒng)需要有較強抵抗噪聲數(shù)據(jù)的能力。
10. 商業(yè)目標
推薦系統(tǒng)的結(jié)果要時時關(guān)注與商業(yè)目標是否一致,技術(shù)的驅(qū)動離不開業(yè)務(wù)的支持,一個能給公司帶來盈利的系統(tǒng)才能更加長久。
本文由 @alentain 原創(chuàng)發(fā)布于人人都是產(chǎn)品經(jīng)理,未經(jīng)許可,禁止轉(zhuǎn)載。
題圖來自 Unsplash,基于CC0協(xié)議。
一直覺得推薦系統(tǒng)在線上還有點用武之地,至于線下不說實施難度,就說這個必要性都有待商榷。我們逛線下商場一個重點就是逛,不在乎要買什么,就是漫無目的的逛,沒有人一進商城留瞅準目標,然后買完就走人,這類人少之又少
用戶場景:
1.商場一定距離,目標非消費
2.商場購物,按照當下時間推薦,例如改到飯點了或者可以去看場電影
3.根據(jù)用戶路線(一般商場分類都是按照樓層的),推薦熱門商店
這個線下推薦系統(tǒng)的業(yè)務(wù)場景是啥?有請作者給我們描述一個完整的用戶故事
幾個問題1.線下商場場景下,用戶通過什么場景來為你提供數(shù)據(jù)。(進商場提示下載關(guān)注等誘導(dǎo)前提條件得考慮,不然你這個方案沒法實現(xiàn))2.線下商場的物品做協(xié)同過濾算法和線上無差別。但是問題來了,實際上并不是每一個商戶都把商品數(shù)據(jù)共享給商場,也就是說沒法打通商場所有(大部分)商品數(shù)據(jù),然后就沒法滿足你的推薦場景3.線下商場設(shè)計商鋪位置是根據(jù)客流來進行調(diào)整以及品牌關(guān)聯(lián)度來設(shè)計。你這個推薦應(yīng)該考慮客流數(shù)據(jù)(可以理解為行為數(shù)據(jù)應(yīng)用但是這里的數(shù)據(jù)是通過啥來獲?。┖屯扑]的相關(guān)性~~最后線下商場的用戶行為數(shù)據(jù)和商場打通確實不容易,敢情實現(xiàn)起來還是很難~純感想
核心還是協(xié)同過濾,lbs只是一個緯度的數(shù)據(jù)呀