10大開源的推薦系統(tǒng)

#1.SVDFeature

SVDFeature

語言:C++

一個(gè)feature-based協(xié)同過濾和排序工具,由上海交大Apex實(shí)驗(yàn)室開發(fā),代碼質(zhì)量較高。在KDD Cup 2012中獲得第一名,KDD Cup 2011中獲得第三名庶溶,相關(guān)論文 發(fā)表在2012的JMLR中,這足以說明它的高大上懂鸵。

SVDFeature包含一個(gè)很靈活的Matrix Factorization推薦框架偏螺,能方便的實(shí)現(xiàn)SVD、SVD++等方法, 是單模型推薦算法中精度最高的一種矾瑰。SVDFeature代碼精煉砖茸,可以用 相對較少的內(nèi)存實(shí)現(xiàn)較大規(guī)模的單機(jī)版矩陣分解運(yùn)算隘擎。另外含有Logistic regression的model殴穴,可以很方便的用來進(jìn)行ensemble。

#2.LibMF

LibMF

語言:C++

作者Chih-Jen Lin來自大名鼎鼎的臺(tái)灣國立大學(xué),他們在機(jī)器學(xué)習(xí)領(lǐng)域享有盛名采幌,近年連續(xù)多屆KDD Cup競賽上均 獲得優(yōu)異成績劲够,并曾連續(xù)多年獲得冠軍。臺(tái)灣大學(xué)的風(fēng)格非常務(wù)實(shí)休傍,業(yè)界常用的LibSVM征绎, Liblinear等都是他們開發(fā)的,開源代碼的效率和質(zhì)量都非常高磨取。

LibMF在矩陣分解的并行化方面作出了很好的貢獻(xiàn)人柿,針對SGD(隨即梯度下降)優(yōu)化方法在并行計(jì)算中存在的locking problem和memory discontinuity問題,提出了一種 矩陣分解的高效算法FPSGD(Fast Parallel SGD)忙厌,根據(jù)計(jì)算節(jié)點(diǎn)的個(gè)數(shù)來劃分評分矩陣block凫岖,并分配計(jì)算節(jié)點(diǎn)。系統(tǒng)介紹可以見這篇 論文(ACM Recsys 2013的 Best paper Award)逢净。

#3.LibFM

LibFM

語言:C++

作者是德國Konstanz大學(xué)的Steffen Rendle,他用LibFM同時(shí)玩轉(zhuǎn)KDD Cup 2012 Track1和Track2兩個(gè)子競賽單元,都取得了很好的成績糠悯,說明LibFM是非常管用的利器难述。

LibFM是專門用于矩陣分解的利器,尤其是其中實(shí)現(xiàn)了MCMC(Markov Chain Monte Carlo)優(yōu)化算法胀茵,比常見的SGD優(yōu)化方法精度要高社露,但運(yùn)算速度要慢一些。當(dāng)然LibFM中還 實(shí)現(xiàn)了SGD宰掉、SGDA(Adaptive SGD)呵哨、ALS(Alternating Least Squares)等算法。

#4.Lenskit

Lenskit

語言:Java

這個(gè)Java開發(fā)的開源推薦系統(tǒng)轨奄,來自美國的明尼蘇達(dá)大學(xué)的GroupLens團(tuán)隊(duì)孟害,也是推薦領(lǐng)域知名的測試數(shù)據(jù)集Movielens的作者。

該源碼托管在GitHub上挪拟,https://github.com/grouplens/lenskit挨务。主要包含lenskit-api,lenskit-core, lenskit-knn,lenskit-svd,lenskit-slopone,lenskit-parent,lenskit-data-structures,lenskit-eval,lenskit-test等模塊,主要實(shí)現(xiàn)了k-NN玉组,SVD谎柄,Slope-One等 典型的推薦系統(tǒng)算法。

#5.GraphLab

GraphLab

語言:C++

Graphlab是基于C++開發(fā)的一個(gè)高性能分布式graph處理挖掘系統(tǒng)惯雳,特點(diǎn)是對迭代的并行計(jì)算處理能力強(qiáng)(這方面是hadoop的弱項(xiàng))朝巫,由于功能獨(dú)到,GraphLab在業(yè)界名聲很響石景。 用GraphLab來進(jìn)行大數(shù)據(jù)量的random walk或graph-based的推薦算法非常有效劈猿。Graphlab雖然名氣比較響亮(CMU開發(fā))拙吉,但是對一般數(shù)據(jù)量的應(yīng)用來說可能還用不上。

GraphLab主要實(shí)現(xiàn)了ALS揪荣,CCD++筷黔,SGD,Bias-SGD仗颈,SVD++佛舱,Weighted-ALS,Sparse-ALS挨决,Non-negative Matrix Factorization请祖,Restarted Lanczos Algorithm等算法。

#6.Mahout

Mahout

語言:Java

Mahout 是 Apache Software Foundation (ASF) 開發(fā)的一個(gè)全新的開源項(xiàng)目脖祈,其主要目標(biāo)是創(chuàng)建一些可伸縮的機(jī)器學(xué)習(xí)算法损拢,供開發(fā)人員在 Apache 在許可下免費(fèi) 使用。Mahout項(xiàng)目是由 Apache Lucene社區(qū)中對機(jī)器學(xué)習(xí)感興趣的一些成員發(fā)起的撒犀,他們希望建立一個(gè)可靠福压、文檔翔實(shí)、可伸縮的項(xiàng)目或舞,在其中實(shí)現(xiàn)一些常見的用于 聚類和分類的機(jī)器學(xué)習(xí)算法荆姆。該社區(qū)最初基于 Ngetal. 的文章 “Map-Reduce for Machine Learning on Multicore”,但此后在發(fā)展中又并入了更多廣泛的機(jī)器學(xué)習(xí) 方法映凳,包括Collaborative Filtering(CF)胆筒,Dimensionality Reduction,Topic Models等诈豌。此外仆救,通過使用 Apache Hadoop 庫,Mahout 可以有效地?cái)U(kuò)展到云中矫渔。

在Mahout的Recommendation類算法中彤蔽,主要有User-Based CF,Item-Based CF庙洼,ALS顿痪,ALS on Implicit Feedback,Weighted MF油够,SVD++蚁袭,Parallel SGD等。

#7.Myrrix

Myrrix

語言:Java

Myrrix最初是Mahout的作者之一Sean Owen基于Mahout開發(fā)的一個(gè)試驗(yàn)性質(zhì)的推薦系統(tǒng)石咬。目前Myrrix已經(jīng)是一個(gè)完整的揩悄、實(shí)時(shí)的、可擴(kuò)展的集群和推薦系統(tǒng)鬼悠,主要 架構(gòu)分為兩部分:服務(wù)層:在線服務(wù)删性,響應(yīng)請求棉饶、數(shù)據(jù)讀入、提供實(shí)時(shí)推薦镇匀;計(jì)算層:用于分布式離線計(jì)算,在后臺(tái)使用分布式機(jī)器學(xué)習(xí)算法為服務(wù)層更新機(jī)器學(xué)習(xí) 模型袜啃。Myrrix使用這兩個(gè)層構(gòu)建了一個(gè)完整的推薦系統(tǒng)汗侵,服務(wù)層是一個(gè)HTTP服務(wù)器,能夠接收更新群发,并在毫秒級(jí)別內(nèi)計(jì)算出更新結(jié)果晰韵。服務(wù)層可以單獨(dú)使用,無需 計(jì)算層熟妓,它會(huì)在本地運(yùn)行機(jī)器學(xué)習(xí)算法雪猪。計(jì)算層也可以單獨(dú)使用,其本質(zhì)是一系列的Hadoop jobs起愈。目前Myrrix以被 Cloudera 并入Oryx項(xiàng)目只恨。

#8.EasyRec

EasyRec

語言:Java

EasyRec是一個(gè)易集成、易擴(kuò)展抬虽、功能強(qiáng)大且具有可視化管理的推薦系統(tǒng)官觅,更像一個(gè)完整的推薦產(chǎn)品,包括了數(shù)據(jù)錄入模塊阐污、管理模塊休涤、推薦挖掘、離線分析等笛辟。 EasyRec可以同時(shí)給多個(gè)不同的網(wǎng)站提供推薦服務(wù)功氨,通過tenant來區(qū)分不同的網(wǎng)站。架設(shè)EasyRec服務(wù)器手幢,為網(wǎng)站申請tenant捷凄,通過tenant就可以很方便的集成到 網(wǎng)站中。通過各種不同的數(shù)據(jù)收集(view,buy.rating)API收集到網(wǎng)站的用戶行為围来,EasyRec通過離線分析纵势,就可以產(chǎn)生推薦信息,您的網(wǎng)站就可以通過 Recommendations和Community Rankings來進(jìn)行推薦業(yè)務(wù)的實(shí)現(xiàn)管钳。

#9.Waffles

Waffles

語言:C++

Waffles英文原意是蜂蜜甜餅钦铁,在這里卻指代一個(gè)非常強(qiáng)大的機(jī)器學(xué)習(xí)的開源工具包。Waffles里包含的算法特別多才漆,涉及機(jī)器學(xué)習(xí)的方方面面牛曹,推薦系統(tǒng)位于 其中的Waffles_recommend tool,大概只占整個(gè)Waffles的1/10的內(nèi)容醇滥,其它還有分類黎比、聚類超营、采樣、降維阅虫、數(shù)據(jù)可視化演闭、音頻處理等許許多多工具包,估計(jì) 能與之媲美的也就數(shù)Weka了颓帝。

#10.RapidMiner

RapidMiner

語言:Java

RapidMiner(前身是Yale)是一個(gè)比較成熟的數(shù)據(jù)挖掘解決方案米碰,包括常見的機(jī)器學(xué)習(xí)、NLP购城、推薦吕座、預(yù)測等方法(推薦只占其中很小一部分),而且?guī)в蠫UI的 數(shù)據(jù)分析環(huán)境瘪板,數(shù)據(jù)ETL吴趴、預(yù)處理、可視化侮攀、評估锣枝、部署等整套系統(tǒng)都有。另外RapidMiner提供commercial license兰英,提供R語言接口惊橱,感覺在向著一個(gè)商用的 數(shù)據(jù)挖掘公司的方向在前進(jìn)。


更多內(nèi)容請關(guān)注微信公眾號(hào):EasyUX

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末箭昵,一起剝皮案震驚了整個(gè)濱河市税朴,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌家制,老刑警劉巖正林,帶你破解...
    沈念sama閱讀 218,755評論 6 507
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異颤殴,居然都是意外死亡觅廓,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,305評論 3 395
  • 文/潘曉璐 我一進(jìn)店門涵但,熙熙樓的掌柜王于貴愁眉苦臉地迎上來杈绸,“玉大人,你說我怎么就攤上這事矮瘟⊥В” “怎么了?”我有些...
    開封第一講書人閱讀 165,138評論 0 355
  • 文/不壞的土叔 我叫張陵澈侠,是天一觀的道長劫侧。 經(jīng)常有香客問我,道長,這世上最難降的妖魔是什么烧栋? 我笑而不...
    開封第一講書人閱讀 58,791評論 1 295
  • 正文 為了忘掉前任写妥,我火速辦了婚禮,結(jié)果婚禮上审姓,老公的妹妹穿的比我還像新娘珍特。我一直安慰自己,他們只是感情好魔吐,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,794評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著画畅,像睡著了一般宋距。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上谚赎,一...
    開封第一講書人閱讀 51,631評論 1 305
  • 那天淫僻,我揣著相機(jī)與錄音,去河邊找鬼壶唤。 笑死,一個(gè)胖子當(dāng)著我的面吹牛闸盔,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播迎吵,決...
    沈念sama閱讀 40,362評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼躲撰,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了击费?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,264評論 0 276
  • 序言:老撾萬榮一對情侶失蹤蔫巩,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后垃瞧,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體坪郭,經(jīng)...
    沈念sama閱讀 45,724評論 1 315
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,900評論 3 336
  • 正文 我和宋清朗相戀三年截粗,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了鸵隧。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片意推。...
    茶點(diǎn)故事閱讀 40,040評論 1 350
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖菊值,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情昵宇,我是刑警寧澤,帶...
    沈念sama閱讀 35,742評論 5 346
  • 正文 年R本政府宣布瓦哎,位于F島的核電站柔逼,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏愉适。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,364評論 3 330
  • 文/蒙蒙 一剂买、第九天 我趴在偏房一處隱蔽的房頂上張望癌蓖。 院中可真熱鬧雷恃,春花似錦费坊、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,944評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽把跨。三九已至,卻和暖如春沼死,著一層夾襖步出監(jiān)牢的瞬間着逐,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,060評論 1 270
  • 我被黑心中介騙來泰國打工健芭, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留秀姐,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 48,247評論 3 371
  • 正文 我出身青樓痒留,卻偏偏與公主長得像,于是被迫代替她去往敵國和親伸头。 傳聞我的和親對象是個(gè)殘疾皇子舷蟀,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,979評論 2 355

推薦閱讀更多精彩內(nèi)容