Windows 10: Announcing ML.NET 0.9 – Machine Learning for .NET

Discus and support Announcing ML.NET 0.9 – Machine Learning for .NET in Windows 10 News to solve the problem; ML.NET is an open-source and cross-platform machine learning framework (Windows, Linux, macOS) for .NET developers. Using ML.NET, developers can... Discussion in 'Windows 10 News' started by Brink, Jan 10, 2019.

  1. Brink Win User

    Announcing ML.NET 0.9 – Machine Learning for .NET


    The output of the above code is:

    Label Score BiggestFeature Value Weight Contribution

    24.00 27.74 RoomsPerDwelling 6.58 98.55 39.95
    21.60 23.85 RoomsPerDwelling 6.42 98.55 39.01
    34.70 29.29 RoomsPerDwelling 7.19 98.55 43.65
    33.40 27.17 RoomsPerDwelling 7.00 98.55 42.52

    FCC can be used as a step in the ML pipeline and complements the current explainability tools in ML.NET like Permutation Feature Importance (PFI). With ML.NET 0.8, we already provided initial APIs for model explainability to help machine learning developers better understand the feature importance of models (“Overall Feature Importance”) and create (“Generalized Additive Models”)

    Sample for FCC.

    Additional model explainability improvements for features selection

    In addition to FCC, we also extended the capabilities of Permutation Feature Importance (PFI) and Generalized Additive Models (GAMs):

    • PFI now supports most learning tasks: Regression, Binary Classification, Multiclass Classification, and Ranking.
    • PFI now allows you to calculate confidence intervals on feature importance scores to allow you to get a better estimate of the mean.
    • GAMs now supports Feature Contribution Calculation (FCC) so you can quickly see which features drove an individual prediction.
    Sample for PFI.

    Added GPU support for ONNX Transform


    Announcing ML.NET 0.9 – Machine Learning for .NET 50994115-3d8e4d80-14d0-11e9-8612-6f0531befda8.png


    In ML.NET 0.9 we added the capability to score/run ONNX models using CUDA 10.0 enabled GPUs (such as most NVIDIA GPUs), by integrating the high performance ONNX Runtime library. GPU support for ONNX models is currently available only on Windows 64-bit (not x86,yet), with Linux and Mac support coming soon. Learn here about supported ONNX/CUDA formats/version.

    Sample code plus a Test here.

    New Visual Studio ML.NET project templates preview


    Announcing ML.NET 0.9 – Machine Learning for .NET 50994182-73cbcd00-14d0-11e9-8659-78a26d7ffd38.png


    We are pleased to announce a preview of Visual Studio project templates for ML.NET. These templates make it very easy to get started with machine learning. You can download these templates from Visual Studio gallery here.

    The templates cover the following scenarios:

    • ML.NET Console Application – Sample app that demonstrates how you can use a machine learning model in your application.
    • ML.NET Model Library – Creates a new machine learning model library which you can consume from within your application.

    Announcing ML.NET 0.9 – Machine Learning for .NET 50994231-9362f580-14d0-11e9-9c3e-28261c02ee0e.png


    Additional API improvements in ML.NET 0.9

    In this release we have also added other enhancements to our APIs such as the following.

    Text data loading is simplified

    In ML.NET 0.9, when using the TextLoader class you can either directly provide the attributes/columns in the file as you were able to do it in previous versions or as a new improvement and optional choice you can instead specify those columns/attributes through a data-model class.

    Before ML.NET v0.9 you always needed to have explicit code like the following:

    Code: // //... Your code... var mlContext = new MLContext(); // Create the reader: define the data columns and where to find them in the text file. var reader = mlContext.Data.CreateTextReader(new[] { new TextLoader.Column("IsOver50K", DataKind.BL, 0), new TextLoader.Column("Workclass", DataKind.TX, 1) },hasHeader: true ); var dataView = reader.Read(dataPath);[/quote] With 0.9, you can simply load the type as follows.

    Code: // //... Your code in your class... var mlContext = new MLContext(); // Read the data into a data view. var dataView = mlContext.Data.ReadFromTextFile<InspectedRow>(dataPath, hasHeader: true); // The data model. This type will be used from multiple code. private class InspectedRow { [LoadColumn(0)] public bool IsOver50K { get; set; } [LoadColumn(1)] public string Workclass { get; set; } }[/quote] Sample code.

    Get prediction confidence factor

    With Calibrator Estimators, in addition to the score column you can get when evaluating the quality of your model you can now get a probability column as well (probability of this example being on the predicted class; prediction confidence indicator).

    For instance, you could get a list of the probabilities per each predicted value, like in the following list:

    Score - 0.458968 Probability 0.4670409
    Score - 0.7022135 Probability 0.3912723
    Score 1.138822 Probability 0.8703266

    Sample code

    New Key-Value mapping estimator and transform

    This feature replaces the TermLookupTransform and provides a way to specify the mapping betweeen two values (note this is specified and not trained). You can specify the mapping by providing a keys list and values list that must be equal in size.

    Sample code

    Other improvements and changes

    • Allow ML.NET to run on Windows Nano containers or Windows machines without Visual C++ runtime installed.
    • Metadata Support In DataView Construction with information about the model, like the evaluation metrics which is encoded metadata into the model and can be programatically extracted and therefore visualized in any tool. This feature can be useful for ISVs.
    • For a with list of breaking changes in v0.9 that impacted the ML.NET samples, check this Gist here
    Moving forward

    While on the past 9 months we have been adding new features and improving ML.NET, in the forthcoming 0.10, 0.11 and upcoming releases before we reach v1.0, we will focus on the overall stability of the package, continue to refine the API, increase test coverage and improve documentation and samples.

    Provide your feedback through the new ML.NET survey!

    ML.NET is new, and as we are developing it, we would love to get your feedback! Please fill out the brief survey below and help shape the future of ML.NET by telling us about your usage and interest in Machine Learning and ML.NET.

    Take the survey now!


    Announcing ML.NET 0.9 – Machine Learning for .NET 50994275-b7bed200-14d0-11e9-8855-91074af44054.png


    Get started!


    Announcing ML.NET 0.9 – Machine Learning for .NET 50994359-ec328e00-14d0-11e9-87d4-cb10d6171339.png


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

    Next, going further explore some other resources:

    We will 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 Cesar de la Torre and Pranav Rastogi plus additional contributions from the ML.NET team

    [/quote]
    Source: Announcing ML.NET 0.9 – Machine Learning for .NET | .NET Blog

    :)
     
    Brink, Jan 10, 2019
    #1
  2. Brink Win User

    Announcing ML.NET 0.8 - Machine Learning for .NET


    Read more: Announcing ML.NET 0.8 Machine Learning for .NET | .NET Blog

    Tweet



    — Twitter API (@User) View on Twiiter
     
    Brink, Jan 10, 2019
    #2
  3. Brink Win User
    Announcing ML.NET 0.7 (Machine Learning .NET)


    Source: Announcing ML.NET 0.7 (Machine Learning .NET) | .NET Blog
     
    Brink, Jan 10, 2019
    #3
  4. Brink Win User

    Announcing ML.NET 0.9 – Machine Learning for .NET

    Announcing .NET Standard 2.0


    Read more: Announcing .NET Standard 2.0 | .NET Blog
     
    Brink, Jan 10, 2019
    #4
Thema:

Announcing ML.NET 0.9 – Machine Learning for .NET

Loading...
  1. Announcing ML.NET 0.9 – Machine Learning for .NET - Similar Threads - Announcing NET –

  2. Announcing ML.NET 0.11 - Machine Learning for .NET

    in Windows 10 News
    Announcing ML.NET 0.11 - Machine Learning for .NET: 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...
  3. Announcing ML.NET 0.10 - Machine Learning for .NET

    in Windows 10 News
    Announcing ML.NET 0.10 - Machine Learning for .NET: 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...
  4. Announcing ML.NET 0.8 - Machine Learning for .NET

    in Windows 10 News
    Announcing ML.NET 0.8 - Machine Learning for .NET: ML.NET is an open-source and cross-platform framework (Windows, Linux, macOS) which makes machine learning accessible for .NET developers. ML.NET allows you to create and use machine learning models targeting scenarios to achieve common tasks such as sentiment analysis,...
  5. Announcing .NET Core 2.2

    in Windows 10 News
    Announcing .NET Core 2.2: We’re excited to announce the release of .NET Core 2.2. It includes diagnostic improvements to the runtime, support for ARM32 for Windows and Azure Active Directory for SQL Client. The biggest improvements in this release are in ASP.NET Core. ASP.NET Core 2.2 and Entity...
  6. Announcing ML.NET 0.7 (Machine Learning .NET)

    in Windows 10 News
    Announcing ML.NET 0.7 (Machine Learning .NET): We’re excited to announce today the release of ML.NET 0.7 – the latest release of the cross-platform and open source machine learning framework for .NET developers (ML.NET 0.1 was released at //Build 2018). This release focuses on enabling better support for recommendation...
  7. Announcing .NET Core 2.1

    in Windows 10 News
    Announcing .NET Core 2.1: We’re excited to announce the release of .NET Core 2.1. It includes improvements to performance, to the runtime and tools. It also includes a new way to deploy tools as NuGet packages. We’ve added a new primitive type called Span<T> that operates on data without allocations....
  8. Announcing .NET Standard 2.0

    in Windows 10 News
    Announcing .NET Standard 2.0: The .NET Standard 2.0 specification is now complete. It is supported in .NET Core 2.0, in the .NET Framework 4.6.1 and later versions, and in Visual Studio 15.3. You can start using .NET Standard 2.0 today. For the impatient: TL;DR .NET Standard is for sharing code....
  9. Announcing the .NET Framework 4.7.2

    in Windows 10 News
    Announcing the .NET Framework 4.7.2: Today, we are happy to announce the release of the .NET Framework 4.7.2. It’s included in the Windows 10 April 2018 Update. .NET Framework 4.7.2 is also available on Windows 7+ and Windows Server 2008 R2+. You can download the .NET Framework 4.7.2 Web Installer Offline...
  10. Announcing .NET Framework 4.6

    in Windows 10 News
    Announcing .NET Framework 4.6: We're excited to announce the RTM releases of .NET Framework 4.6 and Visual Studio 2015 today. You can read about the new features or leave that for later and try them out now. The quickest way to get started is to install the free Visual Studio 2015 Community version....