2014-11-25 71 views
-1

我使用亨利馬烏Apache來寫一個項目基於推薦(基於類似的項目評級由用戶),我想知道它下面的兩個相似性指標將是最好的使用方法:項目基於相似度計量

皮爾遜,斯皮爾曼,歐幾里得,谷本和Loglikelihood

+0

你看到答案了嗎?它回答你的問題嗎?當有人幫助你時,你應該欣賞這種努力。 – 2014-12-17 12:23:21

回答

0

如果你有偏好值,你應該使用人際關係或歐幾里德距離相似度量度。如果你沒有偏好值,你應該使用Tanimoto係數或Loglikelihood。要選擇縮小範圍中的哪一個,應對數據集執行評估。這就是爲什麼使用mahout的評估框架。您可以評估許多指標,如均方誤差(MSE),絕對均方誤差,精度,召回,MAP ...

我已經編碼調整後的餘弦相似度,皮爾遜相關性的變體給出了更好的結果,但其比較慢。

+0

關於「調整後的餘弦相似度」:Mahout沒有爲此提出任何標準方法?我正在構建一個基於項目的推薦人,但我應該將用戶的評級偏見考慮在內,並且我找不到可以「開箱即用」的功能。你知道嗎? – PLB 2015-04-02 17:13:19

+1

創建您自己的調整餘弦相似性非常容易。只需擴展ItemSimilarity類,並查看PearsonCorrelationSimilarity,如果您有問題,請打開新問題,我將粘貼我創建的代碼。這裏沒有空間。 – 2015-04-14 07:18:05

+0

謝謝。我實際上已經創建了這個問題:http://stackoverflow.com/questions/29419222/mahout-adjusted-cosine-similarity-for-item-based-recommender。 Mahout的郵件列表中的人告訴我這是一個非常糟糕的做法,但編碼並沒有意義。所以我甚至沒有嘗試,因爲我沒有時間。但是如果你想粘貼你的代碼,我一定會看看! – PLB 2015-04-14 08:59:39