開(kāi)源的推薦系統(tǒng)收集

#1.SVDFeature

SVDFeature

語(yǔ)言:C++
一個(gè)feature-based協(xié)同過(guò)濾和排序工具榄攀,由上海交大Apex實(shí)驗(yàn)室開(kāi)發(fā)汉柒,代碼質(zhì)量較高。在KDD Cup 2012中獲得第一名脆贵,KDD Cup 2011中獲得第三名噪矛,相關(guān)論文 發(fā)表在2012的JMLR中量蕊,這足以說(shuō)明它的高大上。
SVDFeature包含一個(gè)很靈活的Matrix Factorization推薦框架艇挨,能方便的實(shí)現(xiàn)SVD残炮、SVD++等方法, 是單模型推薦算法中精度最高的一種。SVDFeature代碼精煉缩滨,可以用 相對(duì)較少的內(nèi)存實(shí)現(xiàn)較大規(guī)模的單機(jī)版矩陣分解運(yùn)算势就。另外含有Logistic regression的model,可以很方便的用來(lái)進(jìn)行ensemble脉漏。
#2.LibMF

LibMF

語(yǔ)言:C++
作者Chih-Jen Lin來(lái)自大名鼎鼎的臺(tái)灣國(guó)立大學(xué)苞冯,他們?cè)跈C(jī)器學(xué)習(xí)領(lǐng)域享有盛名,近年連續(xù)多屆KDD Cup競(jìng)賽上均 獲得優(yōu)異成績(jī)侧巨,并曾連續(xù)多年獲得冠軍舅锄。臺(tái)灣大學(xué)的風(fēng)格非常務(wù)實(shí),業(yè)界常用的LibSVM刃泡, Liblinear等都是他們開(kāi)發(fā)的巧娱,開(kāi)源代碼的效率和質(zhì)量都非常高碉怔。
LibMF在矩陣分解的并行化方面作出了很好的貢獻(xiàn)烘贴,針對(duì)SGD(隨即梯度下降)優(yōu)化方法在并行計(jì)算中存在的locking problem和memory discontinuity問(wèn)題,提出了一種 矩陣分解的高效算法FPSGD(Fast Parallel SGD)撮胧,根據(jù)計(jì)算節(jié)點(diǎn)的個(gè)數(shù)來(lái)劃分評(píng)分矩陣block桨踪,并分配計(jì)算節(jié)點(diǎn)。系統(tǒng)介紹可以見(jiàn)這篇 論文(ACM Recsys 2013的 Best paper Award)芹啥。
#3.LibFM

LibFM

語(yǔ)言:C++
作者是德國(guó)Konstanz大學(xué)的Steffen Rendle锻离,他用LibFM同時(shí)玩轉(zhuǎn)KDD Cup 2012 Track1和Track2兩個(gè)子競(jìng)賽單元铺峭,都取得了很好的成績(jī),說(shuō)明LibFM是非常管用的利器汽纠。
LibFM是專門(mén)用于矩陣分解的利器卫键,尤其是其中實(shí)現(xiàn)了MCMC(Markov Chain Monte Carlo)優(yōu)化算法,比常見(jiàn)的SGD優(yōu)化方法精度要高虱朵,但運(yùn)算速度要慢一些莉炉。當(dāng)然LibFM中還 實(shí)現(xiàn)了SGD、SGDA(Adaptive SGD)碴犬、ALS(Alternating Least Squares)等算法絮宁。
#4.Lenskit

Lenskit

語(yǔ)言:Java


這個(gè)Java開(kāi)發(fā)的開(kāi)源推薦系統(tǒng),來(lái)自美國(guó)的明尼蘇達(dá)大學(xué)的GroupLens團(tuán)隊(duì)服协,也是推薦領(lǐng)域知名的測(cè)試數(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

語(yǔ)言:C++


Graphlab是基于C++開(kāi)發(fā)的一個(gè)高性能分布式graph處理挖掘系統(tǒng),特點(diǎn)是對(duì)迭代的并行計(jì)算處理能力強(qiáng)(這方面是hadoop的弱項(xiàng))棒旗,由于功能獨(dú)到喘批,GraphLab在業(yè)界名聲很響。 用GraphLab來(lái)進(jìn)行大數(shù)據(jù)量的random walk或graph-based的推薦算法非常有效铣揉。Graphlab雖然名氣比較響亮(CMU開(kāi)發(fā))饶深,但是對(duì)一般數(shù)據(jù)量的應(yīng)用來(lái)說(shuō)可能還用不上。
GraphLab主要實(shí)現(xiàn)了ALS逛拱,CCD++敌厘,SGD,Bias-SGD朽合,SVD++俱两,Weighted-ALS,Sparse-ALS曹步,Non-negative Matrix Factorization宪彩,Restarted Lanczos Algorithm等算法。
#6.Mahout

Mahout

語(yǔ)言:Java
Mahout 是 Apache Software Foundation (ASF) 開(kāi)發(fā)的一個(gè)全新的開(kāi)源項(xiàng)目讲婚,其主要目標(biāo)是創(chuàng)建一些可伸縮的機(jī)器學(xué)習(xí)算法尿孔,供開(kāi)發(fā)人員在 Apache 在許可下免費(fèi) 使用。Mahout項(xiàng)目是由 Apache Lucene社區(qū)中對(duì)機(jī)器學(xué)習(xí)感興趣的一些成員發(fā)起的,他們希望建立一個(gè)可靠活合、文檔翔實(shí)雏婶、可伸縮的項(xiàng)目,在其中實(shí)現(xiàn)一些常見(jiàn)的用于 聚類和分類的機(jī)器學(xué)習(xí)算法白指。該社區(qū)最初基于 Ngetal. 的文章 “Map-Reduce for Machine Learning on Multicore”留晚,但此后在發(fā)展中又并入了更多廣泛的機(jī)器學(xué)習(xí) 方法,包括Collaborative Filtering(CF)告嘲,Dimensionality Reduction倔丈,Topic Models等。此外状蜗,通過(guò)使用 Apache Hadoop 庫(kù)需五,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

語(yǔ)言:Java
Myrrix最初是Mahout的作者之一Sean Owen基于Mahout開(kāi)發(fā)的一個(gè)試驗(yàn)性質(zhì)的推薦系統(tǒng)。目前Myrrix已經(jīng)是一個(gè)完整的笆豁、實(shí)時(shí)的郎汪、可擴(kuò)展的集群和推薦系統(tǒng),主要 架構(gòu)分為兩部分:服務(wù)層:在線服務(wù)闯狱,響應(yīng)請(qǐ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ú)使用蛾默,無(wú)需 計(jì)算層迂苛,它會(huì)在本地運(yùn)行機(jī)器學(xué)習(xí)算法科乎。計(jì)算層也可以單獨(dú)使用,其本質(zhì)是一系列的Hadoop jobs凶伙。目前Myrrix以被 Cloudera 并入Oryx項(xiàng)目昏翰。
#8.EasyRec

EasyRec

語(yǔ)言:Java
EasyRec是一個(gè)易集成苍匆、易擴(kuò)展、功能強(qiáng)大且具有可視化管理的推薦系統(tǒng)棚菊,更像一個(gè)完整的推薦產(chǎn)品浸踩,包括了數(shù)據(jù)錄入模塊、管理模塊统求、推薦挖掘检碗、離線分析等。 EasyRec可以同時(shí)給多個(gè)不同的網(wǎng)站提供推薦服務(wù)码邻,通過(guò)tenant來(lái)區(qū)分不同的網(wǎng)站折剃。架設(shè)EasyRec服務(wù)器,為網(wǎng)站申請(qǐng)tenant像屋,通過(guò)tenant就可以很方便的集成到 網(wǎng)站中怕犁。通過(guò)各種不同的數(shù)據(jù)收集(view,buy.rating)API收集到網(wǎng)站的用戶行為,EasyRec通過(guò)離線分析己莺,就可以產(chǎn)生推薦信息奏甫,您的網(wǎng)站就可以通過(guò) Recommendations和Community Rankings來(lái)進(jìn)行推薦業(yè)務(wù)的實(shí)現(xiàn)。
#9.Waffles

Waffles


語(yǔ)言:C++
Waffles英文原意是蜂蜜甜餅凌受,在這里卻指代一個(gè)非常強(qiáng)大的機(jī)器學(xué)習(xí)的開(kāi)源工具包阵子。Waffles里包含的算法特別多,涉及機(jī)器學(xué)習(xí)的方方面面胜蛉,推薦系統(tǒng)位于 其中的Waffles_recommend tool挠进,大概只占整個(gè)Waffles的1/10的內(nèi)容,其它還有分類誊册、聚類奈梳、采樣、降維解虱、數(shù)據(jù)可視化攘须、音頻處理等許許多多工具包,估計(jì) 能與之媲美的也就數(shù)Weka了殴泰。
#10.RapidMiner

RapidMiner

語(yǔ)言:Java
RapidMiner(前身是Yale)是一個(gè)比較成熟的數(shù)據(jù)挖掘解決方案于宙,包括常見(jiàn)的機(jī)器學(xué)習(xí)、NLP悍汛、推薦捞魁、預(yù)測(cè)等方法(推薦只占其中很小一部分),而且?guī)в蠫UI的 數(shù)據(jù)分析環(huán)境离咐,數(shù)據(jù)ETL谱俭、預(yù)處理奉件、可視化、評(píng)估昆著、部署等整套系統(tǒng)都有县貌。另外RapidMiner提供commercial license,提供R語(yǔ)言接口凑懂,感覺(jué)在向著一個(gè)商用的 數(shù)據(jù)挖掘公司的方向在前進(jìn)煤痕。

作者:龍國(guó)富鏈接:http://www.reibang.com/p/744656416d41來(lái)源:簡(jiǎn)書(shū)著作權(quán)歸作者所有。商業(yè)轉(zhuǎn)載請(qǐng)聯(lián)系作者獲得授權(quán)接谨,非商業(yè)轉(zhuǎn)載請(qǐng)注明出處摆碉。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市脓豪,隨后出現(xiàn)的幾起案子巷帝,更是在濱河造成了極大的恐慌,老刑警劉巖扫夜,帶你破解...
    沈念sama閱讀 218,682評(píng)論 6 507
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件锅睛,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡历谍,警方通過(guò)查閱死者的電腦和手機(jī)现拒,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,277評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門(mén),熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)望侈,“玉大人印蔬,你說(shuō)我怎么就攤上這事⊥蜒茫” “怎么了侥猬?”我有些...
    開(kāi)封第一講書(shū)人閱讀 165,083評(píng)論 0 355
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)捐韩。 經(jīng)常有香客問(wèn)我退唠,道長(zhǎng),這世上最難降的妖魔是什么荤胁? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 58,763評(píng)論 1 295
  • 正文 為了忘掉前任瞧预,我火速辦了婚禮,結(jié)果婚禮上仅政,老公的妹妹穿的比我還像新娘垢油。我一直安慰自己,他們只是感情好圆丹,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,785評(píng)論 6 392
  • 文/花漫 我一把揭開(kāi)白布滩愁。 她就那樣靜靜地躺著,像睡著了一般辫封。 火紅的嫁衣襯著肌膚如雪硝枉。 梳的紋絲不亂的頭發(fā)上廉丽,一...
    開(kāi)封第一講書(shū)人閱讀 51,624評(píng)論 1 305
  • 那天,我揣著相機(jī)與錄音妻味,去河邊找鬼正压。 笑死,一個(gè)胖子當(dāng)著我的面吹牛弧可,可吹牛的內(nèi)容都是我干的蔑匣。 我是一名探鬼主播劣欢,決...
    沈念sama閱讀 40,358評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼棕诵,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了凿将?” 一聲冷哼從身側(cè)響起校套,我...
    開(kāi)封第一講書(shū)人閱讀 39,261評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎牧抵,沒(méi)想到半個(gè)月后笛匙,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,722評(píng)論 1 315
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡犀变,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,900評(píng)論 3 336
  • 正文 我和宋清朗相戀三年妹孙,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片获枝。...
    茶點(diǎn)故事閱讀 40,030評(píng)論 1 350
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡蠢正,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出省店,到底是詐尸還是另有隱情嚣崭,我是刑警寧澤,帶...
    沈念sama閱讀 35,737評(píng)論 5 346
  • 正文 年R本政府宣布懦傍,位于F島的核電站雹舀,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏粗俱。R本人自食惡果不足惜说榆,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,360評(píng)論 3 330
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望寸认。 院中可真熱鬧娱俺,春花似錦、人聲如沸废麻。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 31,941評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)烛愧。三九已至油宜,卻和暖如春掂碱,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背慎冤。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 33,057評(píng)論 1 270
  • 我被黑心中介騙來(lái)泰國(guó)打工疼燥, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人蚁堤。 一個(gè)月前我還...
    沈念sama閱讀 48,237評(píng)論 3 371
  • 正文 我出身青樓醉者,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親披诗。 傳聞我的和親對(duì)象是個(gè)殘疾皇子撬即,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,976評(píng)論 2 355

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