Today we are excited to release ML.NET 0.5. This release adds TensorFlow model scoring as a transform to ML.NET. This enables using an existing TensorFlow model within an ML.NET experiment. In addition to this, we have continued the work on new APIs that enable currently missing functionality. We welcome feedback and contributions to the conversation: relevant issues can be found here. A simple example of the new APIs can be found here.
ML.NET supports Windows, MacOS, and Linux. See supported OS versions of .NET Core 2.0 for more details.
You can install ML.NET NuGet from the CLI using:
dotnet add package Microsoft.ML
From package manager:
Install-Package Microsoft.ML
Below are some of the highlights from this release.
-
Added a TensorFlow model scoring transform (TensorFlowTransform) (#704)
- TensorFlow is a popular machine learning toolkit that enables training deep neural networks (and general numeric computations).
- This transform enables taking an existing TensorFlow model, either trained by you or downloaded from somewhere else, and get the scores from the model in ML.NET.
- For now, these scores can be used within a
LearningPipeline
as inputs to a learner. However, with the upcoming ML.NET APIs, the scores from the TensorFlow model will be directly accessible. - The implementation of this transform is based on code from TensorFlowSharp.
- Example usage of the transform with the existing
LearningPipeline
API can be found here - In the future, we will add functionality in ML.NET to enable identifying the expected inputs and outputs of TensorFlow models. For now, the TensorFlow APIs or a tool like Netron can be used.
Additional issues closed in this milestone can be found here.
Shoutout to adamsitnik, Jongkeun, and the ML.NET team for their contributions as part of this release!