0
| 本文作者: 小東 | 2016-12-19 14:53 |
如今,開源已經成為創新與技術發展的核心。在本文中,雷鋒網將介紹 2016 Python 前20大機器學習開源項目。
去年 KDnuggets 評選了前 20 大機器學習開源項目(Python版),今年的評選結果與去年相比,名單中出現了一些新的面孔,有13個新開源項目入圍了這個名單。作者 Prasad Pore 將具體介紹這些開源項目,雷鋒網編譯,未經許可不得轉載。

第一名:Scikit-learn
Scikit-learn可以說是一款簡單而高效的數據挖掘與分析工具,大家可以免費下載安裝,使用它處理各種數據,使用時需引入 NumPy, SciPy, and matplotlib這些第三方開源模塊。
提交: 21486 貢獻: 736 Github URL: Scikit-learn
第二名:Tensorflow
Tensorflow是由谷歌大腦與谷歌人工智能實驗室的科研人員研發而成的,這個系統用于機器學習的研究,可以簡單、快速的實現研究人員的想法。前段時間恰逢Tensorflow一周年,雷鋒網也做過報道和回顧。
提交: 10466 貢獻: 493 Github URL: Tensorflow
第三名:Theano
Theano可以對那些高維數組數學表達式進行定義、優化與評估。
提交: 24108 貢獻: 263 Github URL: Theano
第四名:Caffe
Caffe是一款具有表達、加速、模塊化思想的深度學習框架,由 Berkeley Vision and Learning Center (BVLC)于社區志愿者共同開發維護。
提交: 3801 貢獻: 215 Github URL: Caffe
第五名:Gensim
Gensim是一個免費的Python庫,這個庫可以實現文本的情感傾向判斷,相似文本檢索等功能。
提交: 2702 貢獻: 145 Github URL: Gensim
第六名:Pylearn2
Pylearn2 也是一個機器學習的開源庫,但它是一個基于Theano的庫,所以它有一些Theano的特點,你可以使用數學表達式來寫Pylearn2插件,Theano會自動對你寫的表達式進行優化,按照你的選擇(用CPU或GPU)對這些表達式進行編譯。
提交: 7100 貢獻: 115 Github URL: Pylearn2
第七名:Statsmodels
Statsmodels是一款Python開源工具,可以實現數據探究、統計模型評價、性能測試等功能,擴展性能良好,可對各種類型的數據進行各種處理,例如描述統計、統計測試、繪圖、結果統計等等。
提交: 8664 貢獻: 108 Github URL: Statsmodels
第八名:Shogun
Shogun是一款機器學習工具,其包含了各種機器學習方法。它可以簡單的實現多種數據表示、多種算法的無縫融合。
提交: 15172 貢獻: 105 Github URL: Shogun
第九名:Chainer
Chainer是一個基于Python的開源深度學習框架,它可以讓你以一種靈活、簡單、快速的方式實現多種深度學習模型,包括RNN與各種自編碼。
提交: 6298 貢獻: 84 Github URL: Chainer
第十名:NuPIC
NuPIC是一個基于Hierarchical Temporal Memory理論的開源項目,目前Hierarchical Temporal Memory這個理論中的部分功能已經實現,并進行了測試與應用,其它部分正在完善中。
提交: 6088 貢獻: 76 Github URL: NuPIC
第十一名:Neon
Neon是一款深度學習第三方庫,在進行高性能計算時它具有簡單易用的特點。
提交: 875 貢獻: 47 Github URL: Neon
第十二名:NiLearn
NiLearn主要用于處理醫學圖像數據,具有簡單、快速的特點。它通過調用scikit-learn進行多元統計分析(例如:預測模型、分類、解碼、關聯分析)。
提交: 5254 貢獻: 46 Github URL: NiLearn
第十三名:Orange3
Orange3是一款機器學習與數據可視化開源工具,可以對數據進行各種交互分析。
提交: 6356 貢獻: 40 Github URL: Orange3
第十四名:Pymc
Pymc是一個貝葉斯統計模型(包括馬爾科夫鏈)庫,具有靈活、擴展性能好的特點。
提交: 2701 貢獻: 37 Github URL: Pymc
第十五名:PyBrain:
PyBrain是一個機器學習庫,它的目標是讓算法的實現變的簡單、靈活、高效。同時使得在特定環境下對算法的測試與比較也變的簡單、靈活、高效。
提交: 984 貢獻: 31 Github URL: PyBrain
第十六名:Fuel
Fuel主要用于算法與輸入數據之間的銜接。它將被Blocks and Pylearn2這兩個Python庫使用。
提交: 1053 貢獻: 29 Github URL: Fuel
第十七名: PyMVPA
PyMVPA 適用于大規模的數據集,具有擴展性能好優點,提供多種算法(分類、回歸、特征選擇、數據導入、數據導出等)接口。
提交: 9258 貢獻: 26 Github URL: PyMVPA
第十八名:Annoy
Annoy是一個Python可調用的C++庫,主要用來對給定數據進行搜索。它可以生成大量的基于文檔的可讀數據結構,這種數據結構與內存相對應,從而使數據被共享。
提交: 365 貢獻: 24 Github URL: Annoy
第十九名:Deap
Deap是一款新的計算框架,它使得算法實現與數據結構變得簡單明了。它采用的是并行處理機制。
提交: 1854 貢獻: 21 Github URL: Deap
第二十名:Pattern
Pattern是一款web信息挖掘工具,它集成了各種工具。這些工具可以用來進行數據挖掘、自然語言處理、機器學習、網絡分析。
提交: 943 貢獻: 20 Github URL: Pattern
如下圖所示,PyMVPA的社區貢獻率最高,而排名第一的Scikit-learn社區貢獻率卻很低,究其原因是PyMVPA是還是一個比較新的開源項目,還有一些地方需要完善、修復。而Scikit-learn則是一個相對來說比較成熟的項目,需要修改、完善的地方比較少。

當我們對2015與2016的結果進行對比(下圖),我們發現Pattern, PyBrain and Pylearn2這三個項目的貢獻人數與提交數均沒有變化。貢獻的人增加了,提交的次數也才跟著增加,這就是開源社區的神奇所在。這些新增的貢獻者與其提交內容導致了新的思想、新的軟件的產生。

基于2016年20大機器學習開源項目的貢獻人數與提交數,以上是雷鋒網整理的簡單分析。不知道到明年的評選上,又有怎樣的開源平臺會登上這個榜單呢?
via Top 20 Python Machine Learning Open Source Project
【招聘】雷鋒網堅持在人工智能、無人駕駛、VR/AR、Fintech、未來醫療等領域第一時間提供海外科技動態與資訊。我們需要若干關注國際新聞、具有一定的科技新聞選題能力,翻譯及寫作能力優良的外翻編輯加入。
簡歷投遞至 wudexin@leiphone.com,工作地 北京。
雷峰網原創文章,未經授權禁止轉載。詳情見轉載須知。