2014-11-24 222 views
3

新推薦系統必須具備什麼樣的推薦質量才能具有競爭力?現代推薦引擎有多好?

通過「推薦質量」我的意思是以下。比方說,推薦系統提供了用戶X項目。之後我問他,他或她真的喜歡多少人(可能會購買),結果表明他喜歡他們中的Y.建議質量爲Y/X(最佳可能值爲1,這意味着用戶喜歡所有推薦的項目)。

什麼質量的建議做

  1. 平均
  2. 最好

推薦系統擁有約?

更新1:Here(第64頁)作者寫道,2007年Netflix獎最高的2個算法分別實現了0.8914和0.8990的RMSE。

RMSE的定義可以在第63頁找到,但我沒有明白它的含義。

+0

不像你認爲的二進制,netflix競爭中的預測分數是1,2,3,4,5(netfix中使用的五星評級)。那麼使用RMSE作爲評估指標是有意義的。 – greeness 2014-11-24 14:38:40

+0

@greeness有沒有辦法以可訪問(非數學)的方式來解釋這些指標?這是什麼意思,如果算法的RMSE爲0?這是什麼意思,如果RMSE爲1? – 2014-11-24 14:51:05

+1

RMSE = 0意味着每個預測分數都是黃金的精確匹配。假設您有三部電影,其得分分別爲r1 = 2,r2 = 3,r3 = 5。如果你的預測正好是p1 = 2,p2 = 3,p3 = 5('r'爲黃金評級,'p'爲預測),你得到的RMSE評分爲0.然而,如果你的預測是p1 = 1,p2 = 4,p3 = 4,則得到總平方誤差1^2 + 1^2 + 1^2 = 3,RMSE = sqrt(3/3)= 1。所以如果平均而言,每個評級都偏離黃金級1,你得到1的RMSE誤差。 – greeness 2014-11-24 14:57:28

回答

2

你實際上在問一個很有意思的問題。學術界對於a)甚至意味着什麼是「良好」的建議,以及b)用於預測準確度的指標以及其他評估措施,仍存在熱烈的爭論。

你問:

不平均,最好的推薦系統有什麼質量推薦的約?

答案是 - 它取決於很多不同的事情。簡而言之,推薦系統通常沒有真正的「平均」或「最佳」,但您可以找到特定推薦系統的基準 - 例如電影推薦系統。

爲了幫助給你多一點背景:

均方根誤差作爲預測精度的測量。即給定一套物品(麪包,牛奶,咖啡,橙汁),系統能夠如何預測我對這些物品的評分,或者它能夠預測我將如何購買這些物品。

當您有一組用戶對一組項目的預測評分時,您可以使用RMSE,並且您也對這些項目有實際評分。您通常會在真實數據集的「離線」實驗中使用RMSE。在這個過程中,你會「隱藏」一些真實的評級,看看系統是否可以預測隱藏的評級。 RMSE的「錯誤」部分是預測評級與實際評級之間的差異。然後每個錯誤先被平方,然後這個用戶的項目集合中這些錯誤的平均值取平均值部分,然後取平方根(名稱的根部分)。由於RMSE首先對誤差進行平方,與其他準確度度量(如平均絕對誤差(MAE))相比,它會不成比例地懲罰較大的誤差。

作出一個很好的建議,而不僅僅是做出準確的預測。這就是爲什麼沒有標準/平均數字。有一系列不同的指標可用於準確性,然後準確性只是衡量推薦系統效率的一小部分,而其他部分都有多個指標可供使用!這也取決於你推薦的物品。推薦某人與某人約會,與推薦在線購買什麼食物幾乎沒有什麼相同之處。我已經看到0.8+ RMSE的電影推薦者得分和0.2+ RMSE推薦工作的得分。

我建議你閱讀下面的文件,如果你想獲得更好的(沒有數學)欣賞到評估推薦系統的複雜性:

Herlocker,Konstan,Terveen,Diedl - 「評估協同過濾推薦系統」 (2004) - 是一篇很好的論文,開始欣賞可用於評估RS性能的不同方法。

另一個好紙麥克尼,裏德爾和Konstan - 「精度不總是好的:如何準確度量有傷害推薦系統」(2006年)

1

對於一個好的,快速,徹底定製的推薦引擎,我可能會建議http://www.sajari.com。它提供了根據地區,流行度,數據相似性,新近程度和更多因素推薦來自給定數據集的建議結果的能力 - 從本質上定製您自己的推薦引擎。一個好的推薦系統至少需要這些東西具有競爭力,海事組織,最重要的是它不是一個黑匣子,你可以控制輸出。