SciPy
Fundamental algorithms for scientific computing in Python
Probably the best curated list of data science software in Python.
This page lists names, links and short descriptions. The original list on GitHub is the source and belongs to its authors.
Machine learning in Python.
High Performance, Easy-to-use, and Scalable Machine Learning Package.
Modular active learning framework for Python3.
PySpark + scikit-learn = Sparkit-learn.
Toolkit for making real-world machine learning and data analysis applications in C++ (Python bindings).
Extension and helper modules for Python's data analysis and machine learning libraries.
50%+ Faster, 50%+ less RAM usage, GPU support re-written Sklearn, Statsmodels.
Machine Learning toolbox for Humans.
Multi-label classification for python.
Sequence classification toolkit for Python.
Simple structured learning framework for Python.
Highly interpretable classifiers for scikit learn.
Implementation of the rulefit.
Metric learning algorithms in Python.
Generalized Additive Models in Python.
Uplift modeling and causal inference with machine learning algorithms.
Fast GBDTs and Random Forests on GPUs.
Natural Gradient Boosting for Probabilistic Prediction.
A collection of state-of-the-art algorithms for the training, serving and interpretation of Decision Forest models in Keras.
High performance ensemble learning.
Simple and useful stacking library written in Python.
Library for machine learning stacking generalization.
Python package for stacking (machine learning technique).
Module to perform under-sampling and over-sampling with various techniques.
Python-based implementations of algorithms for learning on imbalanced data.
Factorization machines in python.
A library for Factorization Machines.
TensorFlow implementation of an arbitrary order Factorization Machine.
An implementation of SVMs.
Relevance Vector Machine implementation using the scikit-learn API.
A fast SVM Library on GPUs and CPUs.
Tensors and Dynamic neural networks in Python with strong GPU acceleration.
PyTorch Lightning is just organized PyTorch.
A scikit-learn compatible neural network library that wraps PyTorch.
A PyTorch-based deep learning library for drug pair scoring.
Computation using data flow graphs for scalable machine learning by Google.
Deep Learning and Reinforcement Learning Library for Researcher and Engineer.
A Neural Net Training Interface on TensorFlow.
Deploy TensorFlow graphs for fast evaluation and export to TensorFlow-less environments running numpy.
TensorFlow ROCm port.
Deep learning with dynamic computation graphs in TensorFlow.
A high-level framework for TensorFlow.
Model Parallelism Made Easier.
A toolbox that allows one to train and test deep learning models without the need to write code.
Keras community contributions.
Keras + Hyperopt: A straightforward wrapper for a convenient hyperparameter.
Distributed Deep learning with Keras & Spark.
A quantization deep learning library.
State-of-the-art Machine Learning for Pytorch, TensorFlow, and JAX.
Source-to-Source Debuggable Derivatives in Pure Python.
Efficiently computes derivatives of numpy code.
Neural Network Libraries by Sony.
An AutoML toolkit and a drop-in replacement for a scikit-learn estimator.
Automatic architecture search and hyperparameter optimization for PyTorch.
AutoML tool that optimizes machine learning pipelines using genetic programming.
A powerful Automated Machine Learning python library.
Modular Natural Language Processing workflows with Keras.
Modules, data sets, and tutorials supporting research and development in Natural Language Processing.
The Classical Language Toolkik.
Topic Modelling for Humans.
Python binding for Morfologik.
Scikit-learn wrappers for Python fastText.
Simple text-to-phonemes converter for multiple languages.
An audio library for PyTorch.
Audio features extraction.
Library for audio and music analysis, description, and synthesis.
A simple, portable, lightweight library of audio feature extraction functions.
Music Analysis, Retrieval, and Synthesis for Audio Signals.
A library for augmenting annotated audio data.
Python audio and music signal processing library.
Datasets, Transforms, and Models specific to Computer Vision.
PyTorch3D is FAIR's library of reusable components for deep learning with 3D data.
Industry-strength Computer Vision workflows with Keras.
An efficient video loader for deep learning with smart shuffling that's super easy to digest.
OpenMMLab Foundational Library for Training Deep Learning Models.
Image Processing SciKit (Toolbox for SciPy).
Image augmentation for machine learning experiments.
Additional augmentations for imgaug.
Fast image augmentation library and easy-to-use wrapper around other libraries.
Time series forecasting with machine learning models
Lightning fast forecasting with statistical and econometric models.
Scalable machine learning-based time series forecasting.
Scalable machine learning-based time series forecasting.
Machine learning toolkit dedicated to time-series data.
Module for statistical learning, with a particular emphasis on time-dependent modeling.
A flexible, intuitive, and fast forecasting library next.
Open source time series library for Python.
Probabilistic programming framework that facilitates objective model selection for time-varying parameter models.
Anomaly Detection and Correlation library.
Powerful extensions to the standard datetime module
makes it very easy to parse a string and for changing timezones
ML powered analytics engine for outlier/anomaly detection and root cause analysis
An API standard for single-agent reinforcement learning environments, with popular reference environments and related utilities (formerly Gym).
An API standard for multi-agent reinforcement learning environments, with popular reference environments and related utilities.
An engine for high performance multi-agent environments with very large numbers of agents, along with a set of reference environments.
A set of improved implementations of reinforcement learning algorithms based on OpenAI Baselines.
An API conversion tool for popular external reinforcement learning environments.
C++-based high-performance parallel environment execution engine (vectorized env) for general RL environments.
Scalable Reinforcement Learning.
An elegant PyTorch deep reinforcement learning library.
A library of reinforcement learning components and agents.
PyTorch framework for RL research.
An offline deep reinforcement learning library.
OpenDILab Decision AI Engine.
A TensorFlow library for applied reinforcement learning.
TensorFlow Reinforcement Learning.
A research framework for fast prototyping of reinforcement learning algorithms.
Deep Reinforcement Learning for Keras.
A toolkit for reproducible reinforcement learning research.
A platform for Applied Reinforcement Learning.
Reinforcement Learning in PyTorch.
High-quality single file implementation of Deep Reinforcement Learning algorithms with research-friendly features (PPO, DQN, C51, DDPG, TD3, SAC, PPG).
A reinforcement library designed for pytorch.
Modular reinforcement learning library (on PyTorch and JAX) with support for NVIDIA Isaac Gym, Isaac Orbit and Omniverse Isaac Gym.
Clean PyTorch implementations of imitation and reward learning algorithms.
Geometric Deep Learning Extension Library for PyTorch.
Temporal Extension Library for PyTorch Geometric.
A signed/directed graph neural network extension library for PyTorch Geometric.
Python package built to ease deep learning on graph, on top of existing DL frameworks.
GRAPE is a Rust/Python Graph Representation Learning library for Predictions and Evaluations
Deep learning on graphs.
Machine Learning on Graphs.
Build Graph Nets in Tensorflow.
A library to build Graph Neural Networks on the TensorFlow platform.
An autoML framework & toolkit for machine learning on graphs.
Generate embeddings from large-scale graph-structured data.
An unsupervised machine learning library for graph-structured data.
A library for sampling graph structured data.
A graph reliability toolbox based on PyTorch and PyTorch Geometric (PyG).
A Graph Neural Network Library in Jax.
The Graph Embedding Engine.
A Python implementation of LightFM, a hybrid recommendation algorithm.
Deep recommender models using PyTorch.
A Python scikit for building and analyzing recommender systems.
A unified, comprehensive and efficient recommendation library.
allRank is a framework for training learning-to-rank neural models based on PyTorch.
A library for building recommender system models using TensorFlow.
Learning to Rank in TensorFlow.
Probabilistic and graphical models for Python.
A GRaphical Universal Modeler.
A flexible, scalable deep probabilistic programming library built on PyTorch.
Bayesian Deep Learning.
Gaussian processes in TensorFlow.
Deep Probabilistic Modelling Made Easy.
Bayesian inference using the No-U-Turn sampler (Python interface).
Python package for Bayesian Machine Learning with scikit-learn API.
Supervised domain-agnostic prediction framework for probabilistic modelling by The Alan Turing Institute.
Bayesian Deep Learning methods with Variational Inference for PyTorch.
The Python ensemble sampling toolkit for affine-invariant MCMC.
A library for hidden semi-Markov models with explicit durations.
Bayesian inference in HSMMs and HMMs.
A highly efficient and modular implementation of Gaussian Processes in PyTorch.
A scikit-learn-inspired API for CRFsuite.
moDel Agnostic Language for Exploration and explanation.
A data-driven framework to quantify the value of classifiers in a machine learning ensemble.
Algorithms for monitoring and explaining machine learning models.
Code for "High-Precision Model-Agnostic Explanations" paper.
Bias and Fairness Audit Toolkit.
Contrastive Explanation (Foil Trees).
Visual analysis and diagnostic tools to facilitate machine learning model selection.
An intuitive library to add plotting functionality to scikit-learn objects.
InterpretML implements the Explainable Boosting Machine (EBM), a modern, fully interpretable machine learning model based on Generalized Additive Models (GAMs). This open-source package also provides visualization tools for EBMs, other glass-box models, and black-box explanations.
A library for debugging/inspecting machine learning classifiers and explaining their predictions.
FairML is a python toolbox auditing the machine learning models for bias.
Code for replicating the experiments in the paper Learning to Explain: An Information-Theoretic Perspective on Model Interpretation.
Partial dependence plot toolbox.
Python Individual Conditional Expectation Plot Toolbox.
Python Library for Model Interpretation.
Model analysis tools for TensorFlow.
A library that implements fairness-aware machine learning algorithms.
Interpreting scikit-learn's decision tree and random forest predictions.
Interpretability and explainability of data and machine learning models.
Auralisation of learned features in CNN (for audio).
A visualization of the CapsNet layers to better understand how it works.
A collection of infrastructure and tools for research in neural network interpretability.
Visualizer for deep learning and machine learning models (no Python code, but visualizes models from most Python Deep Learning frameworks).
Visualization Tool for your NeuralNetwork.
Tensorboard for PyTorch (and chainer, mxnet, numpy, ...).
Genetic Programming in Python.
Genetic Algorithm in Python.
A Genetic Programming platform for Python with GPU support.
A strongly-typed genetic programming framework for Python.
Genetic feature selection module for scikit-learn.
Multi-objective Optimization in Python.
Python implementation of CMA-ES.
Bayesian optimization.
Bayesian optimization in PyTorch.
Heuristic Algorithms for optimization.
Hyperparameters tuning and feature selection using evolutionary algorithms.
Sequential Model-based Algorithm Configuration.
Is a library containing various optimizers for hyperparameter tuning.
Distributed Asynchronous Hyperparameter Optimization in Python.
Hyper-parameter optimization for sklearn.
Use evolutionary algorithms instead of gridsearch in scikit-learn.
SigOpt wrappers for scikit-learn methods.
A Python implementation of global optimization with gaussian processes.
Safe Bayesian Optimization.
Sequential model-based optimization with a scipy.optimize interface.
A comprehensive gradient-free optimization framework written in Python.
A research toolkit for particle swarm optimization in Python.
A Free and Open Source Python Library for Multiobjective Optimization.
Bayesian Optimization using GPflow.
Python Optimal Transport library.
Hyperparameter Optimization for Keras Models.
Library for nonlinear optimization (global and local, constrained or unconstrained).
An open-source software suite for optimization by Google; provides a unified programming interface to a half dozen solvers: SCIP, GLPK, GLOP, CP-SAT, CPLEX, and Gurobi.
Automated feature engineering.
Feature engineering package with sklearn-like functionality.
Automated feature generation with expert-level performance.
A scikit-learn addon to operate on set/"group"-based features.
A set of tools for creating and testing machine learning features.
A feature engineering wrapper for sklearn.
A sklearn-compatible Python implementation of Multifactor Dimensionality Reduction (MDR) for feature construction.
Machine learning on dirty tabular data (especially: string-based variables for classifcation and regression).
Moving window features.
A collection of various pandas & scikit-learn compatible transformers for all kinds of preprocessing and feature engineering steps
Collection of scikit-learn compatible transformers written in narwhals, which can accept either polars/pandas inputs and utilise the chosen library under the hood.
Feature selection repository in Python.
Implementations of the Boruta all-relevant feature selection method.
A fast xgboost feature selection algorithm.
A scikit-learn-compatible Python implementation of ReBATE, a suite of Relief-based feature selection algorithms for Machine Learning.
A feature selection library based on evolutionary algorithms.
Plotting with Python.
Painlessly create beautiful matplotlib plots.
Ternary plotting library for Python with matplotlib.
Missing data visualization module for Python.
Python library that makes it easy for data scientists to create charts.
Improved histograms.
A python package for animating plots built on matplotlib.
A Python library that makes interactive and publication-quality graphs.
Declarative statistical visualization library for Python. Can easily do many data transformation within the code to create graph
Plotting library for IPython/Jupyter notebooks
Visualize interactive topic model
Modern, fast (high-performance), a web framework for building APIs with Python
Make it easy to deploy the machine learning model
No-code in the front, Python in the back. An open-source framework for creating data apps.
A toolkit for creating modular data visualization applications.
A collection of APIs to turn scripts and notebooks into interactive reports.
Enable sharing and execute Jupyter Notebooks
Deepnote is a drop-in replacement for Jupyter with an AI-first design, sleek UI, new blocks, and native data integrations. Use Python, R, and SQL locally in your favorite IDE, then scale to Deepnote cloud for real-time collaboration, Deepnote agent, and deployable data apps.
Extension to pandas dataframes describe function.
Create HTML profiling reports from pandas DataFrame objects.
Statistical modeling and econometrics in Python.
Supply a wrapper StockDataFrame based on the pandas.DataFrame with inline stock statistics/indicators support.
A pandas-based utility to calculate weighted means, medians, distributions, standard deviations, and more.
Pairwise Multiple Comparisons Post-hoc Tests.
Performance analysis of predictive (alpha) stock factors.
Powerful Python data analysis toolkit.
High-performance datastore for time series and tick data.
Data.table for Python.
Create HTML profiling reports from pandas DataFrame objects.
NumPy and pandas interface to Big Data.
Allows you to query pandas DataFrames using SQL syntax.
pandas Google Big Query.
Universal 1d/2d data containers with Transformers .functionality for data analysis by The Alan Turing Institute.
A pure Python implementation of Apache Spark's RDD and DStream interfaces.
A package that efficiently applies any function to a pandas dataframe or series in the fastest available manner.
A package that allows providing feedback about basic pandas operations and finds both business logic and performance issues.
Sasy pipelines for pandas DataFrames.
Python pipe (|) operator with support for DataFrames and Numpy, and Pytorch.
Functional data manipulation for pandas.
Dplyr for Python.
pandas integration with sklearn.
Helps you conveniently work with random or sequential batches of your data and define data processing.
Clean APIs for data cleaning.
A Python toolkit for processing tabular data.
Hints and tips for using pandas in an analysis environment.
A package to generate synthetic tabular and time-series data leveraging the state-of-the-art generative models.
Distributed training framework for TensorFlow, Keras, PyTorch, and Apache MXNet.
Exposes the Spark programming model to Python.
Framework and Library for Distributed Online Machine Learning.
Microsoft Distributed Machine Learning Toolkit.
PArallel Distributed Deep LEarning.
Distributed and parallel machine learning.
Distributed computation in Python.
Always know what to expect from your data.
Validation & testing of ML models and data during model development, deployment, and production.
Library for exploring and validating machine learning data.
Library of useful metrics and plots for evaluating recommender systems.
Machine learning evaluation metric.
Model evaluation made easy: plots, tables, and markdown reports.
Fairness metrics for datasets and ML models, explanations, and algorithms to mitigate bias in datasets and models.
Algorithms for outlier, adversarial and drift detection.
Fast NumPy array functions written in C.
Python library for multilinear algebra and tensor factorizations.
Solve automatic numerical differentiation problems in one or more variables.
Add built-in support for quaternions to numpy.
Tools for adaptive and parallel samping of mathematical functions.
A fast numerical expression evaluator for NumPy that comes with an integrated computing virtual machine to speed calculations up by avoiding memory allocation for intermediate results.
The easiest library to scrape static websites for beginners
Fast and extensible scraping library. Can write rules and create customized scraper without touching the core
Use Selenium Python API to access all functionalities of Selenium WebDriver in an intuitive way like a real user.
High level scraping for well-establish websites such as Google, Twitter, and Wikipedia. Also has NLP, machine learning algorithms, and visualization
Efficient library to scrape Twitter
Qiskit is an open-source SDK for working with quantum computers at the level of circuits, algorithms, and application modules.
A python framework for creating, editing, and invoking Noisy Intermediate Scale Quantum (NISQ) circuits.
Quantum machine learning, automatic differentiation, and optimization of hybrid quantum-classical computations.
A Python Toolkit for Quantum Machine Learning.
Transpile trained scikit-learn estimators to C, Java, JavaScript, and others.
A set of tools to help users inter-operate among different deep learning frameworks.
Universal model exchange and serialization format for decision tree forests.
rust-unofficial/awesome-rust
A curated list of Rust code and resources.
jaywcjlove/awesome-mac
This project is dedicated to collecting high-quality macOS software and organizing them systematically by different categories for easy search and use.
vinta/awesome-python
The definitive list that answers "I want to do X in Python, which tool should I use?"
fffaraz/awesome-cpp
A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny things. Inspired by awesome-... stuff.
avelino/awesome-go
A curated list of awesome Go frameworks, libraries and software
ziadoz/awesome-php
A curated list of amazingly awesome PHP libraries, resources and shiny things.