Announcing ML.NET 0.11 – Machine Learning for .NET

Bri Achtman

Bri

ML.NET is an open-source and cross-platform machine learning framework (Windows, Linux, macOS) for .NET developers. Using ML.NET, developers can leverage their existing tools and skillsets to develop and infuse custom AI into their applications by creating custom machine learning models for common scenarios like Sentiment Analysis, Recommendation, Image Classification and more!.

Today we’re announcing the release of ML.NET 0.11. (ML.NET 0.1 was released at //Build 2018). This release, and all other remaining releases before the v1.0 release, will focus on the overall stability of the framework, continuing to refine the API, fix bugs, reduce the public API surface, and improve documentation and samples.

Updates in v0.11 timeframe

  • TensorFlow is an open source machine learning framework used for deep learning scenarios (such as computer vision and natural language processing). ML.NET has support for using TensorFlow models, but previously only supported image classification scenarios. With the 0.11 release, support for text input has been added so you can use TensorFlow models for text analysis, such as sentiment analysis. You can see code example details in this code.
  • ONNX is an open and interoperable model format that enables using models trained in one framework (i.e. scikit-learn, TensorFlow, xgboost, etc.) to use in another framework (like ML.NET). In ML.NET 0.11 Microsoft.ML.ONNX has been renamed to Microsoft.ML.ONNXConverter and Microsoft.ML.ONNXTransorm has been renamed to Microsoft.ML.ONNXTransformer to make the distinction between ONNX conversion and transformation clearer. 

Breaking changes in ML.NET 0.11

For your convenience, if you are moving your code from ML.NET v0.10 to v0.11, you can check out the breaking changes list that impacted our samples.

Planning to go to production?

alt text

If you are using ML.NET in your app and looking to go into production, you can talk to an engineer on the ML.NET team to:

  • Get help implementing ML.NET successfully in your application.
  • Provide feedback about ML.NET.
  • Demo your app and potentially have it featured on the ML.NET homepage, .NET Blog, or other Microsoft channel.

Fill out this form and leave your contact information at the end if you’d like someone from the ML.NET team to contact you.

Explore the community samples and share yours!

As part of the ML.NET Samples repo, we also have a special Community Samples page pointing to multiple samples provided by the community. These samples are not maintained by Microsoft, but they are very interesting and cover additional scenarios not covered by us.

Here’s a screenshot of the current Community Samples:

alt text

We encourage you to share your ML.NET demos and samples with the community by simply submitting a brief description and URL pointing to your GitHub repo or blog posts, into this repo issue “Request for your samples!”. We’ll do the rest and publish it at the ML.NET Community Samples page.

Get started!

alt text

If you haven’t already, get started with ML.NET here.

Next, explore further with some other resources:

We appreciate your feedback by filing issues with any suggestions or enhancements in the ML.NET GitHub repo to help us shape ML.NET and make .NET a great platform of choice for Machine Learning.

Thanks and happy coding with ML.NET!

-The ML.NET Team-

This blog was authored by Bri Achtman and Cesar de la Torre, plus additional contributions of the ML.NET team

Bri Achtman
Bri Achtman

Program Manager, .NET

Follow Bri   

8 comments

  • Avatar
    Rahulsagar Voduru

    Hello,
    Is there going to be any significant improvements with respect to Data Visualization in ML.NET? By  improvements I mean features like Pairplots, Heatmaps etc. Also, when can we expect an adequately equipped ML.NET to work with Time Series problems?

  • Avatar
    Abbas Foroughi

     
    In the latest release, version 0.11.0, MovingAverageTransform and SlidingWindowTransform are not accessible in Microsoft. ML. TimeSeries. It’s a very important feature of my stock market algorithmic trading app.
     
    Could you explain the strategy and alternative solution?
     
     
     

  • Avatar
    Eric Johannsen

    There were numerous breaking changes in my tiny project not listed in the breaking changes document: 
    – ReadFromTextFile changed to LoadFromTextFile – MLContext.CreateEnumerable gone (what’s the replacement?) 
    – IPredictor now inaccessable due to its protection level (what’s the new strategy?) 
    – Schema renamed to DataViewSchema 
    – ColumnAttribute gone (what’s the replacement?)
    I understand that ML.Net is pre-release and you’re working like crazy on 1.0. Still, while I want to be a huge fan of it, it’s been a struggle over the last few months to both understand the framework and keep up with the changes.

Leave a comment