天天看點

《推薦系統》--混合推薦、解釋及如何評估推薦系統混合推薦方法推薦系統的解釋評估推薦系統案例分析:移動網際網路個性化遊戲推薦

《Recommender System An Introduction》,第五章,混合推薦方法。

《Recommender System An Introduction》,第六章,推薦系統的解釋。

《Recommender System An Introduction》,第七章,評估推薦系統。

混合推薦方法

如何進行混合推薦,要考慮兩個問題:基礎的推薦理論架構和系統的混合設計,也就是組合兩個以上算法的方法。

推薦理論架構

推薦問題通常可以轉換成效用函數rec,預測物品集合I中得物品i對整個使用者級U中某個特定使用者u的有用性。

效果指的是物品滿足某種抽象目标的能力,比如最好地滿足使用者假定需求,或者是最大地提高零售商的轉化率。是以,推薦算法的預測任務就是推算給定使用者和物品的效用分數。

基于效用或基于知識的推薦系統,可以直接從先驗的效用機制中得到效用分數值,而協同過濾方法根據群體的評分預測效用分數。

3種主要的推薦理論架構:

(1)協同過濾。協同過濾原理假設人以類聚,大家有着相似的行為,需求和偏好也差不多。協同推薦的任務就是确定相似的對等者,從他們喜歡的物品中得到推薦結果。

(2)基于内容的理論架構遵循“以不變應萬變”的方法,根據使用者過去喜歡的物品推薦相似的物品。

(3)基于知識的推薦,認為會有額外的資訊源,即顯式的個性化知識。

選擇哪種推薦理論架構決定了要輸入資料的類型:

理論架構 使用者記錄和上下文參數 群體資料 産品特征 知識模型
協同過濾
基于内容
基于知識

混合設計

這是混合算法的第二個特點,可以概括成三種基本設計思路:整體式、并行式、流水線式。

關于混合設計,既有一些權重算法或者其他計算方法的支撐,也有很多基于淺層混合上的了解,很多情況,可以從從實際場景出發,從淺層的基于補充層面的混合開始,逐漸加深。

推薦系統的解釋

解釋是一種在溝通過程中進行交流的資訊。

為什麼推薦系統需要給出解釋:賣家想要宣傳特定的産品,而買家則比較關心做出正确的購買決策。解釋是一項重要的資訊,可以幫助兩者在交流過程中提高各自的業績和效率。

從實用角度來看,在推薦過程中提供解釋的主要目的可以列舉如下:

(1)透明性

(2)正确性

(3)可信度

(4)說服力

(5)有效性

(6)效率

(7)滿意度

(8)關聯度

(9)可了解性

(10)教育

以下幾個因素會影響到推薦系統在與接受方溝通時的解釋生成:

(1)需要解釋的資訊項

(2)提供(接受)解釋的目的

(3)接受方的模型,包括其行為與知識

(4)溝通的狀态,指交換的資訊,包括提供的推薦

在基于限制、基于執行個體、協同過濾的推薦系統中,對于解釋,都有各自的比較标準的解釋方法,基于時間的原因,具體的、詳細的内容,這次看書的過程先略過,留待下一步,如果有機會。

評估推薦系統

推薦系統通常采用離線實驗進行評估,設法用已有的交易資料集來估計推薦結果的預測誤差。有人指出這種方法有局限,也有人認為推薦系統的品質根本就不可直接衡量,因為有太多不同的目标函數。

不管怎樣,推薦系統已在廣泛應用,必須要有科學的方法實際準确地評估其對于使用者的真實效果和作用。

本節介紹了一些評估公式,考慮了實驗對象、研究方法、環境,重點讨論了如何在曆史資料集上進行實驗評估,并讨論了衡量推薦結果準确率或覆寫率的不同方法以及衡量名額。

Netflix算法大賽的評估辦法,就是基于曆史資料,采用均方根誤差(RMSE)算法進行衡量的,是離散數學的知識。

在實際的生産中,我們較少采用這些實驗室方法,而是用真實、客觀的結果資料,進行A/B測試評估推薦的效果,這樣做的原因也可能是因為:直覺、簡單。

實驗方法

一般說來,一個新的推薦算法最終上線,需要完成如下的3個實驗(理想狀況哈:)):

(1)首先,需要通過離線實驗(offline experiment)證明它在很多離線名額上優于現有的算法;

(2)然後,需要通過使用者調查(user study)确定它的使用者滿意度不低于現有的算法;

(3)最後,通過線上(online experiment)的AB測試确定它在我們關心的名額上優于現有的算法

評測名額

(1)使用者滿意度:使用者滿意度作為推薦系統的重要參與者,其滿意度是評測推薦系統的重要名額。使用者滿意度沒有辦法離線計算,隻能通過使用者調查或線上實驗獲得。

(2)預測準确度:度量一個推薦系統或者推薦算法預測使用者行為的能力。這個名額是最重要的推薦系統離線評測名額,幾乎99%與推薦相關的論文都在讨論這個名額。這抓喲是因為該名額可以通過離線實驗計算,友善了很多學術界的研究人員研究推薦算法。簡單說,就是訓練集和預測集的對照。

a、對于評分預測,其預測準确度一般通過均方根誤差(RMSE)和平均絕對誤差(MAE)計算

b、對于TopN推薦,其預測準确度一般通過準确率(precision)/召回率(recall)度量

(3)覆寫率(coverage):描述一個推薦系統對物品長尾的發掘能力

(4)多樣性:需要覆寫使用者不同的興趣領域

(5)新穎性:給使用者推薦那些他們以前沒有聽說過的物品

(6)驚喜度(serendipity):不相似而滿意

(7)信任度:同樣地推薦結果,以讓使用者信任的方式推薦給使用者就更能讓使用者産生購買欲,而以類似廣告形式的方法推薦給使用者就可能很難讓使用者産生購買的意願。

提高推薦系統的信任度主要由兩種方法:

a、增加推薦系統的透明度(transparency)。增加透明度的主要辦法是提高推薦解釋。使用者了解了推薦的運作機制,認同了,才會提高信任度

b、考慮使用者的設計網絡資訊,利用使用者的好友資訊給使用者做推薦,并且用好友進行推薦解釋

(8)實時性:特定物品需要實時性,比如新聞、微網誌等

(9)健壯性:衡量一個推薦系統抗擊作弊的能力

(1)商業目标:比如,對于電商,目标是銷售額,對于廣告,可能是展示或點選。

擷取各種評測名額的途徑

離線實驗 問卷調查 線上實驗
使用者滿意度 ×
預測準确度 ×
覆寫率
多樣性
新穎性
精細度 × ×

案例分析:移動網際網路個性化遊戲推薦

對于一個線上零售商而言,重要的性能名額包含:

(1)提高轉化率,即如何将網站通路者轉化為實際購買者;

(2)如何影響通路者,讓他們買更多可賺錢的物品。

通過對一個移動網際網路個性化遊戲推薦的7種不同算法:CF、Slope One、基于内容、混合、Top-Rating(非個性化:根據物品的評價評分)、熱銷(非個性化:根據熱銷)、對照組(非個性化:按照日期最新),比較7種不同算法,評估的重點是以下假設:

(1)H1:個性化推薦能吸引更多地使用者到詳細産品資訊頁面(物品浏覽轉化率)

(2)H2:個性化推薦有助于将更多通路者變成購買者(銷售轉化率)

(3)H3:個性化推薦促使單個使用者浏覽更多物品

(4)H4:個性化推薦促使單個使用者購買更多物品

對于H1、H2,7種算法差别細微,是以額外采用個性化推薦清單并不會增加門戶網站通路者浏覽或購買物品的數量;對于H3、H4(提高每個使用者浏覽及購買物品的數量),所有的個性化算法都要勝過非個性化的熱銷清單和對照組。

總體上說:當使用者沒有對某種類型有強烈預期時(比如“我的推薦品牌”),協同過濾方法(也推薦使用者之前沒有見過的類别)表現的特别好;在一些其他的情況,使用者更喜歡他們已經知道的遊戲子類别的推薦結果。。。

最重要的結論是:在實際銷售方面基于内容和基于物品的方法明顯比其他方法要好。總而言之,可以确認推薦系統能夠在整個平台上促使整體銷量有超過3%的可觀提升。

繼續閱讀