2019 年您应该了解的 10 个最佳 Python 开发库
讨论了开发人员可以用来分析、清理和可视化数据以及将机器学习应用于现有应用程序的一些顶级 Python 库。
以下排名前 10 的 Python 库如下:
- TensorFlow
- Scikit-Learn
- Numpy
- TensorFlow
- Scikit-Learn
- Num py
- Keras‷ KerasP M
- Eli5
- SciPy
- Theano
- Pandass:
简介
Python是最流行、使用最广泛的编程语言之一,已经取代了很多编程语言在工业中。
Python 如此受开发者欢迎的原因有很多。然而,最重要的是拥有许多可用的库。
Python 的简单性吸引了许多开发人员为机器学习创建新的库。 Python因其大量的库而在机器学习领域非常受欢迎。
第一个库是 TensorFlow。
TensorFlow
什么是 TensorFlow?
如果您现在正在使用 Python 进行机器学习,您可能听说过流行的开源网站 TensorFlow。
该库由 Google 与 Brain 团队开发。几乎所有 Google 应用程序都使用了 TensorFlow 机器学习。
TensorFlow 就像一个计算机库,用于编写具有许多张量函数的新算法。由于神经网络可以轻松地表示为计算图,因此可以在 TensorFlow 中将其实现为一系列张量运算。此外,张量是表示数据的 n 维矩阵。
TensorFlow 的功能
TensorFlow 专为提高速度而设计,使用 XLA 等技术进行快速线性代数运算。
1。答案构造: 使用 TensorFlow,我们可以轻松可视化图表的所有部分,而使用 Numpy 或 SciKit 时则无法实现这一点。
2。高灵活性:Tensorflow的一个非常重要的特点是它的功能非常灵活,这意味着它是模块化的,可以独立于你想要的部分使用。给出选项。
3. 易于训练: 易于训练CPU和GPU分布式计算。
4. 并行神经网络训练:TensorFlow 提供了管道,可以训练多个神经网络和多个 GPU,这使得模型在大型系统上非常高效。
5. 伟大的社区: 不用说,如果是 Google 开发的,已经有一个软件工程师团队在不断提高其准确性。
6. 开源:这个机器学习库最好的一点是它是开源的,任何有互联网连接的人都可以使用。
在哪里使用 TensorFlow?
您每天都会使用 TensorFlow,间接使用 Google 语音搜索或 Google Photos 等使用该库开发的应用程序。
在 TensorFlow 中创建的所有库都是用 C 和 C++ 编写的。然而,对于Python来说,它有一个复杂的设计。 Python代码被编译,然后在C和C++构建的TensorFlow分布式执行引擎上执行。
TensorFlow应用程序的数量是无限的,这就是TensorFlow的美妙之处。
Scikit-Learn
什么是 Scikit-learn?
这是一个与 NumPy 和 SciPy 交互的 Python 库。被认为是管理复杂数据库的最佳库之一。
该库正在经历许多更改和修复,更改交叉验证功能并提供提供多种测量的能力。许多训练方法,例如逻辑回归和最近邻,都得到了微小的改进。
Scikit-Learn 的功能
- 1。交叉验证:有几种方法可以测试观测模型对缺失数据的有效性。
- 2. 无监督学习算法:同样,有许多可用的算法 - 从聚类、因子分析、主成分分析到无监督神经网络。
- 3。特征去除:用于去除图像和文本(如文本框)中的特征。什么是 Scikit-Learn?
Numpy
Numpy 是什么?
Numpy 被认为是最流行的 Python 机器学习库之一。
TensorFlow 和其他库在内部使用 Numpy 对张量执行许多操作。数组接口是 Numpy 最好也是最重要的功能。Numpy 的功能
- 交互性:Numpy 具有高度交互性且易于使用
- 数学:使复杂的数学应用变得简单
- 直观:易于连接到 Wi-Fi de,有很多开源贡献
Numpy 用在哪里?
该接口可用于将图像、波形和其他原始二进制流显示为实数数组。
了解 Numpy(一个机器学习库)对于一个完整的开发人员来说至关重要。Keras
什么是 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等。主要科学组织的研究人员也使用它,特别是 CERN 和 NASA。
PyTorch
PyTorch 是什么?
PyTorch 是最大的机器学习库,允许开发人员利用 GPU 加速来计算张量、创建动态计算图并自动计算梯度。此外,PyTorch还提供了丰富的API来解决神经网络相关的应用问题。
该机器学习库基于 Torch,这是一个用 C 语言编写的开源机器学习库,带有 Lua 包装器。
这个用 Python 编写的机器学习库于 2017 年推出,自创建以来越来越受欢迎,吸引了越来越多的机器学习开发人员。
PyTorch 功能
- 混合前端:新的混合前端在活动模式下提供易用性和灵活性,同时在 C++ 和运行时环境中无缝过渡到图形模式以提高速度。
- 分布式训练:通过使用对异步执行联合任务以及以Python和C++访问的点对点通信的本机支持来提高研究和生产效率。
- Python 首先:PyTorch 不会将 Python 绑定到集成的 C++ 框架。它旨在使用流行的库和包(例如 Cython 和 Numba)深度集成到 Python 中。
- 库和工具:活跃的研究人员和开发人员社区已经构建了丰富的工具和库生态系统,以扩展 PyTorch 并支持从计算机视觉到强化学习等领域的开发。
PyTorch 在哪里使用?
PyTorch 主要用于自然语言处理等应用。
它是由Facebook的人工智能研究小组创建的,Uber的“Pyro”概率软件是建立在它之上的。
PyTorch 在很多方面都优于 TensorFlow,并且最近吸引了很多关注。LightGBM
什么是LightGBM?
Gradient Boosting 是最好、最受欢迎的机器学习 (ML) 库之一,可帮助开发人员通过使用更新的基本模型和决策树来创建新算法。因此,有专门的库旨在快速有效地实现该方法。这些库(即 LightGBM、XGBoost 和 CatBoost)非常适合故障排除,并且可以以类似的方式使用。
LightGBM的特点
- 计算速度快,生产效率高。
- 直观且易于使用。
- 与许多其他深度学习库相比,您可以更快上手。
- 检查 NaN 值和其他规范值时不会发生错误。
LightGBM用在哪里?
该库提供了可扩展、可扩展且快速的梯度缩放实现,使其深受机器学习开发人员的欢迎。因为大多数机器学习开发人员都使用这些算法赢得了机器学习竞赛。
Eli5
Eli5 是什么?
机器学习模型通常会预测错误的答案,而 Python 内置的 Eli5 机器学习库有助于克服这一挑战。它是所有机器学习模型的可视化和编码以及算法所有工作步骤的控制的结合。
Eli5 的功能
此外,Eli5 还支持 XGBoost 库、flash、scikit-learn 和 sklearn-crfsuite 库。上面提到的所有库都可以使用它们中的任何一个来完成不同的任务。
Eli5在哪里使用?
需要在短时间内进行大量计算的数学应用程序。
当存在对其他 Python 包的依赖时,Eli5 发挥着重要作用。
在不同领域应用旧做法和新方法。Theano
Theano 是什么?
Theano 是一个用于计算大量变量的 Python 框架机器学习库。 Theano 的工作原理与 TensorFlow 类似,但效率不如 TensorFlow。因为它无法适应生产环境。
此外,Theano 可以在类似于 TensorFlow 的分布式或并行环境中使用。Theano 功能
- 与 NumPy 的强大集成 - 能够在 theano 编译函数中使用完整的 NumPy 代码。
- 透明的 GPU 使用率 - 比 CPU 更快地执行数据密集型计算。
- 有效的符号除法 - Nyano 通过一个或多个输入来区分函数。
- 速度和稳定性 - 即使 x 很小,也能获得 log(1+x) 的精确结果。这是蒂亚诺正直的一个例子。
- 动态 C 代码生成 – 比以前更快地计算表达式,从而改善结果。
- 自测试和验证 - 检测和识别模型中的各种错误和歧义。
Theano 在哪里使用?
Theano 的主要语法是符号式的,这对于习惯传统软件开发的初学者来说可能会感到不舒服。一般来说,术语是在其抽象意义上定义的,组合起来然后用于实际计算。
它专门设计用于处理深度学习中使用的大型神经网络算法所需的计算类型。它是同类库中最早的一个(开发于 2007 年开始),被认为是深度学习研究和开发的行业标准。
目前,Theano 已用于多个神经网络项目,并且随着时间的推移,它的受欢迎程度将会越来越高。熊猫
什么是熊猫?
pandas 是 Python 中的机器学习库,提供高级数据结构和各种分析工具。该库的一个重要功能是能够仅使用一两个命令来修改复杂的数据操作。 pandas 有许多内置方法用于收集、组合数据、过滤和时间序列应用。
这些都是速度良好的迹象。Pandas 功能
pandas 确保数据操作的每一步都变得更加容易。支持重新索引、迭代、排序、收集、插入和查看图像等操作是 pandas 的重要特性之一。
熊猫用在什么地方?
目前 pandas 库的版本很少,其中包括数百个新功能、错误修复、改进和 API 更改。 pandas 的改进包括其对数据进行分组和组织、为所应用的方法选择最合适的结果以及为执行常见类型任务提供支持的能力。
使用pandas时,数据分析是最重要的。但当与其他库和工具一起使用时,pandas 可以确保高性能和良好的灵活性。
这是 2019 年你应该了解的 10 个 Python 库!朋友们,我希望这篇文章能够帮助您理解和学习Python中可用的库。
作者:Carrie W
来源:知乎
版权声明
本文仅代表作者观点,不代表Code前端网立场。
本文系作者Code前端网发表,如需转载,请注明页面地址。
发表评论:
◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。