{"id":23900,"date":"2019-07-17T12:25:46","date_gmt":"2019-07-17T19:25:46","guid":{"rendered":"https:\/\/devblogs.microsoft.com\/dotnet\/?p=23900"},"modified":"2024-01-12T11:31:44","modified_gmt":"2024-01-12T19:31:44","slug":"announcing-ml-net-1-2-and-model-builder-updates-machine-learning-for-net","status":"publish","type":"post","link":"https:\/\/devblogs.microsoft.com\/dotnet\/announcing-ml-net-1-2-and-model-builder-updates-machine-learning-for-net\/","title":{"rendered":"Announcing ML.NET 1.2 and Model Builder updates (Machine Learning for .NET)"},"content":{"rendered":"<p>We are excited to announce <a href=\"https:\/\/dot.net\/ml\">ML.NET 1.2<\/a> and updates to <a href=\"https:\/\/aka.ms\/modelbuilder\">Model Builder<\/a> and the CLI. <a href=\"https:\/\/dot.net\/ml\">ML.NET<\/a> is an open-source and cross-platform machine learning framework for .NET developers. ML.NET also includes <a href=\"https:\/\/aka.ms\/modelbuilder\">Model Builder<\/a> (a simple UI tool for Visual Studio) and the <a href=\"https:\/\/dot.net\/ml\">ML.NET<\/a> CLI (Command-line interface) to make it super easy to build custom Machine Learning (ML) models using Automated Machine Learning (AutoML).<\/p>\n<p>Using <a href=\"https:\/\/dot.net\/ml\">ML.NET<\/a>, developers can leverage their existing tools and skill-sets to develop and infuse custom ML into their applications by creating custom machine learning models for common scenarios like Sentiment Analysis, Price Prediction, Image Classification and more!<\/p>\n<p>The following are some of the key highlights in this update:<\/p>\n<h2>ML.NET Updates<\/h2>\n<p><a href=\"https:\/\/dot.net\/ml\">ML.NET<\/a> 1.2 is a backwards compatible release with no breaking changes so please update to get the latest changes.<\/p>\n<h3>General availability of TimeSeries support for forecasting and anomaly detection<\/h3>\n<p>Developers can use the <a href=\"https:\/\/www.nuget.org\/packages\/Microsoft.ML.TimeSeries\/1.2.0\">Microsoft.ML.TimeSeries package<\/a> for many scenarios such as: detecting spikes and changes in product sales using an anomaly detection model or creating sales forecasts which could be affected by seasonality and other time related context.<\/p>\n<p>Learn more through these <a href=\"https:\/\/github.com\/dotnet\/machinelearning\/tree\/master\/docs\/samples\/Microsoft.ML.Samples\/Dynamic\/Transforms\/TimeSeries\">samples<\/a>.<\/p>\n<p><img decoding=\"async\" class=\"alignnone size-medium\" src=\"https:\/\/user-images.githubusercontent.com\/1712635\/61395438-4cd4c600-a87a-11e9-9270-c5a050e78df0.png\" width=\"557\" height=\"195\" \/><\/p>\n<h3>General availability of ML.NET packages to use TensorFlow and ONNX models<\/h3>\n<p>ML.NET has been designed as an extensible platform so that you can consume other popular ML models such as TensorFlow and ONNX models and have access to even more machine learning and deep learning scenarios, like image classification, object detection, and more.<\/p>\n<p>Learn more through these code samples for <a href=\"https:\/\/github.com\/dotnet\/machinelearning\/blob\/master\/docs\/samples\/Microsoft.ML.Samples\/Dynamic\/Transforms\/ApplyOnnxModel.cs\">Microsoft.ML.OnnxTransformer<\/a> and <a href=\"https:\/\/github.com\/dotnet\/machinelearning\/tree\/master\/docs\/samples\/Microsoft.ML.Samples\/Dynamic\/TensorFlow\">Microsoft.ML.TensorFlow<\/a> and the end-to-end ML.NET computer vision sample apps:<\/p>\n<ul>\n<li><a href=\"https:\/\/github.com\/dotnet\/machinelearning-samples\/tree\/master\/samples\/csharp\/end-to-end-apps\/DeepLearning_ImageClassification_TensorFlow\">Image Classification ASP.NET Core web app<\/a><\/li>\n<li><a href=\"https:\/\/github.com\/dotnet\/machinelearning-samples\/tree\/master\/samples\/csharp\/end-to-end-apps\/DeepLearning_ObjectDetection_Onnx\">Object Detection ASP.NET Core web app<\/a><\/li>\n<\/ul>\n<p><img decoding=\"async\" class=\"alignnone size-medium\" src=\"https:\/\/user-images.githubusercontent.com\/1712635\/61396247-27e15280-a87c-11e9-9ae2-a4a31511f9d7.png\" width=\"350\" height=\"192\" \/><\/p>\n<h3>Easily integrate ML.NET models in web or serverless apps with Microsoft.Extensions.ML integration package (<i>preview<\/i>)<\/h3>\n<p>This package makes it easier to integrate loading ML.NET model for scoring in ASP.NET apps, Azure Functions and web services. Specifically, the package allows a developer to use Microsoft.Extensions.ML for loading the ML.NET model using Dependency Injection, and optimizing the model&#8217;s execution and performance in multi-threaded environments such as ASP.NET Core apps. Learn more <a href=\"https:\/\/github.com\/dotnet\/machinelearning-samples\/tree\/master\/samples\/csharp\/end-to-end-apps\/ScalableMLModelOnWebAPI-IntegrationPkg\">here<\/a>.<\/p>\n<h3>MLNet CLI updated to 0.14 (<em>preview<\/em>)<\/h3>\n<p>You can use the ML.NET CLI to automatically generate an ML.NET model and underlying C# code. You can run the ML.NET CLI on any command-prompt (Windows, Mac, or Linux).<\/p>\n<p>You simply need to provide your own dataset and select the machine learning task you want to implement (such as classification or regression), and the CLI uses the AutoML engine to create model generation and deployment source code, as well as the binary model.<\/p>\n<p><img decoding=\"async\" class=\"alignnone size-medium\" src=\"https:\/\/user-images.githubusercontent.com\/1712635\/61397588-10f02f80-a87f-11e9-9ecd-0bf22746dc95.png\" width=\"540\" height=\"95\" \/><\/p>\n<p>The CLI is updated to 0.14 addressing customer feedback.<\/p>\n<p>Learn more about the CLI here:<\/p>\n<ul>\n<li><a href=\"https:\/\/docs.microsoft.com\/en-us\/dotnet\/machine-learning\/automate-training-with-cli\">How to use the ML.NET CLI<\/a><\/li>\n<li><a href=\"https:\/\/github.com\/dotnet\/machinelearning\/pull\/3725\">CLI updates in 0.14<\/a><\/li>\n<\/ul>\n<h3>Model Builder updates<\/h3>\n<p><a href=\"https:\/\/aka.ms\/modelbuilder\">ML.NET Model Builder<\/a> provides an easy to understand visual interface to build, train, and deploy custom machine learning models.<\/p>\n<p><img decoding=\"async\" class=\"alignnone size-medium\" src=\"https:\/\/user-images.githubusercontent.com\/1712635\/61396962-b30f1800-a87d-11e9-9ab4-e86013347793.png\" width=\"892\" height=\"571\" \/><\/p>\n<h4>Expanding support to .txt files and more delimiters for values<\/h4>\n<p>Users can now use .txt files for training the model. In the initial previews, Model Builder supported only .csv and .tsv files. Values can be separated by the following delimiters: space, comma, tab and semicolon.<\/p>\n<h4>No limits on training data size!<\/h4>\n<p>Based on popular request, we have removed the 1GB limit on the training data size. Developers can now upload files of any size.<\/p>\n<h4>Smart defaults for training time for large datasets<\/h4>\n<p>The default training time is now set based on the size of your data. It was 10 seconds before. This will allow Model Builder to find at least 1 model within that time.<\/p>\n<p>Learn more about <a href=\"https:\/\/github.com\/dotnet\/machinelearning-samples\/blob\/master\/modelbuilder\/readme.md#Train\">how long you should train for<\/a>?<\/p>\n<h4>Improve model consumption experience<\/h4>\n<div>In the code generation step at the end of the model building process, Model Builder now also adds the <a tabindex=\"-1\" title=\"https:\/\/www.nuget.org\/packages\/microsoft.ml\/1.2.0\" href=\"https:\/\/www.nuget.org\/packages\/Microsoft.ML\/1.2.0\" target=\"_blank\" rel=\"noreferrer noopener\">ML.NET 1.2 NuGet package<\/a>.<\/div>\n<div><\/div>\n<h4>Update to ML.NET 1.2<\/h4>\n<p>Model Builder uses the latest version of ML.NET and the generated code will reference 1.2. In the earlier previews It was using <a href=\"https:\/\/www.nuget.org\/packages\/Microsoft.ML\/1.0.0\">ML.NET 1.0<\/a>.<\/p>\n<h4>Customer feedback addressed<\/h4>\n<p>There were many issues fixed in this release. Learn more in the <a href=\"https:\/\/github.com\/dotnet\/machinelearning-modelbuilder\/releases\">release notes<\/a>.<\/p>\n<h3>Need help to go to production &#8211; <a href=\"http:\/\/survey.usabilla.com\/live\/s\/5c87fbc101634d1357359f7b\">Fill out this form<\/a>!<\/h3>\n<p>If you are using\u00a0<a href=\"https:\/\/dot.net\/ml\">ML.NET<\/a>\u00a0in your app and looking to go into production, you can talk to an engineer on the\u00a0<a href=\"https:\/\/dot.net\/ml\">ML.NET<\/a>\u00a0team.<\/p>\n<h3>Try ML.NET and Model Builder today!<\/h3>\n<ul>\n<li>Get started with <a href=\"https:\/\/dot.net\/ml\">ML.NET<\/a> <a href=\"https:\/\/www.microsoft.com\/net\/learn\/apps\/machine-learning-and-ai\/ml-dotnet\/get-started\">here<\/a>.<\/li>\n<li>Get started with Model Builder\u00a0<a href=\"https:\/\/aka.ms\/modelbuilder\">here<\/a>.<\/li>\n<\/ul>\n<ul>\n<li>Refer to <a href=\"https:\/\/docs.microsoft.com\/dotnet\/machine-learning\/\">documentation<\/a> for tutorials and more resources.<\/li>\n<li>Learn from <a href=\"https:\/\/github.com\/dotnet\/machinelearning-samples\">samples apps<\/a> for different scenarios using ML.NET.<\/li>\n<\/ul>\n<h3>Summary<\/h3>\n<p>We are excited to release these updates for you and we look forward to seeing what you will build with ML.NET. If you have any questions or feedback, you can ask them here for <a href=\"https:\/\/github.com\/dotnet\/machinelearning\/issues\">ML.NET<\/a> and <a href=\"https:\/\/aka.ms\/modelbuilderissues\">Model Builder<\/a>.<\/p>\n<p>Your friends @<a href=\"https:\/\/dot.net\/ml\">ML.NET<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>We are excited to announce ML.NET 1.2 and updates to Model Builder and the CLI. ML.NET is an open-source and cross-platform machine learning framework for .NET developers. ML.NET also includes Model Builder (a simple UI tool for Visual Studio) and the ML.NET CLI (Command-line interface) to make it super easy to build custom Machine Learning [&hellip;]<\/p>\n","protected":false},"author":362,"featured_media":58792,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[196,195,328,688,691],"tags":[],"class_list":["post-23900","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-dotnet-core","category-dotnet-framework","category-aiml","category-machine-learning","category-ml-dotnet"],"acf":[],"blog_post_summary":"<p>We are excited to announce ML.NET 1.2 and updates to Model Builder and the CLI. ML.NET is an open-source and cross-platform machine learning framework for .NET developers. ML.NET also includes Model Builder (a simple UI tool for Visual Studio) and the ML.NET CLI (Command-line interface) to make it super easy to build custom Machine Learning [&hellip;]<\/p>\n","_links":{"self":[{"href":"https:\/\/devblogs.microsoft.com\/dotnet\/wp-json\/wp\/v2\/posts\/23900","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/devblogs.microsoft.com\/dotnet\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/devblogs.microsoft.com\/dotnet\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/dotnet\/wp-json\/wp\/v2\/users\/362"}],"replies":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/dotnet\/wp-json\/wp\/v2\/comments?post=23900"}],"version-history":[{"count":0,"href":"https:\/\/devblogs.microsoft.com\/dotnet\/wp-json\/wp\/v2\/posts\/23900\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/dotnet\/wp-json\/wp\/v2\/media\/58792"}],"wp:attachment":[{"href":"https:\/\/devblogs.microsoft.com\/dotnet\/wp-json\/wp\/v2\/media?parent=23900"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/dotnet\/wp-json\/wp\/v2\/categories?post=23900"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/dotnet\/wp-json\/wp\/v2\/tags?post=23900"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}