Skip to content

Python Libraries

While there are a lot of languages to pick from, Python is among the most developer-friendly Machine Learning and Deep Learning programming language, and it comes with the support of a broad set of libraries catering to your every use-case and project.

Here is a list of Libraries most widely used for Machine Learning, Artificial Intelligence and Data Science


Overview

Library Developer(s) Initial Release Written In Type
TensorFlow Google Brain Team 2015 Python, C++, CUDA Machine Learning
Theano Montreal Institute for Learning Algorithms (MILA), University of Montreal 2007 Python, CUDA Machine Learning
PyTorch Facebook's AI Research lab (FAIR) 2016 Python, C++, CUDA Machine Learning & Deep Learning
Keras François Chollet 2015 Python Neural Networks
Matplotlib Michael Droettboom 2003 Python Data Visualization & Plotting
Numpy Community Project 2006 Python, C Numerical Analysis
Pandas Wes McKinney 2008 Python, Cython, C Technical Computing
Scikit Learn David Cournapeau 2007 Python, Cython, C and C++ Machine Learning
SciPy Community Project 2001 Python, Fortran, C, C++ Technical Computing
Shogun Soeren Sonnenburg, Sergey Lisitsyn,Heiko Strathmann, Fernando Iglesias, Viktor Gal 2017 C++ Software Library
Seaborn Community Project 2010 Python Data Visualization & Plotting
Plotly Alex Johnson, Jack Parmer, Chris Parmer, Matthew Sundquist 2012 Python, C Data Visualization & Plotting
Statsmodels Josef Perktold, Skipper Seabold, Jonathan Taylo 2015 Python Statistical Analysis


TensorFlow

TensorFlow is one of the best library available for working with Machine Learning on Python. Offered by Google, TensorFlow makes ML model building easy for beginners and professionals alike.

Using TensorFlow, you can create and train ML models on not just computers but also mobile devices and servers by using TensorFlow Lite and TensorFlow Serving that offers the same benefits but for mobile platforms and high-performance servers.

Website python

GitHub python


Theano

Theano is a powerful Python library enabling easy defining, optimizing and evaluation of powerful mathematical expressions. With Theano, you can achieve the rapid development of some of the most efficient machine learning algorithms.

Built on top of Theano are some of the well known deep learning libraries such as Keras, Blocks and Lasagne. Theano is a Python library and optimizing compiler for manipulating and evaluating mathematical expressions, especially matrix-valued ones. In Theano, computations are expressed using a NumPy-esque syntax and compiled to run efficiently on either CPU or GPU architectures.

Theano Is no longer under development see GitHub page for more.

GitHub python


PyTorch

Developed by Facebook, PyTorch is one of the few machine learning libraries for Python. Apart from Python, PyTorch also has support for C++ with its C++ interface if you’re into that. Considered among the top contenders in the race of being the best Machine Learning and Deep Learning framework, PyTorch faces touch competition from TensorFlow.

Website python

GitHub python


Keras

Open-source software library Keras provides an interface for the TensorFlow library and enables fast experimentation with deep neural networks. It was developed by Francois Chollet and was first released in 2015.

Keras offers utilities for compiling models, graph visualisation and dataset analysis. Further, it offers prelabeled datasets that can be imported and loaded directly. It is user-friendly, versatile and suited for creative research.

Website python

GitHub python


Matplotlib

Developed by John Hunter, Matplotlib is one of the most common libraries in the Python community. It is used for creating static, animated and interactive data visualisations. Matplotlib provides endless customisation and charts. It enables developers to use histograms to scatter, customise and configure plots. The open-source library offers an object-oriented API for integrating plots into applications.

Website python

GitHub python


Numpy

Developed by Travis Oliphant in 2015, NumPy or Numerical Python is a fundamental library for mathematical and scientific computations. The open-source software has functions of linear algebra, Fourier transform, and matrix computations and is mainly used for applications where speed and resources are important. NumPy aims to provide array objects 50x faster than traditional Python lists.

Data science libraries including SciPy, Matplotlib, Pandas, Scikit-Learn and Statsmodels are built on top of NumPy.

Website python

GitHub python


Pandas

Pandas is a Python data analysis library and is used primarily for data manipulation and analysis. It comes into play before the dataset is prepared for training. Pandas make working with time series and structured multidimensional data effortless for machine-learning programmers.

Website python

GitHub python


Scikit-Learn

Scikit-learn is another actively used machine learning library for Python. SciKit-Learn features classification, regression and clustering algorithms, including DBSCAN, gradient boosting, support vector machines and random forests. David Cournapeau built the library on top of SciPy, NumPy and Matplotlib for handling standard machine learning and data mining applications.

Website python

GitHub python


SciPy

SciPy or Scientific Python is used for complex mathematics, science and engineering problems. It is built on the NumPy extension and allows developers to manipulate and visualise data.

SciPy provides user-friendly and efficient numerical routines for linear algebra, statistics, integration and optimisation. Its applications include multidimensional image processing, solving Fourier transforms and differential equations.

Website python

GitHub python


Shogun

Shogun is a free, open-source machine learning software library written in C++. It offers numerous algorithms and data structures for machine learning problems. It offers interfaces for Octave, Python, R, Java, Lua, Ruby and C# using SWIG.

Website python

GitHub python


Seaborn

Seaborn is Python’s most commonly used library for statistical data visualisation, used for heatmaps and visualisations that summarise data and depict distributions. It is based on Matplotlib and can be used on both data frames and arrays.

Seaborn is used for basic plottings– bar graph, line charts and pie charts.

Website python

GitHub python


Plotly

Plotly is a collaborative, web-based analytics and graphing platform. It is one of the most powerful libraries for ML, data science and AI-related operations. Plotly is publication-ready and immersive and is used for data visualisation.

Plotly can easily import data to chart, allowing developers to make slide decks and dashboards with ease. It is used for the development of tools like Dash and Chart Studio.

Website python

GitHub python


Statsmodels

Statsmodels is part of the Python scientific stack, oriented towards data science, data analysis and statistics. It is built on top of NumPy and SciPy and integrates with Pandas for data handling. Statsmodels allows users to explore data, estimate statistical models and perform statistical tests.

Website python

GitHub python