转自:http://mp.weixin.qq.com/s?__biz=MzA4MjEyNTA5Mw==&mid=2652565022&idx=1&sn=9aa035097120406a669a1e5570173ef5&chksm=8464c654b3134f42edfeccdcc2d33fe0065d51982c4bd4dda5da0a54089096a69de67e5ec2dc&mpshare=1&scene=1&srcid=0404KF6lY48l1KKkuoL1MKPO##

本文介绍 2016 年机器学习 Top 20 Python 开源项目,同时分析得出一些有趣的见解和发展趋势。

2016 Top 20 Python 机器学习开源项目

1. Scikit-learn 是一个简单且高效的数据挖掘和数据分析工具,易上手,可以在多个上下文中重复使用。它基于NumPy, SciPy 和 matplotlib,开源,可商用(基于 BSD 许可)

提交数: 21486, 贡献者: 736, Github 链接: Scikit-learn(http://github.com/scikit-learn/scikit-learn0

2. Tensorflow 最初由谷歌机器智能科研组织中的谷歌大脑团队(Google Brain Team)的研究人员和工程师开发。该系统设计的初衷是为了便于机器学习研究,能够更快更好地将科研原型转化为生产项目。

提交数: 10466, 贡献者: 493, Github 链接: Tensorflow(https://github.com/tensorflow/tensorflow)

3. Theano 允许高效地定义、优化以及评估涉及多维数组的数学表达式. 提交数: 24108, 贡献者: 263, Github 链接: Theano(https://github.com/Theano/Theano)

4. Caffe 是一个基于表达式,速度和模块化原则创建的深度学习框架。它由伯克利视觉学习中心(BVLC, Berkeley Vision and Learning Center)和社区贡献者共同开发。 提交数: 3801, 贡献者: 215, Github 链接: Caffe(https://github.com/BVLC/caffe)

5. Gensim 是一个免费的 Python 库,它包含可扩展的统计语义,分析纯文本文档的语义结构,以及检索相似语义的文档等功能。

提交数: 2702, 贡献者: 145, Github 链接: Gensim(https://github.com/RaRe-Technologies/gensim)

6. Pylearn2 是一个机器学习库。它的大多数功能都是构建于Theano 之上的。这意味着你可以利用数学表达式自己写 Pylearn2 插件(新模型,算法等等),Theano 会为你优化这些表达式使其更加稳定,你还可以选择将其编译到后端(CPU 或 GPU)。

提交数: 7100, 贡献者: 115, Github 链接: Pylearn2(http://github.com/lisa-lab/pylearn2)

7. Statsmodels 是一个 Python 模块,可以用来探索数据,估计统计模型,进行统计测试。对于不同类型的数据和模型估计,都有描述性统计,统计测试,绘图功能和结果统计的详细列表可用。

提交数: 8664, 贡献者: 108, Github 链接: Statsmodels(https://github.com/statsmodels/statsmodels/)

8. Shogun 是一个机器学习工具箱,它提供了很多统一高效的机器学习方法。这个工具箱允许多个数据表达,算法类和通用工具无缝组合。

提交数: 15172 贡献者: 105, Github 链接: Shogun(https://github.com/shogun-toolbox/shogun)

9. Chainer 是一个基于 Python 的独立的深度学习模型开源框架。Chainer 提供了灵活、直观且高性能的方法实现全方位的深度学习模型,包括循环神经网络 (recurrent neural networks) 和变分自编码器(variational autoencoders)这些最新的模型 。

提交数: 6298, 贡献者: 84, Github 链接: Chainer(https://github.com/pfnet/chainer)

10. NuPIC 是一个基于 HTM 算法 (Hierarchical Temporal Memory) 的开源项目。HTM 的一部分已经通过实践、测试和应用,另一部分仍在开发之中。

提交数: 6088, 贡献者: 76, Github 链接: NuPIC(http://github.com/numenta/nupic)

11. Neon 是 Nervana 公司一个基于 Python 的深度学习库。它易于使用且具有超高的性能。

提交数: 875, 贡献者: 47, Github 链接: Neon(https://github.com/NervanaSystems/neon)

12. Nilearn 是一个 Python 模块,用于在神经成像 (NeuroImaging) 数据上进行快速简单的统计学习。它利用 scikit-learn Python 工具箱来处理多变量统计信息,包括预测建模,分类,解码或连接分析.

提交数: 5254, 贡献者: 46, Github 链接: Nilearn(http://github.com/nilearn/nilearn)

13. Orange3 是一个同时适用于新手和数据专家的机器学习和数据可视化开源软件,支持拥有大型工具箱的交互式数据分析工作流程。

提交数: 6356, 贡献者: 40, Github 链接: Orange3(https://github.com/biolab/orange3)

14. Pymc 是一个Python 模块,它能实现贝叶斯统计模型和拟合算法,包括马尔科夫链蒙特卡罗(Markov chain Monte Carlo)算法。它非常灵活,具有可扩展性,适用于处理一系列大规模问题。

提交数: 2701, 贡献者: 37, Github 链接: Pymc(https://github.com/pymc-devs/pymc)

15. PyBrain 是一个模块化的 Python 机器学习库。它致力于为机器学习任务提供灵活易上手但功能强大的算法,和一系列用于测试和比较算法的预定义环境。

提交数: 984, 贡献者: 31, Github 链接: PyBrain(http://github.com/pybrain/pybrain)

16. Fuel 是一个数据管道框架(data pipeline framework),它为机器学习模型提供所需的数据。Blocks 和 Pylearn2 这两个神经网络库都有计划使用 Fuel。

提交数: 1053, 贡献者: 29, Github 链接: Fuel(http://github.com/mila-udem/fuel)

17.PyMVPA 是一个 Python 包,旨在简化大型数据集的统计学习分析。它提供了一个可扩展的框架和一个用于分类,回归,特征选择,数据导入导出等算法的高级接口。

提交数: 9258, 贡献者: 26, Github 链接: PyMVPA(https://github.com/PyMVPA/PyMVPA)

18. Annoy (Approximate Nearest Neighbors Oh Yeah) 是一个带有 Python 绑定的 C++ 库,用于在空间中找到和已知的查询点临近的点。它还可以创建大型的基于文件的只读数据结构,并映射至内存,以便多个进程能共同使用相同的数据。

提交数: 365, Contributors: 24, Github 链接: Annoy(https://github.com/spotify/annoy)

19. Deap 是一个创新的,仍在发展中的计算框架,用于快速构建原型和测试方法。它旨在使算法和数据结构更加清晰透明。它与并行机制(如多进程和 SCOOP 模块)完美协调。

提交数: 1854, 贡献者: 21, Github 链接: Deap(https://github.com/deap/deap)

20. Pattern 是一个 Python 的网络挖掘模块。它绑定了数据挖掘(Google + Twitter + Wikipedia API, 网络爬虫, HTML DOM 解析器),自然语言处理 (词性标记, n-gram 搜索, 语义分析, WordNet),机器学习(向量空间模型, k-means 聚类, Naive Bayes + k-NN + SVM 分类器) 和网络分析(图核心性 graph centrality 和可视化)等工具。

提交数: : 943, Contributors: 20 , Github 链接: Pattern(http://github.com/clips/pattern)

在下面的图表中,可以看到 PyMVPA 相较于其他项目拥有最高的贡献率(contribution rate)。令人吃惊的是,Scikit-learn 虽然拥有最多的贡献者,但是贡献率却很低。这种现象背后的原因可能是:PyMVPA 是新项目,正处于开发的早期阶段,新功能开发,漏洞修补和重构等都能够引导更多的提交。而 Scikit-learn 属于比较旧且非常稳定的项目,改进和修复的空间更小。

在比较同时上榜 2015 和 2016 Top 20 的项目时,可以发现,Pattern,PyBrain 和 Pylearn2 没有新的贡献者(contributors)也没有新的贡献代码。同时,还可以发现贡献者数和提交数之间有显著关联。贡献者数的增长可能会导致提交数的增长,我认为这是开源项目和社区的魔力——引领头脑风暴,激发更多创意,开发更好的软件工具。

以上是对 2016 Python 机器学习开源项目所做的分析,该分析基于项目贡献者和提交数,作者是 KDnuggets 团队的 Prasad 和 Gregory。

机器学习 Top 20 Python 开源项目的更多相关文章

  1. Github上的python开源项目

    Python开源项目,期待大家和我们一起共同维护 github排名榜单 https://github.com/trending github搜索榜单:https://github.com/search ...

  2. python实战===2017年30个惊艳的Python开源项目 (转)

    本文转自:http://www.sohu.com/a/216723120_115128 摘要:本文来自Mybridge,介绍了过去一年里30个惊艳的Python开源项目.点击每一个都可以在GitHub ...

  3. 10大Python开源项目推荐(Github平均star2135)

    翻译 | suisui 来源 | 人工智能头条(AI_Thinker) 继续假日充电系列~本文是 Mybridge 挑选的 10 个 Python 开源项目,Github 平均star 2135,希望 ...

  4. 教你阅读Python开源项目代码

    为什么要阅读开源代码 阅读 Python 开源项目代码主要有如下三个原因: 在工作过程中遇到一些问题 Google 和 StackOverFlow 等网站找不到解决办法,只能去翻源码. 对某些项目或者 ...

  5. Python开源项目Top30

    原文地址:https://www.cnblogs.com/stoker/p/9101825.html No 1:Home-assistant (v0.6+) 基于Python 3的开源家庭自动化平台[ ...

  6. 一个Python开源项目-哈勃沙箱源码剖析(下)

    前言 在上一篇中,我们讲解了哈勃沙箱的技术点,详细分析了静态检测和动态检测的流程.本篇接着对动态检测的关键技术点进行分析,包括strace,sysdig,volatility.volatility的介 ...

  7. python开源项目及示例代码

    本页面是俺收集的各种 Python 资源,不定期更新. 下面列出的各种 Python 库/模块/工具,如果名称带超链接,说明是第三方的:否则是 Python 语言内置的. 1 算法 1.1 字符串处理 ...

  8. 2013年最好的Python开源项目汇总

    2013年Python社区诞生了很多实用的开发工具,这些工具 在一定程度上 可以帮助你节省更多的时间.本文为你汇总了这些工具,它们大部分都是开源的,你还可以通过源码来学习更多的Python开发知识. ...

  9. python开源项目及示例代码(转)

    本页面是俺收集的各种 Python 资源,不定期更新. 下面列出的各种 Python 库/模块/工具,如果名称带超链接,说明是第三方的:否则是 Python 语言内置的. 1 算法 1.1 字符串处理 ...

随机推荐

  1. javascript进行遍历

    javascript进行遍历 <!doctype html> <html lang="en"> <head> <meta charset= ...

  2. LCS 算法

    下面的程序分别实现了使用LCS求连续子串和不连续子串的匹配情况! http://beyond316.blog.51cto.com/7367775/1266360

  3. QoS的构建模块与机制

    本文翻译自ITU-T的Technical Paper:<How to increase QoS/QoE of IP-based platform(s) to regionally agreed ...

  4. 禁止CloudStack删除Xenserver原有虚拟机

    CloudStack在文档中指明需要加入一台干净的Xenserver作为hyperviser. 但是实际使用中,总会存在不同的需求,很多场景是试用CloudStack接管当前已有的hyperviser ...

  5. Java从零开始学三十七(JAVA IO- 二进制文件读写)

    一.简述 二.使用步骤 DataInputStream: 引入相关的类 构造数据输入流的对象(如:FileInputStream,BufferedWriter包装后读取文件等) 读取二进制文件的数据 ...

  6. CSS3 选择器浏览器兼容性汇总 IE8

    1.css选择器 css(包括css1.css2和css3)有哪些选择器? http://www.w3school.com.cn/cssref/css_selectors.asp 2.CSS3选择器 ...

  7. windows彻底删除Oralce

    以下是彻底删除Oralce的步骤:1. 开始->设置->控制面板->管理工具->服务停止所有Oracle服务. 2. 开始->程序->Oracle - OraHom ...

  8. 微软 Visual Studio 2017 中文正式版下载 – 免费社区版/专业版/企业版

    作为“宇宙最强”的集成开发环境 IDE,微软的 Visual Studio 不仅破天荒发布了 macOS 版本,如今终于也推出了其 Windows 的最新版本—— VS 2017 正式版了.这对开发者 ...

  9. 掀开图片显示介绍的css效果

    概述 主要运用到CSS3的3D transform等变换 详细 代码下载:http://www.demodashi.com/demo/10575.html 一.概述 1.主要运用到CSS3的3D tr ...

  10. docker login harbor出现的报错Error response from daemon: Get https://172.16.1.99/v1/users/: dial tcp 172.16.1.99:443: getsockopt: connection refused解决方法

    出现的问题 [root@master01 ~]# docker login 172.16.1.99 Username: admin Password: Error response from daem ...