Awesome Machine Learning:
A curated list of awesome machine learning frameworks, libraries and software (by language). Inspired by awesomephp. Other awesome lists can be found in the awesomeawesomeness list.
If you want to contribute to this list (please do), send me a pull request or contact me @josephmisiti
For a list of free machine learning books available for download, go here.
Table of Contents
 C
 C++
 Common Lisp
 Clojure
 Erlang
 Go
 Haskell
 Java
 Javascript
 Julia
 Lua
 Matlab
 .NET
 Objective C
 PHP
 Python
 Ruby
 R
 Scala
 Swift
 Credits
C
GeneralPurpose Machine Learning
 Recommender  A C library for product recommendations/suggestions using collaborative filtering (CF).
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
 OpenCV  OpenCV has C++, C, Python, Java and MATLAB interfaces and supports Windows, Linux, Android and Mac OS.
 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
 VIGRA  VIGRA is a generic crossplatform C++ computer vision and machine learning library for volumes of arbitrary dimensionality with Python bindings.
GeneralPurpose Machine Learning
 MLPack  A scalable C++ machine learning library
 DLib  A suite of ML tools designed to be easy to imbed in other applications
 encogcpp
 shark
 Vowpal Wabbit (VW)  A fast outofcore learning system.
 sofiaml  Suite of fast incremental algorithms.
 Shogun  The Shogun Machine Learning Toolbox
 Caffe  A deep learning framework developed with cleanliness, readability, and speed in mind. [DEEP LEARNING]
 CXXNET  Yet another deep learning framework with less than 1000 lines core code [DEEP LEARNING]
 XGBoost  A parallelized optimized general purpose gradient boosting library.
 CUDA  This is a fast C++/CUDA implementation of convolutional [DEEP LEARNING]
 Stan  A probabilistic programming language implementing full Bayesian statistical inference with Hamiltonian Monte Carlo sampling
 BanditLib  A simple Multiarmed Bandit library.
 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.
Natural Language Processing
 MIT Information Extraction Toolkit  C, C++, and Python tools for named entity recognition and relation extraction
 CRF++  Open source implementation of Conditional Random Fields (CRFs) for segmenting/labeling sequential data & other Natural Language Processing tasks.
 CRFsuite  CRFsuite is an implementation of Conditional Random Fields (CRFs) for labeling sequential data.
 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.
 ucto  Unicodeaware regularexpression based tokenizer for various languages. Tool and C++ library. Supports FoLiA format.
 libfolia  C++ library for the FoLiA format
 frog  Memorybased NLP suite developed for Dutch: PoS tagger, lemmatiser, dependency parser, NER, shallow parser, morphological analyzer.
 MeTA  MeTA : ModErn Text Analysis is a C++ Data Sciences Toolkit that facilitates mining big text data.
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.
Common Lisp
GeneralPurpose Machine Learning
 mgl  Neural networks (boltzmann machines, feedforward and recurrent nets), Gaussian Processes
 mglgpr  Evolutionary algorithms
 cllibsvm  Wrapper for the libsvm support vector machine library
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
 Clojush  he Push programming language and the PushGP genetic programming system implemented in Clojure
 Infer  Inference and machine learning in clojure
 CljML  A machine learning library for Clojure built on top of Weka and friends
 Encog  Clojure wrapper for Encog (v3) (MachineLearning framework that specializes in neuralnets)
 Fungp  A genetic programming library for Clojure
 Statistiker  Basic Machine Learning algorithms in Clojure.
 clortex  General Machine Learning library using Numenta’s Cortical Learning Algorithm
 comportex  Functionally composable Machine Learning library using Numenta’s Cortical Learning Algorithm
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
Erlang
GeneralPurpose Machine Learning
 Disco  Map Reduce in Erlang
Go
Natural Language Processing
 goporterstemmer  A native Go clean room implementation of the Porter Stemming algorithm.
 paicehusk  Golang implementation of the Paice/Husk Stemming Algorithm.
 snowball  Snowball Stemmer for Go.
 gongram  Inmemory ngram index with compression.
GeneralPurpose Machine Learning
 Go Learn  Machine Learning for Go
 gopr  Pattern recognition package in Go lang.
 goml  Linear / Logistic regression, Neural Networks, Collaborative Filtering and Gaussian Multivariate Distribution
 bayesian  Naive Bayesian Classification for Golang.
 gogalib  Genetic Algorithms library written in Go / golang
 Cloudforest  Ensembles of decision trees in go/golang.
 gobrain  Neural Networks written in go
Data Analysis / Data Visualization
Haskell
GeneralPurpose Machine Learning
 haskellml  Haskell implementations of various ML algorithms.
 HLearn  a suite of libraries for interpreting machine learning models according to their algebraic structure.
 hnn  Haskell Neural Network library.
 hopfieldnetworks  Hopfield Networks for unsupervised learning in Haskell.
 caffegraph  A DSL for deep neural networks
 LambdaNet  Configurable Neural Networks in Haskell
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.
 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.
 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.
GeneralPurpose 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.
 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
 javadeeplearning  Distributed Deep Learning Platform for Java, Clojure,Scala
 JAVAML  A general ML library with a common interface for all algorithms in Java
 JSAT  Numerous Machine Learning algorithms for classification, regression, and clustering.
 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
 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.
 RankLib  RankLib is a library of learning to rank algorithms
 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.
 WalnutiQ  object oriented model of the human brain
 Weka  Weka is a collection of machine learning algorithms for data mining tasks
Speech Recognition
 CMU Sphinx  Open Source Toolkit For Speech Recognition purely based on Java speech recognition library.
Data Analysis / Data Visualization
 Hadoop  Hadoop/HDFS
 Spark  Spark is a fast and general engine for largescale data processing.
 Impala  Realtime Query for Hadoop
Deep Learning
 Deeplearning4j  Scalable deep learning for industry with parallel GPUs
Javascript
Natural Language Processing
 Twittertext  A JavaScript implementation of Twitter's text processing library
 NLP.js  NLP utilities in javascript and coffeescript
 natural  General natural language facilities for node
 Knwl.js  A Natural Language Processor in JS
 Retext  Extensible system for analyzing and manipulating natural language
 TextProcessing  Sentiment analysis, stemming and lemmatization, partofspeech tagging and chunking, phrase extraction and named entity recognition.
 NLP Compromise  Natural Language processing in the browser
Data Analysis / Data Visualization
 D3.js
 High Charts
 NVD3.js
 dc.js
 chartjs
 dimple
 amCharts
 D3xter  Straight forward plotting built on D3
 statkit  Statistics kit for JavaScript
 science.js  Scientific and statistical computing in JavaScript.
 Z3d  Easily make interactive 3d plots built on Three.js
 Sigma.js  JavaScript library dedicated to graph drawing.
 C3.js customizable library based on D3.js for easy chart drawing.
 ZingChart library written on Vanilla JS for big data visualization.
 cheminfo  Platform for data visualization and analysis, using the visualizer project.
GeneralPurpose Machine Learning
 Convnet.js  ConvNetJS is a Javascript library for training Deep Learning models[DEEP LEARNING]
 Clusterfck  Agglomerative hierarchical clustering implemented in Javascript for Node.js and the browser
 Clustering.js  Clustering algorithms implemented in Javascript for Node.js and the browser
 Decision Trees  NodeJS Implementation of Decision Tree using ID3 Algorithm
 figue  Kmeans, fuzzy cmeans and agglomerative clustering
 Nodefann  FANN (Fast Artificial Neural Network Library) bindings for Node.js
 Kmeans.js  Simple Javascript implementation of the kmeans algorithm, for node.js and the browser
 LDA.js  LDA topic modeling for node.js
 Learning.js  Javascript implementation of logistic regression/c4.5 decision tree
 Machine Learning  Machine learning library for Node.js
 miltokyo  List of several machine learning libraries
 NodeSVM  Support Vector Machine for nodejs
 Brain  Neural networks in JavaScript
 BayesianBandit  Bayesian bandit implementation for Node and the browser.
 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.
 kalman  Kalman filter for Javascript.
 shaman  node.js library with support for both simple and multiple linear regression.
 ml.js  Machine learning and numerical analysis tools for Node.js and the Browser!
Misc
 sylvester  Vector and Matrix math for JavaScript.
 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.
 GreatCircle  Library for calculating great circle distance.
Julia
GeneralPurpose Machine Learning
 MachineLearning  Julia Machine Learning library
 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)
 Local Regression  Local regression, so smooooth!
 Naive Bayes  Simple Naive Bayes implementation in Julia
 Mixed Models  A Julia package for fitting (statistical) mixedeffects models
 Simple MCMC  basic mcmc sampler implemented in Julia
 Distance  Julia module for Distance evaluation
 Decision Tree  Decision Tree Classifier and Regressor
 Neural  A neural network in Julia
 MCMC  MCMC tools for Julia
 Mamba  Markov chain Monte Carlo (MCMC) for Bayesian analysis in Julia
 GLM  Generalized linear models in Julia
 Online Learning
 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
 Kernal Density  Kernel density estimators for julia
 Dimensionality Reduction  Methods for dimensionality reduction
 NMF  A Julia package for nonnegative matrix factorization
 ANN  Julia artificial neural networks
 Mocha  Deep Learning framework for Julia inspired by Caffe
 XGBoost  eXtreme Gradient Boosting Package in Julia
 ManifoldLearning  A Julia package for manifold learning and nonlinear dimensionality reduction
Natural Language Processing
 Topic Models  TopicModels for Julia
 Text Analysis  Julia package for text analysis
Data Analysis / Data Visualization
 Graph Layout  Graph layout algorithms in pure Julia
 Data Frames Meta  Metaprogramming tools for DataFrames
 Julia Data  library for working with tabular data in Julia
 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
 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
Lua
GeneralPurpose Machine Learning

 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.
 graph  Graph package for Torch
 randomkit  Numpy's randomkit, wrapped for Torch
signal  A signal processing toolbox for Torch7. FFT, DCT, Hilbert, cepstrums, stft
nn  Neural Network package for Torch
 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
 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).
 manifold  A package to manipulate manifolds
 svm  TorchSVM library
 lbfgs  FFI Wrapper for liblbfgs
 vowpalwabbit  An old vowpalwabbit interface to torch.
 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.
 sphagetti  Spaghetti (sparse linear) module for torch7 by @MichaelMathieu
 LuaSHKit  A lua wrapper around the Locality sensitive hashing library SHKit
 kernel smoothing  KNN, kernelweighted average, local linear regression smoothers
 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.
 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.
 saliency  code and tools around integral images. A library for finding interest points based on fast integral histograms.
 stitch  allows us to use hugin to stitch images and apply same stitching to a video sequence
 sfm  A bundle adjustment/structure from motion package
 fex  A package for feature extraction in Torch. Provides SIFT and dSIFT modules.
 OverFeat  A stateoftheart generic dense feature extractor
 Numeric Lua
 Lunatic Python
 SciLua
 Lua  Numerical Algorithms
 Lunum
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]
 tDistributed Stochastic Neighbor Embedding  tDistributed Stochastic Neighbor Embedding (tSNE) is a (prizewinning) technique for dimensionality reduction that is particularly well suited for the visualization of highdimensional datasets.
 Spider  The spider is intended to be a complete object orientated environment for machine learning in Matlab.
 LibSVM  A Library for Support Vector Machines
 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.
Data Analysis / Data Visualization
 matlab_gbl  MatlabBGL is a Matlab package for working with graphs.
 gamic  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 e 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.
 Vulpes  Deep belief and deep learning implementation written in F# and leverages CUDA GPU execution with Alea.cuBase.
 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.
 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.
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.
 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.
 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.
 KRKmeansAlgorithm  It implemented KMeans the clustering and classification algorithm. It could be used in data mining and image compression.
 KRFuzzyCMeansAlgorithm  It implemented Fuzzy CMeans (FCM) the fuzzy clustering / classification algorithm on Machine Learning. It could be used in data mining and image compression.
PHP
GeneralPurpose Machine Learning
 PredictionBuilder  A library for machine learning that builds predictions using a linear regression.
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.
Natural Language Processing
 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.
 jieba  Chinese Words Segmentation Utilities.
 SnowNLP  A library for processing Chinese text.
 loso  Another Chinese segmentation library.
 genius  A Chinese segment base on Conditional Random Field.
 KoNLPy  A Python package for Korean natural language processing.
 nut  Natural language Understanding Toolkit
 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)
 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.
 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.
GeneralPurpose Machine 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
 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
 scikitlearn  A Python module for machine learning built on top of SciPy.
 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.
 keras  Modular neural network library based on Theano.
 hebel  GPUAccelerated Deep Learning Library in Python.
 Chainer  Flexible neural network framework
 gensim  Topic Modelling for Humans.
 topik  Topic modelling toolkit
 PyBrain  Another Python Machine Learning Library.
 Crab  A ﬂexible, fast recommender engine.
 pythonrecsys  A Python library for implementing a Recommender System.
 thinking bayes  Book on Bayesian Analysis
 Restricted Boltzmann Machines Restricted Boltzmann Machines in Python. [DEEP LEARNING]
 Bolt  Bolt Online Learning Toolbox
 CoverTree  Python implementation of cover trees, neardropin replacement for scipy.spatial.kdtree
 nilearn  Machine learning for NeuroImaging in Python
 Shogun  The Shogun Machine Learning Toolbox
 Pyevolve  Genetic algorithm framework.
 Caffe  A deep learning framework developed with cleanliness, readability, and speed in mind.
 breze  Theano based library for deep and recurrent neural networks
 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  https://github.com/zueve/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.
 Pebl  Python Environment for Bayesian Learning
 Theano  Optimizing GPUmetaprogramming code generating array oriented optimizing math compiler in Python
 yahmm  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
 mlxtend  A library consisting of useful tools for data science and machine learning tasks.
 neon  Nervana's highperformance Pythonbased Deep Learning framework [DEEP LEARNING]
 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
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.
 Numba  Python JIT (just in time) complier to LLVM aimed at scientific Python by the developers of Cython and NumPy.
 NetworkX  A highproductivity software for complex networks.
 Pandas  A library providing highperformance, easytouse data structures and data analysis tools.
 Open Mining  Business Intelligence (BI) in Python (Pandas web interface)
 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.
 vincent  A Python to Vega translator.
 d3py  A plottling library for Python, based on D3.js.
 ggplot  Same API as ggplot2 for R.
 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
 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.
 NuPIC Studio An allinone NuPIC Hierarchical Temporal Memory visualization and debugging supertool!
 SparklingPandas Pandas on PySpark (POPS)
 Seaborn  A python visualization library based on matplotlib
 bqplot  An API for plotting in Jupyter (IPython)
Misc Scripts / iPython Notebooks / Codebases
 BioPy  BiologicallyInspired and Machine Learning Algorithms in Python.
 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
 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.
Kaggle Competition Source Code
 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 Dovs 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
Ruby
Natural Language Processing
 Treat  Text REtrieval and Annotation Toolkit, definitely the most comprehensive toolkit I’ve encountered so far for Ruby
 Ruby Linguistics  Linguistics is a framework for building linguistic utilities for Ruby objects in any language. It includes a generic languageindependent front end, a module for mapping language codes into language names, and a module which contains various Englishlanguage utilities.
 Stemmer  Expose libstemmer_c to Ruby
 Ruby Wordnet  This library is a Ruby interface to WordNet
 Raspel  raspell is an interface binding for ruby
 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
 Ruby Machine Learning  Some Machine Learning algorithms, implemented in Ruby
 Machine Learning Ruby
 jRuby Mahout  JRuby Mahout is a gem that unleashes the power of Apache Mahout in the world of JRuby.
 CardMagicClassifier  A general classifier module to allow Bayesian and other types of classifications.
Data Analysis / Data Visualization
 rsruby  Ruby  R bridge
 datavisualizationruby  Source code and supporting content for my Ruby Manor presentation on Data Visualisation with Ruby
 rubyplot  gnuplot wrapper for ruby, especially for plotting roc curves into svg files
 plotrb  A plotting library in Ruby built on top of Vega and D3.
 scruffy  A beautiful graphing toolkit for Ruby
 SciRuby
 Glean  A data management tool for humans
 Bioruby
 Arel
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
R
GeneralPurpose Machine Learning
 ahaz  ahaz: Regularization for semiparametric additive hazards regression
 arules  arules: Mining Association Rules and Frequent Itemsets
 bigrf  bigrf: Big Random Forests: Classification and Regression Forests for Large Data Sets
 bigRR  bigRR: Generalized Ridge Regression (with special advantage for p >> n cases)
 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.
 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
 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
 fpc  fpc: Flexible procedures for clustering
 frbs  frbs: Fuzzy Rulebased Systems for Classification and Regression Tasks
 GAMBoost  GAMBoost: Generalized linear and additive models by likelihood based boosting
 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
 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
 Introduction to Statistical Learning
 ipred  ipred: Improved Predictors
 kernlab  kernlab: Kernelbased Machine Learning Lab
 klaR  klaR: Classification and visualization
 lars  lars: Least Angle Regression, Lasso and Forward Stagewise
 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
 mboost  mboost: ModelBased Boosting
 medley  medley: Blending regression models, using a greedy stepwise approach
 mlr  mlr: Machine Learning in R
 mvpart  mvpart: Multivariate partitioning
 ncvreg  ncvreg: Regularization paths for SCAD and MCPpenalized regression models
 nnet  nnet: Feedforward Neural Networks and Multinomial LogLinear Models
 oblique.tree  oblique.tree: Oblique Trees for Classification Data
 pamr  pamr: Pam: prediction analysis for microarrays
 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
 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
 REEMtree  REEMtree: Regression Trees with Random Effects for Longitudinal (Panel) Data
 relaxo  relaxo: Relaxed Lasso
 rgenoud  rgenoud: R version of GENetic Optimization Using Derivatives
 rgp  rgp: R genetic programming framework
 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
 ROCR  ROCR: Visualizing the performance of scoring classifiers
 RoughSets  RoughSets: Data Analysis Using Rough Set and Fuzzy Rough Set Theories
 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
 SDDA  SDDA: Stepwise Diagonal Discriminant Analysis
 SuperLearner and subsemble  Multialgorithm ensemble learning packages.
 svmpath  svmpath: svmpath: the SVM Path algorithm
 tgp  tgp: Bayesian treed Gaussian process models
 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.
Data Analysis / Data Visualization
 ggplot2  A data visualization package based on the grammar of graphics.
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.
 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.
Data Analysis / Data Visualization
 MLlib in Apache Spark  Distributed machine learning library in Spark
 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
 simmer  Reduce your data. A unix filter for algebirdpowered aggregation.
 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.
 Wolfe Declarative Machine Learning
GeneralPurpose Machine Learning
 Conjecture  Scalable Machine Learning in Scalding
 brushfire  decision trees and random forests for scalding
 ganitha  scalding powered machine learning
 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.
Swift
GeneralPurpose Machine Learning
 swix  A bare bones library that includes a general matrix language and wraps some OpenCV for iOS development.
Credits
 Some of the python libraries were cutandpasted from vinta
 The few go reference I found where pulled from this page