A free software, statistical machine translation engine that can be
used to train statistical models of text translation from a source
language to a target language
NiuTrans.SMT is an open-source statistical machine translation
system developed by a joint team from NLP Lab. at Northeastern
University and the NiuTrans Team. The NiuTrans system is fully developed
in C++ language.
naive-apl - Naive Bayesian Classifier implementation in APL. [Deprecated]
C
General-Purpose 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 scikit-learn 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 dependencies 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.
libonnx - A lightweight, portable pure C99 onnx inference engine for embedded devices with hardware acceleration support.
Computer Vision
CCV - C-based/Cached/Core Computer Vision Library, A Modern Computer Vision Library.
VLFeat - VLFeat is an open and portable library of computer vision algorithms, which has a Matlab toolbox.
C++
Computer Vision
DLib - DLib has C++ and Python interfaces for face detection and training general object detectors.
EBLearn - Eblearn is an object-oriented 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
genertic cross-platform C++ computer vision and machine learning library
for volumes of arbitrary dimensionality with Python bindings.
Openpose - A real-time multi-person keypoint detection library for body, face, hands, and foot estimation
General-Purpose Machine Learning
BanditLib - A simple Multi-armed 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
multi-GPU) computation.
CNTK - The
Computational Network Toolkit (CNTK) by Microsoft Research, is a unified
deep-learning 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 highly-modular C++ machine learning library for embedded electronics and robotics.
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.
MXNet -
Lightweight, Portable, Flexible Distributed/Mobile Deep Learning with
Dynamic, Mutation-aware Dataflow Dep Scheduler; for Python, R, Julia,
Go, Javascript and more.
ParaMonte - A
general-purpose library with C/C++ interface for Bayesian data analysis
and visualization via serial/parallel Monte Carlo and MCMC simulations.
Documentation can be found here.
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, feature-rich open-source C++ machine learning library.
Stan - A probabilistic programming language implementing full Bayesian statistical inference with Hamiltonian Monte Carlo sampling.
Timbl
- A software package/C++ library implementing several memory-based
learning algorithms, among which IB1-IG, an implementation of k-nearest
neighbor classification, and IGTree, a decision-tree approximation of
IB1-IG. Commonly used for NLP.
LKYDeepNN - A header-only C++11 Neural Network library. Low dependency, native traditional chinese document.
xLearn - A high
performance, easy-to-use, and scalable machine learning package, which
can be used to solve large-scale machine learning problems. xLearn is
especially useful for solving machine learning problems on large-scale
sparse data, which is very common in Internet services such as online
advertising 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 networks, has C-interface, 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.
Hopsworks -
A data-intensive platform for AI with the industry's first open-source
feature store. The Hopsworks Feature Store provides both a feature
warehouse for training and batch based on Apache Hive and a feature
serving database, based on MySQL Cluster, for online applications.
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 Charniak-Johnson parser).
colibri-core -
C++ library, command line tools, and Python binding for extracting and
working with basic linguistic constructions such as n-grams and
skipgrams in a quick and memory-efficient 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 -
Memory-based NLP suite developed for Dutch: PoS tagger, lemmatiser,
dependency parser, NER, shallow parser, morphological analyzer.
ucto - Unicode-aware regular-expression 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
object-oriented 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 cross-platform, open-source, C++ machine
learning library designed for real-time gesture recognition.
cl-random-forest - Implementation of Random Forest in Common Lisp.
Clojure
Natural Language Processing
Clojure-openNLP - Natural Language Processing in Clojure (opennlp).
Infections-clj - Rails-like inflection library for Clojure and ClojureScript.
General-Purpose Machine Learning
tech.ml - A
machine learning platform based on tech.ml.dataset, supporting not just
ml algorithms, but also relevant ETL processing; wraps multiple machine
learning libraries
clj-ml - A machine learning library for Clojure built on top of Weka and friends.
Geni - a Clojure dataframe library that runs on Apache Spark
Data Visualization
Hanami :
Clojure(Script) library and framework for creating interactive
visualization applications based in Vega-Lite (VGL) and/or Vega (VG)
specifications. Automatic framing and layouts along with a powerful
templating system for abstracting visualization specs
Saite -
Clojure(Script) client/server application for dynamic interactive
explorations and the creation of live shareable documents capturing them
using Vega/Vega-Lite, CodeMirror, markdown, and LaTeX
Oz - Data visualisation using Vega/Vega-Lite and Hiccup, and a live-reload platform for literate-programming
Envision - Clojure Data Visualisation library, based on Statistiker and D3.
Pink Gorilla Notebook - A Clojure/Clojurescript notebook application/-library based on Gorilla-REPL
clojupyter - A Jupyter kernel for Clojure - run Clojure code in Jupyter Lab, Notebook and Console.
notespace - Notebook experience in your Clojure namespace
Delight - A listener that streams your spark events logs to delight, a free and improved spark UI
Interop
Java Interop - Clojure has Native Java Interop from which Java's ML ecosystem can be accessed
JavaScript Interop - ClojureScript has Native JavaScript Interop from which JavaScript's ML ecosystem can be accessed
neural-fortran - A parallel neural net microframework.
Read the paper here.
Data Analysis / Data Visualization
ParaMonte - A
general-purpose Fortran library for Bayesian data analysis and
visualization via serial/parallel Monte Carlo and MCMC simulations.
Documentation can be found here.
hopfield-networks - 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.
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 Word Segmenter - Tokenization of raw text is a standard pre-processing 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 English Tokenizer - Stanford Phrasal is a state-of-the-art statistical phrase-based 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.
Twitter Text Java - A Java implementation of Twitter's text processing library.
MALLET - A
Java-based 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 open-source natural language processing system for
information extraction from electronic medical record clinical
free-text.
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 illinois-core-utilities
which provides a set of NLP-friendly data structures and a number of
NLP-related utilities that support writing NLP applications, running
experiments, etc, illinois-edison a library for feature extraction from illinois-core-utilities data structures and many other packages.
General-Purpose 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.
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 real-time large-scale machine learning.
Samoa
SAMOA is a framework that includes distributed machine learning for
data streams with an interface to plug-in 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.
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.
Nivo - built on top of the awesome d3 and Reactjs libraries
General-Purpose 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 - K-means, fuzzy c-means and agglomerative clustering.
Gaussian Mixture Model - Unsupervised machine learning with multivariate Gaussian mixture model.
Pavlov.js - Reinforcement learning using Markov Decision Processes.
MXNet -
Lightweight, Portable, Flexible Distributed/Mobile Deep Learning with
Dynamic, Mutation-aware 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).
xgboost-node - Run XGBoost model and make predictions in Node.js.
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]
simple-statistics
- 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.
regression-js - A javascript library containing a collection of least squares fitting methods for finding a trend in a set of data.
NMF - A Julia package for non-negative 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, Mutation-aware 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.
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.
torchnet -
framework for torch which provides a set of abstractions aiming at
encouraging code re-use 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 object-oriented design patterns. [Deprecated]
optim - An optimization library for Torch. SGD, Adagrad, Conjugate-Gradient, LBFGS, RProp and more.
unsup - A package for
unsupervised learning in Torch. Provides modules that are compatible
with nn (LinearPsd, ConvPsd, AutoEncoder, ...), and self-contained
algorithms (k-means, PCA). [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, kernel-weighted average, local linear regression smoothers. [Deprecated]
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 state-of-the-art generic dense feature extractor. [Deprecated]
wav2letter - a simple and efficient end-to-end Automatic Speech Recognition (ASR) system from Facebook AI Research.
Curvelets
- The Curvelet transform is a higher dimensional generalization of the
Wavelet transform designed to represent images at different scales and
different angles.
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 drop-in replacement of grid
search. Optunity is written in Python but interfaces seamlessly with
MATLAB.
MXNet -
Lightweight, Portable, Flexible Distributed/Mobile Deep Learning with
Dynamic, Mutation-aware 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, K-Means, etc.) with code examples and
mathematics behind them being explained.
Data Analysis / Data Visualization
ParaMonte - A
general-purpose MATLAB library for Bayesian data analysis and
visualization via serial/parallel Monte Carlo and MCMC simulations.
Documentation can be found here.
matlab_bgl - MatlabBGL is a Matlab package for working with graphs.
gaimc - Efficient pure-Matlab 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.
General-Purpose Machine Learning
Accord-Framework
-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,
K-means, Gaussian Mixture models and general algorithms such as Ransac,
Cross-validation and Grid-Search for machine-learning 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 matrix-free Hessian- and Jacobian-vector products) for
machine learning and optimization applications. Operations can be nested
to any level, meaning that you can compute exact higher-order
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
- Multi-platform 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 customized solutions to
domain-specific 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 cross-platform open-source 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 feedback. The chat bots can even scrape the internet for
information to return in their output as well as to use for learning.
Vulpes - Deep belief and deep learning implementation written in F# and leverages CUDA GPU execution with Alea.cuBase.
MxNet.Sharp
- .NET Standard bindings for Apache MxNet with Imperative, Symbolic and
Gluon Interface for developing, training and deploying Machine Learning
models in C#. https://mxnet.tech-quantum.com/
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 everyday 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 feature-rich interactive shell for rapid development.
Objective C
General-Purpose Machine Learning
YCML - A Machine Learning framework for Objective-C 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 networks. It is
built on top of the Apple's Accelerate Framework, using vectorized
operations and hardware acceleration if available. [Deprecated]
MAChineLearning
- An Objective-C 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.
BPN-NeuralNetwork
- It implemented 3 layers of neural networks ( Input Layer, Hidden
Layer and Output Layer ) and it was named Back Propagation Neural
Networks (BPN). This network can be used in products recommendation,
user behavior analysis, data mining and data analysis. [Deprecated]
Multi-Perceptron-NeuralNetwork
- it implemented multi-perceptrons neural network (ニューラルネットワーク) based
on Back Propagation Neural Networks (BPN) and designed
unlimited-hidden-layers.
KRHebbian-Algorithm - It is a non-supervisor and self-learning algorithm (adjust the weights) in the neural network of Machine Learning. [Deprecated]
KRKmeans-Algorithm - It implemented K-Means clustering and classification algorithm. It could be used in data mining and image compression. [Deprecated]
KRFuzzyCMeans-Algorithm
- It implemented Fuzzy C-Means (FCM) the fuzzy clustering /
classification algorithm on Machine Learning. It could be used in data
mining and image compression. [Deprecated]
OCaml
General-Purpose Machine Learning
Oml - A general statistics and machine learning library.
GPR - Efficient Gaussian Process Regression in OCaml.
Libra-Tk - Algorithms for learning and inference with discrete probabilistic models.
PHP-ML - 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 high-level 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
Scikit-Image - A collection of algorithms for image processing in Python.
Scikit-Opt -
Swarm Intelligence in Python (Genetic Algorithm, Particle Swarm
Optimization, Simulated Annealing, Ant Colony Algorithm, Immune
Algorithm,Artificial Fish Swarm Algorithm in Python)
SimpleCV - An open
source computer vision framework that gives access to several
high-powered 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 recognizes and manipulates faces from Python or from the command line.
dockerface - Easy to install and use deep learning Faster R-CNN face detection for images and video in a docker container.
Detectron
- FAIR's software system that implements state-of-the-art object
detection algorithms, including Mask R-CNN. It is written in Python and
powered by the Caffe2 deep learning framework. [Deprecated]
detectron2
- FAIR's next-generation research platform for object detection and
segmentation. It is a ground-up 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 -
Python-tesseract is an optical character recognition (OCR) tool for
python. That is, it will recognize and "read" the text embedded in
images. Python-tesseract is a wrapper for Google's Tesseract-OCR Engine.
imutils - A
library containing 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 PyTorch-Based Framework for Deep Learning in Computer Vision.
neural-style-pt - A PyTorch implementation of Justin Johnson's neural-style (neural style transfer).
Detecto - Train and run a computer vision model with 5-10 lines of code.
neural-dream - A PyTorch implementation of DeepDream.
Openpose - A real-time multi-person keypoint detection library for body, face, hands, and foot estimation
Deep High-Resolution-Net - A PyTorch implementation of CVPR2019 paper "Deep High-Resolution Representation Learning for Human Pose Estimation"
dream-creator
- A PyTorch implementation of DeepDream. Allows individuals to quickly
and easily train their own custom GoogleNet models with custom datasets
for DeepDream.
Lucent - Tensorflow and OpenAI Clarity's Lucid adapted for PyTorch.
lightly - Lightly is a computer vision framework for self-supervised learning.
Natural Language Processing
pkuseg-python - 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]
spammy - A library for email Spam filtering built on top of nltk
loso - Another Chinese segmentation library. [Deprecated]
genius - A Chinese segment based 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 Charniak-Johnson 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 white-box machine learning model for
text classification, called SS3. Since SS3 has the ability to visually
explain its rationale, this package also comes with easy-to-use
interactive visualizations tools (online demos).
python-ucto - Python binding to ucto (a unicode-aware rule-based tokenizer for various languages).
python-frog - Python binding to Frog, an NLP suite for Dutch. (pos tagging, lemmatisation, dependency parsing, NER)
python-zpar - Python bindings for ZPar, a statistical part-of-speech-tagger, constituency parser, and dependency parser for English.
colibri-core -
Python binding to C++ library for extracting and working with basic
linguistic constructions such as n-grams and skipgrams in a quick and
memory-efficient 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]
PyTorch Geometric Temporal -> A temporal extension of PyTorch Geometric for dynamic graph representation learning.
Little Ball of Fur -> A graph sampling extension library for NetworkX with a Scikit-Learn like API.
Karate Club -> An unsupervised machine learning extension library for NetworkX with a Scikit-Learn 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 built-in
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 a very simple interface that enables clean
machine learning pipeline design.
steppy-toolkit
-> 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 deep-learning toolkit. Documentation can be found here.
Couler - Unified
interface for constructing and managing machine learning workflows on
different workflow engines, such as Argo Workflows, Tekton Pipelines,
and Apache Airflow.
auto_ml -
Automated machine learning for production and analytics. Lets you focus
on the fun parts of ML, while outputting production-ready 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 web-interface, and set of programmatic-interface
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.
Hydrosphere Mist - a service for deployment Apache Spark MLLib machine learning models as realtime, batch or reactive web services.
scikit-learn - A Python module for machine learning built on top of SciPy.
metric-learn - A Python module for metric learning.
SimpleAI
Python implementation of many of the artificial intelligence algorithms
described in 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.
graphlab-create
- A library with various machine learning models (regression,
clustering, recommender systems, graph analytics, etc.) implemented on
top of a disk-backed DataFrame.
CoverTree - Python implementation of cover trees, near-drop-in replacement for scipy.spatial.kdtree [Deprecated]
nilearn - Machine learning for NeuroImaging in Python.
neuropredict -
Aimed at novice machine learners and non-expert 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 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.
imbalanced-learn - Python module to perform under sampling and oversampling with various techniques.
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 explicit-duration Hidden semi-Markov Models (HSMMs), focusing
on the Bayesian Nonparametric extensions, the HDP-HMM and HDP-HSMM,
mostly with weak-limit approximations.
SKLL - A wrapper around scikit-learn that makes it simpler to conduct experiments.
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 GPU-meta-programming 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.
python-timbl -
A Python extension module wrapping the full TiMBL C++ programming
interface. Timbl is an elaborate k-Nearest Neighbours machine learning
toolkit.
Optunity
- A library dedicated to automated hyperparameter optimization with a
simple, lightweight API to facilitate drop-in replacement of grid
search.
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, Mutation-aware 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 higher-level API for TensorFlow.
REP - an IPython-based
environment for conducting data-driven research in a consistent and
reproducible way. REP is not trying to substitute scikit-learn, 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 scikit-learn API.
fuku-ml - 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 web-based application for quick, scalable, and automated hyperparameter tuning and stacked ensembling.
PyTorch - Tensors and Dynamic neural networks in Python with strong GPU acceleration
PyTorch Lightning - The lightweight PyTorch wrapper for high-performance AI research.
skorch - A scikit-learn compatible neural network library that wraps PyTorch.
ML-From-Scratch
- 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 multi-GPU) computation.
stacked_generalization - Implementation of machine learning stacking technique as a handy library in Python.
modAL - A modular active learning framework for Python, built on top of scikit-learn.
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, easy-to-use, and scalable machine learning package, which
can be used to solve large-scale machine learning problems. xLearn is
especially useful for solving machine learning problems on large-scale
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 scikit-learn.
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 graph-structured (network-structured) 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 real-time usage.
numpy-ML: Reference implementations of ML models written in numpy
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 high-performance machine learning research.
Catalyst -
High-level 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 - High-level wrapper built on the top of Pytorch which supports vision, text, tabular data and collaborative filtering.
scikit-multiflow - A machine learning framework for multi-output/multi-label and stream data.
Lightwood - A
Pytorch based framework that breaks down machine learning problems into
smaller blocks that can be glued together seamlessly with objective to
build predictive models with one line of code.
bayeso - A simple, but essential Bayesian optimization package, written in Python.
mljar-supervised
- An Automated Machine Learning (AutoML) python package for tabular
data. It can handle: Binary Classification, MultiClass Classification
and Regression. It provides explanations and markdown reports.
evostra - A fast Evolution Strategy implementation in Python.
Determined
- Scalable deep learning training platform, including integrated
support for distributed training, hyperparameter tuning, experiment
tracking, and model management.
PySyft - A Python library for secure and private Deep Learning built on PyTorch and TensorFlow.
PyGrid - Peer-to-peer network of data owners and data scientists who can collectively train AI models using PySyft
sktime - A unified framework for machine learning with time series
Data Analysis / Data Visualization
DataVisualization - A Github Repository Where you can Learn Datavisualizatoin Basics to Intermediate level.
Cartopy
- Cartopy is a Python package designed for geospatial data processing
in order to produce maps and other geospatial data analyses.
SciPy - A Python-based ecosystem of open-source 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
tensor-based framework for large-scale data computation which is often
regarded as a parallel and distributed version of NumPy.
NetworkX - A high-productivity software for complex networks.
igraph - binding to igraph library - General purpose graph library.
Pandas - A library providing high-performance, easy-to-use data structures and data analysis tools.
ParaMonte - A
general-purpose Python library for Bayesian data analysis and
visualization via serial/parallel Monte Carlo and MCMC simulations.
Documentation can be found here.
Open Mining - Business Intelligence (BI) in Python (Pandas web interface) [Deprecated]
SOMPY - Self Organizing Map written in Python (Uses neural networks for data analysis).
somoclu Massively parallel self-organizing 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]
scikit-plot - 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
multi-class confusion matrix library written in Python that supports
both input data vectors and direct matrix, and a proper tool for
post-classification 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 user-defined (Python) functions.
TensorWatch -
Debugging and visualization tool for machine learning and data science.
It extensively leverages Jupyter Notebook to show real-time
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
MiniGrad – A minimal, educational, Pythonic implementation of autograd (~100 loc).
Map/Reduce implementations of common ML algorithms:
Jupyter notebooks that cover how to implement from scratch different ML
algorithms (ordinary least squares, gradient descent, k-means,
alternating least squares), using Python NumPy, and how to then make
these implementations scalable using Map/Reduce and Spark.
BioPy - Biologically-Inspired and Machine Learning Algorithms in Python. [Deprecated]
SVM Explorer - Interactive SVM Explorer, using Dash and scikit-learn
group-lasso - 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(ISO--8859-1
configured) in Python.
mne-python-notebooks - IPython notebooks for EEG/MEG data processing using mne-python.
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 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.
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.
the-elements-of-statistical-learning - This repository contains Jupyter notebooks implementing the algorithms found in the book and summary of the textbook.
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 - Open-source software for robot simulation, integrated with OpenAI Gym.
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
General-Purpose Machine Learning
deeplearn-rs - deeplearn-rs 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.
rusty-machine - a pure-rust 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
General-Purpose 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 all-relevant feature selection.
elasticnet - elasticnet: Elastic-Net 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.
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 drop-in 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, Mutation-aware Dataflow Dep Scheduler; for Python, R, Julia,
Go, Javascript and more.
TDSP-Utilities
- 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
General-Purpose Machine Learning
Visual Data Mining and Machine Learning
- Interactive, automated, and programmatic modeling with the latest
machine learning algorithms in and end-to-end 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.
ML_Tables - Concise cheat sheets containing machine learning best practices.
enlighten-apply - Example code and materials that illustrate applications of SAS machine learning techniques.
enlighten-integration
- Example code and materials that illustrate techniques for integrating
SAS with other analytics technologies in Java, PMML, Python and R.
enlighten-deep - Example code and materials that illustrate using neural networks with several hidden layers in SAS.
dm-flow - 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 easy-to-use 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.
SwiftLearner - Simply written algorithms to help study ML or write your own implementations.
Smile - Statistical Machine Intelligence and Learning Engine.
doddle-model -
An in-memory machine learning library built on top of Breeze. It
provides immutable objects and exposes its functionality through a
scikit-learn-like API.
layer - Neural network inference from the command line, implemented in CHICKEN Scheme.
Swift
General-Purpose 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 next-generation 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.
Golden TensorFlow - A page of content on TensorFlow, including academic papers and links to related topics.
Tools
Neural Networks
layer - Neural network inference from the command line
Misc
CatalyzeX - Browser extension (Chrome and Firefox)
that automatically finds and shows code implementations for machine
learning papers anywhere: Google, Twitter, Arxiv, Scholar, etc.
ML Workspace
- All-in-one web-based 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 open-source 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 cross-platform
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 Chemistry/Biology. The community has
built multiple add-ons leveraging the proposed standard.
MLFlow - platform
to manage the ML lifecycle, including experimentation, reproducibility
and deployment. Framework and language agnostic, take a look at all the
built-in integrations.
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.
m2cgen - A
tool that allows the conversion of ML models into native code (Java, C,
Python, Go, JavaScript, Visual Basic, C#, R, PowerShell, PHP, Dart) with
zero dependencies.
CML - A library for
doing continuous integration with ML projects. Use GitHub Actions &
GitLab CI to train and evaluate models in production like environments
and automatically generate visual reports with metrics and graphs in
pull/merge requests. Framework & language agnostic.
Pythonizr - An online tool to generate boilerplate machine learning code that uses scikit-learn.