簡體   English   中英

Apache Mahout - 我應該用它來構建自定義推薦器嗎?

[英]Apache Mahout - should I use it to build a custom recommender?

我正在迭代地構建基於頻繁變化的概率潛在因子模型的定制推薦系統。 我已經編寫了一些實現該模型的Java代碼。 它將用戶項目評級矩陣分解為兩個矩陣UxK(用戶特征向量)和IxK(項目特征向量)以估計缺失的評級。

我正在尋找最簡單的方法來插入(可能通過重寫)我的代碼到框架中構建推薦系統,基線,並能夠以標准方式相互比較這些 - 例如交叉驗證來計算精度,召回,RMSE ......由於我的系統仍然缺乏這個,框架應該提供基於估計的用戶項目評級矩陣來計算和提出建議的方法。

看起來Mahout應該做的工作。 但是,它的文檔說“它目前不支持基於模型的推薦器。” 任何人都可以告訴我,我想要實現的是Mahout是否可以實現,以及是否值得花時間學習如何使用它。 如果Mahout不合適,您能否提出其他選擇?

非常感謝!

我會說你最好在Mahout郵件列表中詢問好伙伴

也就是說,Mahout提供了基於SVD的推薦器,它們使用不同的因子來進行矩陣計算。 例如,ALSWRFactorizer支持2種模式:

  1. 對顯式反饋評級矩陣進行因式分解。 見紙
  2. 分解隱式反饋變量。 見紙

通過實現自己的推薦器(擴展AbstractRecommender)或實現自己的分解器(擴展AbstractFactorizer)來擴展功能應該很容易。 盡管如此,如果不了解更多關於您的方法或實施情況,我真的不能說更多。

有兩類推薦器:基於數據(基於模型為特定用戶生成推薦,例如SVD)(生成模型以通過用戶數據構建推薦,例如RBM)

Mahout不支持基於模型的推薦器(沒有適當的接口來實現)你可以實現一些算法,但開箱即用的你將無法使用基於模型的方法的某些功能。

順便說一下,我更喜歡MyMediaLite(如果你的數據集小到足以避免Hadoop)。 MML支持集合,並且有更多算法。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM