面向 Python 语言的三大顶级机器学习库

事实证明,无需掌握艰深的数据科学,我们同样能够在机器学习的世界中徜徉。当然,这段旅程不可避免地需要借助各类大数据、人工智能、深度学习与规模化统计与分析工具的帮助。

在今天的文章中,我们将共同了解三款最具人气的Python机器学习库,相信能够帮助大家带来更为顺利的数据科学探索体验。

1、Theano

约十年前诞生的机器学习方案Theano,是目前机器学习领域使用范围最广的CPU与GPU数学编译器之一。

在《Theano:用于快速实现数学表达计算的Python框架》这篇论文当中,作者对这套库进行了全面的概述。“Theano包含多款软件包,用以强化自身功能。能提供高水平用户界面,足以处理多种特定目标,”论文解释称:“其中的Lasagne与Keras能够有效简化深度学习模型以及作为数学表达式的训练算法的架构表达。事实上,概率编程框架PyMC3就在利用Theano以自动生成表达式并快速执行所生成的C代码。(Keras与Lasagne同时运行在TensorFLow与Theano之上。)。”

Theano目前在GitHub上拥有超过2万5千项提交成果以及近300名贡献者,fork次数将接近2千次。

2、TensorFlow

TensorFlow是一套利用数据流图形进行数值计算的开源库。尽管只是开源领域的一名新兵,但这一由谷歌公司牵头的项目已经拥有近1万5千条提交成果以及超过600名GitHub贡献者,模型库的星评更是逼近1万2千颗。

在第一份《开源年鉴》当中,TensorFlow被选为2016年最值得fork项目。而在最新的《开源年鉴》内,TensorFlow同样多次亮相。基于TensorFlow的Magenta项目甚至在尝试将机器智能同艺术领域加以联系,探索如何利用它来实现音乐与艺术创作,并由此建立起以艺术家、程序员以及机器学习研究者的混合型社区。另外,Tensorflow支持多种前端语言,但对Python的支持是最好的,Python还被列入2017年热门编程趋势排行。

TensorFlow 1.0于今年2月中旬推出。谷歌在其开发者博客中写道:“尽管刚刚诞生一年,但TensorFlow已经切实帮助研究人员、工程师、艺术家、学生以及其他各类用户完成各类工作,它范畴涵盖语言翻译、皮肤癌早期诊断乃至糖尿病患者并发性失明预防等领域等”。

3、scikit-learn

这套方案立足于NumPy、SciPy以及Matplotlib,并被Spotfiy公司的工程师们用于进行音乐推荐。而在OkCupid公司,是负责对匹配系统进行评估与改进。在Birchbox公司,工作人员正在摸索如何利用scikit-learn支持新产品的开发。

Scikit-learn目前在GitHub上拥有近2万2千条提交成果与800名贡献者。

本文来自开源中国社区 [http://www.oschina.net]

时间: 2024-10-28 09:43:10

面向 Python 语言的三大顶级机器学习库的相关文章

sklearn:Python语言开发的通用机器学习库

引言:深入理解机器学习并完全看懂sklearn文档,需要较深厚的理论基础.但是,要将sklearn应用于实际的项目中,只需要对机器学习理论有一个基本的掌握,就可以直接调用其API来完成各种机器学习问题. 本文选自<全栈数据之门>,将向你介绍通过三个步骤来解决具体的机器学习问题. sklearn介绍 scikit-learn是Python语言开发的机器学习库,一般简称为sklearn,目前算是通用机器学习算法库中实现得比较完善的库了.其完善之处不仅在于实现的算法多,还包括大量详尽的文档和示例.其

最好的Python机器学习库

引言 毫无疑问,神经网络和机器学习在过去几年一直是高科技领域最热门的话题之一.这一点很容易看出,因为它们解决了很多真正有趣的用例,如语音识别.图像识别.甚至是乐曲谱写.因此,在这篇文章,我决定编制一份囊括一些很好的Python机器学习库的清单,并将其张贴在下面. 在我看来,Python是学习(和实现)机器学习技术最好的语言之一,其原因主要有以下几点: 语言简单:如今,Python成为新手程序员首选语言的主要原因是它拥有简单的语法和庞大的社区. 功能强大:语法简单并不意味着它功能薄弱.Python

Python语言下的机器学习库

Python是最好的编程语言之一,在科学计算中用途广泛:计算机视觉.人工智能.数学.天文等.它同样适用于机器学习也是意料之中的事. 当然,它也有些缺点;其中一个是工具和库过于分散.如果你是拥有unix思维(unix-minded)的人,你会觉得每个工具只做一件事并且把它做好是非常方便的.但是你也需要知道不同库和工具的优缺点,这样在构建系统时才能做出合理的决策.工具本身不能改善系统或产品,但是使用正确的工具,我们可以工作得更高效,生产率更高.因此了解正确的工具,对你的工作领域是非常重要的. 这篇文

Python机器学习库

   Python在科学计算领域,有两个重要的扩展模块:Numpy和Scipy.其中Numpy是一个用python实现的科学计算包.包括: 一个强大的N维数组对象Array: 比较成熟的(广播)函数库: 用于整合C/C++和Fortran代码的工具包: 实用的线性代数.傅里叶变换和随机数生成函数.      SciPy是一个开源的Python算法库和数学工具包,SciPy包含的模块有最优化.线性代数.积分.插值.特殊函数.快速傅里叶变换.信号处理和图像处理.常微分方程求解和其他科学与工程中常用的

《基于ArcGIS的Python编程秘笈(第2版)》——第1章 面向ArcGIS的Python语言基础

第1章 面向ArcGIS的Python语言基础 同其他编程语言一样,Python也支持多种类型的程序架构.本章主要介绍Python的基本语言架构.首先,介绍如何创建新的Python脚本及编辑已有的脚本:其次,介绍Python语言的特点,如添加注释.创建变量并赋值.创建内置变量等,以使Python的代码更加简单明了. 然后,介绍Python语言提供的各种内置数据类型,如字符串.数字.列表和字典等.类和对象是Python等面向对象编程语言的基本概念,在使用ArcGIS编写地理处理脚本时会经常用到它们

《机器学习系统设计:Python语言实现》一第2章 工具和技术

第2章 工具和技术 Python具备大量可用于机器学习任务的包库.本章将探索以下包:IPython控制台:NumPy,支持多维数组.矩阵和高阶数学函数的扩展:SciPy,包含科学公式.常数和数学函数的库:Matplotlib,用于制图:Scikit-learn,用于诸如分类.回归和聚类等机器学习任务的库.要尝试这些巨大的库,你只需要有足够的空间和一项重要的技能,就是能够发现和理解各种包的参考资料.在教程风格的文档里不可能呈现所有不同的功能,因此能够不迷失在那些有时庞杂的API参考手册中就显得尤为

《面向机器智能的TensorFlow实践》一1.3 TensorFlow:一个现代的机器学习库

1.3 TensorFlow:一个现代的机器学习库 TensorFlow由谷歌于2015年11月向公众正式开源,它是汲取了其前身-DistBelief在创建和使用中多年积累的经验与教训的产物.TensorFlow的设计目标是保证灵活性.高效性.良好的可扩展性以及可移植性.任何形式和尺寸的计算机,从智能手机到大型计算集群,都可运行TensorFlow.TensorFlow中包含了可即刻将训练好的模型产品化的轻量级软件,有效地消除了重新实现模型的需求.TensorFlow拥抱创新,鼓励开源的社区参与

《从问题到程序:用Python学编程和计算》——1.2 Python语言简介

1.2 Python语言简介 本节将首先简单介绍Python语言的一些基本情况,包括其发展和使用的情况.而后介绍Python语言系统的安装和使用方面的基本常识.1.2.1 Python语言的发展和应用 Python语言是CWI(荷兰国家数学和计算机研究中心)的程序员Guido van Rossum在1989年开始开发的一种高级编程语言,当时的主要设计目标是希望能用于方便地管理CWI的Amoeba操作系统.后来,由于其各方面的优点而逐渐流行起来. Python语言现在由Python软件基金会(Py

强者联盟——Python语言结合Spark框架

引言:Spark由AMPLab实验室开发,其本质是基于内存的快速迭代框架,"迭代"是机器学习最大的特点,因此非常适合做机器学习.得益于在数据科学中强大的表现,Python语言的粉丝遍布天下,如今又遇上强大的分布式内存计算框架Spark,两个领域的强者走到一起,自然能碰出更加强大的火花(Spark可以翻译为火花),因此本文主要讲述了PySpark. 本文选自<全栈数据之门>. 全栈框架 Spark由AMPLab实验室开发,其本质是基于内存的快速迭代框架,"迭代&qu