金沙国际官网 1

如今开源是创新的核心,推动着技术的飞速革新。本文会为你介绍 2016
年机器学习 Top 20 Python
开源项目,同时分析得出一些有趣的见解和发展趋势。

翻译  |  AI科技大本营( 微信搜索并关注:rgznai100
,获得更多干货内容,或者文末扫描二维码关注)

参与 | SuiSui

金沙国际官网 2

金沙国际官网 3

 

KDnuggets 为您带来 Github 上最新的 Python 机器学习开源项目前 20
名。奇怪的是,去年一些非常活跃的项目渐渐停滞了,因此没能上榜,而 13
个新项目冲进了今年的 top 20(参考贡献 contributions 和提交数 commits)。

最近,Mybridge对250个Python开源项目进行了排名,从中精选出了Top
10。这些开源项目平均star为1128,内容包括Python新利器Pipenv,
自组织映射神经网络(SOM),bpf converter,Chatistics,区块链等。

2016年十大Python机器学习开源项目

翻译 | AI科技大本营

过去一个月,经过对 8 月新增项目多方比较,MyBridge 从 250 余个 Python
开源项目中选出了最好的 10 个。

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

Top 1:Pipenv [V 9.0] [8622 stars on Github]. 由Kenneth
Reitz提供

1、Scikit-learn
用于数据挖掘和数据分析的简单而有效的工具,基于NumPy,SciPy和matplotlib,开源,商业可用的BSD许可证。Commits:
21486, Contributors: 736, Github地址: Scikit-learn

参与 | SuiSui

 

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

Python.org官方推荐的的Python包管理工具,旨在将所有包管理工具(如bundler,composer,npm,cargo,yarn等)的优点带入到Python领域。

2、Tensorflow 最初由Google机器智能研究机构的Google
Brain小组的研究人员和工程师开发。
该系统旨在促进机器学习的研究,并使其快速和容易地从研究原型过渡到生产系统。Commits:
10466, Contributors: 493, Github地址: Tensorflow

继推出2017年机器学习开源项目Top 30榜单后,Mybridge
AI又推出了一个Python开源项目Top
30榜单,包括开源Python库、工具等。该榜单基于项目质量、用户参与度以及其他几个方面进行了评估,从大约15000个开源项目中挑选了Top
30,差不多都是在2017年1-12月发布。这些项目在Github上的平均star为3707。

  • 这些项目在 GitHub 上平均获得 1333 个star
  • 项目话题涵盖:游戏开发、爬虫、终端制图、人脸识别、量子计算、视频下载等。

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

项目地址:

3、Theano 允许您有效地定义,优化和评估涉及多维数组的数学表达式。Commits:
24108, Contributors: 263, Github URL: Theano

No 1:Home-assistant (v0.6+)

 

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

金沙国际官网 4

4、Caffe is一个深入学习的框架,速度快和模块化。
它由伯克利视觉和学习中心和社区贡献者开发。Commits: 3801, Contributors:
215, Github URL: Caffe

基于Python 3的开源家庭自动化平台[Github 11357 stars,由Paulus
Schoutsen提供]

No.1

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

Top 2:Som-tsp [343 stars on Github]. 由Diego Vicente提供

5、Gensim is
一个免费的Python库,具有诸如可扩展的统计语义之类的特性,分析用于语义结构的纯文本文档,从语义上检索类似的文档。Commits:
2702, Contributors: 145, Github URL: Gensim

No 2:Pytorch

Pyxel:一款用Python编写的复古风游戏开发环境。[GitHub上3625个star]

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

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

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

使用自组织映射解决TSM问题(旅行商问题-Travelling SalesMan problem)

6、Pylearn2 是一个机器学习库。 它的大部分功能是建立在Theano的基础之上。
这意味着您可以使用数学表达式编写Pylearn2插件,Theano将为您优化和稳定这些表达式,并将其编译为您选择的后端。Commits:
7100, Contributors: 115, Github URL: Pylearn2

PyTorch是使用GPU和CPU优化的深度学习张量库,基于Python语言编写。[Github
11019 stars,由PyTorch团队的Adam Paszke和其他人提供]

金沙国际官网 5

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

项目地址:

7、Statsmodels
是一个Python模块,允许用户探索数据,估计统计模型和执行统计测试。
描述性统计,统计测试,绘图函数和结果统计的详细列表可用于不同类型的数据和每个估计器。Commits:
8664, Contributors: 108, Github URL: Statsmodels

No 3:Grumpy

项目地址:

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

金沙国际官网 6

8、Shogun是机器学习工具箱,提供广泛的统一和高效的机器学习方法。
工具箱无缝地允许容易地组合多个数据表示,算法类和通用工具。Commits: 15172
Contributors: 105, Github URL: Shogun

金沙国际官网 ,Grumpy是一个Python to Go的源代码翻译编译器和运行时,旨在取代CPython
2.7。关键区别在于,Grumpy是将Python源码编译为Go源代码,然后将其编译为native
code,而不是bytecode。这也就意味着Grumpy没有虚拟机。编译好的Go源码是对Grumpy运行时的一系列调用,一个Go库服务于具有相似目的的Python
C API。 [Github 8367 stars,由Google的Dylan
Trotter及其他工作人员提供]。

https://github.com/kitao/pyxel

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

Top 3:Py2bpf [75 stars on Github],由Facebook Research提供。

9、Chainer 一个用于深度学习模型的基于Python的独立开源框架。
Chainer提供灵活,直观和高性能的方法来实现全范围的深度学习模型,包括最先进的模型,如复现神经网络和变分自动编码器。Commits:
6298, Contributors: 84, Github URL: Chainer

No 4:Sanic

 

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

伯克利包过滤(Berkeley Packet Filter bytecode)转换器

10、NuPIC 是基于称为分层时间存储器的新皮层理论的开源项目。
HTM理论的一部分已经在应用中实现,测试和使用,并且HTM理论的其他部分仍在开发中。Commits:
6088, Contributors: 76, Github URL: NuPIC

该项目是一个类 Flask 的 Python 3.5+
网页服务器,专为加速而设计。Sanic支持异步请求处理,意味着你可以使用Python
3.5中一些async/await语法。。[Github 8028 stars,由Channel Cat和Eli
Uriegas提供]

No.2

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

项目地址:

11、Neon是Nervana的基于Python的深度学习库。
它提供易用性,同时提供最高的性能。Commits: 875, Contributors: 47, Github
URL: Neon

No 5:Python-fire

Photon:一款速度极快的爬虫工具,可爬取URL、邮箱、文件、网站账号等等。[GitHub上3451个star]

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

金沙国际官网 7

12、Nilearn
一个Python模块,用于在NeuroImaging数据上快速轻松地进行统计学习。
它利用scikit-learn
Python工具箱来处理多变量统计信息,包括预测建模,分类,解码或连接分析。Commits:
5254, Contributors: 46, Github URL: Nilearn

一个可以从任何Python对象自动生成命令行界面的库。 [Github 7775
stars,来自Google Brain 的 David Bieber]

金沙国际官网 8

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

Top 4:Chatistics [263 stars on Github],由Florian Laurent提供。

13、Orange3是开源机器学习和数据可视化的新手和专家。
具有大型工具箱的交互式数据分析工作流程。Commits: 6356, Contributors: 40,
Github URL: Orange3

No 6:spaCy

项目地址:

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

一个Python脚本,用以将你的Messenger,
Hangouts和Telegram聊天记录转换成DataFrames。

14、Pymc
一个实现贝叶斯统计模型和拟合算法的python模块,包括马尔可夫链蒙特卡罗。
其灵活性和可扩展性使其适用于大量问题。Commits: 2701, Contributors: 37,
Github URL: Pymc

该项目是一个使用Python和Cython的进行高级自然语言处理的开源库 [Github
7633 stars,由Matthew Honnibal提供]

https://github.com/s0md3v/Photon

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

项目地址:

15、PyBrain is 一个用于Python的模块化机器学习库。
它的目标是为机器学习任务提供灵活,易于使用但仍然强大的算法,以及各种预定义环境,以测试和比较您的算法。Commits:
984, Contributors: 31, Github URL: PyBrain

No 7:Pipenv

 

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

金沙国际官网 9

16、Fuel 是一个数据管道框架,为您的机器学习模型提供他们需要的数据。
它计划被Blocks 和Pylearn2神经网络库使用。Commits: 1053, Contributors:
29, Github URL: Fuel

Python.org官方推荐的Python打包工具。它会自动为项目创建和管理virtualenv,并在安装/卸载软件包时从Pipfile中添加/删除软件包。
[Github 7273 stars,由Kenneth Reitz提供]

No.3

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

Top 5:WhatWaf [554 stars on Github],由Ekultek提供。

17、PyMVPA 是一个Python包,旨在简化大型数据集的统计学习分析。
它提供了一个可扩展的框架,具有用于分类,回归,特征选择,数据导入和导出的广泛算法的高级接口。Commits:
9258, Contributors: 26, Github URL: PyMVPA

No 8:MicroPython

Termgraph:Python命令行工具,能够在终端画出简单的图形。[GitHub上1751个star]

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

检测并绕过Web应用程序防火墙和保护系统

18、Annoy (Approximate Nearest Neighbors Oh Yeah)是一个C
++库,使用Python绑定来搜索靠近给定查询点的空间中的点。
它还创建大型只读的基于文件的数据结构,这些数据结构被映射到内存中,以便许多进程可以共享相同的数据。Commits:
365, Contributors: 24, Github URL: Annoy

一个脱胎于Python且非常高效的Python实现,主要是为了能在嵌入式硬件上更简单地实现对底层的操作。[Github
5728 stars]

金沙国际官网 10

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

项目地址:

19、Deap 一个用于快速原型和测试思想的新型进化计算框架。
它试图使算法显式和数据结构透明。 它与并行机制完美协调。Commits: 1854,
Contributors: 21, Github URL: Deap

No 9:Prophet

项目地址:

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

金沙国际官网 11

20、Pattern 是Python编程语言的Web挖掘模块。
它捆绑了数据挖掘工具,自然语言处理,机器学习 ,k-means聚类,朴素贝叶斯+
k-NN + SVM分类器)和网络分析。Commits: 943, Contributors: 20 , Github
URL: Pattern

该工具是Facebook开源的一款用于为多周期性的线性或非线性时间序列数据生成高质量预测的工具。[Github
4369 stars,由Facebook提供]

https://github.com/mkaz/termgraph

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

Top 6:Prettier-python [192 stars on Github],由Prettier提供。

CTOLib.com编译:

No 10:Serpent AI

 

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

一个好用的Python插件

该项目是一个Python写的游戏代理框架,简单而强大,可帮助开发者创建游戏代理。可将任何视频游戏变成一个Python写成的成熟沙箱环境。该框架的目的是为机器学习和AI研究提供一个有价值的工具,不过对于爱好者来说也是非常有趣的。[Github
3411 stars,由Nicholas Brochu提供]

No.4

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

项目地址:

No 11:Dash

Social_mapper:一款开源智能工具,能够利用人脸识别技术,将多个不同社交网站的主页进行关联。[GitHub上1509个star]

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

金沙国际官网 12

Dash是一个纯Python写成的框架,无需JavaScript即可构建交互式的分析类web应用程序。[Github
3281 stars,由Chris P提供]

金沙国际官网 13

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

Top 7:SimpleCoin [779 stars on Github],由cosme12提供。

No 12:InstaPy

项目地址:

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

一个非常简单,不大安全,不太完整的用Python编写的加密货币区块链实现。
换句话说,一个简单的比特币克隆。

Instagram机器人,喜欢/评论/Follow 自动化脚本。[Github 3179
stars,由TimG提供]。

https://github.com/SpiderLabs/social\_mapper

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

项目地址:

No 13:Apistar

 

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

金沙国际官网 14

专为Python 3定制的Web API框架[Github 3024 stars,Tom Christie提供]。

No.5

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

Top 8:Pyray [83 stars on Github],由ryu577提供。

No 14:Faiss

Cirq:谷歌开源的Python框架,可用于创建、编辑和调用NISQ电路。NISQ是Noisy
Intermediate Scale
Quantum(嘈杂中型量子)的简称,谷歌编写的Cirq是专为NISQ算法打造的框架。[GitHub上1063个star]

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

该项目是一个纯Python编写的3D渲染库。

用于密集向量的高效相似性搜索库和聚类的库 [GitHub 2717
stars,贡献者Facebook Research]

金沙国际官网 15

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

项目地址:

No 15:MechanicalSoup

项目地址:

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

金沙国际官网 16

一个与网站自动交互的Python库,自动存储和发送cookies,支持重定向,并可以跟踪链接和提交表格。[Github
2244 stars]

https://github.com/quantumlib/Cirq

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

Top 9:Vapeplot [181 stars on Github],由Danny Antaki提供。

No 16:Better-exceptions

 

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

用于vaporwave aesthetics的matplotlib扩展

该项目以更友好的形式展示Python中的异常信息。[Github 2121
stars,贡献者Qix]

No.6

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

项目地址:

No 17:Flashtext

Racoon:一款高性能的进攻型安全工具,可用于网络安全侦测和漏洞扫描。[GitHub上1083个star]

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

金沙国际官网 17

该项目基于FlashText算法,用以高效搜索句子中的关键词并进行替代。[Github
2019 stars,由Vikash Singh提供]。

金沙国际官网 18

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

Top 10:Bridgy [190 stars on Github],由Alex Goodman提供。

No 18:Maya

项目地址:

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

cloud inventory + ssh + tmux + sshfs 

在不同系统上的不同语言环境中,Python对日期时间的处理非常不畅,Maya主要就是为了解决解析网站时间数据问题。[Github
1828 stars,Kenneth Reitz提供]

https://github.com/evyatarmeged/Raccoon

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

项目地址:

No 19:Mimesis

 

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

金沙国际官网 19

是一个快速易用的Python库,可以用不同语言为基于不同的目的生成合成数据。这些数据在软件开发和测试阶段非常有用。[Github
1732 stars,由LíkieGeimfari提供]

No.7

开源万岁!分享万

原文地址

No 20:Open-paperless

Sclack:用于Slack的最好的命令行界面客户端。[GitHub上1532个star]

金沙国际官网 20

该项目是一个一个文件管理系统,可扫描、索引和归档所有纸张文档。[Github
1717 stars,由Tina Zhou提供]

金沙国际官网 21

金沙国际官网 22

No 21:Fsociety

项目地址:

黑客工具包,渗透测试框架。[Github 1585 stars,Manis Manisso提供]

https://github.com/haskellcamargo/sclack

No 22:LivePython

 

Python代码实时可视化跟踪。[Github 1577 stars,由Anastasis
Germanidis提供]

No.8

No 23:Hatch

Twitter-cleanup:用Python帮你清理掉Twitter粉丝中不活跃的账号或机器人账号。[GitHub上144个star]

一个Python项目、包以及虚拟环境的管理工具。[Github 1537 stars,由Ofek
Lev提供]

金沙国际官网 23

No 24:Tangent

项目地址:

该项目是谷歌开源的一个用于自动微分的源到源纯Python库。[Github 1433
stars,来自Google Brain的Alex Wiltschko以及其他人]。

https://github.com/cuducos/twitter-cleanup

No 25:Clairvoyant

 

一个Python程序,用于识别和监控短期库存移动的历史线索[Github 1159
stars,由Anthony Federico提供]。

No.9

No 26:MonkeyType

Videodownloader:一段简单的Python脚本,但是能让你下载YouTube视频。[GitHub上74个star]

该项目是Instagram开源的一款适用于Python的工具,通过收集运行时类型来生成静态类型注释。[Github
1137 stars,由Instagram工程师Carl Meyer提供]。

金沙国际官网 24

No 27:Eel

项目地址:

该项目是一个小型Python库,用于制作简单的类似 Electron的离线HTML/JS
GUI应用程序,当前仅支持Python3。 [Github 1137 stars]

https://github.com/mraza007/videodownloader

No 28:Surprise v1.0

 

用于构建和分析推荐系统的Python scikit [Github 1103 stars]

No.10

No 29:Gain

Undictify:一个Python库,提供运行时类型检查函数调用。[GitHub上51个star]

Web爬虫框架。[Github 1009 stars,由高久力提供]

金沙国际官网 25

No 30:PDFTabExtract

项目地址:

一组用于从PDF文件中提取表格的工具,有助于在扫描的文档上进行数据挖掘。
[Github 722 stars]

https://github.com/Dobiasd/undictify

原文地址:

发表评论

电子邮件地址不会被公开。 必填项已用*标注

网站地图xml地图