ML.NET
ML.NET | |
---|---|
Original author(s) | .NET Foundation, Microsoft |
Initial release | 7 May 2018[1] |
Preview release | 0.8
/ 4 December 2018 |
Repository | |
Written in | C# and C++ |
Operating system | Linux, macOS, Windows[2] |
Type | Library for machine learning |
License | MIT License[3] |
Website | github |
ML.NET is a free software machine learning library for the C#, F# and VB.NET programming languages.[4][5][6] It also supports Python models when used together with NimbusML. The preview release of ML.NET included transforms for feature engineering like n-gram creation, and learners to handle binary classification, multi-class classification, and regression tasks.[7] Additional ML tasks like anomaly detection, recommendation system, and other approaches like deep learning will be included in future versions.[8]
Machine Learning
ML.NET brings model-based Machine Learning analytic and prediction capabilities to existing .NET developers. The framework is built upon .NET Core and .NET Standard inheriting the ability to run cross-platform on Linux, Windows and MacOS. Developers can train a Machine Learning Model or reuse an existing Model by a 3rd party and run it on any environment offline. This means developers do not need to have a background in Data Science to use the framework. Support for x86 & x64 applications was added to build 0.7 including enhanced recommendation capabilities with Matrix Factorization. [9]
Support for the Open Neural Network Exchange open-source Onnx model format was introduced from build 0.3 in ML.NET. The release included other notable enhancements such as Factorization Machines, LightGBM, Ensembles, LightLDA transform and OVA. [10] The ML.NET integration of TensorFlow is enabled from the 0.5 release. A full roadmap of planned features have been made available on the official GitHub repo. [11]
Infer.NET
Microsoft Research announced the popular Infer.NET model-based machine learning framework used for research in academic institutions since 2008 has been released open source and is now part of the ML.NET framework.[12] The Infer.NET framework utilises probabilistic programming to describe probabilistic models which has the added advantage of interpretability. The Infer.NET namespace has since been changed to Microsoft.ML.Probabilistic consistent with ML.NET namespaces.[13]
NimbusML Python support
Microsoft acknowledged that the Python programming language is popular with Data Scientists, so it has introduced NimbusML the experimental Python bindings for ML.NET. This enables users to train and use machine learning models in Python. It was made open source similar to Infer.NET.[9]
AI School Machine Learning Course
Along with the rollout of the ML.NET preview Microsoft made available AI tutorials to help developers understand techniques needed to work with the framework. [14] [15] [16]
See also
- Scikit-learn
- Accord.NET
- Infer.NET
- NimbusML
- LightGBM
- TensorFlow
- Microsoft Cognitive Toolkit
- List of numerical analysis software
- List of numerical libraries for .NET framework
References
- ^ Ankit Asthana (2017-05-07). "Introducing ML.NET: Cross-platform, Proven and Open Source Machine Learning Framework". blogs.msdn.microsoft.com. Retrieved 2018-05-10.
- ^ "ML.NET: Machine Learning made for .NET". Microsoft. Retrieved 11 May 2018.
- ^ at master · DotNet/MachineLearning
- ^ David Ramel (2018-05-08). "Open Source, Cross-Platform ML.NET Simplifies Machine Learning -- Visual Studio Magazine". Visual Studio Magazine. Retrieved 2018-05-10.
- ^ Kareem Anderson (2017-05-09). "Microsoft debuts ML.NET cross-platform machine learning framework". On MSFT. Retrieved 2018-05-10.
- ^ Ankit Asthana (2018-08-07). "Announcing ML.NET 0.4". blogs.msdn.microsoft.com. Retrieved 2018-08-08.
- ^ Gal Oshri (2018-05-06). "ML.NET 0.1 Release Notes". GitHub. Retrieved 2018-05-10.
- ^ Tiwari, Aditya (2018-05-08). "Microsoft Launches ML.NET Open Source Machine Learning Framework". Fossbytes. Retrieved 2018-05-10.
Over time, it will enable other ML tasks like anomaly detection, recommendation system, and other approaches like deep learning using the benefits of added libraries.
- ^ a b "Announcing ML.NET 0.7 (Machine Learning .NET)". Microsoft. 2018-11-08. Retrieved 2018-11-14.
- ^ "Release Microsoft ML.NET v0.3". Github. 2018-07-03. Retrieved 2018-07-03.
- ^ "The ML.NET Roadmap". Github. 2018-05-09. Retrieved 2018-06-30.
- ^ "Microsoft open-sources Infer.NET AI code just in time for the weekend". The Register. 2018-10-05. Retrieved 2018-10-31.
- ^ "Microsoft open sources Infer.NET, it's popular model-based machine learning framework". Packt. 2018-10-08. Retrieved 2018-10-31.
- ^ "AI School". Microsoft AI. 2018-05-07. Retrieved 2018-06-29.
- ^ "ML.NET Guide". Microsoft. 2018-05-07. Retrieved 2018-06-29.
- ^ "Infer.NET User Guide". Infer.NET. 2018-10-05. Retrieved 2018-10-31.
External links
- GitHub repo: machinelearning on GitHub
- Applied machine learning
- Data mining and machine learning software
- Deep learning
- Probabilistic models
- Probabilistic software
- Free statistical software
- .NET Framework
- Free software programmed in C Sharp
- Free software programmed in C++
- Microsoft free software
- Artificial intelligence applications
- Open-source artificial intelligence
- Computer programming stubs