Duration
5 days
Overview
ML.NET is a free, open-source, cross-platform machine learning framework made specifically for .NET developers.
With ML.NET, you can develop and integrate custom machine learning models into your .NET applications, without needing prior machine learning experience.
ML.NET is an extensible platform, with tooling in Visual Studio as well as a cross-platform CLI, that powers recognized Microsoft features like Windows Hello, Bing Ads, PowerPoint Design Ideas, and more.
Pre-requisite
Experience developing any .NET application using Visual Studio, especially in C# programming language is a must.
Chapter 1 – Getting Started with Machine Learning and ML.NET
- The importance of learning about machine learning today
- The model building process
- Defining your problem statement
- Defining your features
- Obtaining a dataset
- Feature extraction and pipeline
- Model training
- Model evaluation
- Exploring types of learning
- Supervised learning
- Unsupervised learning
- Exploring various machine learning algorithms
- Binary classification
- Regression
- Anomaly detection
- Clustering
- Matrix factorization
- What is ML.NET?
- Technical details of ML.NET
- Components of ML.NET
- Extensibility of ML.NET
Chapter 2 – Setting Up the ML.NET Environment
- Setting up your development environment
- Creating your first ML.NET application
- Creating the project in Visual Studio
- Project architecture
- Running the code
- Running the example
- Evaluating the model
Chapter 3 – Regression Model
- Breaking down regression models
- Choosing the type of regression model
- Choosing a linear regression trainer
- Choosing a logistic regression trainer
- Creating the linear regression application
- Creating the logistic regression application
- Evaluating a regression model
- Loss Function
- Mean squared error
- Mean absolute error
- R-squared
- RMSE
Chapter 4 – Classification Model
- Breaking down classification models
- Choosing a classification trainer
- Creating a binary classification application
- Creating a multi-class classification application
- Evaluating a classification model
- Accuracy
- Area Under ROC Curve
- F1 Score
- Area Under Precision-Recall Curve
- Micro Accuracy
- Macro Accuracy
- Log Loss
- Log-Loss Reduction
Chapter 5 – Clustering Model
- Breaking down the k-means algorithm
- Use cases for clustering
- Diving into the k-means trainer
- Creating the clustering application
- Evaluating a k-means model
- Average distance
- The Davies-Bouldin Index
- Normalized mutual information
Chapter 6 – Anomaly Detection Model
- Breaking down anomaly detection
- Use cases for anomaly detection
- Diving into the randomized PCA trainer
- Diving into time series transforms
- Creating a time series application
- Creating an anomaly detection application
- Evaluating a randomized PCA model
- Area under the ROC curve
- Detection rate at false positive count
Chapter 7 – Matrix Factorization Model
- Breaking down matrix factorizations
- Use cases for matrix factorizations
- Diving into the matrix factorization trainer
- Creating a matrix factorization application
- Exploring the project architecture
- Diving into the code
- Evaluating a matrix factorization model
- Loss Function
- MSF
- MAF
- R-squared
- RMSE
Chapter 8 – Using ML.NET with .NET Core and Forecasting
- Breaking down the .NET Core application architecture
- .NET Core architecture
- .NET Core targets
- .NET Core future
- Creating the stock price estimator application
- Exploring the project architecture
- Diving into the code
- Exploring additional production application enhancements
- Logging
- Utilizing Reflection further
- Utilizing a database
Chapter 9 – Using ML.NET with ASP.NET Core
- Breaking down ASP.NET Core
- Understanding the ASP.NET Core architecture
- Controllers
- Models
- Views
- Blazor
- Creating the file classification web application
- Exploring the project architecture
- Diving into the library
- Diving into the web application
- Diving into the trainer application
- Running the trainer application
- Running the web application
- Exploring additional ideas for improvements
- Logging
- Utilizing a caching layer
- Utilizing a database
Chapter 10 – Using ML.NET with UWP
- Breaking down the UWP architecture
- Views
- Models
- View Models
- Creating the web browser classification application
- Exploring the project architecture
- Diving into the library
- Diving into the UWP browser application
- Diving into the trainer application
- Running the trainer application
- Running the browser application
- Additional ideas for improvements
- Single-down optimization
- Logging
- Utilizing a database
Programme scope, delivery arrangements and suitability are confirmed during enquiry.