Awesome Machine Learning ¶
A curated list of awesome machine learning frameworks, libraries and software (by language). Inspired by awesomephp
.
If you want to contribute to this list (please do), send me a pull request or contact me @josephmisiti. Also, a listed repository should be deprecated if:
 Repository's owner explicitly say that "this library is not maintained".
 Not committed for long time (2~3 years).
Further resources:

For a list of free machine learning books available for download, go here.

For a list of professional machine learning events, go here.

For a list of (mostly) free machine learning courses available online, go here.

For a list of blogs and newsletters on data science and machine learning, go here.

For a list of freetoattend meetups and local events, go here.
Frameworks and Libraries¶
Tools¶
APL¶
GeneralPurpose Machine Learning¶
 naiveapl  Naive Bayesian Classifier implementation in APL. [Deprecated]
C¶
GeneralPurpose Machine Learning¶
 Darknet  Darknet is an open source neural network framework written in C and CUDA. It is fast, easy to install, and supports CPU and GPU computation.
 Recommender  A C library for product recommendations/suggestions using collaborative filtering (CF).
 Hybrid Recommender System  A hybrid recommender system based upon scikitlearn algorithms. [Deprecated]
 neonrvm  neonrvm is an open source machine learning library based on RVM technique. It's written in C programming language and comes with Python programming language bindings.
 cONNXr  An
ONNX
runtime written in pure C (99) with zero dependancies focused on small embedded devices. Run inference on your machine learning models no matter which framework you train it with. Easy to install and compiles everywhere, even in very old devices.
Computer Vision¶
 CCV  Cbased/Cached/Core Computer Vision Library, A Modern Computer Vision Library.
 VLFeat  VLFeat is an open and portable library of computer vision algorithms, which has Matlab toolbox.
C++¶
Computer Vision¶
 DLib  DLib has C++ and Python interfaces for face detection and training general object detectors.
 EBLearn  Eblearn is an objectoriented C++ library that implements various machine learning models [Deprecated]
 OpenCV  OpenCV has C++, C, Python, Java and MATLAB interfaces and supports Windows, Linux, Android and Mac OS.
 VIGRA  VIGRA is a generic crossplatform C++ computer vision and machine learning library for volumes of arbitrary dimensionality with Python bindings.
GeneralPurpose Machine Learning¶
 BanditLib  A simple Multiarmed Bandit library. [Deprecated]
 Caffe  A deep learning framework developed with cleanliness, readability, and speed in mind. [DEEP LEARNING]
 CatBoost  General purpose gradient boosting on decision trees library with categorical features support out of the box. It is easy to install, contains fast inference implementation and supports CPU and GPU (even multiGPU) computation.
 CNTK  The Computational Network Toolkit (CNTK) by Microsoft Research, is a unified deeplearning toolkit that describes neural networks as a series of computational steps via a directed graph.
 CUDA  This is a fast C++/CUDA implementation of convolutional [DEEP LEARNING]
 DeepDetect  A machine learning API and server written in C++11. It makes state of the art machine learning easy to work with and integrate into existing applications.
 Distributed Machine learning Tool Kit (DMTK)  A distributed machine learning (parameter server) framework by Microsoft. Enables training models on large data sets across multiple machines. Current tools bundled with it include: LightLDA and Distributed (Multisense) Word Embedding.
 DLib  A suite of ML tools designed to be easy to imbed in other applications.
 DSSTNE  A software library created by Amazon for training and deploying deep neural networks using GPUs which emphasizes speed and scale over experimental flexibility.
 DyNet  A dynamic neural network library working well with networks that have dynamic structures that change for every training instance. Written in C++ with bindings in Python.
 Fido  A highlymodular C++ machine learning library for embedded electronics and robotics.
 igraph  General purpose graph library.
 Intel(R) DAAL  A high performance software library developed by Intel and optimized for Intel's architectures. Library provides algorithmic building blocks for all stages of data analytics and allows to process data in batch, online and distributed modes.
 LightGBM  Microsoft's fast, distributed, high performance gradient boosting (GBDT, GBRT, GBM or MART) framework based on decision tree algorithms, used for ranking, classification and many other machine learning tasks.
 libfm  A generic approach that allows to mimic most factorization models by feature engineering.
 MLDB  The Machine Learning Database is a database designed for machine learning. Send it commands over a RESTful API to store data, explore it using SQL, then train machine learning models and expose them as APIs.
 mlpack  A scalable C++ machine learning library.
 MXNet  Lightweight, Portable, Flexible Distributed/Mobile Deep Learning with Dynamic, Mutationaware Dataflow Dep Scheduler; for Python, R, Julia, Go, Javascript and more.
 proNetcore  A generalpurpose network embedding framework: pairwise representations optimization Network Edit.
 PyCUDA  Python interface to CUDA
 ROOT  A modular scientific software framework. It provides all the functionalities needed to deal with big data processing, statistical analysis, visualization and storage.
 shark  A fast, modular, featurerich opensource C++ machine learning library.
 Shogun  The Shogun Machine Learning Toolbox.
 sofiaml  Suite of fast incremental algorithms.
 Stan  A probabilistic programming language implementing full Bayesian statistical inference with Hamiltonian Monte Carlo sampling.
 Timbl  A software package/C++ library implementing several memorybased learning algorithms, among which IB1IG, an implementation of knearest neighbor classification, and IGTree, a decisiontree approximation of IB1IG. Commonly used for NLP.
 Vowpal Wabbit (VW)  A fast outofcore learning system.
 WarpCTC  A fast parallel implementation of Connectionist Temporal Classification (CTC), on both CPU and GPU.
 XGBoost  A parallelized optimized general purpose gradient boosting library.
 ThunderGBM  A fast library for GBDTs and Random Forests on GPUs.
 ThunderSVM  A fast SVM library on GPUs and CPUs.
 LKYDeepNN  A headeronly C++11 Neural Network library. Low dependency, native traditional chinese document.
 xLearn  A high performance, easytouse, and scalable machine learning package, which can be used to solve largescale machine learning problems. xLearn is especially useful for solving machine learning problems on largescale sparse data, which is very common in Internet services such as online advertisement and recommender systems.
 Featuretools  A library for automated feature engineering. It excels at transforming transactional and relational datasets into feature matrices for machine learning using reusable feature engineering "primitives".
 skynet  A library for learning neural network, has Cinterface, net set in JSON. Written in C++ with bindings in Python, C++ and C#.
 Feast  A feature store for the management, discovery, and access of machine learning features. Feast provides a consistent view of feature data for both model training and model serving.
 Polyaxon  A platform for reproducible and scalable machine learning and deep learning.
Natural Language Processing¶
 BLLIP Parser  BLLIP Natural Language Parser (also known as the CharniakJohnson parser).
 colibricore  C++ library, command line tools, and Python binding for extracting and working with basic linguistic constructions such as ngrams and skipgrams in a quick and memoryefficient way.
 CRF++  Open source implementation of Conditional Random Fields (CRFs) for segmenting/labeling sequential data & other Natural Language Processing tasks. [Deprecated]
 CRFsuite  CRFsuite is an implementation of Conditional Random Fields (CRFs) for labeling sequential data. [Deprecated]
 frog  Memorybased NLP suite developed for Dutch: PoS tagger, lemmatiser, dependency parser, NER, shallow parser, morphological analyzer.
 libfolia  C++ library for the FoLiA format
 MeTA  MeTA : ModErn Text Analysis is a C++ Data Sciences Toolkit that facilitates mining big text data.
 MIT Information Extraction Toolkit  C, C++, and Python tools for named entity recognition and relation extraction
 ucto  Unicodeaware regularexpression based tokenizer for various languages. Tool and C++ library. Supports FoLiA format.
Speech Recognition¶
 Kaldi  Kaldi is a toolkit for speech recognition written in C++ and licensed under the Apache License v2.0. Kaldi is intended for use by speech recognition researchers.
Sequence Analysis¶
 ToPS  This is an objectedoriented framework that facilitates the integration of probabilistic models for sequences over a user defined alphabet. [Deprecated]
Gesture Detection¶
 grt  The Gesture Recognition Toolkit (GRT) is a crossplatform, opensource, C++ machine learning library designed for realtime gesture recognition.
Common Lisp¶
GeneralPurpose Machine Learning¶
 mgl  Neural networks (boltzmann machines, feedforward and recurrent nets), Gaussian Processes.
 mglgpr  Evolutionary algorithms. [Deprecated]
 cllibsvm  Wrapper for the libsvm support vector machine library. [Deprecated]
 clonlinelearning  Online learning algorithms (Perceptron, AROW, SCW, Logistic Regression).
 clrandomforest  Implementation of Random Forest in Common Lisp.
Clojure¶
Natural Language Processing¶
 ClojureopenNLP  Natural Language Processing in Clojure (opennlp).
 Infectionsclj  Railslike inflection library for Clojure and ClojureScript.
GeneralPurpose Machine Learning¶
 Touchstone  Clojure A/B testing library. [Deprecated]
 Clojush  The Push programming language and the PushGP genetic programming system implemented in Clojure.
 Infer  Inference and machine learning in Clojure. [Deprecated]
 CljML  A machine learning library for Clojure built on top of Weka and friends. [Deprecated]
 DL4CLJ  Clojure wrapper for Deeplearning4j.
 Encog  Clojure wrapper for Encog (v3) (MachineLearning framework that specializes in neuralnets). [Deprecated]
 Fungp  A genetic programming library for Clojure. [Deprecated]
 Statistiker  Basic Machine Learning algorithms in Clojure. [Deprecated]
 clortex  General Machine Learning library using Numenta’s Cortical Learning Algorithm. [Deprecated]
 comportex  Functionally composable Machine Learning library using Numenta’s Cortical Learning Algorithm. [Deprecated]
 cortex  Neural networks, regression and feature learning in Clojure.
 lambdaml  Simple, concise implementations of machine learning techniques and utilities in Clojure.
Data Analysis / Data Visualization¶
 Incanter  Incanter is a Clojurebased, Rlike platform for statistical computing and graphics.
 PigPen  MapReduce for Clojure.
 Envision  Clojure Data Visualisation library, based on Statistiker and D3.
Crystal¶
GeneralPurpose Machine Learning¶
 machine  Simple machine learning algorithm.
 crystalfann  FANN (Fast Artificial Neural Network) binding.
Elixir¶
GeneralPurpose Machine Learning¶
 Simple Bayes  A Simple Bayes / Naive Bayes implementation in Elixir.
 emel  A simple and functional machine learning library written in Elixir.
 Tensorflex  Tensorflow bindings for the Elixir programming language.
Natural Language Processing¶
 Stemmer  An English (Porter2) stemming implementation in Elixir.
Erlang¶
GeneralPurpose Machine Learning¶
 Disco  Map Reduce in Erlang. [Deprecated]
 Yanni  ANN neural networks using Erlangs leightweight processes.
Go¶
Natural Language Processing¶
 snowball  Snowball Stemmer for Go.
 wordembedding  Word Embeddings: the full implementation of word2vec, GloVe in Go.
 sentences  Golang implementation of Punkt sentence tokenizer.
 gongram  Inmemory ngram index with compression. [Deprecated]
 paicehusk  Golang implementation of the Paice/Husk Stemming Algorithm. [Deprecated]
 goporterstemmer  A native Go clean room implementation of the Porter Stemming algorithm. [Deprecated]
GeneralPurpose Machine Learning¶
 birdland  A recommendation library in Go.
 eaopt  An evolutionary optimization library.
 leaves  A pure Go implementation of the prediction part of GBRTs, including XGBoost and LightGBM.
 gobrain  Neural Networks written in Go.
 gomxnetpredictor  Go binding for MXNet c_predict_api to do inference with pretrained model.
 gomltranspiler  An open source Go transpiler for machine learning models.
 golearn  Machine learning for Go.
 goml  Machine learning library written in pure Go.
 gorgonia  Deep learning in Go.
 gorse  An offline recommender system backend based on collaborative filtering written in Go.
 therfoo  An embedded deep learning library for Go.
 neat  Plugandplay, parallel Go framework for NeuroEvolution of Augmenting Topologies (NEAT). [Deprecated]
 gopr  Pattern recognition package in Go lang. [Deprecated]
 goml  Linear / Logistic regression, Neural Networks, Collaborative Filtering and Gaussian Multivariate Distribution. [Deprecated]
 GoNN  GoNN is an implementation of Neural Network in Go Language, which includes BPNN, RBF, PCN. [Deprecated]
 bayesian  Naive Bayesian Classification for Golang. [Deprecated]
 gogalib  Genetic Algorithms library written in Go / Golang. [Deprecated]
 Cloudforest  Ensembles of decision trees in Go/Golang. [Deprecated]
 godnn  Deep Neural Networks for Golang (powered by MXNet)
Spatial analysis and geometry¶
Data Analysis / Data Visualization¶
 gota  Dataframes.
 gonum/mat  A linear algebra package for Go.
 gonum/optimize  Implementations of optimization algorithms.
 gonum/plot  A plotting library.
 gonum/stat  A statistics library.
 SVGo  The Go Language library for SVG generation.
 glot  Glot is a plotting library for Golang built on top of gnuplot.
 globe  Globe wireframe visualization.
 gonum/graph  Generalpurpose graph library.
 gograph  Graph library for Go/Golang language. [Deprecated]
 RF  Random forests implementation in Go. [Deprecated]
Computer vision¶
 GoCV  Package for computer vision using OpenCV 4 and beyond.
Haskell¶
GeneralPurpose Machine Learning¶
 haskellml  Haskell implementations of various ML algorithms. [Deprecated]
 HLearn  a suite of libraries for interpreting machine learning models according to their algebraic structure. [Deprecated]
 hnn  Haskell Neural Network library.
 hopfieldnetworks  Hopfield Networks for unsupervised learning in Haskell. [Deprecated]
 DNNGraph  A DSL for deep neural networks. [Deprecated]
 LambdaNet  Configurable Neural Networks in Haskell. [Deprecated]
Java¶
Natural Language Processing¶
 Cortical.io  Retina: an API performing complex NLP operations (disambiguation, classification, streaming text filtering, etc...) as quickly and intuitively as the brain.
 IRIS  Cortical.io's FREE NLP, Retina API Analysis Tool (written in JavaFX!)  See the Tutorial Video.
 CoreNLP  Stanford CoreNLP provides a set of natural language analysis tools which can take raw English language text input and give the base forms of words.
 Stanford Parser  A natural language parser is a program that works out the grammatical structure of sentences.
 Stanford POS Tagger  A PartOfSpeech Tagger (POS Tagger).
 Stanford Name Entity Recognizer  Stanford NER is a Java implementation of a Named Entity Recognizer.
 Stanford Word Segmenter  Tokenization of raw text is a standard preprocessing step for many NLP tasks.
 Tregex, Tsurgeon and Semgrex  Tregex is a utility for matching patterns in trees, based on tree relationships and regular expression matches on nodes (the name is short for "tree regular expressions").
 Stanford Phrasal: A PhraseBased Translation System
 Stanford English Tokenizer  Stanford Phrasal is a stateoftheart statistical phrasebased machine translation system, written in Java.
 Stanford Tokens Regex  A tokenizer divides text into a sequence of tokens, which roughly correspond to "words".
 Stanford Temporal Tagger  SUTime is a library for recognizing and normalizing time expressions.
 Stanford SPIED  Learning entities from unlabeled text starting with seed sets using patterns in an iterative fashion.
 Stanford Topic Modeling Toolbox  Topic modeling tools to social scientists and others who wish to perform analysis on datasets.
 Twitter Text Java  A Java implementation of Twitter's text processing library.
 MALLET  A Javabased package for statistical natural language processing, document classification, clustering, topic modeling, information extraction, and other machine learning applications to text.
 OpenNLP  a machine learning based toolkit for the processing of natural language text.
 LingPipe  A tool kit for processing text using computational linguistics.
 ClearTK  ClearTK provides a framework for developing statistical natural language processing (NLP) components in Java and is built on top of Apache UIMA. [Deprecated]
 Apache cTAKES  Apache clinical Text Analysis and Knowledge Extraction System (cTAKES) is an opensource natural language processing system for information extraction from electronic medical record clinical freetext.
 NLP4J  The NLP4J project provides software and resources for natural language processing. The project started at the Center for Computational Language and EducAtion Research, and is currently developed by the Center for Language and Information Research at Emory University. [Deprecated]
 CogcompNLP  This project collects a number of core libraries for Natural Language Processing (NLP) developed in the University of Illinois' Cognitive Computation Group, for example
illinoiscoreutilities
which provides a set of NLPfriendly data structures and a number of NLPrelated utilities that support writing NLP applications, running experiments, etc,illinoisedison
a library for feature extraction from illinoiscoreutilities data structures and many other packages.
GeneralPurpose Machine Learning¶
 aerosolve  A machine learning library by Airbnb designed from the ground up to be human friendly.
 AMIDST Toolbox  A Java Toolbox for Scalable Probabilistic Machine Learning.
 Datumbox  Machine Learning framework for rapid development of Machine Learning and Statistical applications.
 ELKI  Java toolkit for data mining. (unsupervised: clustering, outlier detection etc.)
 Encog  An advanced neural network and machine learning framework. Encog contains classes to create a wide variety of networks, as well as support classes to normalize and process data for these neural networks. Encog trains using multithreaded resilient propagation. Encog can also make use of a GPU to further speed processing time. A GUI based workbench is also provided to help model and train neural networks.
 FlinkML in Apache Flink  Distributed machine learning library in Flink.
 H2O  ML engine that supports distributed learning on Hadoop, Spark or your laptop via APIs in R, Python, Scala, REST/JSON.
 htm.java  General Machine Learning library using Numenta’s Cortical Learning Algorithm.
 liblinearjava  Java version of liblinear.
 Mahout  Distributed machine learning.
 Meka  An open source implementation of methods for multilabel classification and evaluation (extension to Weka).
 MLlib in Apache Spark  Distributed machine learning library in Spark
 Hydrosphere Mist  a service for deployment Apache Spark MLLib machine learning models as realtime, batch or reactive web services.
 Neuroph  Neuroph is lightweight Java neural network framework
 ORYX  Lambda Architecture Framework using Apache Spark and Apache Kafka with a specialization for realtime largescale machine learning.
 Samoa SAMOA is a framework that includes distributed machine learning for data streams with an interface to plugin different stream processing platforms.
 RankLib  RankLib is a library of learning to rank algorithms. [Deprecated]
 rapaio  statistics, data mining and machine learning toolbox in Java.
 RapidMiner  RapidMiner integration into Java code.
 Stanford Classifier  A classifier is a machine learning tool that will take data items and place them into one of k classes.
 SmileMiner  Statistical Machine Intelligence & Learning Engine.
 SystemML  flexible, scalable machine learning (ML) language.
 Weka  Weka is a collection of machine learning algorithms for data mining tasks.
 LBJava  Learning Based Java is a modeling language for the rapid development of software systems, offers a convenient, declarative syntax for classifier and constraint definition directly in terms of the objects in the programmer's application.
Speech Recognition¶
 CMU Sphinx  Open Source Toolkit For Speech Recognition purely based on Java speech recognition library.
Data Analysis / Data Visualization¶
 Flink  Open source platform for distributed stream and batch data processing.
 Hadoop  Hadoop/HDFS.
 Onyx  Distributed, masterless, high performance, fault tolerant data processing. Written entirely in Clojure.
 Spark  Spark is a fast and general engine for largescale data processing.
 Storm  Storm is a distributed realtime computation system.
 Impala  Realtime Query for Hadoop.
 DataMelt  Mathematics software for numeric computation, statistics, symbolic calculations, data analysis and data visualization.
 Dr. Michael Thomas Flanagan's Java Scientific Library [Deprecated]
Deep Learning¶
 Deeplearning4j  Scalable deep learning for industry with parallel GPUs.
 Keras Beginner Tutorial  Friendly guide on using Keras to implement a simple Neural Network in Python
Javascript¶
Natural Language Processing¶
 Twittertext  A JavaScript implementation of Twitter's text processing library.
 natural  General natural language facilities for node.
 Knwl.js  A Natural Language Processor in JS.
 Retext  Extensible system for analyzing and manipulating natural language.
 NLP Compromise  Natural Language processing in the browser.
 nlp.js  An NLP library built in node over Natural, with entity extraction, sentiment analysis, automatic language identify, and so more
Data Analysis / Data Visualization¶
 D3.js
 High Charts
 NVD3.js
 dc.js
 chartjs
 dimple
 amCharts
 D3xter  Straight forward plotting built on D3. [Deprecated]
 statkit  Statistics kit for JavaScript. [Deprecated]
 datakit  A lightweight framework for data analysis in JavaScript
 science.js  Scientific and statistical computing in JavaScript. [Deprecated]
 Z3d  Easily make interactive 3d plots built on Three.js [Deprecated]
 Sigma.js  JavaScript library dedicated to graph drawing.
 C3.js  customizable library based on D3.js for easy chart drawing.
 Datamaps  Customizable SVG map/geo visualizations using D3.js. [Deprecated]
 ZingChart  library written on Vanilla JS for big data visualization.
 cheminfo  Platform for data visualization and analysis, using the visualizer project.
 Learn JS Data
 AnyChart
 FusionCharts
 Nivo  built on top of the awesome d3 and Reactjs libraries
GeneralPurpose Machine Learning¶
 Auto ML  Automated machine learning, data formatting, ensembling, and hyperparameter optimization for competitions and exploration just give it a .csv file!
 Convnet.js  ConvNetJS is a Javascript library for training Deep Learning models[DEEP LEARNING] [Deprecated]
 Clusterfck  Agglomerative hierarchical clustering implemented in Javascript for Node.js and the browser. [Deprecated]
 Clustering.js  Clustering algorithms implemented in Javascript for Node.js and the browser. [Deprecated]
 Decision Trees  NodeJS Implementation of Decision Tree using ID3 Algorithm. [Deprecated]
 DN2A  Digital Neural Networks Architecture. [Deprecated]
 figue  Kmeans, fuzzy cmeans and agglomerative clustering.
 Gaussian Mixture Model  Unsupervised machine learning with multivariate Gaussian mixture model.
 Nodefann  FANN (Fast Artificial Neural Network Library) bindings for Node.js [Deprecated]
 Keras.js  Run Keras models in the browser, with GPU support provided by WebGL 2.
 Kmeans.js  Simple Javascript implementation of the kmeans algorithm, for node.js and the browser. [Deprecated]
 LDA.js  LDA topic modeling for Node.js
 Learning.js  Javascript implementation of logistic regression/c4.5 decision tree [Deprecated]
 machinelearn.js  Machine Learning library for the web, Node.js and developers
 miltokyo  List of several machine learning libraries.
 NodeSVM  Support Vector Machine for Node.js
 Brain  Neural networks in JavaScript [Deprecated]
 Brain.js  Neural networks in JavaScript  continued community fork of Brain.
 BayesianBandit  Bayesian bandit implementation for Node and the browser. [Deprecated]
 Synaptic  Architecturefree neural network library for Node.js and the browser.
 kNear  JavaScript implementation of the k nearest neighbors algorithm for supervised learning.
 NeuralN  C++ Neural Network library for Node.js. It has advantage on large dataset and multithreaded training. [Deprecated]
 kalman  Kalman filter for Javascript. [Deprecated]
 shaman  Node.js library with support for both simple and multiple linear regression. [Deprecated]
 ml.js  Machine learning and numerical analysis tools for Node.js and the Browser!
 ml5  Friendly machine learning for the web!
 Pavlov.js  Reinforcement learning using Markov Decision Processes.
 MXNet  Lightweight, Portable, Flexible Distributed/Mobile Deep Learning with Dynamic, Mutationaware Dataflow Dep Scheduler; for Python, R, Julia, Go, Javascript and more.
 TensorFlow.js  A WebGL accelerated, browser based JavaScript library for training and deploying ML models.
 JSMLT  Machine learning toolkit with classification and clustering for Node.js; supports visualization (see visualml.io).
 xgboostnode  Run XGBoost model and make predictions in Node.js.
 Netron  Visualizer for machine learning models.
 WebDNN  Fast Deep Neural Network Javascript Framework. WebDNN uses next generation JavaScript API, WebGPU for GPU execution, and WebAssembly for CPU execution.
Misc¶
 stdlib  A standard library for JavaScript and Node.js, with an emphasis on numeric computing. The library provides a collection of robust, high performance libraries for mathematics, statistics, streams, utilities, and more.
 sylvester  Vector and Matrix math for JavaScript. [Deprecated]
 simplestatistics  A JavaScript implementation of descriptive, regression, and inference statistics. Implemented in literate JavaScript with no dependencies, designed to work in all modern browsers (including IE) as well as in Node.js.
 regressionjs  A javascript library containing a collection of least squares fitting methods for finding a trend in a set of data.
 Lyric  Linear Regression library. [Deprecated]
 GreatCircle  Library for calculating great circle distance.
 MLPleaseHelp  MLPleaseHelp is a simple ML resource search engine. You can use this search engine right now at https://jgreenemi.github.io/MLPleaseHelp/, provided via Github Pages.
Demos and Scripts¶
 The Bot  Example of how the neural network learns to predict the angle between two points created with Synaptic.
 Half Beer  Beer glass classifier created with Synaptic.
 Rock Paper Scissors  Rock Paper Scissors trained in the browser with TensorFlow.js
Julia¶
GeneralPurpose Machine Learning¶
 MachineLearning  Julia Machine Learning library. [Deprecated]
 MLBase  A set of functions to support the development of machine learning algorithms.
 PGM  A Julia framework for probabilistic graphical models.
 DA  Julia package for Regularized Discriminant Analysis.
 Regression  Algorithms for regression analysis (e.g. linear regression and logistic regression). [Deprecated]
 Local Regression  Local regression, so smooooth!
 Naive Bayes  Simple Naive Bayes implementation in Julia. [Deprecated]
 Mixed Models  A Julia package for fitting (statistical) mixedeffects models.
 Simple MCMC  basic mcmc sampler implemented in Julia. [Deprecated]
 Distances  Julia module for Distance evaluation.
 Decision Tree  Decision Tree Classifier and Regressor.
 Neural  A neural network in Julia.
 MCMC  MCMC tools for Julia. [Deprecated]
 Mamba  Markov chain Monte Carlo (MCMC) for Bayesian analysis in Julia.
 GLM  Generalized linear models in Julia.
 Gaussian Processes  Julia package for Gaussian processes.
 Online Learning [Deprecated]
 GLMNet  Julia wrapper for fitting Lasso/ElasticNet GLM models using glmnet.
 Clustering  Basic functions for clustering data: kmeans, dpmeans, etc.
 SVM  SVM's for Julia. [Deprecated]
 Kernel Density  Kernel density estimators for julia.
 MultivariateStats  Methods for dimensionality reduction.
 NMF  A Julia package for nonnegative matrix factorization.
 ANN  Julia artificial neural networks. [Deprecated]
 Mocha  Deep Learning framework for Julia inspired by Caffe. [Deprecated]
 XGBoost  eXtreme Gradient Boosting Package in Julia.
 ManifoldLearning  A Julia package for manifold learning and nonlinear dimensionality reduction.
 MXNet  Lightweight, Portable, Flexible Distributed/Mobile Deep Learning with Dynamic, Mutationaware Dataflow Dep Scheduler; for Python, R, Julia, Go, Javascript and more.
 Merlin  Flexible Deep Learning Framework in Julia.
 ROCAnalysis  Receiver Operating Characteristics and functions for evaluation probabilistic binary classifiers.
 GaussianMixtures  Large scale Gaussian Mixture Models.
 ScikitLearn  Julia implementation of the scikitlearn API.
 Knet  Koç University Deep Learning Framework.
 Flux  Relax! Flux is the ML library that doesn't make you tensor
Natural Language Processing¶
 Topic Models  TopicModels for Julia. [Deprecated]
 Text Analysis  Julia package for text analysis.
 Word Tokenizers  Tokenizers for Natural Language Processing in Julia
 Corpus Loaders  A julia package providing a variety of loaders for various NLP corpora.
 Embeddings  Functions and data dependencies for loading various word embeddings
 Languages  Julia package for working with various human languages
 WordNet  A Julia package for Princeton's WordNet
Data Analysis / Data Visualization¶
 Graph Layout  Graph layout algorithms in pure Julia.
 LightGraphs  Graph modeling and analysis.
 Data Frames Meta  Metaprogramming tools for DataFrames.
 Julia Data  library for working with tabular data in Julia. [Deprecated]
 Data Read  Read files from Stata, SAS, and SPSS.
 Hypothesis Tests  Hypothesis tests for Julia.
 Gadfly  Crafty statistical graphics for Julia.
 Stats  Statistical tests for Julia.
 RDataSets  Julia package for loading many of the data sets available in R.
 DataFrames  library for working with tabular data in Julia.
 Distributions  A Julia package for probability distributions and associated functions.
 Data Arrays  Data structures that allow missing values. [Deprecated]
 Time Series  Time series toolkit for Julia.
 Sampling  Basic sampling algorithms for Julia.
Misc Stuff / Presentations¶
 DSP  Digital Signal Processing (filtering, periodograms, spectrograms, window functions).
 JuliaCon Presentations  Presentations for JuliaCon.
 SignalProcessing  Signal Processing tools for Julia.
 Images  An image library for Julia.
 DataDeps  Reproducible data setup for reproducible science.
Lua¶
GeneralPurpose Machine Learning¶
 Torch7
 cephes  Cephes mathematical functions library, wrapped for Torch. Provides and wraps the 180+ special mathematical functions from the Cephes mathematical library, developed by Stephen L. Moshier. It is used, among many other places, at the heart of SciPy. [Deprecated]
 autograd  Autograd automatically differentiates native Torch code. Inspired by the original Python version.
 graph  Graph package for Torch. [Deprecated]
 randomkit  Numpy's randomkit, wrapped for Torch. [Deprecated]
 signal  A signal processing toolbox for Torch7. FFT, DCT, Hilbert, cepstrums, stft.
 nn  Neural Network package for Torch.
 torchnet  framework for torch which provides a set of abstractions aiming at encouraging code reuse as well as encouraging modular programming.
 nngraph  This package provides graphical computation for nn library in Torch7.
 nnx  A completely unstable and experimental package that extends Torch's builtin nn library.
 rnn  A Recurrent Neural Network library that extends Torch's nn. RNNs, LSTMs, GRUs, BRNNs, BLSTMs, etc.
 dpnn  Many useful features that aren't part of the main nn package.
 dp  A deep learning library designed for streamlining research and development using the Torch7 distribution. It emphasizes flexibility through the elegant use of objectoriented design patterns. [Deprecated]
 optim  An optimization library for Torch. SGD, Adagrad, ConjugateGradient, LBFGS, RProp and more.
 unsup  A package for unsupervised learning in Torch. Provides modules that are compatible with nn (LinearPsd, ConvPsd, AutoEncoder, ...), and selfcontained algorithms (kmeans, PCA). [Deprecated]
 manifold  A package to manipulate manifolds.
 svm  TorchSVM library. [Deprecated]
 lbfgs  FFI Wrapper for liblbfgs. [Deprecated]
 vowpalwabbit  An old vowpalwabbit interface to torch. [Deprecated]
 OpenGM  OpenGM is a C++ library for graphical modeling, and inference. The Lua bindings provide a simple way of describing graphs, from Lua, and then optimizing them with OpenGM. [Deprecated]
 spaghetti  Spaghetti (sparse linear) module for torch7 by @MichaelMathieu [Deprecated]
 LuaSHKit  A lua wrapper around the Locality sensitive hashing library SHKit [Deprecated]
 kernel smoothing  KNN, kernelweighted average, local linear regression smoothers. [Deprecated]
 cutorch  Torch CUDA Implementation.
 cunn  Torch CUDA Neural Network Implementation.
 imgraph  An image/graph library for Torch. This package provides routines to construct graphs on images, segment them, build trees out of them, and convert them back to images. [Deprecated]
 videograph  A video/graph library for Torch. This package provides routines to construct graphs on videos, segment them, build trees out of them, and convert them back to videos. [Deprecated]
 saliency  code and tools around integral images. A library for finding interest points based on fast integral histograms. [Deprecated]
 stitch  allows us to use hugin to stitch images and apply same stitching to a video sequence. [Deprecated]
 sfm  A bundle adjustment/structure from motion package. [Deprecated]
 fex  A package for feature extraction in Torch. Provides SIFT and dSIFT modules. [Deprecated]
 OverFeat  A stateoftheart generic dense feature extractor. [Deprecated]
 wav2letter  a simple and efficient endtoend Automatic Speech Recognition (ASR) system from Facebook AI Research.
 Numeric Lua
 Lunatic Python
 SciLua
 Lua  Numerical Algorithms [Deprecated]
 Lunum [Deprecated]
Demos and Scripts¶
 Core torch7 demos repository.
 linearregression, logisticregression
 face detector (training and detection as separate demos)
 mstbasedsegmenter
 trainadigitclassifier
 trainautoencoder
 optical flow demo
 trainonhousenumbers
 trainoncifar
 tracking with deep nets
 kinect demo
 filterbank visualization
 saliencynetworks
 Training a Convnet for the GalaxyZoo Kaggle challenge(CUDA demo)
 Music Tagging  Music Tagging scripts for torch7.
 torchdatasets  Scripts to load several popular datasets including:
 BSR 500
 CIFAR10
 COIL
 Street View House Numbers
 MNIST
 NORB
 Atari2600  Scripts to generate a dataset with static frames from the Arcade Learning Environment.
Matlab¶
Computer Vision¶
 Contourlets  MATLAB source code that implements the contourlet transform and its utility functions.
 Shearlets  MATLAB code for shearlet transform.
 Curvelets  The Curvelet transform is a higher dimensional generalization of the Wavelet transform designed to represent images at different scales and different angles.
 Bandlets  MATLAB code for bandlet transform.
 mexopencv  Collection and a development kit of MATLAB mex functions for OpenCV library.
Natural Language Processing¶
 NLP  An NLP library for Matlab.
GeneralPurpose Machine Learning¶
 Training a deep autoencoder or a classifier on MNIST digits  Training a deep autoencoder or a classifier on MNIST digits[DEEP LEARNING].
 ConvolutionalRecursive Deep Learning for 3D Object Classification  ConvolutionalRecursive Deep Learning for 3D Object Classification[DEEP LEARNING].
 Spider  The spider is intended to be a complete object orientated environment for machine learning in Matlab.
 LibSVM  A Library for Support Vector Machines.
 ThunderSVM  An OpenSource SVM Library on GPUs and CPUs
 LibLinear  A Library for Large Linear Classification.
 Machine Learning Module  Class on machine w/ PDF, lectures, code
 Caffe  A deep learning framework developed with cleanliness, readability, and speed in mind.
 Pattern Recognition Toolbox  A complete objectoriented environment for machine learning in Matlab.
 Pattern Recognition and Machine Learning  This package contains the matlab implementation of the algorithms described in the book Pattern Recognition and Machine Learning by C. Bishop.
 Optunity  A library dedicated to automated hyperparameter optimization with a simple, lightweight API to facilitate dropin replacement of grid search. Optunity is written in Python but interfaces seamlessly with MATLAB.
 MXNet  Lightweight, Portable, Flexible Distributed/Mobile Deep Learning with Dynamic, Mutationaware Dataflow Dep Scheduler; for Python, R, Julia, Go, Javascript and more.
 Machine Learning in MatLab/Octave  examples of popular machine learning algorithms (neural networks, linear/logistic regressions, KMeans, etc.) with code examples and mathematics behind them being explained.
Data Analysis / Data Visualization¶
 matlab_bgl  MatlabBGL is a Matlab package for working with graphs.
 gaimc  Efficient pureMatlab implementations of graph algorithms to complement MatlabBGL's mex functions.
.NET¶
Computer Vision¶
 OpenCVDotNet  A wrapper for the OpenCV project to be used with .NET applications.
 Emgu CV  Cross platform wrapper of OpenCV which can be compiled in Mono to be run on Windows, Linus, Mac OS X, iOS, and Android.
 AForge.NET  Open source C# framework for developers and researchers in the fields of Computer Vision and Artificial Intelligence. Development has now shifted to GitHub.
 Accord.NET  Together with AForge.NET, this library can provide image processing and computer vision algorithms to Windows, Windows RT and Windows Phone. Some components are also available for Java and Android.
Natural Language Processing¶
 Stanford.NLP for .NET  A full port of Stanford NLP packages to .NET and also available precompiled as a NuGet package.
GeneralPurpose Machine Learning¶
 AccordFramework The Accord.NET Framework is a complete framework for building machine learning, computer vision, computer audition, signal processing and statistical applications.
 Accord.MachineLearning  Support Vector Machines, Decision Trees, Naive Bayesian models, Kmeans, Gaussian Mixture models and general algorithms such as Ransac, Crossvalidation and GridSearch for machinelearning applications. This package is part of the Accord.NET Framework.
 DiffSharp  An automatic differentiation (AD) library providing exact and efficient derivatives (gradients, Hessians, Jacobians, directional derivatives, and matrixfree Hessian and Jacobianvector products) for machine learning and optimization applications. Operations can be nested to any level, meaning that you can compute exact higherorder derivatives and differentiate functions that are internally making use of differentiation, for applications such as hyperparameter optimization.
 Encog  An advanced neural network and machine learning framework. Encog contains classes to create a wide variety of networks, as well as support classes to normalize and process data for these neural networks. Encog trains using multithreaded resilient propagation. Encog can also make use of a GPU to further speed processing time. A GUI based workbench is also provided to help model and train neural networks.
 GeneticSharp  Multiplatform genetic algorithm library for .NET Core and .NET Framework. The library has several implementations of GA operators, like: selection, crossover, mutation, reinsertion and termination.
 Infer.NET  Infer.NET is a framework for running Bayesian inference in graphical models. One can use Infer.NET to solve many different kinds of machine learning problems, from standard problems like classification, recommendation or clustering through to customised solutions to domainspecific problems. Infer.NET has been used in a wide variety of domains including information retrieval, bioinformatics, epidemiology, vision, and many others.
 ML.NET  ML.NET is a crossplatform opensource machine learning framework which makes machine learning accessible to .NET developers. ML.NET was originally developed in Microsoft Research and evolved into a significant framework over the last decade and is used across many product groups in Microsoft like Windows, Bing, PowerPoint, Excel and more.
 Neural Network Designer  DBMS management system and designer for neural networks. The designer application is developed using WPF, and is a user interface which allows you to design your neural network, query the network, create and configure chat bots that are capable of asking questions and learning from your feed back. The chat bots can even scrape the internet for information to return in their output as well as to use for learning.
 Synapses  Neural network library in F#.
 Vulpes  Deep belief and deep learning implementation written in F# and leverages CUDA GPU execution with Alea.cuBase.
Data Analysis / Data Visualization¶
 numl  numl is a machine learning library intended to ease the use of using standard modeling techniques for both prediction and clustering.
 Math.NET Numerics  Numerical foundation of the Math.NET project, aiming to provide methods and algorithms for numerical computations in science, engineering and every day use. Supports .Net 4.0, .Net 3.5 and Mono on Windows, Linux and Mac; Silverlight 5, WindowsPhone/SL 8, WindowsPhone 8.1 and Windows 8 with PCL Portable Profiles 47 and 344; Android/iOS with Xamarin.
 Sho  Sho is an interactive environment for data analysis and scientific computing that lets you seamlessly connect scripts (in IronPython) with compiled code (in .NET) to enable fast and flexible prototyping. The environment includes powerful and efficient libraries for linear algebra as well as data visualization that can be used from any .NET language, as well as a featurerich interactive shell for rapid development.
Objective C¶
GeneralPurpose Machine Learning¶
 YCML  A Machine Learning framework for ObjectiveC and Swift (OS X / iOS).
 MLPNeuralNet  Fast multilayer perceptron neural network library for iOS and Mac OS X. MLPNeuralNet predicts new examples by trained neural network. It is built on top of the Apple's Accelerate Framework, using vectorized operations and hardware acceleration if available. [Deprecated]
 MAChineLearning  An ObjectiveC multilayer perceptron library, with full support for training through backpropagation. Implemented using vDSP and vecLib, it's 20 times faster than its Java equivalent. Includes sample code for use from Swift.
 BPNNeuralNetwork  It implemented 3 layers neural network ( Input Layer, Hidden Layer and Output Layer ) and it named Back Propagation Neural Network (BPN). This network can be used in products recommendation, user behavior analysis, data mining and data analysis. [Deprecated]
 MultiPerceptronNeuralNetwork  it implemented multiperceptrons neural network (ニューラルネットワーク) based on Back Propagation Neural Network (BPN) and designed unlimitedhiddenlayers.
 KRHebbianAlgorithm  It is a nonsupervisor and selflearning algorithm (adjust the weights) in neural network of Machine Learning. [Deprecated]
 KRKmeansAlgorithm  It implemented KMeans the clustering and classification algorithm. It could be used in data mining and image compression. [Deprecated]
 KRFuzzyCMeansAlgorithm  It implemented Fuzzy CMeans (FCM) the fuzzy clustering / classification algorithm on Machine Learning. It could be used in data mining and image compression. [Deprecated]
OCaml¶
GeneralPurpose Machine Learning¶
 Oml  A general statistics and machine learning library.
 GPR  Efficient Gaussian Process Regression in OCaml.
 LibraTk  Algorithms for learning and inference with discrete probabilistic models.
 TensorFlow  OCaml bindings for TensorFlow.
Perl¶
Data Analysis / Data Visualization¶
 Perl Data Language, a pluggable architecture for data and image processing, which can be used for machine learning.
GeneralPurpose Machine Learning¶
 MXnet for Deep Learning, in Perl, also released in CPAN.
 Perl Data Language, using AWS machine learning platform from Perl.
 Algorithm::SVMLight, implementation of Support Vector Machines with SVMLight under it. [Deprecated]
 Several machine learning and artificial intelligence models are
included in the
AI
namespace. For instance, you can find Naïve Bayes.
Perl 6¶
Data Analysis / Data Visualization¶
 Perl Data Language, a pluggable architecture for data and image processing, which can be used for machine learning.
GeneralPurpose Machine Learning¶
PHP¶
Natural Language Processing¶
 jiebaphp  Chinese Words Segmentation Utilities.
GeneralPurpose Machine Learning¶
 PHPML  Machine Learning library for PHP. Algorithms, Cross Validation, Neural Network, Preprocessing, Feature Extraction and much more in one library.
 PredictionBuilder  A library for machine learning that builds predictions using a linear regression.
 Rubix ML  A highlevel machine learning (ML) library that lets you build programs that learn from data using the PHP language.
 19 Questions  A machine learning / bayesian inference assigning attributes to objects.
Python¶
Computer Vision¶
 ScikitImage  A collection of algorithms for image processing in Python.
 SimpleCV  An open source computer vision framework that gives access to several highpowered computer vision libraries, such as OpenCV. Written on Python and runs on Mac, Windows, and Ubuntu Linux.
 Vigranumpy  Python bindings for the VIGRA C++ computer vision library.
 OpenFace  Free and open source face recognition with deep neural networks.
 PCV  Open source Python module for computer vision. [Deprecated]
 face_recognition  Face recognition library that recognize and manipulate faces from Python or from the command line.
 dockerface  Easy to install and use deep learning Faster RCNN face detection for images and video in a docker container.
 Detectron  FAIR's software system that implements stateoftheart object detection algorithms, including Mask RCNN. It is written in Python and powered by the Caffe2 deep learning framework. [Deprecated]
 detectron2  FAIR's nextgeneration research platform for object detection and segmentation. It is a groundup rewrite of the previous version, Detectron, and is powered by the PyTorch deep learning framework.
 albumentations  А fast and framework agnostic image augmentation library that implements a diverse set of augmentation techniques. Supports classification, segmentation, detection out of the box. Was used to win a number of Deep Learning competitions at Kaggle, Topcoder and those that were a part of the CVPR workshops.
 pytessarct  Pythontesseract is an optical character recognition (OCR) tool for python. That is, it will recognize and "read" the text embedded in images.Pythontesseract is a wrapper for Google's TesseractOCR Engine>.
 imutils  A library containg Convenience functions to make basic image processing operations such as translation, rotation, resizing, skeletonization, and displaying Matplotlib images easier with OpenCV and Python.
 PyTorchCV  A PyTorchBased Framework for Deep Learning in Computer Vision.
 neuralstylept  A PyTorch implementation of Justin Johnson's neuralstyle (neural style transfer).
 Detecto  Train and run a computer vision model with 510 lines of code.
Natural Language Processing¶
 pkusegpython  A better version of Jieba, developed by Peking University.
 NLTK  A leading platform for building Python programs to work with human language data.
 Pattern  A web mining module for the Python programming language. It has tools for natural language processing, machine learning, among others.
 Quepy  A python framework to transform natural language questions to queries in a database query language.
 TextBlob  Providing a consistent API for diving into common natural language processing (NLP) tasks. Stands on the giant shoulders of NLTK and Pattern, and plays nicely with both.
 YAlign  A sentence aligner, a friendly tool for extracting parallel sentences from comparable corpora. [Deprecated]
 jieba  Chinese Words Segmentation Utilities.
 SnowNLP  A library for processing Chinese text.
 spammy  A library for email Spam filtering built on top of nltk
 loso  Another Chinese segmentation library. [Deprecated]
 genius  A Chinese segment base on Conditional Random Field.
 KoNLPy  A Python package for Korean natural language processing.
 nut  Natural language Understanding Toolkit. [Deprecated]
 Rosetta  Text processing tools and wrappers (e.g. Vowpal Wabbit)
 BLLIP Parser  Python bindings for the BLLIP Natural Language Parser (also known as the CharniakJohnson parser). [Deprecated]
 PyNLPl  Python Natural Language Processing Library. General purpose NLP library for Python. Also contains some specific modules for parsing common NLP formats, most notably for FoLiA, but also ARPA language models, Moses phrasetables, GIZA++ alignments.
 PySS3  Python package that implements a novel whitebox machine learning model for text classification, called SS3. Since SS3 has the ability to visually explain its rationale, this package also comes with easytouse interactive visualizations tools (online demos).
 pythonucto  Python binding to ucto (a unicodeaware rulebased tokenizer for various languages).
 pythonfrog  Python binding to Frog, an NLP suite for Dutch. (pos tagging, lemmatisation, dependency parsing, NER)
 pythonzpar  Python bindings for ZPar, a statistical partofspeechtagger, constiuency parser, and dependency parser for English.
 colibricore  Python binding to C++ library for extracting and working with with basic linguistic constructions such as ngrams and skipgrams in a quick and memoryefficient way.
 spaCy  Industrial strength NLP with Python and Cython.
 PyStanfordDependencies  Python interface for converting Penn Treebank trees to Stanford Dependencies.
 Distance  Levenshtein and Hamming distance computation. [Deprecated]
 Fuzzy Wuzzy  Fuzzy String Matching in Python.
 jellyfish  a python library for doing approximate and phonetic matching of strings.
 editdistance  fast implementation of edit distance.
 textacy  higherlevel NLP built on Spacy.
 stanfordcorenlppython  Python wrapper for Stanford CoreNLP [Deprecated]
 CLTK  The Classical Language Toolkit.
 rasa_nlu  turn natural language into structured data.
 yase  Transcode sentence (or other sequence) to list of word vector .
 Polyglot  Multilingual text (NLP) processing toolkit.
 DrQA  Reading Wikipedia to answer opendomain questions.
 Dedupe  A python library for accurate and scalable fuzzy matching, record deduplication and entityresolution.
 Snips NLU  Natural Language Understanding library for intent classification and entity extraction
 NeuroNER  Namedentity recognition using neural networks providing stateoftheartresults
 DeepPavlov  conversational AI library with many pretrained Russian NLP models.
 BigARTM  topic modelling platform.
GeneralPurpose Machine Learning¶
 Karate Club > An unsupervised machine learning extension library for NetworkX with a ScikitLearn like API.
 Auto_ViML > Automatically Build Variant Interpretable ML models fast! Auto_ViML is pronounced "auto vimal", is a comprehensive and scalable Python AutoML toolkit with imbalanced handling, ensembling, stacking and builtin feature selection. Featured in Medium article.
 PyOD > Python Outlier Detection, comprehensive and scalable Python toolkit for detecting outlying objects in multivariate data. Featured for Advanced models, including Neural Networks/Deep Learning and Outlier Ensembles.
 steppy > Lightweight, Python library for fast and reproducible machine learning experimentation. Introduces very simple interface that enables clean machine learning pipeline design.
 steppytoolkit > Curated collection of the neural networks, transformers and models that make your machine learning work faster and more effective.
 CNTK  Microsoft Cognitive Toolkit (CNTK), an open source deeplearning toolkit. Documentation can be found here.
 auto_ml  Automated machine learning for production and analytics. Lets you focus on the fun parts of ML, while outputting productionready code, and detailed analytics of your dataset and results. Includes support for NLP, XGBoost, CatBoost, LightGBM, and soon, deep learning.
 machine learning  automated build consisting of a webinterface, and set of programmaticinterface API, for support vector machines. Corresponding dataset(s) are stored into a SQL database, then generated model(s) used for prediction(s), are stored into a NoSQL datastore.
 XGBoost  Python bindings for eXtreme Gradient Boosting (Tree) Library.
 Apache SINGA  An Apache Incubating project for developing an open source machine learning library.
 Bayesian Methods for Hackers  Book/iPython notebooks on Probabilistic Programming in Python.
 Featureforge A set of tools for creating and testing machine learning features, with a scikitlearn compatible API.
 MLlib in Apache Spark  Distributed machine learning library in Spark
 Hydrosphere Mist  a service for deployment Apache Spark MLLib machine learning models as realtime, batch or reactive web services.
 scikitlearn  A Python module for machine learning built on top of SciPy.
 metriclearn  A Python module for metric learning.
 SimpleAI Python implementation of many of the artificial intelligence algorithms described on the book "Artificial Intelligence, a Modern Approach". It focuses on providing an easy to use, well documented and tested library.
 astroML  Machine Learning and Data Mining for Astronomy.
 graphlabcreate  A library with various machine learning models (regression, clustering, recommender systems, graph analytics, etc.) implemented on top of a diskbacked DataFrame.
 BigML  A library that contacts external servers.
 pattern  Web mining module for Python.
 NuPIC  Numenta Platform for Intelligent Computing.
 Pylearn2  A Machine Learning library based on Theano. [Deprecated]
 keras  Highlevel neural networks frontend for TensorFlow, CNTK and Theano.
 Lasagne  Lightweight library to build and train neural networks in Theano.
 hebel  GPUAccelerated Deep Learning Library in Python. [Deprecated]
 Chainer  Flexible neural network framework.
 prophet  Fast and automated time series forecasting framework by Facebook.
 gensim  Topic Modelling for Humans.
 topik  Topic modelling toolkit. [Deprecated]
 PyBrain  Another Python Machine Learning Library.
 Brainstorm  Fast, flexible and fun neural networks. This is the successor of PyBrain.
 Surprise  A scikit for building and analyzing recommender systems.
 Crab  A flexible, fast recommender engine. [Deprecated]
 pythonrecsys  A Python library for implementing a Recommender System.
 thinking bayes  Book on Bayesian Analysis.
 ImagetoImage Translation with Conditional Adversarial Networks  Implementation of image to image (pix2pix) translation from the paper by isola et al.[DEEP LEARNING]
 Restricted Boltzmann Machines Restricted Boltzmann Machines in Python. [DEEP LEARNING]
 Bolt  Bolt Online Learning Toolbox. [Deprecated]
 CoverTree  Python implementation of cover trees, neardropin replacement for scipy.spatial.kdtree [Deprecated]
 nilearn  Machine learning for NeuroImaging in Python.
 neuropredict  Aimed at novice machine learners and nonexpert programmers, this package offers easy (no coding needed) and comprehensive machine learning (evaluation and full report of predictive performance WITHOUT requiring you to code) in Python for NeuroImaging and any other type of features. This is aimed at absorbing the much of the ML workflow, unlike other packages like nilearn and pymvpa, which require you to learn their API and code to produce anything useful.
 imbalancedlearn  Python module to perform under sampling and over sampling with various techniques.
 Shogun  The Shogun Machine Learning Toolbox.
 Pyevolve  Genetic algorithm framework. [Deprecated]
 Caffe  A deep learning framework developed with cleanliness, readability, and speed in mind.
 breze  Theano based library for deep and recurrent neural networks.
 Cortex  Open source platform for deploying machine learning models in production.
 pyhsmm  library for approximate unsupervised inference in Bayesian Hidden Markov Models (HMMs) and explicitduration Hidden semiMarkov Models (HSMMs), focusing on the Bayesian Nonparametric extensions, the HDPHMM and HDPHSMM, mostly with weaklimit approximations.
 mrjob  A library to let Python program run on Hadoop.
 SKLL  A wrapper around scikitlearn that makes it simpler to conduct experiments.
 neurolab
 Spearmint  Spearmint is a package to perform Bayesian optimization according to the algorithms outlined in the paper: Practical Bayesian Optimization of Machine Learning Algorithms. Jasper Snoek, Hugo Larochelle and Ryan P. Adams. Advances in Neural Information Processing Systems, 2012. [Deprecated]
 Pebl  Python Environment for Bayesian Learning. [Deprecated]
 Theano  Optimizing GPUmetaprogramming code generating array oriented optimizing math compiler in Python.
 TensorFlow  Open source software library for numerical computation using data flow graphs.
 pomegranate  Hidden Markov Models for Python, implemented in Cython for speed and efficiency.
 pythontimbl  A Python extension module wrapping the full TiMBL C++ programming interface. Timbl is an elaborate kNearest Neighbours machine learning toolkit.
 deap  Evolutionary algorithm framework.
 pydeep  Deep Learning In Python. [Deprecated]
 mlxtend  A library consisting of useful tools for data science and machine learning tasks.
 neon  Nervana's highperformance Pythonbased Deep Learning framework [DEEP LEARNING]. [Deprecated]
 Optunity  A library dedicated to automated hyperparameter optimization with a simple, lightweight API to facilitate dropin replacement of grid search.
 Neural Networks and Deep Learning  Code samples for my book "Neural Networks and Deep Learning" [DEEP LEARNING].
 Annoy  Approximate nearest neighbours implementation.
 TPOT  Tool that automatically creates and optimizes machine learning pipelines using genetic programming. Consider it your personal data science assistant, automating a tedious part of machine learning.
 pgmpy A python library for working with Probabilistic Graphical Models.
 DIGITS  The Deep Learning GPU Training System (DIGITS) is a web application for training deep learning models.
 Orange  Open source data visualization and data analysis for novices and experts.
 MXNet  Lightweight, Portable, Flexible Distributed/Mobile Deep Learning with Dynamic, Mutationaware Dataflow Dep Scheduler; for Python, R, Julia, Go, Javascript and more.
 milk  Machine learning toolkit focused on supervised classification. [Deprecated]
 TFLearn  Deep learning library featuring a higherlevel API for TensorFlow.
 REP  an IPythonbased environment for conducting datadriven research in a consistent and reproducible way. REP is not trying to substitute scikitlearn, but extends it and provides better user experience. [Deprecated]
 rgf_python  Python bindings for Regularized Greedy Forest (Tree) Library.
 skbayes  Python package for Bayesian Machine Learning with scikitlearn API.
 fukuml  Simple machine learning library, including Perceptron, Regression, Support Vector Machine, Decision Tree and more, it's easy to use and easy to learn for beginners.
 Xcessiv  A webbased application for quick, scalable, and automated hyperparameter tuning and stacked ensembling.
 PyTorch  Tensors and Dynamic neural networks in Python with strong GPU acceleration
 MLFromScratch  Implementations of Machine Learning models from scratch in Python with a focus on transparency. Aims to showcase the nuts and bolts of ML in an accessible way.
 Edward  A library for probabilistic modeling, inference, and criticism. Built on top of TensorFlow.
 xRBM  A library for Restricted Boltzmann Machine (RBM) and its conditional variants in Tensorflow.
 CatBoost  General purpose gradient boosting on decision trees library with categorical features support out of the box. It is easy to install, well documented and supports CPU and GPU (even multiGPU) computation.
 stacked_generalization  Implementation of machine learning stacking technic as handy library in Python.
 modAL  A modular active learning framework for Python, built on top of scikitlearn.
 Cogitare: A Modern, Fast, and Modular Deep Learning and Machine Learning framework for Python.
 Parris  Parris, the automated infrastructure setup tool for machine learning algorithms.
 neonrvm  neonrvm is an open source machine learning library based on RVM technique. It's written in C programming language and comes with Python programming language bindings.
 Turi Create  Machine learning from Apple. Turi Create simplifies the development of custom machine learning models. You don't have to be a machine learning expert to add recommendations, object detection, image classification, image similarity or activity classification to your app.
 xLearn  A high performance, easytouse, and scalable machine learning package, which can be used to solve largescale machine learning problems. xLearn is especially useful for solving machine learning problems on largescale sparse data, which is very common in Internet services such as online advertisement and recommender systems.
 mlens  A high performance, memory efficient, maximally parallelized ensemble learning, integrated with scikitlearn.
 Netron  Visualizer for machine learning models.
 Thampi  Machine Learning Prediction System on AWS Lambda
 MindsDB  Open Source framework to streamline use of neural networks.
 Microsoft Recommenders: Examples and best practices for building recommendation systems, provided as Jupyter notebooks. The repo contains some of the latest state of the art algorithms from Microsoft Research as well as from other companies and institutions.
 StellarGraph: Machine Learning on Graphs, a Python library for machine learning on graphstructured (networkstructured) data.
 BentoML: Toolkit for package and deploy machine learning models for serving in production
 MiraiML: An asynchronous engine for continuous & autonomous machine learning, built for realtime usage.
 numpyML: Reference implementations of ML models written in numpy
 creme: A framework for online machine learning.
 Neuraxle: A framework providing the right abstractions to ease research, development, and deployment of your ML pipelines.
 Cornac  A comparative framework for multimodal recommender systems with a focus on models leveraging auxiliary data.
 JAX  JAX is Autograd and XLA, brought together for highperformance machine learning research.
 Catalyst  Highlevel utils for PyTorch DL & RL research. It was developed with a focus on reproducibility, fast experimentation and code/ideas reusing. Being able to research/develop something new, rather than write another regular train loop.
 Fastai  Highlevel wrapper built on the top of Pytorch which supports vision, text, tabular data and collaborative filtering.
 scikitmultiflow  A machine learning framework for multioutput/multilabel and stream data.
Data Analysis / Data Visualization¶
 SciPy  A Pythonbased ecosystem of opensource software for mathematics, science, and engineering.
 NumPy  A fundamental package for scientific computing with Python.
 AutoViz AutoViz performs automatic visualization of any dataset with a single line of Python code. Give it any input file (CSV, txt or json) of any size and AutoViz will visualize it. See Medium article.
 Numba  Python JIT (just in time) compiler to LLVM aimed at scientific Python by the developers of Cython and NumPy.
 Mars  A tensorbased framework for largescale data computation which often regarded as a parallel and distributed version of NumPy.
 NetworkX  A highproductivity software for complex networks.
 igraph  binding to igraph library  General purpose graph library.
 Pandas  A library providing highperformance, easytouse data structures and data analysis tools.
 Open Mining  Business Intelligence (BI) in Python (Pandas web interface) [Deprecated]
 PyMC  Markov Chain Monte Carlo sampling toolkit.
 zipline  A Pythonic algorithmic trading library.
 PyDy  Short for Python Dynamics, used to assist with workflow in the modeling of dynamic motion based around NumPy, SciPy, IPython, and matplotlib.
 SymPy  A Python library for symbolic mathematics.
 statsmodels  Statistical modeling and econometrics in Python.
 astropy  A community Python library for Astronomy.
 matplotlib  A Python 2D plotting library.
 bokeh  Interactive Web Plotting for Python.
 plotly  Collaborative web plotting for Python and matplotlib.
 altair  A Python to Vega translator.
 d3py  A plotting library for Python, based on D3.js.
 PyDexter  Simple plotting for Python. Wrapper for D3xterjs; easily render charts inbrowser.
 ggplot  Same API as ggplot2 for R. [Deprecated]
 ggfortify  Unified interface to ggplot2 popular R packages.
 Kartograph.py  Rendering beautiful SVG maps in Python.
 pygal  A Python SVG Charts Creator.
 PyQtGraph  A purepython graphics and GUI library built on PyQt4 / PySide and NumPy.
 pycascading [Deprecated]
 Petrel  Tools for writing, submitting, debugging, and monitoring Storm topologies in pure Python.
 Blaze  NumPy and Pandas interface to Big Data.
 emcee  The Python ensemble sampling toolkit for affineinvariant MCMC.
 windML  A Python Framework for Wind Energy Analysis and Prediction.
 vispy  GPUbased highperformance interactive OpenGL 2D/3D data visualization library.
 cerebro2 A webbased visualization and debugging platform for NuPIC. [Deprecated]
 NuPIC Studio An allinone NuPIC Hierarchical Temporal Memory visualization and debugging supertool! [Deprecated]
 SparklingPandas Pandas on PySpark (POPS).
 Seaborn  A python visualization library based on matplotlib.
 bqplot  An API for plotting in Jupyter (IPython).
 pastalog  Simple, realtime visualization of neural network training performance.
 Superset  A data exploration platform designed to be visual, intuitive, and interactive.
 Dora  Tools for exploratory data analysis in Python.
 Ruffus  Computation Pipeline library for python.
 SOMPY  Self Organizing Map written in Python (Uses neural networks for data analysis).
 somoclu Massively parallel selforganizing maps: accelerate training on multicore CPUs, GPUs, and clusters, has python API.
 HDBScan  implementation of the hdbscan algorithm in Python  used for clustering
 visualize_ML  A python package for data exploration and data analysis. [Deprecated]
 scikitplot  A visualization library for quick and easy generation of common plots in data analysis and machine learning.
 Bowtie  A dashboard library for interactive visualizations using flask socketio and react.
 lime  Lime is about explaining what machine learning classifiers (or models) are doing. It is able to explain any black box classifier, with two or more classes.
 PyCM  PyCM is a multiclass confusion matrix library written in Python that supports both input data vectors and direct matrix, and a proper tool for postclassification model evaluation that supports most classes and overall statistics parameters
 Dash  A framework for creating analytical web applications built on top of Plotly.js, React, and Flask
 Lambdo  A workflow engine for solving machine learning problems by combining in one analysis pipeline (i) feature engineering and machine learning (ii) model training and prediction (iii) table population and column evaluation via userdefined (Python) functions.
 TensorWatch  Debugging and visualization tool for machine learning and data science. It extensively leverages Jupyter Notebook to show realtime visualizations of data in running processes such as machine learning training.
 dowel  A little logger for machine learning research. Output any object to the terminal, CSV, TensorBoard, text logs on disk, and more with just one call to
logger.log()
.
Misc Scripts / iPython Notebooks / Codebases¶
 Map/Reduce implementations of common ML algorithms: Jupyter notebooks that cover how to implement from scratch different ML algorithms (ordinary least squares, gradient descent, kmeans, alternating least squares), using Python NumPy, and how to then make these implementations scalable using Map/Reduce and Spark.
 BioPy  BiologicallyInspired and Machine Learning Algorithms in Python. [Deprecated]
 SVM Explorer  Interactive SVM Explorer, using Dash and scikitlearn
 pattern_classification
 thinking stats 2
 hyperopt
 numpic
 2012paperdiginorm
 A gallery of interesting IPython notebooks
 ipythonnotebooks
 datascienceipythonnotebooks  Continually updated Data Science Python Notebooks: Spark, Hadoop MapReduce, HDFS, AWS, Kaggle, scikitlearn, matplotlib, pandas, NumPy, SciPy, and various command lines.
 decisionweights
 Sarah Palin LDA  Topic Modeling the Sarah Palin emails.
 Diffusion Segmentation  A collection of image segmentation algorithms based on diffusion methods.
 Scipy Tutorials  SciPy tutorials. This is outdated, check out scipylecturenotes.
 Crab  A recommendation engine library for Python.
 BayesPy  Bayesian Inference Tools in Python.
 scikitlearn tutorials  Series of notebooks for learning scikitlearn.
 sentimentanalyzer  Tweets Sentiment Analyzer
 sentiment_classifier  Sentiment classifier using word sense disambiguation.
 grouplasso  Some experiments with the coordinate descent algorithm used in the (Sparse) Group Lasso model.
 jProcessing  Kanji / Hiragana / Katakana to Romaji Converter. Edict Dictionary & parallel sentences Search. Sentence Similarity between two JP Sentences. Sentiment Analysis of Japanese Text. Run Cabocha(ISO88591 configured) in Python.
 mnepythonnotebooks  IPython notebooks for EEG/MEG data processing using mnepython.
 Neon Course  IPython notebooks for a complete course around understanding Nervana's Neon.
 pandas cookbook  Recipes for using Python's pandas library.
 climin  Optimization library focused on machine learning, pythonic implementations of gradient descent, LBFGS, rmsprop, adadelta and others.
 Allen Downey’s Data Science Course  Code for Data Science at Olin College, Spring 2014.
 Allen Downey’s Think Bayes Code  Code repository for Think Bayes.
 Allen Downey’s Think Complexity Code  Code for Allen Downey's book Think Complexity.
 Allen Downey’s Think OS Code  Text and supporting code for Think OS: A Brief Introduction to Operating Systems.
 Python Programming for the Humanities  Course for Python programming for the Humanities, assuming no prior knowledge. Heavy focus on text processing / NLP.
 GreatCircle  Library for calculating great circle distance.
 Optunity examples  Examples demonstrating how to use Optunity in synergy with machine learning libraries.
 Dive into Machine Learning with Python Jupyter notebook and scikitlearn  "I learned Python by hacking first, and getting serious later. I wanted to do this with Machine Learning. If this is your style, join me in getting a bit ahead of yourself."
 TDB  TensorDebugger (TDB) is a visual debugger for deep learning. It features interactive, nodebynode debugging and visualization for TensorFlow.
 Suiron  Machine Learning for RC Cars.
 Introduction to machine learning with scikitlearn  IPython notebooks from Data School's video tutorials on scikitlearn.
 Practical XGBoost in Python  comprehensive online course about using XGBoost in Python.
 Introduction to Machine Learning with Python  Notebooks and code for the book "Introduction to Machine Learning with Python"
 Pydata book  Materials and IPython notebooks for "Python for Data Analysis" by Wes McKinney, published by O'Reilly Media
 Homemade Machine Learning  Python examples of popular machine learning algorithms with interactive Jupyter demos and math being explained
 Prodmodel  Build tool for data science pipelines.
 theelementsofstatisticallearning  This repository contains Jupyter notebooks implementing the algorithms found in the book and summary of the textbook.
Neural Networks¶
 nn_builder  nn_builder is a python package that lets you build neural networks in 1 line
 NeuralTalk  NeuralTalk is a Python+numpy project for learning Multimodal Recurrent Neural Networks that describe images with sentences.

Neuron  Neuron is simple class for time series predictions. It's utilize LNU (Linear Neural Unit), QNU (Quadratic Neural Unit), RBF (Radial Basis Function), MLP (Multi Layer Perceptron), MLPELM (Multi Layer Perceptron  Extreme Learning Machine) neural networks learned with Gradient descent or LeLevenberg–Marquardt algorithm.¶
 NeuralTalk  NeuralTalk is a Python+numpy project for learning Multimodal Recurrent Neural Networks that describe images with sentences. [Deprecated]
 Neuron  Neuron is simple class for time series predictions. It's utilize LNU (Linear Neural Unit), QNU (Quadratic Neural Unit), RBF (Radial Basis Function), MLP (Multi Layer Perceptron), MLPELM (Multi Layer Perceptron  Extreme Learning Machine) neural networks learned with Gradient descent or LeLevenberg–Marquardt algorithm. [Deprecated]
 Data Driven Code  Very simple implementation of neural networks for dummies in python without using any libraries, with detailed comments.
 Machine Learning, Data Science and Deep Learning with Python  LiveVideo course that covers machine learning, Tensorflow, artificial intelligence, and neural networks.
Kaggle Competition Source Code¶
 opensolutionhomecredit > source code and experiments results for Home Credit Default Risk.
 opensolutiongoogleaiobjectdetection > source code and experiments results for Google AI Open Images  Object Detection Track.
 opensolutionsaltidentification > source code and experiments results for TGS Salt Identification Challenge.
 opensolutionshipdetection > source code and experiments results for Airbus Ship Detection Challenge.
 opensolutiondatasciencebowl2018 > source code and experiments results for 2018 Data Science Bowl.
 opensolutionvalueprediction > source code and experiments results for Santander Value Prediction Challenge.
 opensolutiontoxiccomments > source code for Toxic Comment Classification Challenge.
 wiki challenge  An implementation of Dell Zhang's solution to Wikipedia's Participation Challenge on Kaggle.
 kaggle insults  Kaggle Submission for "Detecting Insults in Social Commentary".
 kaggle_acquirevaluedshopperschallenge  Code for the Kaggle acquire valued shoppers challenge.
 kagglecifar  Code for the CIFAR10 competition at Kaggle, uses cudaconvnet.
 kaggleblackbox  Deep learning made easy.
 kaggleaccelerometer  Code for Accelerometer Biometric Competition at Kaggle.
 kaggleadvertisedsalaries  Predicting job salaries from ads  a Kaggle competition.
 kaggle amazon  Amazon access control challenge.
 kagglebestbuy_big  Code for the Best Buy competition at Kaggle.
 kagglebestbuy_small
 Kaggle Dogs vs. Cats  Code for Kaggle Dogs vs. Cats competition.
 Kaggle Galaxy Challenge  Winning solution for the Galaxy Challenge on Kaggle.
 Kaggle Gender  A Kaggle competition: discriminate gender based on handwriting.
 Kaggle Merck  Merck challenge at Kaggle.
 Kaggle Stackoverflow  Predicting closed questions on Stack Overflow.
 kaggle_acquirevaluedshopperschallenge  Code for the Kaggle acquire valued shoppers challenge.
 winequality  Predicting wine quality.
Reinforcement Learning¶
 DeepMind Lab  DeepMind Lab is a 3D learning environment based on id Software's Quake III Arena via ioquake3 and other open source software. Its primary purpose is to act as a testbed for research in artificial intelligence, especially deep reinforcement learning.
 Gym  OpenAI Gym is a toolkit for developing and comparing reinforcement learning algorithms.
 Serpent.AI  Serpent.AI is a game agent framework that allows you to turn any video game you own into a sandbox to develop AI and machine learning experiments. For both researchers and hobbyists.
 ViZDoom  ViZDoom allows developing AI bots that play Doom using only the visual information (the screen buffer). It is primarily intended for research in machine visual learning, and deep reinforcement learning, in particular.
 Roboschool  Opensource software for robot simulation, integrated with OpenAI Gym.
 Retro  Retro Games in Gym
 SLM Lab  Modular Deep Reinforcement Learning framework in PyTorch.
 Coach  Reinforcement Learning Coach by Intel® AI Lab enables easy experimentation with state of the art Reinforcement Learning algorithms
 garage  A toolkit for reproducible reinforcement learning research
 metaworld  An open source robotics benchmark for meta and multitask reinforcement learning
Ruby¶
Natural Language Processing¶
 Awesome NLP with Ruby  Curated link list for practical natural language processing in Ruby.
 Treat  Text REtrieval and Annotation Toolkit, definitely the most comprehensive toolkit I’ve encountered so far for Ruby.
 Stemmer  Expose libstemmer_c to Ruby. [Deprecated]
 Raspel  raspell is an interface binding for ruby. [Deprecated]
 UEA Stemmer  Ruby port of UEALite Stemmer  a conservative stemmer for search and indexing.
 Twittertextrb  A library that does auto linking and extraction of usernames, lists and hashtags in tweets.
GeneralPurpose Machine Learning¶
 Awesome Machine Learning with Ruby  Curated list of ML related resources for Ruby.
 Ruby Machine Learning  Some Machine Learning algorithms, implemented in Ruby. [Deprecated]
 Machine Learning Ruby [Deprecated]
 jRuby Mahout  JRuby Mahout is a gem that unleashes the power of Apache Mahout in the world of JRuby. [Deprecated]
 CardMagicClassifier  A general classifier module to allow Bayesian and other types of classifications.
 rblibsvm  Ruby language bindings for LIBSVM which is a Library for Support Vector Machines.
 Scoruby  Creates Random Forest classifiers from PMML files.
Data Analysis / Data Visualization¶
 rsruby  Ruby  R bridge.
 rubyplot  gnuplot wrapper for Ruby, especially for plotting ROC curves into SVG files. [Deprecated]
 plotrb  A plotting library in Ruby built on top of Vega and D3. [Deprecated]
 scruffy  A beautiful graphing toolkit for Ruby.
 SciRuby
 Glean  A data management tool for humans. [Deprecated]
 Bioruby
 Arel [Deprecated]
Misc¶
 Big Data For Chimps
 Listof  Community based data collection, packed in gem. Get list of pretty much anything (stop words, countries, non words) in txt, json or hash. Demo/Search for a list
Rust¶
GeneralPurpose Machine Learning¶
 deeplearnrs  deeplearnrs provides simple networks that use matrix multiplication, addition, and ReLU under the MIT license.
 rustlearn  a machine learning framework featuring logistic regression, support vector machines, decision trees and random forests.
 rustymachine  a purerust machine learning library.
 leaf  open source framework for machine intelligence, sharing concepts from TensorFlow and Caffe. Available under the MIT license. [Deprecated]
 RustNN  RustNN is a feedforward neural network library. [Deprecated]
 RusticSOM  A Rust library for Self Organising Maps (SOM).
R¶
GeneralPurpose Machine Learning¶
 ahaz  ahaz: Regularization for semiparametric additive hazards regression. [Deprecated]
 arules  arules: Mining Association Rules and Frequent Itemsets
 biglasso  biglasso: Extending Lasso Model Fitting to Big Data in R.
 bmrm  bmrm: Bundle Methods for Regularized Risk Minimization Package.
 Boruta  Boruta: A wrapper algorithm for allrelevant feature selection.
 bst  bst: Gradient Boosting.
 C50  C50: C5.0 Decision Trees and RuleBased Models.
 caret  Classification and Regression Training: Unified interface to ~150 ML algorithms in R.
 caretEnsemble  caretEnsemble: Framework for fitting multiple caret models as well as creating ensembles of such models. [Deprecated]
 CatBoost  General purpose gradient boosting on decision trees library with categorical features support out of the box for R.
 Clever Algorithms For Machine Learning
 CORElearn  CORElearn: Classification, regression, feature evaluation and ordinal evaluation.
 CoxBoost  CoxBoost: Cox models by likelihood based boosting for a single survival endpoint or competing risks [Deprecated]
 Cubist  Cubist: Rule and InstanceBased Regression Modeling.
 e1071  e1071: Misc Functions of the Department of Statistics (e1071), TU Wien
 earth  earth: Multivariate Adaptive Regression Spline Models
 elasticnet  elasticnet: ElasticNet for Sparse Estimation and Sparse PCA.
 ElemStatLearn  ElemStatLearn: Data sets, functions and examples from the book: "The Elements of Statistical Learning, Data Mining, Inference, and Prediction" by Trevor Hastie, Robert Tibshirani and Jerome Friedman Prediction" by Trevor Hastie, Robert Tibshirani and Jerome Friedman.
 evtree  evtree: Evolutionary Learning of Globally Optimal Trees.
 forecast  forecast: Timeseries forecasting using ARIMA, ETS, STLM, TBATS, and neural network models.
 forecastHybrid  forecastHybrid: Automatic ensemble and cross validation of ARIMA, ETS, STLM, TBATS, and neural network models from the "forecast" package.
 fpc  fpc: Flexible procedures for clustering.
 frbs  frbs: Fuzzy Rulebased Systems for Classification and Regression Tasks. [Deprecated]
 GAMBoost  GAMBoost: Generalized linear and additive models by likelihood based boosting. [Deprecated]
 gamboostLSS  gamboostLSS: Boosting Methods for GAMLSS.
 gbm  gbm: Generalized Boosted Regression Models.
 glmnet  glmnet: Lasso and elasticnet regularized generalized linear models.
 glmpath  glmpath: L1 Regularization Path for Generalized Linear Models and Cox Proportional Hazards Model.
 GMMBoost  GMMBoost: Likelihoodbased Boosting for Generalized mixed models. [Deprecated]
 grplasso  grplasso: Fitting user specified models with Group Lasso penalty.
 grpreg  grpreg: Regularization paths for regression models with grouped covariates.
 h2o  A framework for fast, parallel, and distributed machine learning algorithms at scale  Deeplearning, Random forests, GBM, KMeans, PCA, GLM.
 hda  hda: Heteroscedastic Discriminant Analysis. [Deprecated]
 Introduction to Statistical Learning
 ipred  ipred: Improved Predictors.
 kernlab  kernlab: Kernelbased Machine Learning Lab.
 klaR  klaR: Classification and visualization.
 L0Learn  L0Learn: Fast algorithms for best subset selection.
 lars  lars: Least Angle Regression, Lasso and Forward Stagewise. [Deprecated]
 lasso2  lasso2: L1 constrained estimation aka ‘lasso’.
 LiblineaR  LiblineaR: Linear Predictive Models Based On The Liblinear C/C++ Library.
 LogicReg  LogicReg: Logic Regression.
 Machine Learning For Hackers
 maptree  maptree: Mapping, pruning, and graphing tree models. [Deprecated]
 mboost  mboost: ModelBased Boosting.
 medley  medley: Blending regression models, using a greedy stepwise approach.
 mlr  mlr: Machine Learning in R.
 ncvreg  ncvreg: Regularization paths for SCAD and MCPpenalized regression models.
 nnet  nnet: Feedforward Neural Networks and Multinomial LogLinear Models. [Deprecated]
 pamr  pamr: Pam: prediction analysis for microarrays. [Deprecated]
 party  party: A Laboratory for Recursive Partytioning.
 partykit  partykit: A Toolkit for Recursive Partytioning.
 penalized  penalized: L1 (lasso and fused lasso) and L2 (ridge) penalized estimation in GLMs and in the Cox model.
 penalizedLDA  penalizedLDA: Penalized classification using Fisher's linear discriminant. [Deprecated]
 penalizedSVM  penalizedSVM: Feature Selection SVM using penalty functions.
 quantregForest  quantregForest: Quantile Regression Forests.
 randomForest  randomForest: Breiman and Cutler's random forests for classification and regression.
 randomForestSRC  randomForestSRC: Random Forests for Survival, Regression and Classification (RFSRC).
 rattle  rattle: Graphical user interface for data mining in R.
 rda  rda: Shrunken Centroids Regularized Discriminant Analysis.
 rdetools  rdetools: Relevant Dimension Estimation (RDE) in Feature Spaces. [Deprecated]
 REEMtree  REEMtree: Regression Trees with Random Effects for Longitudinal (Panel) Data. [Deprecated]
 relaxo  relaxo: Relaxed Lasso. [Deprecated]
 rgenoud  rgenoud: R version of GENetic Optimization Using Derivatives
 Rmalschains  Rmalschains: Continuous Optimization using Memetic Algorithms with Local Search Chains (MALSChains) in R.
 rminer  rminer: Simpler use of data mining methods (e.g. NN and SVM) in classification and regression. [Deprecated]
 ROCR  ROCR: Visualizing the performance of scoring classifiers. [Deprecated]
 RoughSets  RoughSets: Data Analysis Using Rough Set and Fuzzy Rough Set Theories. [Deprecated]
 rpart  rpart: Recursive Partitioning and Regression Trees.
 RPMM  RPMM: Recursively Partitioned Mixture Model.
 RSNNS  RSNNS: Neural Networks in R using the Stuttgart Neural Network Simulator (SNNS).
 RWeka  RWeka: R/Weka interface.
 RXshrink  RXshrink: Maximum Likelihood Shrinkage via Generalized Ridge or Least Angle Regression.
 sda  sda: Shrinkage Discriminant Analysis and CAT Score Variable Selection. [Deprecated]
 spectralGraphTopology  spectralGraphTopology: Learning Graphs from Data via Spectral Constraints.
 SuperLearner  Multialgorithm ensemble learning packages.
 svmpath  svmpath: svmpath: the SVM Path algorithm. [Deprecated]
 tgp  tgp: Bayesian treed Gaussian process models. [Deprecated]
 tree  tree: Classification and regression trees.
 varSelRF  varSelRF: Variable selection using random forests.
 XGBoost.R  R binding for eXtreme Gradient Boosting (Tree) Library.
 Optunity  A library dedicated to automated hyperparameter optimization with a simple, lightweight API to facilitate dropin replacement of grid search. Optunity is written in Python but interfaces seamlessly to R.
 igraph  binding to igraph library  General purpose graph library.
 MXNet  Lightweight, Portable, Flexible Distributed/Mobile Deep Learning with Dynamic, Mutationaware Dataflow Dep Scheduler; for Python, R, Julia, Go, Javascript and more.
 TDSPUtilities  Two data science utilities in R from Microsoft: 1) Interactive Data Exploration, Analysis, and Reporting (IDEAR) ; 2) Automated Modeling and Reporting (AMR).
Data Manipulation  Data Analysis  Data Visualization¶
 dplyr  A data manipulation package that helps to solve the most common data manipulation problems.
 ggplot2  A data visualization package based on the grammar of graphics.
 tmap for visualizing geospatial data with static maps and leaflet for interactive maps
 tm and quanteda are the main packages for managing, analyzing, and visualizing textual data.
 shiny is the basis for truly interactive displays and dashboards in R. However, some measure of interactivity can be achieved with htmlwidgets bringing javascript libraries to R. These include, plotly, dygraphs, highcharter, and several others.
SAS¶
GeneralPurpose Machine Learning¶
 Visual Data Mining and Machine Learning  Interactive, automated, and programmatic modeling with the latest machine learning algorithms in and endtoend analytics environment, from data prep to deployment. Free trial available.
 Enterprise Miner  Data mining and machine learning that creates deployable models using a GUI or code.
 Factory Miner  Automatically creates deployable machine learning models across numerous market or customer segments using a GUI.
Data Analysis / Data Visualization¶
 SAS/STAT  For conducting advanced statistical analysis.
 University Edition  FREE! Includes all SAS packages necessary for data analysis and visualization, and includes online SAS courses.
Natural Language Processing¶
 Contextual Analysis  Add structure to unstructured text using a GUI.
 Sentiment Analysis  Extract sentiment from text using a GUI.
 Text Miner  Text mining using a GUI or code.
Demos and Scripts¶
 ML_Tables  Concise cheat sheets containing machine learning best practices.
 enlightenapply  Example code and materials that illustrate applications of SAS machine learning techniques.
 enlightenintegration  Example code and materials that illustrate techniques for integrating SAS with other analytics technologies in Java, PMML, Python and R.
 enlightendeep  Example code and materials that illustrate using neural networks with several hidden layers in SAS.
 dmflow  Library of SAS Enterprise Miner process flow diagrams to help you learn by example about specific data mining topics.
Scala¶
Natural Language Processing¶
 ScalaNLP  ScalaNLP is a suite of machine learning and numerical computing libraries.
 Breeze  Breeze is a numerical processing library for Scala.
 Chalk  Chalk is a natural language processing library. [Deprecated]
 FACTORIE  FACTORIE is a toolkit for deployable probabilistic modeling, implemented as a software library in Scala. It provides its users with a succinct language for creating relational factor graphs, estimating parameters and performing inference.
 Montague  Montague is a semantic parsing library for Scala with an easytouse DSL.
 Spark NLP  Natural language processing library built on top of Apache Spark ML to provide simple, performant, and accurate NLP annotations for machine learning pipelines, that scale easily in a distributed environment.
Data Analysis / Data Visualization¶
 MLlib in Apache Spark  Distributed machine learning library in Spark
 Hydrosphere Mist  a service for deployment Apache Spark MLLib machine learning models as realtime, batch or reactive web services.
 Scalding  A Scala API for Cascading.
 Summing Bird  Streaming MapReduce with Scalding and Storm.
 Algebird  Abstract Algebra for Scala.
 xerial  Data management utilities for Scala. [Deprecated]
 PredictionIO  PredictionIO, a machine learning server for software developers and data engineers.
 BIDMat  CPU and GPUaccelerated matrix library intended to support largescale exploratory data analysis.
 Flink  Open source platform for distributed stream and batch data processing.
 Spark Notebook  Interactive and Reactive Data Science using Scala and Spark.
GeneralPurpose Machine Learning¶
 DeepLearning.scala  Creating statically typed dynamic neural networks from objectoriented & functional programming constructs.
 Conjecture  Scalable Machine Learning in Scalding.
 brushfire  Distributed decision tree ensemble learning in Scala.
 ganitha  Scalding powered machine learning. [Deprecated]
 adam  A genomics processing engine and specialized file format built using Apache Avro, Apache Spark and Parquet. Apache 2 licensed.
 bioscala  Bioinformatics for the Scala programming language
 BIDMach  CPU and GPUaccelerated Machine Learning Library.
 Figaro  a Scala library for constructing probabilistic models.
 H2O Sparkling Water  H2O and Spark interoperability.
 FlinkML in Apache Flink  Distributed machine learning library in Flink.
 DynaML  Scala Library/REPL for Machine Learning Research.
 Saul  Flexible Declarative LearningBased Programming.
 SwiftLearner  Simply written algorithms to help study ML or write your own implementations.
 Smile  Statistical Machine Intelligence and Learning Engine.
 doddlemodel  An inmemory machine learning library built on top of Breeze. It provides immutable objects and exposes its functionality through a scikitlearnlike API.
 TensorFlow Scala  Stronglytyped Scala API for TensorFlow.
Scheme¶
Neural Networks¶
 layer  Neural network inference from the command line, implemented in CHICKEN Scheme.
Swift¶
GeneralPurpose Machine Learning¶
 Bender  Fast Neural Networks framework built on top of Metal. Supports TensorFlow models.
 Swift AI  Highly optimized artificial intelligence and machine learning library written in Swift.
 Swift for Tensorflow  a nextgeneration platform for machine learning, incorporating the latest research across machine learning, compilers, differentiable programming, systems design, and beyond.
 BrainCore  The iOS and OS X neural network framework.
 swix  A bare bones library that includes a general matrix language and wraps some OpenCV for iOS development. [Deprecated]
 AIToolbox  A toolbox framework of AI modules written in Swift: Graphs/Trees, Linear Regression, Support Vector Machines, Neural Networks, PCA, KMeans, Genetic Algorithms, MDP, Mixture of Gaussians.
 MLKit  A simple Machine Learning Framework written in Swift. Currently features Simple Linear Regression, Polynomial Regression, and Ridge Regression.
 Swift Brain  The first neural network / machine learning library written in Swift. This is a project for AI algorithms in Swift for iOS and OS X development. This project includes algorithms focused on Bayes theorem, neural networks, SVMs, Matrices, etc...
 Perfect TensorFlow  Swift Language Bindings of TensorFlow. Using native TensorFlow models on both macOS / Linux.
 PredictionBuilder  A library for machine learning that builds predictions using a linear regression.
 Awesome CoreML  A curated list of pretrained CoreML models.
 Awesome Core ML Models  A curated list of machine learning models in CoreML format.
TensorFlow¶
GeneralPurpose Machine Learning¶
 Awesome TensorFlow  A list of all things related to TensorFlow.
Tools¶
Neural Networks¶
 layer  Neural network inference from the command line
Misc¶
 ML Workspace  Allinone webbased IDE for machine learning and data science. The workspace is deployed as a docker container and is preloaded with a variety of popular data science libraries (e.g., Tensorflow, PyTorch) and dev tools (e.g., Jupyter, VS Code).
 Notebooks  A starter kit for Jupyter notebooks and machine learning. Companion docker images consist of all combinations of python versions, machine learning frameworks (Keras, PyTorch and Tensorflow) and CPU/CUDA versions.
 DVC  Data Science Version Control is an opensource version control system for machine learning projects with pipelines support. It makes ML projects reproducible and shareable.
 Kedro  Kedro is a data and development workflow framework that implements best practices for data pipelines with an eye towards productionizing machine learning models.
 guild.ai  Tool to log, analyze, compare and "optimize" experiments. It's crossplatform and framework independent, and provided integrated visualizers such as tensorboard.
 Sacred  Python tool to help you configure, organize, log and reproduce experiments. Like a notebook lab in the context of Chemestry/Biology. The community has built multiple addons leveraging the proposed standard.
 MLFlow  platform to manage the ML lifecycle, including experimentation, reproducibility and deployment. Framework anf language agnostic, take a look at all the builtin integrations.
 More tools to improve the ML lifecycle: Catalyst, PachydermIO. The following are Githubalike and targetting teams Weights & Biases, Neptune.Ml, Comet.ml, Valohai.ai.
 MachineLearningWithTensorFlow2ed  a book on general purpose machine learning techniques regression, classification, unsupervised clustering, reinforcement learning, auto encoders, convolutional neural networks, RNNs, LSTMs, using TensorFlow 1.14.1.
Credits¶
 Some of the python libraries were cutandpasted from vinta
 References for Go were mostly cutandpasted from gopherdata