Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
0% found this document useful (0 votes)
21 views

Python Libraries

The document discusses 10 popular machine learning libraries in Python including TensorFlow, Scikit-Learn, Numpy, Keras, PyTorch, LightGBM, Eli5, SciPy and more. It provides descriptions of each library, their key features and common use cases.
Copyright
© © All Rights Reserved
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
21 views

Python Libraries

The document discusses 10 popular machine learning libraries in Python including TensorFlow, Scikit-Learn, Numpy, Keras, PyTorch, LightGBM, Eli5, SciPy and more. It provides descriptions of each library, their key features and common use cases.
Copyright
© © All Rights Reserved
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 34

Top 10 Libraries In Python

 TensorFlow  LightGBM
 Scikit-Learn  Eli5

 Numpy  SciPy

 Keras  Theano

 PyTorch  Pandas
TensorFlow
 If you are currently working on a machine learning project in
Python, then you may have heard about this popular open
source library known as TensorFlow.
 This library was developed by Google in collaboration with
Brain Team. TensorFlow is used in almost every Google
application for machine learning.
 TensorFlow works like a computational library for writing new
algorithms that involve a large number of tensor operations,
since neural networks can be easily expressed as computational
graphs they can be implemented using TensorFlow as a series
of operations on Tensors. Plus, tensors are N-dimensional
matrices which represent your data.
Features of TensorFlow
 TensorFlow is optimized for speed, it makes use of
techniques like XLA (Accelerated Linear Algebra)
is a domain-specific compiler for quick linear
algebra operations.
 1. Responsive Construct
 With TensorFlow, we can easily visualize each and
every part of the graph which is not an option while
using Numpy or SciKit.
 Flexible
One of the very important Tensorflow Features is
that it is flexible in its operability, meaning it has
modularity and the parts of it which you want to
make standalone, it offers you that option.
 Easily Trainable
It is easily trainable on CPU as well as GPU for
distributed computing.
 Parallel Neural Network Training
TensorFlow offers pipelining in the sense that you
can train multiple neural networksand
multiple GPUs which makes the models very
efficient on large-scale systems.
 Large Community
Needless to say, if it has been developed by Google,
there already is a large team of software engineers
who work on stability improvements continuously.
 Open Source

The best thing about this machine learning library is


that it is open source so anyone can use it as long as
they have internet connectivity.
Where Is TensorFlow Used?
You are using TensorFlow daily but indirectly with
applications like Google Voice Search or Google
Photos. These applications are developed using this
library.
Scikit-Learn
 There are a lot of changes being made in this
library. One modification is the cross-validation
feature, providing the ability to use more than one
metric. Lots of training methods like logistics
regression and nearest neighbors have received
some little improvements.
Features Of Scikit-Learn
 Cross-validation: There are various methods to
check the accuracy of supervised models on unseen
data.
 Unsupervised learning algorithms: Again there is
a large spread of algorithms in the offering – starting
from clustering, factor analysis, principal component
analysis to unsupervised neural networks.
 Feature extraction: Useful for extracting features
from images and text (e.g. Bag of words)
Where Is Scikit-Learn Used?
 It contains a numerous number of algorithms for
implementing standard machine learning and data
mining tasks like reducing dimensionality,
classification, regression, clustering, and model
selection.
Numpy
 Numpy is considered as one of the most popular
machine learning library in Python.
 TensorFlow and other libraries uses Numpy
internally for performing multiple operations on
Tensors. Array interface is the best and the most
important feature of Numpy.
Features Of Numpy
 Interactive: Numpy is very interactive and easy to
use.
 Mathematics: Makes complex mathematical
implementations very simple.
 Intuitive: Makes coding real easy and grasping the
concepts is easy.
 Lot of Interaction: Widely used, hence a lot of
open source contribution.
Where Is Numpy Used?
 This interface can be utilized for expressing
images, sound waves, and other binary raw streams
as an array of real numbers in N-dimensional.
 For implementing this library for machine learning
having knowledge of Numpy is important for full
stack developers.
Keras
 It provides an easier mechanism to express neural
networks. Keras also provides some of the best utilities
for compiling models, processing data-sets, visualization
of graphs, and much more.
 In the backend, Keras uses either Theano or TensorFlow
internally. Some of the most popular neural networks like
CNTK can also be used. Keras is comparatively slow
when we compare it with other machine learning libraries.
Because it creates a computational graph by using back-
end infrastructure and then makes use of it to perform
operations. All the models in Keras are portable.
Features Of Keras
 It runs smoothly on both CPU and GPU.
 Keras supports almost all the models of a neural
network – fully connected, convolutional, pooling,
recurrent, embedding, etc. Furthermore, these models
can be combined to build more complex models.
 Keras, being modular in nature, is incredibly
expressive, flexible, and apt for innovative research.
 Keras is a completely Python-based framework,
which makes it easy to debug and explore.
Where Is Keras Used?
 You are already constantly interacting with features
built with Keras — it is in use at Netflix, Uber,
Yelp, Instacart, Zocdoc, Square, and many others.
It is especially popular among startups that place
deep learning at the core of their products.
 Keras is also a favorite among deep learning
researchers, coming in at #2. Keras has also been
adopted by researchers at large scientific
organizations, in partic,ular CERN and NASA.
PyTorch
 PyTorch is the largest machine learning library that
allow developers to perform tensor computations
wan ith acceleration of GPU, creates dynamic
computational graphs, and calculate gradients
automatically. Other than this, PyTorch offers rich
APIs for solving application issues related to neural
networks.
Features Of PyTorch
 Hybrid Front-End
 A new hybrid front-end provides ease-of-use and
flexibility in eager mode, while seamlessly transitioning
to graph mode for speed, optimization, and functionality
in C++ runtime environments.
 Distributed Training
 Optimize performance in both research and production
by taking advantage of native support for asynchronous
execution of collective operations and peer-to-peer
communication that is accessible from Python and C++.
 Python First
 PyTorch is not a Python binding into a monolithic
C++ framework. It’s built to be deeply integrated
into Python so it can be used with popular libraries
and packages such as Cython and Numba.
 Libraries And Tools
 An active community of researchers and developers
have built a rich ecosystem of tools and libraries for
extending PyTorch and supporting development in
areas from computer vision to reinforcement
learning.
Where Is PyTorch Used?
 PyTorch is primarily used for applications such
as natural language processing.
 It is primarily developed by Facebook’s artificial-
intelligence research group and Uber’s “Pyro”
software for probabilistic programming is built on
it.
 PyTorch is outperforming TensorFlow in multiple
ways and it is gaining a lot of attention in the recent
days.
LightGBM
 Gradient Boosting is one of the best and most popular
machine learning library, which helps developers in
building new algorithms by using redefined elementary
models and namely decision trees. Therefore, there are
special libraries which are designed for fast and
efficient implementation of this method.
 These libraries are LightGBM, XGBoost, and CatBoost.
All these libraries are competitors that helps in solving
a common problem and can be utilized in almost the
similar manner.
Features of LightGBM
 Very fast computation ensures high production
efficiency.
 Intuitive, hence makes it user friendly.
 Faster training than many other deep learning
libraries.
 Will not produce errors when you consider NaN
values and other canonical values.
Eli5
Most often the results of machine learning model
predictions are not accurate, and Eli5 machine
learning library built in Python helps in
overcoming this challenge. It is a combination of
visualization and debug all the machine learning
models and track all working steps of an algorithm.
Features of Eli5
 Moreover, Eli5 supports wother libraries XGBoost,
lightning, scikit-learn, and sklearn-crfsuite
libraries. All the above-mentioned libraries can be
used to perform different tasks using each one of
them.
Where Is LightGBM Used?
 These library provides provide highly scalable,
optimized, and fast implementations of gradient
boosting, which makes it popular among machine
learning developers. Because most of the machine
learning full stack developers won machine
learning competitions by using these algorithms.
Where Is Eli5 Used?
 Mathematical applications which requires a lot of
computation in a short time.
 Eli5 plays a vital role where there are dependencies
with other Python packages.
 Legacy applications and implementing newer
methodologies in various fields.
SciPy
 SciPy is a machine learning library for application
developers and engineers. However, you still need
to know the difference between SciPy library and
SciPy stack. SciPy library contains modules for
optimization, linear algebra, integration, and
statistics.
Features Of SciPy
 The main feature of SciPy library is that it is
developed using NumPy, and its array makes the
most use of NumPy.
 In addition, SciPy provides all the efficient
numerical routines like optimization, numerical
integration, and many others using its specific
submodules.
 All the functions in all submodules of SciPy are
well documented.
Where Is SciPy Used?
 SciPy is a library that uses NumPy for the purpose
of solving mathematical functions. SciPy uses
NumPy arrays as the basic data structure, and
comes with modules for various commonly used
tasks in scientific programming.
 Tasks including linear algebra, integration
(calculus), ordinary differential equation solving
and signal processing are handled easily by SciPy.
Theano
 Theano is a computational framework machine
learning library in Python for computing
multidimensional arrays. Theano works similar to
TensorFlow, but it not as efficient as TensorFlow.
Because of its inability to fit into production
environments.
 Moreover, Theano can also be used on a distributed
or parallel environments just similar to TensorFlow.
Features Of Theano
 Tight integration with NumPy – Ability to use
completely NumPy arrays in Theano-compiled
functions.
 Transparent use of a GPU – Perform data-
intensive computations much faster than on a CPU.
 Efficient symbolic differentiation – Theano does
your derivatives for functions with one or many
inputs.
 Speed and stability optimizations – Get the right
answer for log(1+x) even when x is very tiny. This is
just one of the examples to show the stability of
Theano.
 Dynamic C code generation – Evaluate
expressions faster than ever before, thereby,
increasing efficiency by a lot.
 Extensive unit-testing and self-verification –
Detect and diagnose multiple types of errors and
ambiguities in the model.
Where Is Theano Used?
 The actual syntax of Theano expressions is
symbolic, which can be off putting to beginners
used to normal software development. Specifically,
expression are defined in the abstract sense,
compiled and later actually used to make
calculations.
Pandas
 Pandas is a machine learning library in Python that
provides data structures of high-level and a wide
variety of tools for analysis. One of the great
feature of this library is the ability to translate
complex operations with data using one or two
commands. Pandas have so many inbuilt methods
for grouping, combining data, and filtering, as well
as time-series functionality.
Features Of Pandas
 Pandas make sure that the entire process of
manipulating data will be easier. Support for
operations such as Re-indexing, Iteration, Sorting,
Aggregations, Concatenations and Visualizations
are among the feature highlights of Pandas.
Where Is Pandas Used?
 Currently, there are fewer releases of pandas library
which includes hundred of new features, bug fixes,
enhancements, and changes in API. The
improvements in pandas regards its ability to group
and sort data, select best suited output for the apply
method, and provides support for performing
custom types operations.

You might also like