Statistical Inference and Statistical/Computational Learning Theory

General-Purpose Learning Library

  • TensorFlow : an Open Source Software Library for Machine Intelligence
  • PyTorch : An open source machine learning framework that accelerates the path from research prototyping to production deployment
  • MXNet : A truly open source deep learning framework suited for flexible research prototyping and production
  • Apache Mahout : an environment for quickly creating scalable performant machine learning applications
  • Caffe : Deep learning framework
  • Keras : Deep Learning library for Theano and TensorFlow
  • Deeplearning4j : the first commercial-grade, open-source, distributed deep-learning library written for Java and Scala
  • DeepLearning : Deep Learning (Python, C, C++, Java, Scala, Go)
  • Torch : a scientific computing framework with wide support for machine learning algorithms that puts GPUs first
  • Waffles : a machine learning toolkit
  • shogun : A large scale machine learning toolbox
  • tiny-dnn : header only, dependency-free deep learning framework in C++11

Reinforcement Learning (RL)

  • RL-Glue : Reinforcement Learning Glue, a standard interface that allows you to connect reinforcement learning agents, environments, and experiment programs together, even if they are written in different languages
  • MMLF : The Maja Machine Learning Framework, a general framework for problems in the domain of Reinforcement Learning (RL) written in python
  • The RL Toolbox : Reinforcement Learning Toolbox, a C++ based, open-source, framework for all kinds of reinforcement learning (RL) algorithms
  • BURLP : The Brown-UMBC Reinforcement Learning and Planning java code library, the use and development of single or multi-agent planning and learning algorithms and domains to accompany them
  • RLlib : C++ library for reinforcement learning
  • RLLib : C++ Template Library to Predict, Control, Learn Behaviors, and Represent Learnable Knowledge using On/Off Policy Reinforcement Learning

Support Vector Machine (SVM)

  • LIBSVM : a Library for Support Vector Machines
  • mySVM : an implementation of the Support Vector Machine introduced by V. Vapnik
  • SVM-Light : an implementation of Support Vector Machines (SVMs) in C

Ensemble Learning

  • JBoost : an implementation of boosting in java
  • GML AdaBoost Matlab Toolbox : set of matlab functions and classes implementing a family of classification algorithms, known as Boosting
  • MultiBoost : a multi-class / multi-label / multi-task classification boosting software implemented in C++

Neural Network

  • FANN : Fast Artificial Neural Network Library
  • Open NN : An Open Source Neural Networks C++ Library
  • OpenANN : An open source library for artificial neural networks
  • Netlab Neural Network Software
  • CURRENNT : CUDA-enabled machine learning library for recurrent neural networks
  • RNNLIB : a recurrent neural network library for sequence learning problems
  • RecurrentJS : Deep Recurrent Neural Networks and LSTMs in Javascript
  • ConvNetJS : Deep Learning in your browser
  • cuda-convnet2
  • cuDNN : GPU Accelerated Deep Learning

Markov Model

  • jMarkov : a Java framework for Markov chain modeling
  • HTK : The Hidden Markov Model Toolkit, a portable toolkit for building and manipulating hidden Markov models
  • Hidden Markov Model (HMM) Toolbox for Matlab
  • GHMM : The General Hidden Markov Model library, a freely available C library implementing efficient data structures and algorithms for basic and extended HMMs with discrete and continuous emissions

Probabilistic Graphical Model

  • OpenGM : a C++ template library for discrete factor graph models and distributive operations on these models
  • GMTK : The Graphical Models Toolkit, an open source, publicly available toolkit for rapidly prototyping statistical models using dynamic graphical models (DGMs) and dynamic Bayesian networks (DBNs)
  • GRMM : a toolkit for performing inference and learning in graphical models of arbitrary structure
  • PNL : the Open Source Probabilistic Networks Library, a tool for working with graphical models
  • OpenMarkov : a software tool for probabilistic graphical models (PGMs)
  • Bo : a collection of basic and advanced methods and data structures for 2D image processing and segmentation, 3D object analysis, surface reconstruction

Bayesian Filtering

Bayesian Inference

  • BUGS : Bayesian inference Using Gibbs Sampling, flexible software for the Bayesian analysis of complex statistical models using Markov chain Monte Carlo (MCMC) methods
  • JAGS : Just Another Gibbs Sampler, a program for analysis of Bayesian hierarchical models using Markov Chain Monte Carlo (MCMC) simulation not wholly unlike BUGS
  • Stan : statistical modeling, data analysis, and prediction in the social, biological, and physical sciences, engineering, and business