Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

awesome-machine-learning

A curated list of awesome Machine Learning frameworks, libraries and software.
https://github.com/josephmisiti/awesome-machine-learning

Last synced: 2 days ago
JSON representation

  • JavaScript

    • [Tools](#tools-1)

      • Rock Paper Scissors - Rock Paper Scissors trained in the browser with TensorFlow.js
      • mil-tokyo - List of several machine learning libraries.
      • Twitter-text - A JavaScript implementation of Twitter's text processing library.
      • Knwl.js - A Natural Language Processor in JS.
      • D3.js
      • High Charts
      • NVD3.js
      • chartjs
      • dimple
      • amCharts
      • Sigma.js - JavaScript library dedicated to graph drawing.
      • C3.js - customizable library based on D3.js for easy chart drawing.
      • Datamaps - Customizable SVG map/geo visualizations using D3.js. **[Deprecated]**
      • ZingChart - library written on Vanilla JS for big data visualization.
      • cheminfo - Platform for data visualization and analysis, using the [visualizer](https://github.com/npellet/visualizer) project.
      • Learn JS Data
      • AnyChart
      • FusionCharts
      • Nivo - built on top of the awesome d3 and Reactjs libraries
      • Convnet.js - ConvNetJS is a JavaScript library for training Deep Learning models[DEEP LEARNING] **[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.
      • TensorFlow.js - A WebGL accelerated, browser based JavaScript library for training and deploying ML models.
      • NSFWJS - Indecent content checker with TensorFlow.js
      • Rock Paper Scissors - Rock Paper Scissors trained in the browser with TensorFlow.js
      • Heroes Wear Masks - A fun TensorFlow.js-based oracle that tells, whether one wears a face mask or not. It can even tell when one wears the mask incorrectly.
      • NVD3.js
      • TensorFlow.js - A WebGL accelerated, browser based JavaScript library for training and deploying ML models.
      • Netron - Visualizer for machine learning models.
      • WebNN - A new web standard that allows web apps and frameworks to accelerate deep neural networks with on-device hardware such as GPUs, CPUs, or purpose-built AI accelerators.
  • R

    • General-Purpose Machine Learning

      • RWeka - RWeka: R/Weka interface.
      • 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.
      • bst - bst: Gradient Boosting.
      • C50 - C50: C5.0 Decision Trees and Rule-Based Models.
      • caret - Classification and Regression Training: Unified interface to ~150 ML algorithms in R.
      • caretEnsemble - caretEnsemble: Framework for fitting multiple caret models as well as creating ensembles of such models. **[Deprecated]**
      • Clever Algorithms For Machine Learning
      • CORElearn - CORElearn: Classification, regression, feature evaluation and ordinal evaluation.
      • CoxBoost - CoxBoost: Cox models by likelihood based boosting for a single survival endpoint or competing risks **[Deprecated]**
      • Cubist - Cubist: Rule- and Instance-Based Regression Modelling.
      • e1071 - e1071: Misc Functions of the Department of Statistics (e1071), TU Wien
      • earth - earth: Multivariate Adaptive Regression Spline Models
      • 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.
      • fpc - fpc: Flexible procedures for clustering.
      • frbs - frbs: Fuzzy Rule-based Systems for Classification and Regression Tasks. **[Deprecated]**
      • GAMBoost - GAMBoost: Generalized linear and additive models by likelihood based boosting. **[Deprecated]**
      • gamboostLSS - gamboostLSS: Boosting Methods for GAMLSS.
      • gbm - gbm: Generalized Boosted Regression Models.
      • glmnet - glmnet: Lasso and elastic-net regularized generalized linear models.
      • glmpath - glmpath: L1 Regularization Path for Generalized Linear Models and Cox Proportional Hazards Model.
      • GMMBoost - GMMBoost: Likelihood-based Boosting for Generalized mixed models. **[Deprecated]**
      • grplasso - grplasso: Fitting user specified models with Group Lasso penalty.
      • grpreg - grpreg: Regularization paths for regression models with grouped covariates.
      • h2o - A framework for fast, parallel, and distributed machine learning algorithms at scale -- Deeplearning, Random forests, GBM, KMeans, PCA, GLM.
      • hda - hda: Heteroscedastic Discriminant Analysis. **[Deprecated]**
      • Introduction to Statistical Learning
      • ipred - ipred: Improved Predictors.
      • kernlab - kernlab: Kernel-based Machine Learning Lab.
      • klaR - klaR: Classification and visualization.
      • L0Learn - L0Learn: Fast algorithms for best subset selection.
      • lars - lars: Least Angle Regression, Lasso and Forward Stagewise. **[Deprecated]**
      • lasso2 - lasso2: L1 constrained estimation aka ‘lasso’.
      • LiblineaR - LiblineaR: Linear Predictive Models Based On The Liblinear C/C++ Library.
      • LogicReg - LogicReg: Logic Regression.
      • maptree - maptree: Mapping, pruning, and graphing tree models. **[Deprecated]**
      • mboost - mboost: Model-Based Boosting.
      • medley - medley: Blending regression models, using a greedy stepwise approach.
      • mlr - mlr: Machine Learning in R.
      • ncvreg - ncvreg: Regularization paths for SCAD- and MCP-penalized regression models.
      • nnet - nnet: Feed-forward Neural Networks and Multinomial Log-Linear Models. **[Deprecated]**
      • pamr - pamr: Pam: prediction analysis for microarrays. **[Deprecated]**
      • party - party: A Laboratory for Recursive Partitioning
      • partykit - partykit: A Toolkit for Recursive Partitioning.
      • penalized - penalized: L1 (lasso and fused lasso) and L2 (ridge) penalized estimation in GLMs and in the Cox model.
      • penalizedLDA - penalizedLDA: Penalized classification using Fisher's linear discriminant. **[Deprecated]**
      • penalizedSVM - penalizedSVM: Feature Selection SVM using penalty functions.
      • quantregForest - quantregForest: Quantile Regression Forests.
      • randomForest - randomForest: Breiman and Cutler's random forests for classification and regression.
      • randomForestSRC - randomForestSRC: Random Forests for Survival, Regression and Classification (RF-SRC).
      • rattle - rattle: Graphical user interface for data mining in R.
      • rda - rda: Shrunken Centroids Regularized Discriminant Analysis.
      • rdetools - rdetools: Relevant Dimension Estimation (RDE) in Feature Spaces. **[Deprecated]**
      • REEMtree - REEMtree: Regression Trees with Random Effects for Longitudinal (Panel) Data. **[Deprecated]**
      • relaxo - relaxo: Relaxed Lasso. **[Deprecated]**
      • rgenoud - rgenoud: R version of GENetic Optimization Using Derivatives
      • Rmalschains - Rmalschains: Continuous Optimization using Memetic Algorithms with Local Search Chains (MA-LS-Chains) in R.
      • rminer - rminer: Simpler use of data mining methods (e.g. NN and SVM) in classification and regression. **[Deprecated]**
      • ROCR - ROCR: Visualizing the performance of scoring classifiers. **[Deprecated]**
      • RoughSets - RoughSets: Data Analysis Using Rough Set and Fuzzy Rough Set Theories. **[Deprecated]**
      • rpart - rpart: Recursive Partitioning and Regression Trees.
      • RPMM - RPMM: Recursively Partitioned Mixture Model.
      • RSNNS - RSNNS: Neural Networks in R using the Stuttgart Neural Network Simulator (SNNS).
      • RXshrink - RXshrink: Maximum Likelihood Shrinkage via Generalized Ridge or Least Angle Regression.
      • sda - sda: Shrinkage Discriminant Analysis and CAT Score Variable Selection. **[Deprecated]**
      • spectralGraphTopology - spectralGraphTopology: Learning Graphs from Data via Spectral Constraints.
      • svmpath - svmpath: svmpath: the SVM Path algorithm. **[Deprecated]**
      • tgp - tgp: Bayesian treed Gaussian process models. **[Deprecated]**
      • tree - tree: Classification and regression trees.
      • varSelRF - varSelRF: Variable selection using random forests.
      • XGBoost.R - R binding for eXtreme Gradient Boosting (Tree) Library.
      • 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.
      • 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
      • tm
      • shiny
      • MXNet - Lightweight, Portable, Flexible Distributed/Mobile Deep Learning with Dynamic, Mutation-aware Dataflow Dep Scheduler; for Python, R, Julia, Go, JavaScript and more.
      • 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.
      • tm
  • Table of Contents

  • C

    • [Tools](#tools-1)

      • VLFeat - VLFeat is an open and portable library of computer vision algorithms, which has a Matlab toolbox.
      • 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.
      • 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++

    • [Tools](#tools-1)

      • 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.
      • Speedster - Automatically apply SOTA optimization techniques to achieve the maximum inference speed-up on your hardware. [DEEP LEARNING]
      • CUDA - This is a fast C++/CUDA implementation of convolutional [DEEP LEARNING]
      • 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.
      • igraph - General purpose graph library.
      • MLDB - The Machine Learning Database is a database designed for machine learning. Send it commands over a RESTful API to store data, explore it using SQL, then train machine learning models and expose them as APIs.
      • mlpack - A scalable C++ machine learning library.
      • PyCUDA - Python interface to CUDA
      • ROOT - A modular scientific software framework. It provides all the functionalities needed to deal with big data processing, statistical analysis, visualization and storage.
      • shark - A fast, modular, feature-rich open-source C++ machine learning library.
      • sofia-ml - Suite of fast incremental algorithms.
      • Stan - A probabilistic programming language implementing full Bayesian statistical inference with Hamiltonian Monte Carlo sampling.
      • 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.
      • QuestDB - A relational column-oriented database designed for real-time analytics on time series and event data.
      • Phoenix
      • CRFsuite - CRFsuite is an implementation of Conditional Random Fields (CRFs) for labeling sequential data. **[Deprecated]**
      • 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".
      • 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
      • 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.
      • 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.
      • 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.
      • Truss - An open source framework for packaging and serving ML models.
      • CUDA - This is a fast C++/CUDA implementation of convolutional [DEEP LEARNING]
  • Clojure

    • [Tools](#tools-1)

      • Touchstone - Clojure A/B testing library.
      • MXNet - Bindings to Apache MXNet - part of the MXNet project
      • Incanter - Incanter is a Clojure-based, R-like platform for statistical computing and graphics.
      • Pink Gorilla Notebook - A Clojure/Clojurescript notebook application/-library based on Gorilla-REPL
      • 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
      • Neanderthal - Fast Clojure Matrix Library (native CPU, GPU, OpenCL, CUDA)
      • Scicloj - Curated list of ML related resources for Clojure.
  • Fortran

    • [Tools](#tools-1)

  • Go

    • [Tools](#tools-1)

      • word-embedding - Word Embeddings: the full implementation of word2vec, GloVe in Go.
      • go-ml-transpiler - An open source Go transpiler for machine learning models.
      • gorse - An offline recommender system backend based on collaborative filtering written in Go.
      • gonum/mat - A linear algebra package for Go.
      • gonum/optimize - Implementations of optimization algorithms.
      • gonum/plot - A plotting library.
      • gonum/stat - A statistics library.
      • glot - Glot is a plotting library for Golang built on top of gnuplot.
      • gonum/graph - General-purpose graph library.
      • gorse - An offline recommender system backend based on collaborative filtering written in Go.
      • paicehusk - Golang implementation of the Paice/Husk Stemming Algorithm. *[Deprecated]*
  • Java

    • [Tools](#tools-1)

      • Cortical.io - Retina: an API performing complex NLP operations (disambiguation, classification, streaming text filtering, etc...) as quickly and intuitively as the brain.
      • IRIS - [Cortical.io's](https://cortical.io) FREE NLP, Retina API Analysis Tool (written in JavaFX!) - [See the Tutorial Video](https://www.youtube.com/watch?v=CsF4pd7fGF0).
      • 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 Part-Of-Speech 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 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 Phrasal: A Phrase-Based Translation System
      • 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 modelling, 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.
      • 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.
      • AMIDST Toolbox - A Java Toolbox for Scalable Probabilistic Machine Learning.
      • 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 trainings 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.
      • Meka - An open source implementation of methods for multi-label classification and evaluation (extension to Weka).
      • Neuroph - Neuroph is lightweight Java neural network framework.
      • Samoa - in different stream processing platforms.
      • RankLib - RankLib is a library of learning to rank algorithms. **[Deprecated]**
      • 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.
      • SystemML - flexible, scalable machine learning (ML) language.
      • Tribou - a machine learning library written in Java by Oracle.
      • Weka - Weka is a collection of machine learning algorithms for data mining tasks.
      • CMU Sphinx - Open Source Toolkit For Speech Recognition purely based on Java speech recognition library.
      • Storm - Storm is a distributed realtime computation system.
      • DataMelt - Mathematics software for numeric computation, statistics, symbolic calculations, data analysis and data visualization.
      • Keras Beginner Tutorial - Friendly guide on using Keras to implement a simple Neural Network in Python.
      • ORYX - Lambda Architecture Framework using Apache Spark and Apache Kafka with a specialization for real-time large-scale machine learning.
  • Julia

    • [Tools](#tools-1)

      • Mixed Models - A Julia package for fitting (statistical) mixed-effects models.
      • GLMNet - Julia wrapper for fitting Lasso/ElasticNet GLM models using glmnet.
      • Flux - Relax! Flux is the ML library that doesn't make you tensor
      • LightGraphs - Graph modelling and analysis.
      • RDataSets - Julia package for loading many of the data sets available in R.
  • Lua

    • [Tools](#tools-1)

      • Torch7
      • cephes - Cephes mathematical functions library, wrapped for Torch. Provides and wraps the 180+ special mathematical functions from the Cephes mathematical library, developed by Stephen L. Moshier. It is used, among many other places, at the heart of SciPy. **[Deprecated]**
      • autograd - Autograd automatically differentiates native Torch code. Inspired by the original Python version.
      • randomkit - Numpy's randomkit, wrapped for Torch. **[Deprecated]**
      • torchnet - framework for torch which provides a set of abstractions aiming at encouraging code re-use as well as encouraging modular programming.
      • wav2letter - a simple and efficient end-to-end Automatic Speech Recognition (ASR) system from Facebook AI Research.
      • Numeric Lua
      • Lunatic Python
      • SciLua
      • Lua - Numerical Algorithms
      • SciLua
      • autograd - Autograd automatically differentiates native Torch code. Inspired by the original Python version.
      • Numeric Lua
      • Numeric Lua
  • Matlab

    • [Tools](#tools-1)

      • Convolutional-Recursive Deep Learning for 3D Object Classification - Convolutional-Recursive Deep Learning for 3D Object Classification[DEEP LEARNING].
      • 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.
      • NLP - A NLP library for Matlab.
      • 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.
      • MXNet - Lightweight, Portable, Flexible Distributed/Mobile Deep Learning with Dynamic, Mutation-aware Dataflow Dep Scheduler; for Python, R, Julia, Go, JavaScript and more.
      • 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.
      • gaimc - Efficient pure-Matlab implementations of graph algorithms to complement MatlabBGL's mex functions.
      • Shearlets - MATLAB code for shearlet transform.
  • .NET

    • [Tools](#tools-1)

      • 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.
      • Accord-Framework - The Accord.NET Framework is a complete framework for building machine learning, computer vision, computer audition, signal processing and statistical applications.
      • 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/
      • 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.
  • OCaml

    • General-Purpose Machine Learning

      • Libra-Tk - Algorithms for learning and inference with discrete probabilistic models.
  • Perl

  • Perl 6

  • PHP

    • General-Purpose Machine Learning

      • Rubix ML - A high-level machine learning (ML) library that lets you build programs that learn from data using the PHP language.
  • Python

    • General-Purpose Machine Learning

      • 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.
      • 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.
      • 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.
      • Self-supervised learning
      • OpenVisionAPI - Open source computer vision API based on open source models.
      • timm - PyTorch image models, scripts, pretrained weights -- ResNet, ResNeXT, EfficientNet, EfficientNetV2, NFNet, Vision Transformer, MixNet, MobileNet-V3/V2, RegNet, DPN, CSPNet, and more.
      • NLTK - A leading platform for building Python programs to work with human language data.
      • 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.
      • KoNLPy - A Python package for Korean natural language processing.
      • BLLIP Parser - Python bindings for the BLLIP Natural Language Parser (also known as the Charniak-Johnson parser). **[Deprecated]**
      • editdistance - fast implementation of edit distance.
      • DeepPavlov - conversational AI library with many pre-trained Russian NLP models.
      • DL Translate - A deep learning-based translation library between 50 languages, built with `transformers`.
      • ML/DL project template
      • 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.
      • Apache SINGA - An Apache Incubating project for developing an open source machine learning library.
      • MLlib in Apache Spark - Distributed machine learning library in Spark
      • Towhee - A Python module that encode unstructured data into embeddings.
      • scikit-learn - A Python module for machine learning built on top of SciPy.
      • metric-learn - A Python module for metric learning.
      • 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.
      • BigML - A library that contacts external servers.
      • gensim - Topic Modelling for Humans.
      • Surprise - A scikit for building and analyzing recommender systems.
      • implicit - Fast Python Collaborative Filtering for Implicit Datasets.
      • LightFM - A Python implementation of a number of popular recommendation algorithms for both implicit and explicit feedback.
      • imbalanced-learn - Python module to perform under sampling and oversampling with various techniques.
      • Orange - Open source data visualization and data analysis for novices and experts.
      • PyTorch Lightning - The lightweight PyTorch wrapper for high-performance AI research.
      • PyTorch Lightning Bolts - Toolbox of models, callbacks, and datasets for AI/ML researchers.
      • Edward - A library for probabilistic modelling, inference, and criticism. Built on top of TensorFlow.
      • Microsoft Recommenders
      • 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
      • Hub - Fastest unstructured dataset management for TensorFlow/PyTorch. Stream & version-control data. Store even petabyte-scale data in a single numpy-like array on the cloud accessible on any machine. Visit [activeloop.ai](https://activeloop.ai) for more info.
      • FEDOT - modal datasets).
      • AutoGluon - Series, and MultiModal Data.
      • Frouros
      • 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.
      • Numba - Python JIT (just in time) compiler to LLVM aimed at scientific Python by the developers of Cython and 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.
      • PyDy - Short for Python Dynamics, used to assist with workflow in the modelling of dynamic motion based around NumPy, SciPy, IPython, and matplotlib.
      • astropy - A community Python library for Astronomy.
      • matplotlib - A Python 2D plotting library.
      • plotly - Collaborative web plotting for Python and matplotlib.
      • pygal - A Python SVG Charts Creator.
      • pycascading
      • cerebro2 - based visualization and debugging platform for NuPIC. **[Deprecated]**
      • Seaborn - A python visualization library based on matplotlib.
      • bqplot - An API for plotting in Jupyter (IPython).
      • Superset - A data exploration platform designed to be visual, intuitive, and interactive.
      • Ruffus - Computation Pipeline library for python.
      • numpic
      • A gallery of interesting IPython notebooks
      • Python Programming for the Humanities - Course for Python programming for the Humanities, assuming no prior knowledge. Heavy focus on text processing / NLP.
      • Optunity examples - Examples demonstrating how to use Optunity in synergy with machine learning libraries.
      • Dive into Machine Learning with Python Jupyter notebook and scikit-learn - "I learned Python by hacking first, and getting serious *later.* I wanted to do this with Machine Learning. If this is your style, join me in getting a bit ahead of yourself."
      • Practical XGBoost in Python - comprehensive online course about using XGBoost in Python.
      • Machine Learning, Data Science and Deep Learning with Python - LiveVideo course that covers machine learning, Tensorflow, artificial intelligence, and neural networks.
      • TResNet: High Performance GPU-Dedicated Architecture - TResNet models were designed and optimized to give the best speed-accuracy tradeoff out there on GPUs.
      • Jina AI
      • Tensorflow-Federated
      • open-solution-home-credit - > source code and [experiments results](https://app.neptune.ml/neptune-ml/Home-Credit-Default-Risk) for [Home Credit Default Risk](https://www.kaggle.com/c/home-credit-default-risk).
      • open-solution-googleai-object-detection - > source code and [experiments results](https://app.neptune.ml/neptune-ml/Google-AI-Object-Detection-Challenge) for [Google AI Open Images - Object Detection Track](https://www.kaggle.com/c/google-ai-open-images-object-detection-track).
      • open-solution-salt-identification - > source code and [experiments results](https://app.neptune.ml/neptune-ml/Salt-Detection) for [TGS Salt Identification Challenge](https://www.kaggle.com/c/tgs-salt-identification-challenge).
      • open-solution-ship-detection - > source code and [experiments results](https://app.neptune.ml/neptune-ml/Ships) for [Airbus Ship Detection Challenge](https://www.kaggle.com/c/airbus-ship-detection).
      • open-solution-data-science-bowl-2018 - > source code and [experiments results](https://app.neptune.ml/neptune-ml/Data-Science-Bowl-2018) for [2018 Data Science Bowl](https://www.kaggle.com/c/data-science-bowl-2018).
      • open-solution-value-prediction - > source code and [experiments results](https://app.neptune.ml/neptune-ml/Santander-Value-Prediction-Challenge) for [Santander Value Prediction Challenge](https://www.kaggle.com/c/santander-value-prediction-challenge).
      • open-solution-toxic-comments - > source code for [Toxic Comment Classification Challenge](https://www.kaggle.com/c/jigsaw-toxic-comment-classification-challenge).
      • 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.
      • 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.
      • Coach - Reinforcement Learning Coach by Intel® AI Lab enables easy experimentation with state of the art Reinforcement Learning algorithms
      • metaworld - An open source robotics benchmark for meta- and multi-task reinforcement learning
      • acme - An Open Source Distributed Framework for Reinforcement Learning that makes build and train your agents easily.
      • Spinning Up - An educational resource designed to let anyone learn to become a skilled practitioner in deep reinforcement learning
      • 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.
      • numpic
      • gensim - Topic Modelling for Humans.
      • Orange - Open source data visualization and data analysis for novices and experts.
      • sktime - A unified framework for machine learning with time series
      • AutoGluon - Series, and MultiModal Data.
      • SciPy - A Python-based ecosystem of open-source software for mathematics, science, and engineering.
      • NetworkX - A high-productivity software for complex networks.
      • plotly - Collaborative web plotting for Python and matplotlib.
      • bqplot - An API for plotting in Jupyter (IPython).
      • 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.
      • XAD - > Fast and easy-to-use backpropagation tool.
      • deap - Evolutionary algorithm framework.
  • Ruby

    • General-Purpose Machine Learning

      • ruby-plot - gnuplot wrapper for Ruby, especially for plotting ROC curves into SVG files. **[Deprecated]**
      • Awesome NLP with Ruby - Curated link list for practical natural language processing in Ruby.
      • Raspell - raspell is an interface binding for ruby. **[Deprecated]**
      • Twitter-text-rb - A library that does auto linking and extraction of usernames, lists and hashtags in tweets.
      • Awesome Machine Learning with Ruby - Curated list of ML related resources for Ruby.
      • SciRuby
  • SAS

    • General-Purpose Machine Learning

      • 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.
      • 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.
      • Contextual Analysis - Add structure to unstructured text using a GUI.
      • Sentiment Analysis - Extract sentiment from text using a GUI.
      • Text Miner - Text mining using a GUI or code.
      • ML_Tables - Concise cheat sheets containing machine learning best practices.
      • University Edition - FREE! Includes all SAS packages necessary for data analysis and visualization, and includes online SAS courses.
      • Factory Miner - Automatically creates deployable machine learning models across numerous market or customer segments using a GUI.
  • Scala

    • General-Purpose Machine Learning

      • ScalaNLP - ScalaNLP is a suite of machine learning and numerical computing libraries.
      • Spark Notebook - Interactive and Reactive Data Science using Scala and Spark.
      • Microsoft ML for Apache Spark - > A distributed machine learning framework Apache Spark
      • DeepLearning.scala - Creating statically typed dynamic neural networks from object-oriented & functional programming constructs.
      • brushfire - Distributed decision tree ensemble learning in Scala.
      • Figaro - a Scala library for constructing probabilistic models.
      • DynaML - Scala Library/REPL for Machine Learning Research.
      • FlinkML in Apache Flink - Distributed machine learning library in Flink.
      • MLlib in Apache Spark - Distributed machine learning library in Spark
      • Smile - Statistical Machine Intelligence and Learning Engine.
      • Flink - Open source platform for distributed stream and batch data processing.
  • 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.
      • 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.
      • 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...
      • Awesome Core ML Models - A curated list of machine learning models in CoreML format.
  • TensorFlow

    • General-Purpose Machine Learning

      • Awesome TensorFlow - A list of all things related to TensorFlow.
      • Golden TensorFlow - A page of content on TensorFlow, including academic papers and links to related topics.
      • Golden TensorFlow - A page of content on TensorFlow, including academic papers and links to related topics.
  • Tools

    • General-Purpose Machine Learning

      • Synthical - AI-powered collaborative research environment. You can use it to get recommendations of articles based on reading history, simplify papers, find out what articles are trending, search articles by meaning (not just keywords), create and share folders of articles, see lists of articles from specific companies and universities, and add highlights.
      • Humanloop
      • Qdrant
      • milvus - io/milvus) vector database for production AI, written in Go and C++, scalable and blazing fast for billions of embedding vectors.
      • Weaviate - technologies/weaviate) vector search engine and vector database. Weaviate uses machine learning to vectorize and store data, and to find answers to natural language queries. With Weaviate you can also bring your custom ML models to production scale.
      • MLReef - MLReef is an end-to-end development platform using the power of git to give structure and deep collaboration possibilities to the ML development process.
      • Pinecone - Vector database for applications that require real-time, scalable vector embedding and similarity search.
      • CatalyzeX - Browser extension ([Chrome](https://chrome.google.com/webstore/detail/code-finder-for-research/aikkeehnlfpamidigaffhfmgbkdeheil) and [Firefox](https://addons.mozilla.org/en-US/firefox/addon/code-finder-catalyzex/)) that automatically finds and shows code implementations for machine learning papers anywhere: Google, Twitter, Arxiv, Scholar, etc.
      • 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.
      • Comet - ML platform for tracking experiments, hyper-parameters, artifacts and more. It's deeply integrated with over 15+ deep learning frameworks and orchestration tools. Users can also use the platform to monitor their models in production.
      • 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.
      • Weights & Biases - Machine learning experiment tracking, dataset versioning, hyperparameter search, visualization, and collaboration
      • Arize AI - Model validaiton and performance monitoring, drift detection, explainability, visualization across structured and unstructured data
      • 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.
      • Pythonizr - An online tool to generate boilerplate machine learning code that uses scikit-learn.
      • Flyte - Flyte makes it easy to create concurrent, scalable, and maintainable workflows for machine learning and data processing.
      • Aqueduct - Aqueduct enables you to easily define, run, and manage AI & ML tasks on any cloud infrastructure.
      • Synthical - AI-powered collaborative research environment. You can use it to get recommendations of articles based on reading history, simplify papers, find out what articles are trending, search articles by meaning (not just keywords), create and share folders of articles, see lists of articles from specific companies and universities, and add highlights.
      • Wallaroo.AI - Production AI plaftorm for deploying, managing, and observing any model at scale across any envirorment from cloud to edge. Let's you go from python notebook to inferencing in minutes.
      • Chroma - Chroma - the AI-native open-source embedding database
  • Books

    • General-Purpose Machine Learning

      • Grokking Machine Learning - Grokking Machine Learning teaches you how to apply ML to your projects using only standard Python code and high school-level math.
      • Machine Learning Bookcamp - Learn the essentials of machine learning by completing a carefully designed set of real-world projects.
      • Hands-On Machine Learning with Scikit-Learn, Keras, and TensorFlow - Through a recent series of breakthroughs, deep learning has boosted the entire field of machine learning. Now, even programmers who know close to nothing about this technology can use simple, efficient tools to implement programs capable of learning from data. This bestselling book uses concrete examples, minimal theory, and production-ready Python frameworks (Scikit-Learn, Keras, and TensorFlow) to help you gain an intuitive understanding of the concepts and tools for building intelligent systems.
      • Netron - An opensource viewer for neural network, deep learning and machine learning models
      • Teachable Machine - Train Machine Learning models on the fly to recognize your own images, sounds, & poses.
      • Model Zoo - Discover open source deep learning code and pretrained models.
  • Credits

  • APL

    • [Tools](#tools-1)

      • naive-apl - Naive Bayesian Classifier implementation in APL. **[Deprecated]**