Getting Started

Get an overview of the intended audience and prerequisites for this course.

Target audience

This course is for any software developer who wants to learn how to build and train their own machine learning models by using ML.NET. It would be especially useful to .NET developers who want to learn the fundamentals of machine learning or expand their knowledge of the inner workings of artificial intelligence.


ML.NET has been designed to provide as little friction as possible in building machine learning models. You don’t need to have any prior experience with machine learning. The key concepts of machine learning will be covered in the course.

However, since ML.NET builds models by generating C# code, knowledge of C# and .NET fundamentals is essential. You don’t need to be a C# expert. However, knowledge of the following topics is a must:

  • Basic C# syntax.

  • Understanding of .NET project structure and application startup.

  • Understanding of basic object-oriented programming concepts.

Because ML.NET is primarily a command line interface (CLI) tool, basic knowledge of how to use a Linux terminal will also be essential. However, knowledge of any specific Linux commands is not required.

Learning outcomes

This course aims to cover high-level fundamentals of machine learning and the main features of ML.NET. By the end of this course, you'll be familiar with how ML.NET can be utilized to build and train machine learning models, what machine learning tasks it supports, and how it chooses the most optimal training algorithms.

You'll start with the basics and learn how to get ML.NET to complete some relatively simple tasks. Toward the end of the course, you'll cover more advanced topics, such as using ML.NET to build neural networks and apply deep learning. You'll also learn how ML.NET can be integrated with external tools to become even more powerful, such as using AutoML to automate complex training scenarios or exchanging its output models with other popular machine learning tools, such as PyTorch and TensorFlow.