10大Python库必须了解

10大Python库必须了解

我们将讨论一些 python 中的顶级库,开发人员能够运用这些库在现有的应用程序中应用、清洗和标明数据,并进行机器学习研讨。
我们将讨论以下 10 个库:

TensorFlow

Scikit-Learn

Numpy

Keras

PyTorch

LightGBM

Eli5

SciPy

Theano

Pandas

2019 必知的 10 大顶级 python 库

简介

python 是最盛行和运用最广泛的编程言语之一,它现已替代了业界许多编程言语。

python 在开发人员中盛行的原因有许多。但是,最重要的一点是它有许多的库供用户运用。

python 的简略性吸引了许多开发人员为机器学习创建新的库。因为有许多的库,python 在机器学习专家中变得非常盛行。

所以,这儿要介绍的第一个库是 TensorFlow。

1.TensorFlow

2019 必知的 10 大顶级 python 库

什么是 TensorFlow?

如果你现在正在运用 python 进行机器学习项目,那么你或许听说过这一个盛行的开源库,那就是 TensorFlow。

这个库是由 Google 与 Brain Team 合作开发的,几乎每一个 Google 的机器学习应用程序都用到了 TensorFlow。

TensorFlow 就像一个核算库,用于编写触及许多 tensor 操作的新算法。因为神经网络能够很简略地标明为核算图,因而它们能够运用 TensorFlow 作为 tensor 的一系列操作来完结。别的,tensor 是标明数据的 n 维矩阵。

TensorFlow 的特征

1.快速照应的结构

运用 TensorFlow,我们能够很简略地可视化图的每个部分,这在运用 Numpy 或 SciKit 时是做不到的。

2.灵活

TensorFlow 的一个非常重要的特性是,它的操作非常灵活。这意味着它具有模块性,能够让你把期望独立出来的部分分出来

3.简略操练

关于分布式核算来说,它很简略在 CPU 和 GPU 上操练。

4.并行神经网络操练

TensorFlow 供应了管道流,从这个意义上说,你能够操练多个神经网络和多个 GPU,这使得模型在大型系统上非常有用。

5.大型社区

不用说,它是由 Google 开发的,现已有一个庞大的软件工程师团队在不断地改善稳定性。

6.开源

这个机器学习库最好的一个特征是,它是开源的,任何人只需有联接互联网就能够运用它。

TensorFlow 被用在哪里?

你每天都在运用 TensorFlow,你运用的 Google Voice Search 或 Google Photos 等应用程序都是运用这个库开发的。

在 TensorFlow 创建的全部库都是用 C 和 C++编写的,但是,它有一个凌乱的前端,是用 python 完结的。你的 python 代码将被编译,然后在运用 C 和 C++构建的 TensorFlow 分布式实行引擎上实行。

实践上,TensorFlow 的应用是无限的,这就是它美妙的当地。

2.Scikit-Learn

2019 必知的 10 大顶级 python 库

什么是 Scikit-Learn?

它是一个与 NumPy 和 SciPy 相关联的 python 库。它被认为是处理凌乱数据的最佳库之一。

在这个库中进行了许多批改。其间一个批改是穿插验证特性,它供应了运用多个衡量的才干。许多操练办法,如物流回归和最邻近算法,都没有得到什么改善。

Scikit-Learn 的特性

穿插验证:有多种办法能够检查不行见数据上受监督模型的精确性。

无监督学习算法:同样,在产品中有许多的算法——从聚类、因子剖析、主成分剖析到无监督神经网络

特征提取:用于从图像和文本中提取特征(例如一段文字)

Scikit Learn 被用在哪里?

它包括许多完结规范机器学习和数据挖掘任务的算法,如降维、分类、回归、聚类和模型选择。

3.Numpy

2019 必知的 10 大顶级 python 库

什么是 Numpy?

Numpy 被认为是 python 中最盛行的机器学习库之一。

TensorFlow 和其他库在内部运用 Numpy 对 tensor 实行多个操作。数组接口是 Numpy 的最佳和最重要的特性。

Numpy 的特性

交互性:Numpy 非常简略了解和运用

数学性:使凌乱的数学完结变得非常简略

直观:真正使编码变得简略,掌握概念也很简略

许多接口:广泛运用,因而有许多开源贡献者

Numpy 被用在哪里?

该接口可用于将图像、声响和其他二进制原始流标明为 n 维实数数组。

机器学习库的完结,拥有 Numpy 的常识关于全栈开发人员来说是很重要的。

4.Keras

2019 必知的 10 大顶级 python 库

什么是 Keras?

Keras 被认为是 python 中最酷的机器学习库之一。它供应了一种更简略表达神经网络的机制。Keras 还为编译模型、处理数据集、图形可视化等供应了一些最佳有用程序。

在后端,Keras 在内部运用 Theano 或 TensorFlow。也能够运用一些最盛行的神经网络,如 CNTK。当我们将其与其他机器学习库进行比较时,Keras 的速度相对较慢,因为它运用后端根底设备创建核算图,然后利用它实行操作。Keras 的全部模型都很轻简。

Keras 的特征

它在 CPU 和 GPU 上都能顺利运转。

Keras 支撑几乎全部的神经网络模型——全联接、卷积、池化、循环、嵌入等。此外,这些模型能够结合起来构建更凌乱的模型。

Keras 本质上是模块化的,具有难以置信的表现力、灵活性和立异性研讨的才干。

Keras 是一个彻底依据 python 的结构,它使调试和探索变得简略。

Keras 被用在哪里?

你现已在不断地与运用 Keras 构建的产品进行交互—Netflix、Uber、Yelp、Instacart、Zocdoc、Square 和许多其他公司都在运用它。它在草创企业中特别受欢迎,草创企业将深度学习放在其产品的中心方位。

Keras 包括许多常用的神经网络构建块的完结,例如层、政策、激活函数、优化器和一系列东西,以使图像和文本数据的处理愈加简略。

此外,它还供应许多预处理的数据集和预操练的模型,如 MNIST, VGG, Inception, SqueezeNet, ResNet 等。

Keras 也是深度学习研讨人员的独爱。大型科学组织,特别是 CERN and NASA 的研讨人员特别偏心 Keras。

5.PyTorch

2019 必知的 10 大顶级 python 库

什么是 PyTorch?

PyTorch 是最大的机器学习库,它允许开发人员以 GPU 的加速度实行 tensor 核算,创建动态核算图,并自动核算梯度。除此之外,PyTorch 还供应了丰盛的 API 来处理与神经网络相关的应用程序问题。
这个机器学习库是依据 Torch 的,它是一个用 C 言语完结的开源机器库,在 Lua 中进行了封装。

此机器学习库(python)于 2017 年推出,自其面世以来,该库越来越受欢迎,并吸引了越来越多的机器学习开发人员。

PyTorch 的特性

端到端 Hybrid

一种新的混合前端,供应了易于运用和具有灵活性的 Eager Mode,一起为了速度,无缝过渡到 graph mode,在 C++运转环境中非常有用。

分布式操练

利用本地支撑异步实行团体操作和点对点通讯(Python 和 C++),优化研讨和出产中的功能。

python 优先

PyTorch 不是一个将 python 绑定到 C++结构的东西。它的构建是为了深化集成到 python 中,以便能够与盛行的库和包(如 Cython 和 Numba)一起运用。

库和东西

一个由研讨人员和开发人员组成的生动社区现已建立了一个丰盛的东西和库的生态系统,用于扩展 PyTorch 并支撑从核算机视觉到强化学习等领域的开发。

PyTorch 被用在哪里?

PyTorch 首要用于自然言语处理等领域的应用程序。

它首要是由 Facebook 的人工智能研讨小组开发的,Uber 的概率编程软件「Pyro」就建立在它的根底之上。

PyTorch 在许多方面都优于 TensorFlow,最近它得到了许多注重。

6.LightGBM

2019 必知的 10 大顶级 python 库

什么是 LightGBM?

梯度增强是最好的和最盛行的机器学习(ML)库之一,它能够协助开发人员运用从头定义的底子模型,即决策树来构建新的算法。因而,有专门的库能够快速有用地完结这种办法。

这些库包括 LightGBM, XGBoost 和 CatBoost。这些库之间存在相互竞争的联系,它们都有助于处理常见问题,能够以几乎类似的办法运用。

LightGBM 的特征

核算速度快,出产效率高。

直观,易于运用。

比其他许多深度学习库更快地操练。

在遇到 NaN 值和其他规范值时不会产生差错。

LightGBM 被用在哪里?

这个库供应了高度可扩展、优化和快速的梯度增强完结,这使得它在机器学习开发人员中很受欢迎。大多数机器学习全栈开发人员经过运用这些算法赢得了机器学习竞赛。

7.Eli5

2019 必知的 10 大顶级 python 库

什么是 Eli5?

一般,机器学习模型猜测的效果并不精确,python 内置的机器学习库 Eli5 有助于克服这一应战。它是可视化和调试全部机器学习模型的组合,并盯梢算法的全部作业过程。

Eli5 的特征

此外,Eli5 还支撑其他库,包括 xgboost、lightning、scikit-learn 和 sklearn-crfsite。全部上述库中额每一个都能够实行不同的任务。

Eli5 被用在哪里?

在短时间内需求进行许多核算的数学应用

Eli5 在和其他 Python 包存在依托联系的状况下发挥着至关重要的效果

在各个领域的传统应用程序完结新办法

8.SciPy

2019 必知的 10 大顶级 python 库

什么是 SciPy?

SciPy 是一个面向应用程序开发人员和工程师的机器学习库。但是,你依然需求知道 SciPy 库和 SciPy 仓库之间的差异。SciPy 库包括用于优化、线性代数、集成和计算的模块。

SciPy 的特征

SciPy 库的首要特征是它是运用 Numpy 开发的,它的数组充分利用了 Numpy。

此外,SciPy 还运用其特定的子模块供应了全部有用的数值程序,如优化、数值积分和许多其他程序。

全部 SciPy 子模块中的全部功用都有具体的文档注释。

SciPy 被用在哪里?

SciPy 是一个运用 Numpy 来解数学函数的库。SciPy 运用 Numpy 数组作为底子数据结构,并顺便用于科学编程中各种常用任务的模块。

SciPy 能够轻松地处理线性代数、积分(微积分)、常微分方程求解和信号处理等任务。

9.Theano

2019 必知的 10 大顶级 python 库

什么是 Theano?

Theano 是一个用于核算多维数组的核算结构机器学习库。它的作业原理与 TensorFlow 类似,但不如 TensorFlow 有用,因为它无法习惯出产环境。

此外,Theano 也能够在与 TensorFlow 类似的分布式或并行环境中运用。

Theano 的特征

与 Numpy 严密集成——能够在无编译函数中运用完好的 Numpy 数组

高效地运用 GPU——比 CPU 实行数据密集型核算要快得多

有用的符号区别——Theano 为具有一个或多个输入的函数求导数

速度和稳定性优化——即便在 x 非常小的状况下,也能求出 log(1+x)的正确答案。这只是一个能够证明 Theano 稳定性的比如

动态 C 代码生成——比曾经更快地评估表达式,然后大大提高效率

广泛的单元测试和自验证—检测和诊断模型中多种类型的歧义和差错

Theano 被用在哪里?

Theano 表达式的实践语法是符号化的,这关于习惯于惯例软件开发的初学者来说是很不便利的。具体来说,表达式是以抽象的办法定义、编译的,然后直接用于核算。

它是专门为处理深度学习运用的大型神经网络算法所需的核算而规划的。它是同类库中最早的一个(在 2007 年就初步开发了),被认为是深度学习研讨和开发的职业规范。

Theano 现在正被用于多个神经网络项目中,并且跟着时间的推移,Theano 的普及率也在不断提高。

20.Pandas

2019 必知的 10 大顶级 python 库

什么是 Pandas?

Pandas 是 Python 中的一个机器学习库,它供应高级的数据结构和各式各样的剖析东西。这个库的一个重要特性是能够运用一个或两个指令转换凌乱的数据操作。Pandas 有许多内置的分组、数据组合、过滤和时间序列功用的函数。

Pandas 的特征

Pandas 保证了整个数据处理的过程愈加简略。对比如重索引、迭代、排序、聚合、联接和可视化等操作的支撑是 Pandas 的特征亮点之一。

Pandas 被用在哪里?

现在,Pandas 库的版别较少,其间包括数百个新功用、差错修正、增强和 API 更改。Pandas 的改善在于它能够对数据进行分组和排序,为运用的办法选择最适合的输出,并为实行自定义类型的操作供应支撑。

当运用 Pandas 的时候,数据剖析占了很大的比重。但是,当与其他库和东西一起运用时,Pandas 保证了高功能和杰出的灵活性。

python 中的 10 大顶级 机器学习库的介绍就到这儿啦,期望本文能够协助你初步学习 python 中可用的库。
文章来源:www.cqnl.xyz

  • 3
    点赞
  • 28
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值