文章目錄
- 1. RecoGym
- 2. RecSim
- 3. Lenskit
- 4. Recommenderlab
- 5. MyMediaLite
- 6. Python-Recsys
- 7. Waffles
- 8. LightFM
- 9. Sparrow RecSys
- 10. Mahout
- 11. GraphLab Create
1. RecoGym
RecoGym是一個側重于強化學習的推薦系統模擬環境,它提供了一個統一的推薦框架,用于將經典推薦演算法和強化學習方法結合起來進行推薦,RecoGym擁有進行離線和在線實驗的功能,這讓推薦系統演算法的研究人員可以更好地把握推薦演算法的各項性能指標,現在RecoGym已經是推薦系統研究領域知名的模擬仿真器,
原始文獻:RecoGym: A Reinforcement Learning Environment for the problem of Product Recommendation in Online Advertising. https://arxiv.org/abs/1808.00720
專案地址:https://github.com/criteo-research/reco-gym
2. RecSim
RecSim是由Google的作業人員開發的一套可自定義的推薦系統模擬環境,與RecoGym一樣,它側重于強化學習方法在推薦系統中的實踐,適合模擬連續互動式推薦問題,RecSim的目的并不在于搭建一個完美的通用模擬器,更多的是專注于模擬真實情況下用戶的行為,作為一個開源平臺,RecSim為強化學習和推薦系統交叉領域的研究人員和從業者提供了一個開發、評估和比較推薦演算法的強大的工具,
原始文獻:RecSim: A Configurable Simulation Platform for Recommender Systems. https://arxiv.org/abs/1909.04847
專案地址:https://github.com/google-research/recsim
3. Lenskit
LensKit是一個用于試驗和研究推薦系統的模擬環境,由GroupLens團隊開發、PIReT團隊維護,其中GroupLens團隊是推薦領域知名的測驗資料集MovieLens和BookLens的作者,目前LensKit有Java(已停止維護)和Python兩個版本,LensKit提供了很多用于構建、研究和研究推薦系統的工具,這使得LensKit可以以適合于教育和研究的靈活方式,為培訓、運行和評估推薦演算法提供強有力的支持,
原始文獻:LensKit for Python: Next-Generation Software for Recommender Systems Experiments. https://arxiv.org/abs/1809.03125
專案地址:https://github.com/lenskit/lenskit
4. Recommenderlab
Recommenderlab是一個基于R語言的推薦系統框架,它提供了用于研究和研究推薦演算法的基礎結構,Recommenderlab實作了許多基礎的推薦演算法,同時允許用戶開發和使用自己的推薦演算法,基于該框架開發的推薦系統,代碼會非常精簡,但是在實際應用Recommenderlab的靈活性稍顯不足,
原始文獻:recommenderlab: A Framework for Developing and Testing Recommendation Algorithms. https://cran.r-project.org/web/packages/recommenderlab/vignettes/recommenderlab.pdf
專案地址: https://github.com/mhahsler/recommenderlab
5. MyMediaLite
MyMediaLite是一款輕量級的推薦系統演算法功能庫,MyMediaLite內含數十種不同的推薦演算法,可以支持大多數模型的增量訓練,除此之外,它還包括了一組推薦演算法的評估程式,可以對例如MAE、NAME、RMSE等多種推薦演算法的性能指標進行詳細評估,該專案的核心代碼小而緊湊,大小僅275KB,專案運行在.NET平臺上,擁有良好的可移植性,
原始文獻:MyMediaLite: A Free Recommender System Library. https://www.ismll.uni-hildesheim.de/pub/pdfs/Gantner_et_al2011_MyMediaLite.pdf
專案地址:https://github.com/zenogantner/MyMediaLite
6. Python-Recsys
Python- Recsys是一個基于Python開發的輕量級的開源推薦系統,實作了一些矩陣分解演算法,例如奇異值分解,在Python-Recsys中可以通過標準性能指標評估結果來找到最佳的推薦演算法調整引數,在使用方面,Python-recsys充分利用了Numpy和Scipy兩個庫的功能,使得專案簡單清晰、代碼簡潔,檔案資料也很豐富,雖然該專案規模小功能不多,但是主要的評估資料(Movielens,Last.fm)和評估程式該系統都已經具備,
專案地址:https://github.com/ocelma/python-recsys
7. Waffles
Waffles是一個命令列工具,它集合了多種機器學習和資料挖掘演算法和工具,可以用于配置和調整協同過濾推薦演算法,
專案地址:https://github.com/litaoshao/waffles
8. LightFM
LightFM基于Python實作了許多隱式和顯式反饋的推薦演算法,包括對BPR和WARP排名損失的實作,這使它易于使用,快速(通過多執行緒模型估計)并產生高質量的結果,
它將推薦項和用戶元資料都合并到傳統的矩陣分解演算法中,并將每個用戶和推薦項表示為其特征的潛在表示的總和,從而使推薦建議可以推廣到新推薦項和新用戶,
專案地址:https://github.com/lyst/lightfm
9. Sparrow RecSys
SparrowRecSys是一個深度學習推薦系統,名字SparrowRecSys(麻雀推薦系統),取自“麻雀雖小,五臟俱全”之意,專案是一個基于Maven的混合語言專案,同時包含了TensorFlow,Spark,Jetty Server等推薦系統的不同模塊,專案的資料來源于開源電影資料集MovieLens,其技術架構遵循經典的工業級深度學習推薦系統架構,包括了離線資料處理、模型訓練、近線的流處理、線上模型服務、前端推薦結果顯示等多個模塊,是一個很不錯的測驗深度學習推薦演算法的模擬環境,
專案地址:https://github.com/fangwudi/SparrowRecSys
10. Mahout
Mahout是一個開源的機器學習演算法庫,它包括了一些可擴展的機器學習領域經典演算法的實作,在推薦方面,Mahout完整地封裝了協同過濾演算法,并實作了并行化,提供了簡單易用的API介面,但相應的也屏蔽了許多演算法細節,導致很難根據業務的場景對進行演算法配置和調優,Mahout中的推薦演算法都集中在Recommender命名空間中,主要包括了:基于用戶的推薦演算法、基于物品的推薦演算法、基于物品的KNN推薦演算法、Slope推薦演算法、SVD推薦演算法、TreeCluster推薦演算法等,
專案地址:http://mahout.apache.org/
11. GraphLab Create
GraphLab Create是一個機器學習平臺,用于構建智能的預測性應用程式,其中涉及資料清洗,開發功能,訓練模型以及創建和維護預測性服務,其中推薦系統部分在graphlab.recommender中,
專案地址:https://github.com/apple/turicreate/
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/262966.html
標籤:其他
上一篇:【高級開發進階】17.1.1 Redis核心資料結構剖析
下一篇:孫叫獸:我所認為的領導力!
