算法|机器学习 python 库_Python机器学习库

机器学习 python 库
什么是机器学习? (What is Machine Learning?) As the web is immensely growing with each day, analyzing data based on a pattern by human intervention is becoming challenging. To leverage this, computer programs are being developed that can analyze data.
由于网络每天都在蓬勃发展,因此通过人工干预基于模式分析数据变得越来越具有挑战性。 为了利用这一点,正在开发可以分析数据的计算机程序。
This allows computers to learn automatically to observe data, look for patterns and make better decisions without much human intervention.
这使计算机可以自动学习观察数据,查找模式并做出更好的决策,而无需人工干预。
This process of making computers to get trained with a given data set to predict the properties of the data is called Machine Learning.
使计算机接受给定数据集的训练以预测数据属性的过程称为机器学习 。
For example, we can train the computer by feeding numerous images of cars to teach the computer to recognize a car. Numerous other images that are not cars can be fed to the computer. From the above training, the computer can recognize the image of a car.
例如,我们可以通过提供大量汽车图像来训练计算机,以教导计算机识别汽车。 可以将许多非汽车图像发送到计算机。 通过以上训练,计算机可以识别汽车的图像。
Machine Learning has earned huge popularity in recent decades and transforming our lives.
机器学习在近几十年来获得了极大的普及,并改变了我们的生活。
为什么要使用Python进行机器学习? (Why Python for Machine Learning?) Unlike other computer languages like C, Java, etc., Python is renowned for its readability and less complexity.
与其他计算机语言(例如C,Java等)不同,Python以其易读性和较低的复杂性而闻名。
Anyone can easily understand it and make others to easily understand it, too.
任何人都可以轻松理解它,并使其他人也容易理解它。
Data Scientists can make use of Machine Learning to analyze huge volumes of data and draw useful insights with very less effort.
数据科学家可以利用机器学习来分析大量数据,并以较少的努力得出有用的见解。
Python supports a lot of popular in-built libraries that can be readily used to provide Machine Learning functionality.
Python支持许多流行的内置库,这些库可轻松用于提供机器学习功能。
These libraries have 0 learning curve. Having a basic understanding of Python allows programmers to implement these ready to use libraries.
这些库的学习曲线为0。 对Python有一个基本的了解,使程序员可以实现这些现成的库。
The best part is, these Python packages are free under GNU license.
最好的部分是,这些Python软件包在GNU许可下是免费的。
Recommended Read: 推荐阅读 : Python Data Science Libraries Python数据科学库 Python机器学习库 (Python Machine Learning Libraries) Let’s go through some of the commonly used libraries used in the field of Machine Learning.
让我们看一下机器学习领域中使用的一些常用库。
1. NumPy (1. NumPy)
NumPy is a core Python package for performing mathematical and logical operations.
NumPy是用于执行数学和逻辑运算的Python核心软件包。
It supports linear algebra operations and random number generation. NumPy stands for “Numerical Python”.
它支持线性代数运算和随机数生成。 NumPy代表“数字Python”。
NumPy has built-in functions to perform linear algebra operations. NumPy supports multi-dimensional arrays to perform complex mathematical operations. It is essential for fundamental computations in the field of Machine Learning.
NumPy具有内置函数来执行线性代数运算。 NumPy支持多维数组以执行复杂的数学运算。 对于机器学习领域的基础计算而言,它是必不可少的。
2.科学 (2. SciPy)
SciPy is a Python library that is built upon NumPy.
SciPy是基于NumPy构建的Python库。
It makes use of NumPy arrays. SciPy is significantly used for performing advanced operations like regression, integration, and probability.
它利用了NumPy数组。 SciPy大量用于执行高级操作,如回归,积分和概率。
Hence, SciPy is popularly used in the field of Machine Learning as it contains efficient modules for statistics, linear algebra, numerical routines, and optimization.
因此,SciPy包含用于统计,线性代数,数值例程和优化的高效模块,因此在机器学习领域得到了广泛使用。
3. Scikit-Learn (3. Scikit-Learn)
Scikit-Learn is a popular open-source Machine Learning library that is built on top of two famous Python libraries namely NumPy and SciPy.
Scikit-Learn是一种流行的开源机器学习库,它建立在两个著名的Python库NumPy和SciPy之上 。
It features classical ML algorithms for statistical data modeling that includes classification, clustering, regression and preprocessing.
它具有用于统计数据建模的经典ML算法,包括分类,聚类,回归和预处理。
It also provides effective and easy to use Machine Learning tools.
它还提供了有效且易于使用的机器学习工具。
Scikit-learn supports popularly used supervised learning algorithms, as well as unsupervised learning algorithms. The algorithms include support vector machines, grid search, gradient boosting, k-means clustering, DBSCAN and many more.
Scikit-learn支持广泛使用的监督学习算法以及无监督学习算法。 这些算法包括支持向量机,网格搜索,梯度提升,k均值聚类,DBSCAN等。
Along with these algorithms, the kit provides sample datasets for data modeling. The well documented APIs are easily accessible.
该工具包与这些算法一起提供了用于数据建模的样本数据集。 记录良好的API易于访问。
Scikit-learn library is known for its optimal performance across various platforms. This is the reason for its popularity.
Scikit学习库以其在各种平台上的最佳性能而闻名。 这就是它受欢迎的原因。
Hence, it is used for academic and commercial purposes. Scikit-learn is used to build models and it is not recommended to use it for reading, manipulating and summarizing data as there are better frameworks available for the purpose. It is open-source and released under the BSD license.
因此,它用于学术和商业目的。 Scikit-learn用于构建模型,不建议将其用于读取,操作和汇总数据,因为有更好的框架可用于此目的。 它是开源的,并根据BSD许可发布。
4. SymPy (4. SymPy)
SymPy, as the name suggests is a symbolic computation Python library that mainly focuses on algebraic computations.
顾名思义, SymPy是一个符号计算Python库,主要关注代数计算。
Many data scientists use the SymPy library for intermediate mathematical analysis of data. This analysis can be later consumed by other Machine Learning libraries.
许多数据科学家使用SymPy库进行数据的中间数学分析。 以后其他机器学习库可以使用此分析。
5.幕府将军 (5. Shogun)
Shogun is a free, open-source toolbox used for ML that is implemented in C++.
Shogun是用于ML的免费开放源代码工具箱,以C ++实现。
It supports an interface to multiple languages (Python, Java, C#, Ruby, etc) and platforms (Linux, Windows, macOS).
它支持多种语言(Python,Java,C#,Ruby等)和平台(Linux,Windows,macOS)的接口。
Anyone, be it data scientists, journalists, hackers, students, etc can use Shogun with minimal effort and free of cost.
任何人,无论是数据科学家,新闻工作者,黑客,学生等,都可以以最少的努力和免费使用Shogun。
It provides effective implementation of the standard ML algorithms like SVM, kernel hypothesis, multiple Kernel learning, etc.
它提供了标准ML算法(例如SVM,内核假设,多内核学习等)的有效实现。
Shogun comes along with binary installation packages for scaling multiple systems and hence, provides an extensive testing infrastructure.
Shogun随附用于扩展多个系统的二进制安装包,因此提供了广泛的测试基础结构。
Users can download its docker image and locally run the Shogun cloud. Shogun can scale dozens of OS setups and process about 10 million data samples accurately. Shogun’s cloud is non-commercial and available for educational purposes at universities.
用户可以下载其docker映像并在本地运行Shogun云。 Shogun可以扩展数十种操作系统设置,并可以精确处理约1000万个数据样本。 幕府将军的云是非商业性的,可用于大学的教育目的。
6. TensorFlow (6. TensorFlow)
TensorFlow was initially developed for Google’s internal use by Google Engineers.
TensorFlow最初是由Google工程师开发的,供Google内部使用。
But, the system is general enough to be applied for a variety of domains. At the year 2015, the library became open source and was released under Apache 2.0 open source license.
但是,该系统足够通用,可以应用于各种领域。 在2015年,该库成为开源库,并根据Apache 2.0开源许可证发布。
TensorFlow is a popular library for dataflow programming. It is a symbolic math library that uses different optimization techniques to make efficient calculations. This Python package is used for the application of Machine Learning and neural network.
TensorFlow是用于数据流编程的流行库。 这是一个符号数学库,它使用不同的优化技术来进行有效的计算。 该Python软件包用于机器学习和神经网络的应用。
TensorFlow provides robust and scalable solutions for computations across numerous machines and for computations involving huge data sets. Hence, it is the preferred framework for Machine Learning.
TensorFlow为跨众多机器的计算以及涉及大量数据集的计算提供了强大且可扩展的解决方案。 因此,它是机器学习的首选框架。
The library is extensible and supports numerous platforms. It provides GPU support for faster computations, improved performance, and better visualization. TensorFlow provides algorithms for classification, estimation models, differentiation, etc.
该库是可扩展的,并支持众多平台。 它提供了GPU支持,可加快计算速度,提高性能并提供更好的可视化效果。 TensorFlow提供用于分类,估计模型,微分等的算法。
TensorFlow provides rich API support for training neural networks and speech recognition using NLP (Natural Language Processing).
TensorFlow提供了丰富的API支持,可使用NLP(自然语言处理)来训练神经网络和语音识别。
7. Theano (7. Theano)
Theano is a numerical computation library primarily used for implementing neural network models.
Theano是一个数值计算库,主要用于实现神经网络模型。
Theano allows to efficiently define, optimize and evaluate mathematical expressions effectively. Theano focusses on solving complex mathematical equations. It uses a multi-dimensional matrix using NumPy to perform these complex operations.
Theano允许有效地定义,优化和评估数学表达式。 Theano专注于求解复杂的数学方程式。 它使用NumPy使用多维矩阵来执行这些复杂的操作。
Theano can find out unstable expressions and replace them with stable ones to evaluate the expressions.
Theano可以找出不稳定的表达式并将其替换为稳定的表达式以评估表达式。
Theano can make effective usage of GPUs. It provides speed optimization by executing parts of expressions in CPU or GPU.
Theano可以有效利用GPU。 它通过在CPU或GPU中执行部分表达式来提供速度优化。
Theano is smart enough to automatically create symbolic graphs for computing gradients and thereby provides symbolic differentiation. Theano is platform-independent.
Theano足够聪明,可以自动创建用于计算梯度的符号图,从而提供符号差异。 Theano与平台无关。
Along with the mentioned features, Theano provides a unit testing platform for error detection.
除了上述功能外,Theano还提供了用于错误检测的单元测试平台。
8. PyTorch (8. PyTorch)
PyTorch is a Python-based scientific computing package targeted for Machine Learning.
PyTorch是针对机器学习的基于Python的科学计算软件包。
It is a replacement for NumPy and provides maximum speed and flexibility by making use of multiple GPUs.
它替代了NumPy,并通过使用多个GPU提供最大的速度和灵活性。
PyTorch also provides custom data loaders and simple preprocessors. PyTorch provides an interactive debugging environment that allows users to debug and visualize effortlessly. It provides an easy to use API.
PyTorch还提供自定义数据加载器和简单的预处理器。 PyTorch提供了一个交互式调试环境,使用户可以轻松进行调试和可视化。 它提供了易于使用的API。
PyTorch support imperative programming. It performs computations on the fly. The biggest benefit of this feature the code and the programming logic is debugged after each line of code.
PyTorch支持命令式编程。 它可以即时执行计算。 此功能的最大好处是在每行代码之后调试代码和编程逻辑。
PyTorch supports dynamic graphs. Instead of using predefined graphs having specific functionalities, PyTorch provides a simple framework to build computational graphs dynamically and also make changes to them during runtime. This is useful in situations where memory requirements for creating a neural network is unknown.
PyTorch支持动态图。 代替使用具有特定功能的预定义图形,PyTorch提供了一个简单的框架来动态构建计算图,并在运行时对其进行更改。 这在创建神经网络的内存需求未知的情况下很有用。
9.凯拉斯 (9. Keras)
Keras is a high-level neural networks API. It is written in Python and can run on top of Theano, TensorFlow or CNTK (Cognitive Toolkit).
Keras是高级神经网络API。 它是用Python编写的,并且可以在Theano,TensorFlow或CNTK(认知工具包)之上运行。
Keras is a user-friendly, extensible and modular library which makes prototyping easy and fast. It supports convolutional networks, recurrent networks and even the combination of both.
Keras是一个用户友好,可扩展的模块化库,可轻松快速地制作原型。 它支持卷积网络,循环网络,甚至两者的组合。
Initial development of Keras was a part of the research of project ONEIROS (Open-ended Neuro-Electronic Intelligent Robot Operating System). It acts as a plugin for other machine learning libraries.
Keras的最初开发是ONEIROS(开放式神经电子智能机器人操作系统)项目研究的一部分。 它充当其他机器学习库的插件。
There are countless deep-learning frameworks available today, but there are some of the areas in which Keras proved better than other alternatives. Keras focuses on minimal user action requirement when common use cases are concerned.
当今有无数的深度学习框架可用,但是Keras在某些领域被证明比其他选择要好。 当涉及到普通用例时,Keras专注于最小的用户操作要求。
For example, if a user makes an error, clear and actionable feedback is provided. This makes Keras easy to learn and use. Hence, Keras is easy-to-use and is the ideal choice for quick prototyping.
例如,如果用户犯了错误,则会提供清晰且可操作的反馈。 这使得Keras易于学习和使用。 因此,Keras易于使用,是快速原型制作的理想选择。
You can easily deploy models to use into other applications very easily, using Keras. Keras also supports multiple backends and allows portability across backends i.e. you can train using one backend and load it with another.
您可以使用Keras轻松地将模型部署到其他应用程序中。 Keras还支持多个后端,并允许跨后端进行可移植性,即,您可以使用一个后端进行培训,然后将其加载到另一个后端。
Keras provides built-in multiple GPU support and supports distributed training.
Keras提供内置的多个GPU支持,并支持分布式培训。
结论 (Conclusion) In this article, we have discussed the commonly used Python libraries for Machine Learning. Hope this tutorial would help Data Scientists to deep dive into this vast field and make the most out of these Python libraries.
在本文中,我们讨论了用于机器学习的常用Python库。 希望本教程可以帮助数据科学家深入研究这个广阔的领域,并充分利用这些Python库。

翻译自: https://www.journaldev.com/31613/python-machine-learning-libraries
【算法|机器学习 python 库_Python机器学习库】机器学习 python 库

    推荐阅读