2 Machine learning fundamentals

 

This chapter covers

  • The process of training a machine learning model
  • Different types of machine learning
  • Using ML.NET to perform supervised machine learning tasks
  • Using ML.NET to perform unsupervised machine learning tasks

Although we don’t need to be machine learning (ML) or data science experts to use ML.NET, there are still some basic concepts that we need to understand. Otherwise, we won’t even know how to get ML.NET to solve a specific type of problem that we want it to solve.

What we don’t necessarily need to know are the complex algorithms and mathematical formulae that are involved in machine learning. These things are important and machine learning is impossible without them, however, we can let the underlying pipeline deal with these concepts.

It’s analogous to driving a car. To be a good driver, you don’t need to know how the internal combustion engine of the car works, but you aren’t getting anywhere unless you know where all the controls are and how to use them.

2.1 Types of machine learning

Broadly speaking, there are three types of machine paradigms, which can be outlined as follows:

2.2 Supervised machine learning

2.2.1 Regression

2.2.2 Classification

2.3 Unsupervised machine learning

2.3.1 Clustering

2.3.2 Anomaly detection

2.3.3 Association rule learning

2.4 Reinforcement machine learning

2.4.1 The reinforcement learning process

2.4.2 Exploitation and exploration

2.4.3 Reinforcement learning applications

2.5 Using ML.NET for supervised learning

2.5.1 Training a classification model

2.5.2 Auto-generated ML.NET project

2.5.3 Retraining the classification model

2.5.4 Consuming a trained classification model

2.6 Using ML.NET for unsupervised learning

2.7 Summary