1.1什么是推薦系統(tǒng)
用戶利用推薦系統(tǒng)發(fā)現(xiàn)自己感興趣的信息;同時信息制造者用推薦系統(tǒng)將信息展現(xiàn)在對它感興趣的用戶面前。
關(guān)聯(lián)用戶和物品,解決信息過載的問題
tips:
信息過載
不需用戶提供明確的需求
社會化推薦(social recommendation)
基于內(nèi)容的推薦(content-based filtering)
協(xié)同過濾的推薦(collaborative filtering)
1.2推薦系統(tǒng)有那些實例
推薦系統(tǒng) = 前臺的展示頁面 + 后臺的日志系統(tǒng) + 推薦算法系統(tǒng)
電子商務:亞馬遜
FB好友購買過的
和歷史購買相似的
瀏覽過該商品經(jīng)常購買的
購買過該商品經(jīng)常購買的
打包銷售(cross selling):其他用戶購買該商品時同時也會購買的幾種商品,打包購買提供折扣。
電影和視頻網(wǎng)站:Netflix
推薦要素:視頻標題,縮略圖,視頻的平均分,推薦理由,用戶反饋模塊
個性化音樂網(wǎng)絡電臺:豆瓣FM,Pandora,Last.fm
Pandora:基于內(nèi)容
Last.fm:綜合算法
音樂推薦的特點:
物品空間大
消費每首歌的代價小
物品種類豐富
聽一首歌耗時很短
物品重用率很高
上下文相關(guān):用戶心情,所處的環(huán)境,時間
次序很重要
播放列表資源
不需要全神貫注
高度社會化:用戶和好友間的相互推薦
社交網(wǎng)絡:Facebook,Twitter
利用用戶的社交網(wǎng)絡信息對用戶進行個性化的物品推薦
信息流的會話推薦
給用戶推薦好友
個性化閱讀:鮮果,zaker,filpboard,zite
基于位置的服務:Foursquare
個性化郵件:Gmail的優(yōu)先級郵箱
區(qū)分郵件的重要程度
個性化廣告:
以廣告為核心,將廣告展現(xiàn)給對其感興趣的用戶。
上下文廣告:通過用戶正在瀏覽的廣告內(nèi)容,投放和網(wǎng)頁相關(guān)的廣告。Google Adsense。
搜索廣告:分析用戶在當前會話中的搜索記錄,判斷用戶的搜索目的,投放和用戶目的相關(guān)的廣告。
個性化展示廣告:根據(jù)用戶的興趣投放不同的展示廣告。
1.3如何對推薦系統(tǒng)做評估
推薦系統(tǒng)的參與方:用戶,推薦內(nèi)容提供方,提供推薦系統(tǒng)的網(wǎng)站。三方受益共贏是評測的依據(jù)。
推薦系統(tǒng)評估指標:
準確度
覆蓋度
新穎度
驚喜度
信任度
透明度
1.3.1 推薦系統(tǒng)實驗方法
離線實驗(offline experiment):
通過日志系統(tǒng)獲得用戶行為數(shù)據(jù),生成按一定格式的標準數(shù)據(jù)集
將數(shù)據(jù)集按一定規(guī)則分成訓練集和測試集
在訓練集上訓練用戶興趣模型,在測試集上進行預測
通過事先定義的離線指標評測算法在測試集上的預測結(jié)果

用戶調(diào)查(user study)
真實用戶在需要測試的系統(tǒng)上完成一些任務,觀察并記錄他們的行為,分析他們的行為和答案了解測試系統(tǒng)的性能。
tips:
控制成本,保證結(jié)果的統(tǒng)計意義,選擇合理的測試用戶(保證測試用戶和真實用戶的分布相同)
在線實驗(Online experiment)
AB測試:用戶分組,不同的組加載不同的算法,統(tǒng)計評測指標評估算法效果。
tips:
切分流量:不同層以及控制這些層的團隊需要從一個統(tǒng)一的地方獲得自己AB測試的流量,而不同層的六兩應該是正交的。

一般來說,一個新的推薦系統(tǒng)上線需要完成以上三個實驗:
首先,通過離線試驗證明他很多離線指標優(yōu)于現(xiàn)有算法
然后,通過用戶調(diào)查確定它的用戶滿意度不低于現(xiàn)有算法
最后,在線AB測試確定在關(guān)鍵指標上優(yōu)于現(xiàn)在的算法
1.3.2 評測指標
1. 用戶滿意度
用戶滿意度只能通過在線實驗和用戶調(diào)查獲得。
用戶調(diào)查采取問卷形式,注意問卷設計時考慮到用戶各方面的感受,才能根據(jù)問題給出自己準確的回答
在線實驗主要通過統(tǒng)計用戶行為的方法和設計用戶反饋界面收集用戶滿意度。
2. 預測準確度
預測準確度度量一個推薦系統(tǒng)或者推薦算法預測用戶行為的能力。這個指標是最重要的推薦系統(tǒng)立憲評測指標。
評分預測
各網(wǎng)站的打分功能——得知用戶的打分歷史,習得興趣模型——預測用戶對某內(nèi)容的評分
評分預測的準確度一般通過均方根誤差(RMSE)和平均絕對誤差(MAE)計算。
關(guān)于RMSE和和MAE的優(yōu)缺點。RMSE的系統(tǒng)評測更為嚴苛(平方項)。
TopN推薦
給用戶一個個性化的列表,TopN預測的準確率一般通過準確率(precision)/召回率(recall) 度量。




3. 覆蓋率(coverage)
覆蓋率描述一個推薦系統(tǒng)對物品長尾的發(fā)掘能力。最簡單的定義為推薦系統(tǒng)能夠推薦出的物品占總物品集合的比例。
定義:系統(tǒng)的用戶集合為U,推薦系統(tǒng)給每個用戶推薦一個長度為N的物品列表R(u)。那么覆蓋率可通過下面公式計算:

信息熵
基尼系數(shù)
馬太效應:強者越強,弱者越弱
評測推薦系統(tǒng)是否具有馬太效應的簡單方法就是使用基尼系數(shù)。若G1是從初始用戶行為中計算出的商品流行度基尼系數(shù),G2是采用推薦算法后計算出的商品流行度基尼系數(shù)。G2 > G1的話,說明推薦算法具有馬太效應。


4. 多樣性
多樣性即推薦結(jié)果需要覆蓋用戶不同的興趣領(lǐng)域。這樣用戶找到自己興趣點的概率就會大很多。
多樣性描述了推薦列表中物品兩兩之間的不相似性。
5. 新穎性
新穎的推薦是指推薦給用戶他們一千年從來沒有聽說過的物品。
如果推薦物品列表的物品平均流行度(熱門程度)低,那么推薦結(jié)果可能就具有新穎度。
tips:
平衡推薦精度和多樣性,新穎度。
6. 驚喜度(serendipity)
驚喜度和新穎度的區(qū)別在于:如果推薦結(jié)果和用戶的歷史興趣不相似,卻讓用戶覺得滿意,那么就可以說推薦的驚喜度很高,而推薦的新穎性僅僅取決于用戶是否聽過這個推薦結(jié)果。
7. 信任度(trust)
度量推薦系統(tǒng)的信任度只能通過問卷調(diào)查的方式,詢問用戶是否信任推薦系統(tǒng)的推薦結(jié)果。
8. 實時性
推薦系統(tǒng)的實時性包括兩個方面。首先,推薦系統(tǒng)需要實時的更新推薦列表來滿足用戶新的行為變化。第二,推薦系統(tǒng)需要能夠?qū)⑿录尤胂到y(tǒng)的物品推薦給用戶。(避免冷啟動)
9. 健壯性(robust)
健壯性衡量了一個推薦系統(tǒng)防作弊的能力。
10. 商業(yè)目標
各個公司的商業(yè)目標不同,推薦系統(tǒng)的設計與評測就會不同。