《推薦系統實踐》要點筆記(一):好的推薦系統
一、需求背景
信息過載,消費者無明確目的/需求,生產者缺乏曝光機會
二、需求背景影響因素
- 對象數量、空間;
- 對象種類多少;
- 單位對象消費代價/成本(金錢、時間、專註);
- 重複消費率高低;
- 單位用戶消費量;
- 與context情境/場景/上下文的相關性;
- 消費習慣(順序等);
- 社會化程度/社交屬性。
社交產品的核心價值:用戶個人基本信息、行為偏好;用戶的社交關係鏈
個性化廣告:上下文廣告;搜索廣告;個性化展示廣告
三、推薦系統評價標準與角度
- 準確度、覆蓋度、新穎度、驚喜度、信任度、透明度;
- 對於消費者、生產者、運營平台三方;
- 效率、公平、商業價值。
四、推薦系統實驗方法
1. 離線實驗:
步驟:
(1) 通過日誌系統獲得用戶行為數據,並按照一定格式生成一個標準的數據集;(2) 將數據集按照一定的規則分成訓練集和測試集;(3) 在訓練集上訓練用戶興趣模型,在測試集上進行預測;(4) 通過事先定義的離線指標評測演算法在測試集上的預測結果。優點:不需要承擔線上試錯的風險,不需要真實用戶參與,快速測試大量演算法不斷試錯優化。
缺點:離線測試指標與真實商業指標差距較大,無法獲得很多商業上關注的指標,如點擊率、轉化率、用戶滿意度。
2. 用戶調查
3. 在線實驗:AB測試http://www.abtests.com/ 可以公平獲得不同演算法實際在線時的性能指標;周期比較長,必須進行長期的實驗才能得到可靠的結果。
五、評測指標
1.用戶滿意度:評測推薦系統的最重要指標,無法離線計算。
bad cases:未命中興趣;命中興趣,但已重複或已過時;命中興趣,但不喜歡或不贊成。度量標準:反饋不喜歡及其原因;點擊率、用戶停留時間和轉化率。2.預測準確度:最重要的推薦系統離線評測指標
評分預測:均方根誤差(RMSE)和平均絕對誤差(MAE)TopN 推薦:準確率( precision ) / 召回率( recall );準確率 / 召回率曲線( precision/recall curve )
召回率:所有用戶預測集和實際集交集的絕對值之和除以所有用戶實際集的絕對集之和準確率:所有用戶預測集和實際集交集的絕對值之和除以所有用戶預測集的絕對集之和
3. 覆蓋率:對物品長尾的發掘能力
。研究物品在推薦列表中出現次數的分布:信息熵、基尼係數(評測推薦系統是否具有馬太效應)4. 多樣性:描述了推薦列表中物品兩兩之間的不相似性
在多樣性和準確率之間權衡5. 新穎性:最簡單方法是利用推薦結果的平均流行度,因為越不熱門的物品越
可能讓用戶覺得新穎6. 驚喜度(serendipity):如果推薦結果和用戶的歷史興趣不相似,但卻讓用戶覺得滿意,那麼就可以說推薦結果的驚喜度很高,而推薦的新穎性僅僅取決於用戶是否聽說過這個推薦結果。
首先定義推薦結果和用戶歷史上喜歡的物品的相似度,其次需要定義用戶對推薦結果的滿意度7. 信任度:只能通過問卷調查的方式,詢問用戶是否信任推薦系統的推薦結果。
增加推薦系統的透明度( transparency ):提供推薦解釋
考慮用戶的社交網路信息:利用用戶的好友信息給用戶做推薦,並且用好友進行推薦解釋8. 實時性:針對用戶新的行為即時反應變化;處理新物品冷啟動
9. 健壯性:衡量一個推薦系統抗擊作弊的能力。
利用模擬攻擊,注入雜訊數據,比較攻擊前後推薦列表的相似度評測演算法的健壯性。選擇健壯性高的演算法;設計推薦系統時盡量使用代價比較高的用戶行為;在使用數據前,進行攻擊檢測,從而對數據進行清理。10. 商業目標
離線優化:在給定覆蓋率、多樣性、新穎性等限制條件下,盡量優化預測準確度
六、評測維度
- 用戶維度:用戶的人口統計學信息、活躍度以及是不是新用戶等
- 物品維度:物品的屬性信息、流行度、平均分以及是不是新加入的物品等
- 時間維度:季節,是工作日還是周末,是白天還是晚上等
不同維度下的系統評測指標,能幫我們全面地了解推薦系統性能
推薦閱讀: