Microsoft Announces ML.NET 0.5

Recently, Microsoft has announced the release of ML.NET 0.5.- an open source machine learning framework for .NET developers. With this release TensorFlow model scoring, as-a-transform has been added to ML.NET. Issues and feedback reported in the earlier version and preview releases have also been addressed.
 
TensorFlow model scoring transform
 
TensorFlow is a deep learning and machine learning toolkit that helps training deep neural networks and high-performance numerical computation.
 
With ML.NET 0.5, Microsoft has introduced the first level of integration with TensorFlow in ML.NET, allowing you to take an existing TensorFlow model, either trained by you or downloaded from somewhere else, and get the scores from the TensorFlow model in ML.NET.
 
To implement TensorFlow scoring you simply need to add a reference to the ML.NET NuGet packages in your .NET Core. ML.NET includes and references the native TensorFlow library that enables you to write code for loading an existing trained TensorFlow model file for scoring.
 
Microsoft Announces ML.NET 0.5
Source: Microsoft 
 
A sample of how to use the TensorFlow transform in the ML.NET pipeline has been set-out in the official blog:
 
"// ... Additional transformations in the pipeline code

pipeline.Add(new TensorFlowScorer()
{
ModelFile = "model/tensorflow_inception_graph.pb", // Example using the Inception v3 TensorFlow model
InputColumns = new[] { "input" }, // Name of input in the TensorFlow model
OutputColumn = "softmax2_pre_activation" // Name of output in the TensorFlow model
});

// ... Additional code specifying a learner and training process for the ML.NET model"
 
This code has used a pre-trained TensorFlow model named Inception v3, which can be downloaded from here. The Inception v3 is an image recognition model to categorize entire images into a thousand classes.
 
You can use the TensorFlow APIs or a tool like Netron to explore the TensorFlow model. On Opening the file 'tensorflow_inception_graph.pb' with Netron and exploring the model’s graph, you will see how it correlates the InputColumn with the node’s input at the start of the graph.
 
 Microsoft Announces ML.NET 0.5
Source: Microsoft 
 
In the end, you can see how OutputColumn correlates with softmax2_pre_activation node’s output.
 
Microsoft Announces ML.NET 0.5
Source: Microsoft 
 
The blog also highlighted that the ML.NET framework is currently surfacing TensorFlow, in the future, it will look into additional Deep Learning library integrations, like Torch and CNTK.
 
To explore more code example using the TensorFlowTransform with the existing  LearningPipeline API you can visit here.
 
You can visit the official announcement here