Comparison of machine learning software
Appearance
This article has multiple issues. Please help improve it or discuss these issues on the talk page. (Learn how and when to remove these messages)
|
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
[edit]| Software | Creator | Initial release | Open-source
|
Platform | Written in | Interface | Has pretrained models
|
Actively developed
| ||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Apache Mahout | Apache Software Foundation | 2009 | Yes | Cross-platform | Java, Scala | Java, Scala, command line | Yes | Yes | No | No | No | Yes |
| Apache SINGA | Apache Software Foundation | 2015 | Yes | Linux, macOS, Windows | C++, Python | C++, Python | Yes | No | Yes | No | No | Yes |
| Apache SystemDS | Apache Software Foundation | 2015 | Yes | Linux, macOS, Windows | Java, Python, C | Java, Python, DML[4] | Yes | Yes | Yes | No | No | Yes |
| CatBoost | Yandex | 2017 | Yes | Linux, macOS, Windows | C++, Python | C++, Python, R, Java | Yes | No | No | No | No | Yes |
| Dlib | Davis E. King | 2002 | Yes | Cross-platform | C++ | C++, Python | Yes | No | Yes | No | Yes | Yes |
| ELKI | ELKI project | 2010 | Yes | Cross-platform | Java | Java | Yes | Yes | No | No | No | Yes |
| fastText | Meta AI | 2015 | Yes | Linux, macOS, Windows | C++, Python | Command line, Python | Yes | Yes | No | No | Yes | Yes |
| Flux | FluxML contributors[5] | 2018 | Yes | Linux, macOS, Windows | Julia | Julia | Yes | Yes | Yes | Yes | Yes | Yes |
| Gensim | Radim Řehůřek | 2009 | Yes | Linux, macOS, Windows | Python, Cython | Python | No | Yes | No | No | Yes | Yes |
| H2O | H2O.ai | 2011 | Yes | Cross-platform | Java, Python, R | Web interface, Python, R, Java | Yes | Yes | Yes | No | Yes | Yes |
| Infer.NET | Microsoft Research | 2008 | Yes | Windows, macOS, Linux | C# | C# | Yes | Yes | No | No | No | No |
| JAX | 2018 | Yes | Linux, macOS, Windows | Python | Python | Yes | Yes | Yes | Yes | No | Yes | |
| Jubatus | Preferred Infrastructure and NTT | 2011 | Yes | Linux | C++ | C++, Python, Java | Yes | Yes | No | No | No | No |
| KNIME | KNIME AG | 2006 | Yes | Cross-platform | Java | GUI, Python, R | Yes | Yes | Yes | No | No | Yes |
| LIBSVM | Chih-Chung Chang and Chih-Jen Lin | 2001 | Yes | Cross-platform | C++, Java | C++, Java, command line | Yes | No | No | No | No | Yes |
| LightGBM | Microsoft | 2016 | Yes | Linux, macOS, Windows | C++, Python | C++, Python, R | Yes | Yes | No | No | No | Yes |
| MATLAB[6] | MathWorks | 1984 | No | Linux, macOS, Windows | C, C++, Java, MATLAB | MATLAB | Yes | Yes | Yes | Yes | Yes | Yes |
| Microsoft Cognitive Toolkit | Microsoft Research | 2016 | Yes | Linux, Windows | C++ | C++, Python, C# | Yes | No | Yes | No | No | No |
| MindSpore | Huawei | 2020 | Yes | Linux, Windows, macOS, Android | C++, Rust, Julia, Python, Java | Python, C++, Java | Yes | No | Yes | Yes | Yes | Yes |
| ML.NET | Microsoft | 2018 | Yes | Linux, macOS, Windows | C#, C++ | C#, F# | Yes | Yes | Yes | No | No | Yes |
| mlpack | mlpack developers | 2008 | Yes | Cross-platform | C++ | C++, command line | Yes | Yes | No | No | No | Yes |
| MXNet | Apache Software Foundation | 2015 | Yes | Linux, macOS, Windows, Android, iOS | C++, Python | C++, Python, Julia, MATLAB, JavaScript, Go, R, Scala, Perl, Clojure | Yes | Yes | Yes | Yes | Yes | No |
| Orange | University of Ljubljana | 1996 | Yes | Cross-platform | Python, C++ | GUI, Python | Yes | Yes | Yes | No | No | Yes |
| RapidMiner | RapidMiner | 2006 | No | Cross-platform | Java | GUI | Yes | Yes | Yes | No | No | Yes |
| Scikit-learn | scikit-learn developers | 2007 | Yes | Cross-platform | Python, Cython | Python | Yes | Yes | No | No | No | Yes |
| Shogun | Shogun Toolbox community | 1999 | Yes | Cross-platform | C++ | C++, Python, Java, R, Ruby, C#, Lua, Octave | Yes | Yes | No | No | No | Yes |
| Spark MLlib | Apache Software Foundation | 2014 | Yes | Cross-platform | Scala, Java | Scala, Java, Python, R | Yes | Yes | Yes | No | No | Yes |
| TensorFlow | Google Brain | 2015 | Yes | Linux, macOS, Windows, Android | C++, Python, CUDA | Python, C++, Java, JavaScript, R | Yes | Yes | Yes | Yes | Yes | Yes |
| Theano | University of Montreal | 2007 | Yes | Linux, macOS, Windows | Python, CUDA | Python | No | No | Yes | Yes | No | No |
| Vowpal Wabbit | Yahoo! Research and Microsoft Research | 2007 | Yes | Linux, macOS, Windows | C++ | C++, command line, Python | Yes | No | No | No | No | Yes |
| Weka | University of Waikato | 1993 | Yes | Cross-platform | Java | GUI, Java, command line | Yes | Yes | No | No | No | Yes |
| XGBoost | Tianqi Chen and contributors | 2014 | Yes | Linux, macOS, Windows | C++, Python | C++, Python, R, Java, Julia | Yes | Yes | No | No | No | Yes |
Other comparisons
[edit]| Software | Type | Primary use | GUI |
|---|---|---|---|
| Apache Mahout | Library | Distributed machine learning | No |
| Apache SINGA | Library | Distributed machine learning and deep learning | No |
| Apache SystemDS | Platform | End-to-end machine learning and data science workflows | No |
| CatBoost | Library | Gradient boosting and decision tree learning | No |
| Dlib | Library | Machine learning and computer vision | No |
| ELKI | Framework | Data mining, clustering, outlier detection | Yes |
| fastText | Library | Text classification, word embeddings, and natural language processing | No |
| Flux | Library | Machine learning and deep learning | No |
| Gensim | Library | Topic modeling, document retrieval, and similarity analysis | No |
| H2O | Platform | Machine learning and AutoML | Yes |
| Infer.NET | Library | Bayesian inference and probabilistic programming | No |
| JAX | Library | Numerical computing, machine learning, and automatic differentiation | No |
| Jubatus | Framework | Distributed online machine learning | No |
| KNIME | Platform | Visual data analytics and machine learning workflows | Yes |
| LIBSVM | Library | Support vector machine classification and regression | No |
| LightGBM | Library | Gradient boosting and decision tree learning | No |
| MATLAB | Computing platform | Numerical computing, statistics, and machine learning | Yes |
| CNTK | Framework | Deep learning and machine learning | No |
| MindSpore | Framework | machine learning and deep learning | No |
| ML.NET | Framework | Machine learning for .NET | Yes |
| mlpack | Library | General-purpose machine learning | No |
| MXNet | Framework | Deep learning and scalable machine learning | No |
| Orange | Platform | Visual programming, data mining, and machine learning | Yes |
| RapidMiner | Platform | Data science and machine learning workflows | Yes |
| Scikit-learn | Library | General-purpose machine learning | No |
| Shogun | Library | General-purpose machine learning | No |
| Spark MLlib | Library | Distributed machine learning on Apache Spark | No |
| TensorFlow | Framework | Deep learning and machine learning | Yes |
| Theano | Library | Machine learning and deep learning | No |
| Vowpal Wabbit | Library | Online machine learning and reinforcement learning | No |
| Weka | Suite | Machine learning and data mining | Yes |
| XGBoost | Library | Gradient boosting | No |
Machine learning helper libraries and platforms
[edit]- 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[7]
- Kubeflow — machine learning platform for Kubernetes
- Mallet — toolkit for natural language processing and text analysis
- NumPy — numerical computing library used in machine learning[8][9]
- 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[10]
- SciPy — scientific computing and optimization library used in machine learning[11]
Online development environments for machine learning
[edit]- 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[12]
- Jupyter Notebook — interactive notebook environment used for machine learning and data science[13][14]
- Kaggle — online data science and machine learning platform[15]
See also
[edit]Wikibooks has a book on the topic of: Subject:Machine learning
- 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
External links
[edit]- Yellowbrick — machine learning visualization library for model selection and diagnostics
- ELI5 — library for explaining and debugging machine learning models
- InterpretML — interpretable machine learning toolkit
- SHAP — library for explaining machine learning model predictions
References
[edit]- ^ Saucedo, Alejandro (April 14, 2026), Awesome Production Machine Learning, retrieved April 14, 2026
- ^ Misiti, Joseph (April 14, 2026), josephmisiti/awesome-machine-learning, retrieved April 14, 2026
- ^ D, Søren A. (April 11, 2026), sorend/awesome-python-machine-learning, retrieved April 14, 2026
- ^ "DML Language Reference - SystemDS 3.4.0-SNAPSHOT". apache.github.io. Retrieved April 14, 2026.
- ^ Innes, Mike (May 3, 2018). "Flux: Elegant machine learning with Julia". Journal of Open Source Software. 3 (25): 602. Bibcode:2018JOSS....3..602I. doi:10.21105/joss.00602.
- ^ "Machine Learning in MATLAB - MATLAB & Simulink".
- ^ Wolf, Thomas (2020). "Transformers: State-of-the-Art Natural Language Processing". Proceedings of the 2020 Conference on Empirical Methods in Natural Language Processing: System Demonstrations. Association for Computational Linguistics. pp. 38–45. doi:10.18653/v1/2020.emnlp-demos.6. Retrieved April 14, 2026.
- ^ Bourgin, David (April 14, 2026), ddbourgin/numpy-ml, retrieved April 14, 2026
- ^ Mohandas, Goku. "NumPy for Machine Learning - Made With ML by Anyscale". madewithml.com. Retrieved April 14, 2026.
- ^ "Machine learning with ROOT". ROOT. CERN. Retrieved April 14, 2026.
- ^ "Compute options and notebook editor". IBM Documentation. IBM. Retrieved April 13, 2026.
- ^ "Using JupyterLab with ML Runtimes". docs.cloudera.com. Retrieved April 14, 2026.
- ^ Verma, Ishu (May 21, 2021). "Introduction to machine learning with Jupyter notebooks". Red Hat Developer. Retrieved April 14, 2026.
- ^ "Using Jupyter Notebook for Machine Learning Development on NAS Systems - HECC Knowledge Base". www.nas.nasa.gov. Retrieved April 14, 2026.
- ^ "What is Kaggle?". GeeksforGeeks. August 14, 2024. Retrieved April 14, 2026.