1.1 什麼是推薦系統算法
80/20原則:80%的銷售額來自於20%的熱門品牌網絡
不熱門的商品數量極其龐大,這些長尾商品的總銷售額將是一個不可小覷的數字,也許會超過熱門商品帶來的銷售額。性能
主流商品表明了絕大多數用戶的需求,而長尾商品表明了一小部分用戶的個性化需求。測試
推薦系統經過發掘用戶的行爲,找到用戶的個性化需求,從而將長尾商品準確地推薦給須要它的用戶,幫助用戶發現那些他們感興趣但很難發現的商品。網站
社會化推薦:朋友推薦日誌
基於內容的推薦:經過分析用戶曾經看過的電影找到用戶喜歡的演員和導演。視頻
基於協同過濾的推薦:找到和本身歷史興趣類似的一羣用戶,獲得更能符合本身興趣的電影。。io
1.2 個性化推薦系統的應用電商
全部推薦系統應用都是由前臺的展現頁面、後面的日誌系統以及推薦算法系統3部分構成。擴展
1.2.1 電子商務
1.2.2 電影和視頻網站
1.2.3 個性化音樂網絡電臺
1.2.4 社交網絡
1.2.5 個性化閱讀
1.2.6 基於位置的服務
1.2.7 個性化郵件
1.2.8 個性化廣告
1.3 推薦系統評測
好的推薦系統不只僅可以準確預測用戶的行爲,並且可以擴展用戶的視野,幫助用戶發現那些他們可能會感興趣,但卻不那麼容易發現的東西。
同時,推薦系統還要可以幫助商家將那些被埋沒在長尾中的好商品介紹給可能會對它們感興趣的用戶。
1.3.1 推薦系統實驗方法
1.離線實驗
(1)經過日誌系統得到用戶行爲數據,並按照必定格式生成一個標準的數據集
(2)將數據集按照必定的規則分紅訓練集和測試集
(3)在訓練集上訓練用戶興趣模型,在測試集上進行預測
(4)經過事先定義的離線指標評測算法在測試集上的預測結果
優勢: 不須要有對實際系統的控制權
不須要用戶參與實驗
速度快,能夠測試大量算法
缺點: 沒法計算商業上關心的指標
離線實驗的指標和商業指標存在差距
2.用戶調查
3.在線實驗
A/B測試:經過必定的規則將用戶隨機分紅幾組,並對不一樣的組的用戶採用不一樣的算法,而後經過統計不一樣組用戶的各類不一樣的評測指標比較不一樣算法,好比能夠統計不一樣組用戶的點擊率,經過點擊率比較不一樣算法的性能。
優勢:能夠公平得到不一樣算法實際在線時的性能指標
缺點:週期長,必須進行長期實驗才能獲得可靠的結果
一個新的推薦算法上線,須要完成
(1)離線實驗
(2)用戶調查滿意度
(3)AB測試
1.3.2 評測指標
1.用戶滿意度
電商:用戶是否購買,即購買率
反饋:滿意/不滿意
還能夠經過點擊率、用戶停留時間、轉化率等度量用戶的滿意度
2.預測準確度:最重要的推薦系統離線評測指標
(一)評分預測:預測用戶對物品的評分。通常RMSE和MAE計算。
Netflix認爲RMSE加大了對預測不許的用戶物品評分的懲罰(平方)。
研究代表,若是評分系統是基於整數創建的,那麼對預測結果取整會下降MAE的偏差。
(二)TopN推薦:通常經過準確率/召回率度量
通常是選取不一樣的推薦列表長度N,計算出一組準確率/召回率,畫出準確率/召回率曲線
(三)覆蓋率:描述一個推薦系統對物品長尾的發掘能力,能夠採用熵和基尼係數
一個好的推薦系統不只須要有比較高的用戶滿意度,也要有較高的覆蓋率
若是全部的物品都出如今推薦列表中,且出現的次數差很少,那麼推薦系統發掘長尾的能力就很好。
排行榜和PageRank算法都有馬太效應。推薦系統的初衷是要消除馬太效應,使得各類物品都能被展現給對它們感興趣的某一類人羣。
評測推薦系統是否具備馬太效應的簡單辦法就是使用基尼係數。若是G1是初始用戶行爲中計算出來的物品流行度的基尼係數,G2是從推薦列表中計算出的物品流行度的基尼係數,若是G2>G1,說明推薦算法具備馬太效應。
(四)多樣性:描述推薦列表中物品兩兩之間的不類似性。
(五)新穎性:給用戶推薦那些之前沒據說的物品。
評測新穎性的最簡單方法是利用推薦結果的平均流行主芭,由於越不熱門的物品越可能讓用戶以爲新穎。所以,若是推薦結果中物品的平均熱門程度較低,那麼推薦結果就可能有比較高的新穎性。
(六)驚喜度
若是推薦結果和用戶的歷史興趣不類似,但卻讓用戶以爲滿意,那麼就能夠說推薦結果的驚喜度很高,而推薦的新穎性僅僅取決於用戶是否據說過這個推薦結果。
令用戶驚嘉的推薦結果是和用戶歷史上喜歡的物品不類似,但用戶卻以爲滿意的推薦,那麼,定義驚喜度須要首先定義推薦結果和用戶歷史上喜歡的物品的類似度,其次須要定義用戶對推薦結果的滿意度。
提升推薦驚喜度須要提升推薦結果的用戶滿意度,同時下降推薦結果和用戶歷史興趣的類似度。
(七)信任度
例:Epinion推薦系統,當用戶在Epinion上瀏覽一個商品時,會經過用戶評論判斷是否購買該商品,Epinion爲了防止垃圾評論或者廣告評論影響用戶的決策,在每條用戶評論的右側都顯示了評論做者的信息,而且讓用戶判斷是信任該評論人仍是將他加入黑名單。若是網站具備Epinion的用戶信任系統,那麼能夠在給用戶作推薦時,儘可能推薦他信任的其餘用戶評論過的物品。
(八)實時性
若是推薦列表在用戶有行爲後變化不大,或者沒有變化,說明推薦系統的實時性不高。
(九)健壯性