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

awesome-machine-learning

Machine Learning
https://github.com/jacob98415/awesome-machine-learning

Last synced: 9 days ago
JSON representation

  • Lua

    • [Tools](#tools-1)

      • OverFeat - A state-of-the-art generic dense feature extractor. **[Deprecated]**
      • Numeric Lua
      • Lunum
      • Keras GPT Copilot - A python package that integrates an LLM copilot inside the keras model development workflow.
      • Core torch7 demos repository
      • Training a Convnet for the Galaxy-Zoo Kaggle challenge(CUDA demo)
      • torch-datasets - Scripts to load several popular datasets including:
      • Atari2600 - Scripts to generate a dataset with static frames from the Arcade Learning Environment.
      • 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.
      • 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]**
      • SciLua
  • Matlab

    • [Tools](#tools-1)

      • Contourlets - MATLAB source code that implements the contourlet transform and its utility functions.
      • 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.
      • Convolutional-Recursive Deep Learning for 3D Object Classification - Convolutional-Recursive Deep Learning for 3D Object Classification[DEEP LEARNING].
      • Spider - The spider is intended to be a complete object orientated environment for machine learning in Matlab.
      • LibSVM - A Library for Support Vector Machines.
      • LibLinear - A Library for Large Linear Classification.
      • matlab_bgl - MatlabBGL is a Matlab package for working with graphs.
      • mexopencv - Collection and a development kit of MATLAB mex functions for OpenCV library.
      • Machine Learning Module - Class on machine w/ PDF, lectures, code
      • Pattern Recognition Toolbox - A complete object-oriented environment for machine learning in Matlab.
      • Pattern Recognition and Machine Learning - This package contains the matlab implementation of the algorithms described in the book Pattern Recognition and Machine Learning by C. Bishop.
      • 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.
      • gaimc - Efficient pure-Matlab implementations of graph algorithms to complement MatlabBGL's mex functions.
      • Curvelets - The Curvelet transform is a higher dimensional generalization of the Wavelet transform designed to represent images at different scales and different angles.
      • MXNet - Lightweight, Portable, Flexible Distributed/Mobile Deep Learning with Dynamic, Mutation-aware Dataflow Dep Scheduler; for Python, R, Julia, Go, JavaScript and more.
      • NLP - A NLP library for Matlab.
  • .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.
      • 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.
      • 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.
      • 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.
      • Accord-Framework - The Accord.NET Framework is a complete framework for building machine learning, computer vision, computer audition, signal processing and statistical applications.
      • 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.
      • 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.
      • Synapses - Neural network library in F#.
      • Vulpes - Deep belief and deep learning implementation written in F# and leverages CUDA GPU execution with Alea.cuBase.
      • Stanford.NLP for .NET - A full port of Stanford NLP packages to .NET and also available precompiled as a NuGet package.
  • 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.
      • TensorFlow - OCaml bindings for TensorFlow.
      • Libra-Tk - Algorithms for learning and inference with discrete probabilistic models.
  • OpenCV

    • OpenSource-Computer-Vision

      • OpenCV - A OpenSource Computer Vision Library
  • 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.
      • 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.
      • 19 Questions - A machine learning / bayesian inference assigning attributes to objects.
    • Natural Language Processing

      • jieba-php - Chinese Words Segmentation Utilities.
  • 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.
      • Self-supervised learning
      • OpenVisionAPI - Open source computer vision API based on open source models.
      • NLTK - A leading platform for building Python programs to work with human language data.
      • BLLIP Parser - Python bindings for the BLLIP Natural Language Parser (also known as the Charniak-Johnson parser). **[Deprecated]**
      • editdistance - fast implementation of edit distance.
      • scikit-learn - A Python module for machine learning built on top of SciPy.
      • astroML - Machine Learning and Data Mining for Astronomy.
      • 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.
      • Edward - A library for probabilistic modelling, inference, and criticism. Built on top of TensorFlow.
      • Cartopy - Cartopy is a Python package designed for geospatial data processing in order to produce maps and other geospatial data analyses.
      • Numba - Python JIT (just in time) compiler to LLVM aimed at scientific Python by the developers of Cython and NumPy.
      • 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.
      • cerebro2 - based visualization and debugging platform for NuPIC. **[Deprecated]**
      • Seaborn - A python visualization library based on matplotlib.
      • 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.
      • 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.
      • Jina AI
      • Tensorflow-Federated
      • acme - An Open Source Distributed Framework for Reinforcement Learning that makes build and train your agents easily.
      • 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.
      • 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.
      • deepface - A lightweight face recognition and facial attribute analysis (age, gender, emotion and race) framework for Python covering cutting-edge models such as VGG-Face, FaceNet, OpenFace, DeepFace, DeepID, Dlib and ArcFace.
      • retinaface - deep learning based cutting-edge facial detector for Python coming with facial landmarks
      • dockerface - Easy to install and use deep learning Faster R-CNN face detection for images and video in a docker container. **[Deprecated]**
      • 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.
      • 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](https://github.com/tesseract-ocr/tesseract).
      • 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.
      • 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.
      • Learnergy - Energy-based machine learning models built upon PyTorch.
      • IoT Owl - Light face detection and recognition system with huge possibilities, based on Microsoft Face API and TensorFlow made for small IoT devices like raspberry pi.
      • Exadel CompreFace - face recognition system that can be easily integrated into any system without prior machine learning skills. CompreFace provides REST API for face recognition, face verification, face detection, face mask detection, landmark detection, age, and gender recognition and is easily deployed with docker.
      • computer-vision-in-action - as known as ``L0CV``, is a new generation of computer vision open source online learning media, a cross-platform interactive learning framework integrating graphics, source code and HTML. the L0CV ecosystem — Notebook, Datasets, Source Code, and from Diving-in to Advanced — as well as the L0CV Hub.
      • pkuseg-python - A better version of Jieba, developed by Peking University.
      • 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.
      • YAlign - A sentence aligner, a friendly tool for extracting parallel sentences from comparable corpora. **[Deprecated]**
      • jieba - Chinese Words Segmentation Utilities.
      • SnowNLP - A library for processing Chinese text.
      • spammy - A library for email Spam filtering built on top of NLTK
      • loso - Another Chinese segmentation library. **[Deprecated]**
      • genius - A Chinese segment based on Conditional Random Field.
      • nut - Natural language Understanding Toolkit. **[Deprecated]**
      • Rosetta - Text processing tools and wrappers (e.g. Vowpal Wabbit)
      • 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](https://proycon.github.io/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](http://tworld.io/ss3/)).
      • 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](https://github.com/frcchang/zpar), a statistical part-of-speech-tagger, constituency parser, and dependency parser for English.
      • spaCy - Industrial strength NLP with Python and Cython.
      • PyStanfordDependencies - Python interface for converting Penn Treebank trees to Stanford Dependencies.
      • Distance - Levenshtein and Hamming distance computation. **[Deprecated]**
      • Fuzzy Wuzzy - Fuzzy String Matching in Python.
      • jellyfish - a python library for doing approximate and phonetic matching of strings.
      • textacy - higher-level NLP built on Spacy.
      • stanford-corenlp-python - Python wrapper for [Stanford CoreNLP](https://github.com/stanfordnlp/CoreNLP) **[Deprecated]**
      • CLTK - The Classical Language Toolkit.
      • Rasa - A "machine learning framework to automate text-and voice-based conversations."
      • yase - Transcode sentence (or other sequence) to list of word vector .
      • Polyglot - Multilingual text (NLP) processing toolkit.
      • DrQA - Reading Wikipedia to answer open-domain questions.
      • Dedupe - A python library for accurate and scalable fuzzy matching, record deduplication and entity-resolution.
      • Snips NLU - Natural Language Understanding library for intent classification and entity extraction
      • NeuroNER - Named-entity recognition using neural networks providing state-of-the-art-results
      • BigARTM - topic modelling platform.
      • NALP - A Natural Adversarial Language Processing framework built over Tensorflow.
      • DL Translate - A deep learning-based translation library between 50 languages, built with `transformers`.
      • Haystack - A framework for building industrial-strength applications with Transformer models and LLMs.
      • RexMex - > A general purpose recommender metrics library for fair evaluation.
      • ChemicalX - > A PyTorch based deep learning library for drug pair scoring
      • Shapley - > A data-driven framework to quantify the value of classifiers in a machine learning ensemble.
      • igel - > A delightful machine learning tool that allows you to train/fit, test and use models **without writing code**
      • ML Model building - > A Repository Containing Classification, Clustering, Regression, Recommender Notebooks with illustration to make them.
      • 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 <a href="https://towardsdatascience.com/why-automl-is-an-essential-new-tool-for-data-scientists-2d9ab4e25e46?source=friends_link&sk=d03a0cc55c23deb497d546d6b9be0653">Medium article</a>.
      • 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.
      • Couler - Unified interface for constructing and managing machine learning workflows on different workflow engines, such as Argo Workflows, Tekton Pipelines, and Apache Airflow.
      • dtaidistance - High performance library for time series distances (DTW) and time series clustering.
      • einops - Deep learning operations reinvented (for pytorch, tensorflow, jax and others).
      • machine learning - automated build consisting of a [web-interface](https://github.com/jeff1evesque/machine-learning#web-interface), and set of [programmatic-interface](https://github.com/jeff1evesque/machine-learning#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.
      • ChefBoost - a lightweight decision tree framework for Python with categorical feature support covering regular decision tree algorithms such as ID3, C4.5, CART, CHAID and regression tree; also some advanved bagging and boosting techniques such as gradient boosting, random forest and adaboost.
      • Bayesian Methods for Hackers - Book/iPython notebooks on Probabilistic Programming in Python.
      • Featureforge - learn compatible API.
      • OpenMetricLearning - A PyTorch-based framework to train and validate the models producing high-quality embeddings.
      • SimpleAI
      • Pylearn2 - A Machine Learning library based on [Theano](https://github.com/Theano/Theano). **[Deprecated]**
      • keras - High-level neural networks frontend for [TensorFlow](https://github.com/tensorflow/tensorflow), [CNTK](https://github.com/Microsoft/CNTK) and [Theano](https://github.com/Theano/Theano).
      • Lasagne - Lightweight library to build and train neural networks in Theano.
      • hebel - GPU-Accelerated Deep Learning Library in Python. **[Deprecated]**
      • Chainer - Flexible neural network framework.
      • prophet - Fast and automated time series forecasting framework by Facebook.
      • gensim - Topic Modelling for Humans.
      • topik - Topic modelling toolkit. **[Deprecated]**
      • PyBrain - Another Python Machine Learning Library.
      • Brainstorm - Fast, flexible and fun neural networks. This is the successor of PyBrain.
      • Crab - A flexible, fast recommender engine. **[Deprecated]**
      • python-recsys - A Python library for implementing a Recommender System.
      • thinking bayes - Book on Bayesian Analysis.
      • Image-to-Image Translation with Conditional Adversarial Networks - Implementation of image to image (pix2pix) translation from the paper by [isola et al](https://arxiv.org/pdf/1611.07004.pdf).[DEEP LEARNING]
      • Restricted Boltzmann Machines - Restricted Boltzmann Machines in Python. [DEEP LEARNING]
      • Bolt - Bolt Online Learning Toolbox. **[Deprecated]**
      • 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-ensemble - Python toolbox for quick implementation, modification, evaluation, and visualization of ensemble learning algorithms for class-imbalanced data. Supports out-of-the-box multi-class imbalanced (long-tailed) classification.
      • Pyevolve - Genetic algorithm framework. **[Deprecated]**
      • breze - Theano based library for deep and recurrent neural networks.
      • Cortex - Open source platform for deploying machine learning models in production.