原文:
www.kdnuggets.com/2016/11/top-20-python-machine-learning-open-source-updated.html
继去年分析:前 20 名 Python 机器学习开源项目,今年 KDnuggets 带来最新的前 20 名 Python 机器学习开源项目,更新于 Github。奇怪的是,去年一些最活跃的项目已经变得停滞,还有一些从前 20 名中跌出(考虑贡献和提交),而 13 个新项目进入了前 20 名。
2016 年前 20 名 Python 机器学习开源项目。
-
Scikit-learn 是简单高效的数据挖掘和数据分析工具,人人可用,可在各种背景下重用,基于 NumPy、SciPy 和 matplotlib,开源,可商业使用 – BSD 许可证。
提交次数:21486,贡献者:736,Github URL:Scikit-learn
-
Tensorflow 最初由 Google Brain 团队的研究人员和工程师在 Google 的机器智能研究组织中开发。该系统旨在促进机器学习研究,并使从研究原型到生产系统的过渡快速而简便。
提交次数:10466,贡献者:493,Github URL:Tensorflow
-
Theano 允许你高效地定义、优化和评估涉及多维数组的数学表达式。
提交次数:24108,贡献者:263,Github URL:Theano
-
Caffe 是一个深度学习框架,关注表达性、速度和模块化。由伯克利视觉与学习中心(BVLC)和社区贡献者开发。
提交次数:3801,贡献者:215,Github URL:Caffe
-
Gensim 是一个免费的 Python 库,具有可扩展的统计语义功能,分析纯文本文档的语义结构,检索语义相似的文档。
提交次数:2702,贡献者:145,Github URL:Gensim
-
Pylearn2 是一个机器学习库。其大部分功能基于 Theano。这意味着你可以使用数学表达式编写 Pylearn2 插件(新模型、算法等),Theano 会为你优化和稳定这些表达式,并将其编译到你选择的后端(CPU 或 GPU)。
提交次数: 7100,贡献者: 115,Github 链接: Pylearn2
-
Statsmodels 是一个 Python 模块,允许用户探索数据、估计统计模型和执行统计测试。提供了广泛的描述性统计、统计测试、绘图函数和结果统计,适用于不同类型的数据和每个估计器。
提交次数: 8664,贡献者: 108,Github 链接: Statsmodels
-
Shogun 是一个机器学习工具箱,提供了多种统一和高效的机器学习(ML)方法。该工具箱可以轻松地将多个数据表示、算法类别和通用工具结合在一起。
提交次数: 15172,贡献者: 105,Github 链接: Shogun
-
Chainer 是一个基于 Python 的独立开源深度学习框架。Chainer 提供了一种灵活、直观且高性能的方法来实现各种深度学习模型,包括最先进的模型,如递归神经网络和变分自编码器。
提交次数: 6298,贡献者: 84,Github 链接: Chainer
-
NuPIC 是一个基于新皮层理论的开源项目,称为分层时间记忆(HTM)。HTM 理论的部分已经实现、测试并用于应用中,其他部分仍在开发中。
提交次数: 6088,贡献者: 76,Github 链接: NuPIC
-
Neon 是 Nervana 的基于 Python 的深度学习库。它提供了使用上的便利,同时实现了最高的性能。
提交次数: 875,贡献者: 47,Github 链接: Neon
-
Nilearn 是一个用于对神经影像数据进行快速简便统计学习的 Python 模块。它利用了 scikit-learn Python 工具箱进行多变量统计,应用包括预测建模、分类、解码或连接性分析。
提交次数: 5254,贡献者: 46,Github 链接: Nilearn
-
Orange3 是开源的机器学习和数据可视化工具,适用于新手和专家。具有大量工具箱的互动数据分析工作流。
Commits: 6356, Contributors: 40, Github URL: Orange3
-
Pymc 是一个实现贝叶斯统计模型和拟合算法的 Python 模块,包括马尔可夫链蒙特卡洛。其灵活性和可扩展性使其适用于大量问题。
Commits: 2701, Contributors: 37, Github URL: Pymc
-
PyBrain 是一个用于 Python 的模块化机器学习库。它的目标是提供灵活、易用且强大的机器学习任务算法以及各种预定义环境,以测试和比较你的算法。
Commits: 984, Contributors: 31, Github URL: PyBrain
-
Fuel 是一个数据管道框架,为你的机器学习模型提供所需的数据。计划被Blocks 和 Pylearn2 神经网络库使用。
Commits: 1053, Contributors: 29, Github URL: Fuel
-
PyMVPA 是一个Python 包,旨在简化大数据集的统计学习分析。它提供了一个可扩展的框架,具有高层接口,支持广泛的分类、回归、特征选择、数据导入和导出算法。
Commits: 9258, Contributors: 26, Github URL: PyMVPA
-
Annoy (Approximate Nearest Neighbors Oh Yeah) 是一个带有 Python 绑定的 C++ 库,用于搜索与给定查询点接近的空间中的点。它还创建了大型只读文件基础的数据结构,这些数据结构被映射到内存中,以便许多进程可以共享相同的数据。
Commits: 365, Contributors: 24, Github URL: Annoy
-
Deap 是一个新颖的进化计算框架,用于快速原型开发和测试思想。它旨在使算法明确,并使数据结构透明。它与并行化机制(如多进程)以及SCOOP 完美兼容。
Commits: 1854, Contributors: 21, Github URL: Deap
-
Pattern 是一个用于 Python 编程语言的网页挖掘模块。它集合了数据挖掘(Google + Twitter + Wikipedia API、网络爬虫、HTML DOM 解析器)、自然语言处理(词性标注、n-gram 搜索、情感分析、WordNet)、机器学习(向量空间模型、k-means 聚类、朴素贝叶斯 + k-NN + SVM 分类器)和网络分析(图中心性和可视化)工具。
提交次数:943,贡献者数量:20,Github 网址:Pattern
我们可以在以下图表中看到,PyMVPA 的贡献率高于列表中的所有顶级项目。令人惊讶的是,尽管 Scikit-learn 的贡献者数量最多,但其贡献率却很低。这可能是因为 PyMVPA 是一个新项目,处于开发的早期阶段,导致由于新想法/功能开发、缺陷修复、重构等产生了许多提交。而 Scikit-learn 是一个成熟且稳定的项目,导致改进或缺陷修复的数量较少。
当我们比较 2016 年和 2015 年那些都在前 20 名列表中的项目时,我们可以看到 Pattern、PyBrain 和 Pylearn2 没有重大贡献,也没有新的贡献者。此外,贡献者数量和提交次数之间可以看到一个显著的相关性。贡献者的增加可能导致提交次数的增加,我认为这就是开源项目和社区的魔力;它带来了头脑风暴、新想法和更好的软件工具。
这是 KDnuggets 团队——Prasad 和 Gregory 对 2016 年前 20 名 Python 机器学习开源项目的分析,基于贡献者数量和提交次数。
祝开放源代码和知识共享愉快!
个人简介: Prasad Pore 是一位专注于业务的分析顾问,拥有 8 年的强大且多样化的 IT 经验,业务转型、数据工程、统计建模、机器学习和项目管理方面的技能得到了锤炼。他拥有数据分析硕士学位,专攻业务,和信息技术学士学位。他总是喜欢讨论如何利用技术创新如移动应用程序、物联网、区块链和数据分析来帮助做出更好的商业决策。
相关信息:
-
Github 上的前 10 个数据科学资源
-
Github 上的前 10 个数据可视化项目
-
Github 上的前 10 个深度学习项目
1. Google 网络安全证书 - 快速开启网络安全职业生涯。
2. 谷歌数据分析专业证书 - 提升你的数据分析技能
3. 谷歌 IT 支持专业证书 - 支持你组织的 IT 需求