Comparison of machine learning software

The following tables are a comparison of machine learning software such as software frameworks, libraries, and computer programs used for machine learning.

Machine learning software

Comparison of machine learning software

Software

Creator

Initial release

Platform

Written in

Interface

Accord.NET

César Souza

2010

Cross-platform

C#

C#

Apache Mahout

Apache Software Foundation

2009

Cross-platform

Java, Scala

Java, Scala, command line

Apache SINGA

Apache Software Foundation

2015

Linux, macOS, Windows

C++, Python

C++, Python

Apache SystemDS

Apache Software Foundation

2015

Linux, macOS, Windows

Java, Python, C

Java, Python, DML

CatBoost

Yandex

2017

Linux, macOS, Windows

C++, Python

C++, Python, R, Java

Dlib

Davis E. King

2002

Cross-platform

C++

C++, Python

ELKI

ELKI project

2010

Cross-platform

Java

Java

fastText

Meta AI

2015

Linux, macOS, Windows

C++, Python

Command line, Python

Flux

FluxML contributors{{cite journal

last=Innes

first=Mike

title=Flux: Elegant machine learning with Julia

journal=Journal of Open Source Software

volume=3

issue=25

pages=602

date=2018-05-03

doi=10.21105/joss.00602

doi-access=free

bibcode=2018JOSS....3..602I

}}

Gensim

Radim Řehůřek

2009

Linux, macOS, Windows

Python, Cython

Python

H2O

H2O.ai

2011

Cross-platform

Java, Python, R

Web interface, Python, R, Java

Infer.NET

Microsoft Research

2008

Windows, macOS, Linux

C#

C#

JAX

Google

2018

Linux, macOS, Windows

Python

Python

Jubatus

Preferred Infrastructure and NTT

2011

Linux

C++

C++, Python, Java

KNIME

KNIME AG

2006

Cross-platform

Java

GUI, Python, R

LIBSVM

Chih-Chung Chang and Chih-Jen Lin

2001

Cross-platform

C++, Java

C++, Java, command line

LightGBM

Microsoft

2016

Linux, macOS, Windows

C++, Python

C++, Python, R

Massive Online Analysis

University of Waikato

2007

Cross-platform

Java

GUI, Java, command line

MATLAB

MathWorks

1984

Linux, macOS, Windows

C, C++, Java, MATLAB

MATLAB

Microsoft Cognitive Toolkit

Microsoft Research

2016

Linux, Windows

C++

C++, Python, C#

MindSpore

Huawei

2020

Linux, Windows, macOS, Android

C++, Rust, Julia, Python, Java

Python, C++, Java

ML.NET

Microsoft

2018

Linux, macOS, Windows

C#, C++

C#, F#

mlpack

mlpack developers

2008

Cross-platform

C++

C++, command line

MLX

Apple

2023

macOS on Apple silicon, Linux

C++, Python, CUDA, Metal

Swift, C, Python, C++

MXNet

Apache Software Foundation

2015

Linux, macOS, Windows, Android, iOS

C++, Python

C++, Python, Julia, MATLAB, JavaScript, Go, R, Scala, Perl, Clojure

Orange

University of Ljubljana

1996

Cross-platform

Python, C++

GUI, Python

PyMC

PyMC Development Team

2005

Cross-platform

Python

Python

RapidMiner

RapidMiner

2006

Cross-platform

Java

GUI

Scikit-learn

scikit-learn developers

2007

Cross-platform

Python, Cython

Python

Scikit-multiflow

Jacob Montiel

2018

Linux, macOS, Windows

Python, Cython

Python

Shogun

Shogun Toolbox community

1999

Cross-platform

C++

C++, Python, Java, R, Ruby, C#, Lua, Octave

Spark MLlib

Apache Software Foundation

2014

Cross-platform

Scala, Java

Scala, Java, Python, R

TensorFlow

Google Brain

2015

Linux, macOS, Windows, Android

C++, Python, CUDA

Python, C++, Java, JavaScript, R

Theano

University of Montreal

2007

Linux, macOS, Windows

Python, CUDA

Python

Torch

Idiap Research Institute

2002

Cross-platform

C, Lua, CUDA

Lua, C

Vowpal Wabbit

Yahoo! Research and Microsoft Research

2007

Linux, macOS, Windows

C++

C++, command line, Python

Weka

University of Waikato

1993

Cross-platform

Java

GUI, Java, command line

XGBoost

Tianqi Chen and contributors

2014

Linux, macOS, Windows

C++, Python

C++, Python, R, Java, Julia

Other comparisons

Software

Type

Primary use

GUI

Accord.NET

Framework

Machine learning, computer vision, and statistical analysis

Apache Mahout

Library

Distributed machine learning

Apache SINGA

Library

Distributed machine learning and deep learning

Apache SystemDS

Platform

End-to-end machine learning and data science workflows

CatBoost

Library

Gradient boosting and decision tree learning

Dlib

Library

Machine learning and computer vision

ELKI

Framework

Data mining, clustering, outlier detection

fastText

Library

Text classification, word embeddings, and natural language processing

Flux

Library

Machine learning and deep learning

Gensim

Library

Topic modeling, document retrieval, and similarity analysis

H2O

Platform

Machine learning and AutoML

Infer.NET

Library

Bayesian inference and probabilistic programming

JAX

Library

Numerical computing, machine learning, and automatic differentiation

Jubatus

Framework

Distributed online machine learning

KNIME

Platform

Visual data analytics and machine learning workflows

LIBSVM

Library

Support vector machine classification and regression

LightGBM

Library

Gradient boosting and decision tree learning

MOA

Framework

Online machine learning and data stream mining

MATLAB

Computing platform

Numerical computing, statistics, and machine learning

CNTK

Framework

Deep learning and machine learning

MindSpore

Framework

machine learning and deep learning

ML.NET

Framework

Machine learning for .NET

mlpack

Library

General-purpose machine learning

MLX

Framework

Machine learning and deep learning on Apple silicon

MXNet

Framework

Deep learning and scalable machine learning

Orange

Platform

Visual programming, data mining, and machine learning

PyMC

Framework

Bayesian modeling and probabilistic programming

RapidMiner

Platform

Data science and machine learning workflows

Scikit-learn

Library

General-purpose machine learning

Scikit-multiflow

Library

Online machine learning and data stream mining

Shogun

Library

General-purpose machine learning

Spark MLlib

Library

Distributed machine learning on Apache Spark

TensorFlow

Framework

Deep learning and machine learning

Theano

Library

Machine learning and deep learning

Torch

Framework

Machine learning and deep learning

Vowpal Wabbit

Library

Online machine learning and reinforcement learning

Weka

Suite

Machine learning and data mining

XGBoost

Library

Gradient boosting

Machine learning helper libraries and platforms

  • Apache OpenNLP — natural language processing toolkit
  • CUDA — GPU computing platform used to accelerate machine learning and deep learning workloads
  • Horovod — distributed training framework for deep learning
  • Hugging Face Transformers — library of pretrained transformer models built on other machine learning frameworks
  • Kubeflow — machine learning platform for Kubernetes
  • Mallet — toolkit for natural language processing and text analysis
  • NumPy — numerical computing library used in machine learning
  • OpenCV — computer vision library with machine learning functions
  • ONNX — open format for representing machine learning models
  • pandas — data analysis and data preparation library used in machine learning
  • PlaidML — tensor compiler and backend for machine learning frameworks
  • Polars — Dataframe library used for machine learning data preparation and analysis
  • PyArrow — columnar data library used in machine learning data processing
  • ROOT (TMVA) — data analysis framework with machine learning tools
  • SciPy — scientific computing and optimization library used in machine learning

Online development environments for machine learning

  • Google Colab — hosted Jupyter Notebook environment commonly used for machine learning and deep learning
  • JupyterLab — notebook-based development environment for machine learning and data science
  • Jupyter Notebook — interactive notebook environment used for machine learning and data science
  • Kaggle — online data science and machine learning platform

See also

  • Comparison of deep learning software
  • Comparison of statistical packages
  • Data mining
  • Deep learning
  • List of datasets for machine-learning research
  • List of machine learning algorithms
  • List of Python machine learning and deep learning software
  • Lists of open-source artificial intelligence software
  • Outline of machine learning