SlideShare a Scribd company logo
@elbruno#GlobalAIBootcamp
@elbruno
Auto ML with ML.Net
Bruno Capuano
Innovation Lead
@elbruno
@elbruno
DESKTOP CLOUDWEB MOBILE ML
.NET
IoTGAMING
Your platform for building anything
@elbruno
Windows 10 (Windows Defender)
Power Point (Design Ideas)
Excel (Chart Recommendations)
Bing Ads (Ad Predictions)
+ more
Azure Stream Analytics (Anomaly Detection)
Power BI (Key Influencers)
ML.NET is proven at scale, enterprise ready
@elbruno
Proven & Extensible
Open Source & Cross platform
dot.net/ml
Build your own
Developer Focused
ML.NET is a machine learning framework
made for .NET developers
@elbruno
And many more examples
@ https://github.com/dotnet/machinelearning-samples
Customer segmentation
Recommendations
Predictive maintenance
Forecasting
Issue Classification
Ranking news/topics
Image classification
Sentiment Analysis
Machine Learning scenarios with ML.NET
@elbruno
Easy / Less Control Full Control / Harder
Vision Speech Language
Knowledge SearchLabs
TextAnalyticsAPI client = new TextAnalyticsAPI();
client.AzureRegion = AzureRegions.Westus;
client.SubscriptionKey = "1bf33391DeadFish";
client.Sentiment(
new MultiLanguageBatchInput(
new List<MultiLanguageInput>()
{
new MultiLanguageInput("en","0",
"This is a great vacuum cleaner")
}));
e.g. Sentiment Analysis using Azure Cognitive Services
96% positive
Pre-built machine learning models
@elbruno
Easy / Less Control Full Control / Harder
TextAnalyticsAPI client = new TextAnalyticsAPI();
client.AzureRegion = AzureRegions.Westus;
client.SubscriptionKey = "1bf33391DeadFish";
client.Sentiment(
new MultiLanguageBatchInput(
new List<MultiLanguageInput>()
{
new MultiLanguageInput("en","0",
"This vacuum cleaner sucks so much dirt")
}));
e.g. Sentiment Analysis using Azure Cognitive Services
9% positive
Vision Speech Language
Knowledge SearchLabs
Limitations with pre-built machine learning models
@elbruno
Easy / Less Control Full Control / Harder
TextAnalyticsAPI client = new TextAnalyticsAPI();
client.AzureRegion = AzureRegions.Westus;
client.SubscriptionKey = "1bf33391DeadFish";
client.Sentiment(
new MultiLanguageBatchInput(
new List<MultiLanguageInput>()
{
new MultiLanguageInput("en","0",
"This vacuum cleaner sucks so much dirt")
}));
e.g. Sentiment Analysis using Azure Cognitive Services
9% positive
Vision Speech Language
Knowledge SearchLabs
Limitations with pre-built machine learning models
@elbruno
Load Data
Extract
Features
Model
Consumption
Train
Model
Evaluate
Model
Prepare Your Data Build & Train Run
Machine Leaning workflow
Global AI Night – Machine Learning.Net
AutoML and Model Builder
@elbruno
AutoML
Model
Builder
ML.NET Tooling
ML.NET CLI global tool accelerates productivity
@elbruno
@elbruno
How much is the taxi fare for 1 passenger going from Burlington to Toronto?
ML.NET CLI global tool accelerates productivity
AutoML with ML.NET
@elbruno
Criterion
Loss
Min Samples Split
Min Samples Leaf
XYZ
Parameter 1
Parameter 2
Parameter 3
Parameter 4
…
Distance
Trip time
Car type
Passengers
Time of day
…
Gradient Boosted
Nearest Neighbors
SGD
Bayesian Regression
LGBM
…
Distance Gradient Boosted
Model
Car type
Passengers
Getting started w/machine learning can be hard
ML.NET takes the guess work out of data prep,
feature selection & hyperparameter tuning
Which algorithm? Which parameters?Which features?
Getting started w/machine learning can be hard
@elbruno
N Neighbors
Weights
Metric
P
ZYX
Criterion
Loss
Min Samples Split
Min Samples Leaf
XYZ
Which algorithm? Which parameters?Which features?
Distance
Trip time
Car type
Passengers
Time of day
…
Gradient Boosted
Nearest Neighbors
SGD
Bayesian Regression
LGBM
…
Nearest Neighbors
Model
Iterate
Gradient BoostedDistance
Car brand
Year of make
Car type
Passengers
Trip time
Getting started w/machine learning can be hard
ML.NET takes the guess work out of data prep,
feature selection & hyperparameter tuning
Getting started w/machine learning can be hard
@elbruno
Which algorithm? Which parameters?Which features?
Iterate
Getting started w/machine learning can be hard
ML.NET takes the guess work out of data prep,
feature selection & hyperparameter tuning
Getting started w/machine learning can be hard
@elbruno
25%40%70%
25%
95%
25% 25%
25%
25%
40%
40%
40%
40%
70%
70%
70%Enter data
Define goals
Apply constraints
Input Intelligently test multiple models in parallel
Optimized model
95%
ML.NET accelerates model development
@elbruno
70%95% Feature importance
Distance
Trip time
Car type
Passengers
Time of day
0 1
Model B (70%)
Distance
0 1
Trip time
Car type
Passengers
Time of day
Feature importance Model A (95%)
ML.NET accelerates model development
with model explainability
ML.NET accelerates model development
#insiderDevTour
# STEP 1: Load data
IDataView trainingDataView = mlContext.Data.LoadFromTextFile<TaxiTrip>( ... )
IDataView testDataView = mlContext.Data.LoadFromTextFile<TaxiTrip>( ... )
ConsoleHelper.ShowDataViewInConsole(mlContext, trainingDataView)
# STEP 2: Initialize user-defined progress handler that AutoML will invoke after each model
var progressHandler = new RegressionExperimentProgressHandler()
# STEP 3: Run AutoML regression experiment
ExperimentResult<RegressionMetrics> experimentResult = mlContext.Auto()
.CreateRegressionExperiment(ExperimentTime)
.Execute(trainingDataView, LabelColumnName, progressHandler: progressHandler)
PrintTopModels(experimentResult)
# STEP 4: Evaluate the model on test data
RunDetail<RegressionMetrics> best = experimentResult.BestRun
ITransformer trainedModel = best.Model
IDataView predictions = trainedModel.Transform(testDataView)
# STEP 5: Save trained model to a .ZIP file
mlContext.Model.Save(trainedModel, trainingDataView.Schema, ModelPath)
@elbruno
Demo: Auto ML
MakeMagicHappen();
https://www.avanade.com/AI
@elbruno
Try ML.NET today!
http://dot.net/ml
http://aka.ms/mlnetsamples
http://aka.ms/mlnetdocs
http://aka.ms/mlnet
https://aka.ms/mlnetprod
@elbruno#GlobalAIBootcamp

More Related Content

PPTX
2020 02 29 TechDay Conf - Getting started with Machine Learning.Net
Bruno Capuano
 
PPTX
2019 12 19 Mississauga .Net User Group - Machine Learning.Net and Auto ML
Bruno Capuano
 
PPTX
2019 09 05 Global AI Night Toronto - Machine Learning.Net
Bruno Capuano
 
PDF
Personal resources audit
coolforschool
 
PPTX
2021 02 23 MVP Fusion Getting Started with Machine Learning.Net and AutoML
Bruno Capuano
 
PPTX
2021 06 19 ms student ambassadors nigeria ml net 01 slide-share
Bruno Capuano
 
PPTX
2020 11 19 MVP Days Israel 2020 - Introduction to Machine Learning.Net and Au...
Bruno Capuano
 
PPTX
2020 01 21 Data Platform Geeks - Machine Learning.Net
Bruno Capuano
 
2020 02 29 TechDay Conf - Getting started with Machine Learning.Net
Bruno Capuano
 
2019 12 19 Mississauga .Net User Group - Machine Learning.Net and Auto ML
Bruno Capuano
 
2019 09 05 Global AI Night Toronto - Machine Learning.Net
Bruno Capuano
 
Personal resources audit
coolforschool
 
2021 02 23 MVP Fusion Getting Started with Machine Learning.Net and AutoML
Bruno Capuano
 
2021 06 19 ms student ambassadors nigeria ml net 01 slide-share
Bruno Capuano
 
2020 11 19 MVP Days Israel 2020 - Introduction to Machine Learning.Net and Au...
Bruno Capuano
 
2020 01 21 Data Platform Geeks - Machine Learning.Net
Bruno Capuano
 

Similar to 2019 12 14 Global AI Bootcamp - Auto ML with Machine Learning.Net (20)

PPTX
2020 04 04 NetCoreConf - Machine Learning.Net
Bruno Capuano
 
PPTX
2020 09 24 - CONDG ML.Net
Bruno Capuano
 
PPTX
2018 08 01 C# Community - Introduction to Machine Learning.Net
Bruno Capuano
 
PPTX
2020 04 10 Catch IT - Getting started with ML.Net
Bruno Capuano
 
PPTX
DotNet Conf Madrid 2019 - Whats New in ML.NET
Alberto Diaz Martin
 
PPTX
2018 08 01 C# Mexico Introduction to Machine Learning.Net
Bruno Capuano
 
PPTX
2018 12 18 Tech Valley UserGroup Machine Learning.Net
Bruno Capuano
 
PPTX
Webinar GLUGNet - Machine Learning.Net and Windows Machine Learning
Bruno Capuano
 
PPTX
Machine Learning for .NET Developers - ADC21
Gülden Bilgütay
 
PPTX
Getting Started with Machine Learning.Net & Windows Machine Learning
Bruno Capuano
 
PDF
201909 Automated ML for Developers
Mark Tabladillo
 
PDF
Introduction to ML.NET
Gianni Rosa Gallina
 
PPTX
2018 09 26 CTT .NET User Group - Introduction to Machine Learning.Net and Win...
Bruno Capuano
 
PPTX
2019 05 23 Visual Studio 2019 Launch at mississauga - Machine Learning.Net
Bruno Capuano
 
PDF
201906 02 Introduction to AutoML with ML.NET 1.0
Mark Tabladillo
 
PDF
Leverage the power of machine learning on windows
Mia Chang
 
PDF
Leverage the power of machine learning on windows
José António Silva
 
PPTX
Data ANZ - Using database for ML.NET.pptx
Luis Beltran
 
PPTX
Introducing ML.NET For Absolute Beginners - Part 1
Bilal Amjad
 
PPTX
Machine Learning with ML.Net
Suhail Jamaldeen
 
2020 04 04 NetCoreConf - Machine Learning.Net
Bruno Capuano
 
2020 09 24 - CONDG ML.Net
Bruno Capuano
 
2018 08 01 C# Community - Introduction to Machine Learning.Net
Bruno Capuano
 
2020 04 10 Catch IT - Getting started with ML.Net
Bruno Capuano
 
DotNet Conf Madrid 2019 - Whats New in ML.NET
Alberto Diaz Martin
 
2018 08 01 C# Mexico Introduction to Machine Learning.Net
Bruno Capuano
 
2018 12 18 Tech Valley UserGroup Machine Learning.Net
Bruno Capuano
 
Webinar GLUGNet - Machine Learning.Net and Windows Machine Learning
Bruno Capuano
 
Machine Learning for .NET Developers - ADC21
Gülden Bilgütay
 
Getting Started with Machine Learning.Net & Windows Machine Learning
Bruno Capuano
 
201909 Automated ML for Developers
Mark Tabladillo
 
Introduction to ML.NET
Gianni Rosa Gallina
 
2018 09 26 CTT .NET User Group - Introduction to Machine Learning.Net and Win...
Bruno Capuano
 
2019 05 23 Visual Studio 2019 Launch at mississauga - Machine Learning.Net
Bruno Capuano
 
201906 02 Introduction to AutoML with ML.NET 1.0
Mark Tabladillo
 
Leverage the power of machine learning on windows
Mia Chang
 
Leverage the power of machine learning on windows
José António Silva
 
Data ANZ - Using database for ML.NET.pptx
Luis Beltran
 
Introducing ML.NET For Absolute Beginners - Part 1
Bilal Amjad
 
Machine Learning with ML.Net
Suhail Jamaldeen
 
Ad

More from Bruno Capuano (19)

PPTX
Let's code a drone to follow faces using Python 🐍
Bruno Capuano
 
PPTX
Using Azure IoT to feed my squirrels ️
Bruno Capuano
 
PPTX
2021 12 01 Global XR Conference - My experiences adapting a Digital Twin WebG...
Bruno Capuano
 
PPTX
Global AI on Virtual Tour Oslo - Anomaly Detection using ML.Net on a drone te...
Bruno Capuano
 
PPTX
2021 04 21 Azure Sydney User Group - Scaling a POC to an Enterprise using Azu...
Bruno Capuano
 
PPTX
2021 02 13 CodeGen Verona - Let’s code a drone to follow faces syncing everyt...
Bruno Capuano
 
PPTX
2020 10 22 AI Fundamentals - Azure Machine Learning
Bruno Capuano
 
PPTX
2020 08 06 Global XR Talks - Lessons Learned creating a multiplatform AI proj...
Bruno Capuano
 
PPTX
2020 06 27 Global AI On Tour Virtual GTA
Bruno Capuano
 
PPTX
2020 06 13 Best of Build 2020 - Canada Community Edition - Artificial Intelli...
Bruno Capuano
 
PPTX
Global Azure AI Tour Buenos Aires Argentina, Drones and AI
Bruno Capuano
 
PPTX
2020 04 18 Global AI On Tour Monterrey - Program a Drone using AI
Bruno Capuano
 
PPTX
2020 04 09 Global AI Community Virtual Tour - Drones and AI
Bruno Capuano
 
PPTX
2019 11 26 BotTO November 2019 Meetup at TD
Bruno Capuano
 
PPTX
2019 10 27 Everyday Artificial Intelligence @ Hack4Heritage
Bruno Capuano
 
PPTX
2019 05 11 Chicago Codecamp - Deep Learning for everyone? Challenge Accepted!
Bruno Capuano
 
PPTX
2019 04 27 global azure bootcamp Machine Learning.Net
Bruno Capuano
 
PPTX
2019 04 02 Global AI Night
Bruno Capuano
 
PPTX
2019 02 27 How to earn an MVP Awards and what are the benefits
Bruno Capuano
 
Let's code a drone to follow faces using Python 🐍
Bruno Capuano
 
Using Azure IoT to feed my squirrels ️
Bruno Capuano
 
2021 12 01 Global XR Conference - My experiences adapting a Digital Twin WebG...
Bruno Capuano
 
Global AI on Virtual Tour Oslo - Anomaly Detection using ML.Net on a drone te...
Bruno Capuano
 
2021 04 21 Azure Sydney User Group - Scaling a POC to an Enterprise using Azu...
Bruno Capuano
 
2021 02 13 CodeGen Verona - Let’s code a drone to follow faces syncing everyt...
Bruno Capuano
 
2020 10 22 AI Fundamentals - Azure Machine Learning
Bruno Capuano
 
2020 08 06 Global XR Talks - Lessons Learned creating a multiplatform AI proj...
Bruno Capuano
 
2020 06 27 Global AI On Tour Virtual GTA
Bruno Capuano
 
2020 06 13 Best of Build 2020 - Canada Community Edition - Artificial Intelli...
Bruno Capuano
 
Global Azure AI Tour Buenos Aires Argentina, Drones and AI
Bruno Capuano
 
2020 04 18 Global AI On Tour Monterrey - Program a Drone using AI
Bruno Capuano
 
2020 04 09 Global AI Community Virtual Tour - Drones and AI
Bruno Capuano
 
2019 11 26 BotTO November 2019 Meetup at TD
Bruno Capuano
 
2019 10 27 Everyday Artificial Intelligence @ Hack4Heritage
Bruno Capuano
 
2019 05 11 Chicago Codecamp - Deep Learning for everyone? Challenge Accepted!
Bruno Capuano
 
2019 04 27 global azure bootcamp Machine Learning.Net
Bruno Capuano
 
2019 04 02 Global AI Night
Bruno Capuano
 
2019 02 27 How to earn an MVP Awards and what are the benefits
Bruno Capuano
 
Ad

Recently uploaded (20)

PPTX
Dev Dives: Automate, test, and deploy in one place—with Unified Developer Exp...
AndreeaTom
 
PDF
Data_Analytics_vs_Data_Science_vs_BI_by_CA_Suvidha_Chaplot.pdf
CA Suvidha Chaplot
 
PPTX
IT Runs Better with ThousandEyes AI-driven Assurance
ThousandEyes
 
PDF
AI Unleashed - Shaping the Future -Starting Today - AIOUG Yatra 2025 - For Co...
Sandesh Rao
 
PDF
Make GenAI investments go further with the Dell AI Factory
Principled Technologies
 
PDF
NewMind AI Weekly Chronicles - July'25 - Week IV
NewMind AI
 
PDF
REPORT: Heating appliances market in Poland 2024
SPIUG
 
PDF
Oracle AI Vector Search- Getting Started and what's new in 2025- AIOUG Yatra ...
Sandesh Rao
 
PDF
Software Development Methodologies in 2025
KodekX
 
PDF
A Strategic Analysis of the MVNO Wave in Emerging Markets.pdf
IPLOOK Networks
 
PDF
Responsible AI and AI Ethics - By Sylvester Ebhonu
Sylvester Ebhonu
 
PDF
Automating ArcGIS Content Discovery with FME: A Real World Use Case
Safe Software
 
PDF
AI-Cloud-Business-Management-Platforms-The-Key-to-Efficiency-Growth.pdf
Artjoker Software Development Company
 
PDF
Google I/O Extended 2025 Baku - all ppts
HusseinMalikMammadli
 
PPTX
What-is-the-World-Wide-Web -- Introduction
tonifi9488
 
PPTX
AI in Daily Life: How Artificial Intelligence Helps Us Every Day
vanshrpatil7
 
PPTX
cloud computing vai.pptx for the project
vaibhavdobariyal79
 
PDF
Structs to JSON: How Go Powers REST APIs
Emily Achieng
 
PPTX
Applied-Statistics-Mastering-Data-Driven-Decisions.pptx
parmaryashparmaryash
 
PPTX
New ThousandEyes Product Innovations: Cisco Live June 2025
ThousandEyes
 
Dev Dives: Automate, test, and deploy in one place—with Unified Developer Exp...
AndreeaTom
 
Data_Analytics_vs_Data_Science_vs_BI_by_CA_Suvidha_Chaplot.pdf
CA Suvidha Chaplot
 
IT Runs Better with ThousandEyes AI-driven Assurance
ThousandEyes
 
AI Unleashed - Shaping the Future -Starting Today - AIOUG Yatra 2025 - For Co...
Sandesh Rao
 
Make GenAI investments go further with the Dell AI Factory
Principled Technologies
 
NewMind AI Weekly Chronicles - July'25 - Week IV
NewMind AI
 
REPORT: Heating appliances market in Poland 2024
SPIUG
 
Oracle AI Vector Search- Getting Started and what's new in 2025- AIOUG Yatra ...
Sandesh Rao
 
Software Development Methodologies in 2025
KodekX
 
A Strategic Analysis of the MVNO Wave in Emerging Markets.pdf
IPLOOK Networks
 
Responsible AI and AI Ethics - By Sylvester Ebhonu
Sylvester Ebhonu
 
Automating ArcGIS Content Discovery with FME: A Real World Use Case
Safe Software
 
AI-Cloud-Business-Management-Platforms-The-Key-to-Efficiency-Growth.pdf
Artjoker Software Development Company
 
Google I/O Extended 2025 Baku - all ppts
HusseinMalikMammadli
 
What-is-the-World-Wide-Web -- Introduction
tonifi9488
 
AI in Daily Life: How Artificial Intelligence Helps Us Every Day
vanshrpatil7
 
cloud computing vai.pptx for the project
vaibhavdobariyal79
 
Structs to JSON: How Go Powers REST APIs
Emily Achieng
 
Applied-Statistics-Mastering-Data-Driven-Decisions.pptx
parmaryashparmaryash
 
New ThousandEyes Product Innovations: Cisco Live June 2025
ThousandEyes
 

2019 12 14 Global AI Bootcamp - Auto ML with Machine Learning.Net

  • 2. @elbruno Auto ML with ML.Net Bruno Capuano Innovation Lead @elbruno
  • 3. @elbruno DESKTOP CLOUDWEB MOBILE ML .NET IoTGAMING Your platform for building anything
  • 4. @elbruno Windows 10 (Windows Defender) Power Point (Design Ideas) Excel (Chart Recommendations) Bing Ads (Ad Predictions) + more Azure Stream Analytics (Anomaly Detection) Power BI (Key Influencers) ML.NET is proven at scale, enterprise ready
  • 5. @elbruno Proven & Extensible Open Source & Cross platform dot.net/ml Build your own Developer Focused ML.NET is a machine learning framework made for .NET developers
  • 6. @elbruno And many more examples @ https://github.com/dotnet/machinelearning-samples Customer segmentation Recommendations Predictive maintenance Forecasting Issue Classification Ranking news/topics Image classification Sentiment Analysis Machine Learning scenarios with ML.NET
  • 7. @elbruno Easy / Less Control Full Control / Harder Vision Speech Language Knowledge SearchLabs TextAnalyticsAPI client = new TextAnalyticsAPI(); client.AzureRegion = AzureRegions.Westus; client.SubscriptionKey = "1bf33391DeadFish"; client.Sentiment( new MultiLanguageBatchInput( new List<MultiLanguageInput>() { new MultiLanguageInput("en","0", "This is a great vacuum cleaner") })); e.g. Sentiment Analysis using Azure Cognitive Services 96% positive Pre-built machine learning models
  • 8. @elbruno Easy / Less Control Full Control / Harder TextAnalyticsAPI client = new TextAnalyticsAPI(); client.AzureRegion = AzureRegions.Westus; client.SubscriptionKey = "1bf33391DeadFish"; client.Sentiment( new MultiLanguageBatchInput( new List<MultiLanguageInput>() { new MultiLanguageInput("en","0", "This vacuum cleaner sucks so much dirt") })); e.g. Sentiment Analysis using Azure Cognitive Services 9% positive Vision Speech Language Knowledge SearchLabs Limitations with pre-built machine learning models
  • 9. @elbruno Easy / Less Control Full Control / Harder TextAnalyticsAPI client = new TextAnalyticsAPI(); client.AzureRegion = AzureRegions.Westus; client.SubscriptionKey = "1bf33391DeadFish"; client.Sentiment( new MultiLanguageBatchInput( new List<MultiLanguageInput>() { new MultiLanguageInput("en","0", "This vacuum cleaner sucks so much dirt") })); e.g. Sentiment Analysis using Azure Cognitive Services 9% positive Vision Speech Language Knowledge SearchLabs Limitations with pre-built machine learning models
  • 11. Global AI Night – Machine Learning.Net AutoML and Model Builder
  • 12. @elbruno AutoML Model Builder ML.NET Tooling ML.NET CLI global tool accelerates productivity
  • 14. @elbruno How much is the taxi fare for 1 passenger going from Burlington to Toronto? ML.NET CLI global tool accelerates productivity AutoML with ML.NET
  • 15. @elbruno Criterion Loss Min Samples Split Min Samples Leaf XYZ Parameter 1 Parameter 2 Parameter 3 Parameter 4 … Distance Trip time Car type Passengers Time of day … Gradient Boosted Nearest Neighbors SGD Bayesian Regression LGBM … Distance Gradient Boosted Model Car type Passengers Getting started w/machine learning can be hard ML.NET takes the guess work out of data prep, feature selection & hyperparameter tuning Which algorithm? Which parameters?Which features? Getting started w/machine learning can be hard
  • 16. @elbruno N Neighbors Weights Metric P ZYX Criterion Loss Min Samples Split Min Samples Leaf XYZ Which algorithm? Which parameters?Which features? Distance Trip time Car type Passengers Time of day … Gradient Boosted Nearest Neighbors SGD Bayesian Regression LGBM … Nearest Neighbors Model Iterate Gradient BoostedDistance Car brand Year of make Car type Passengers Trip time Getting started w/machine learning can be hard ML.NET takes the guess work out of data prep, feature selection & hyperparameter tuning Getting started w/machine learning can be hard
  • 17. @elbruno Which algorithm? Which parameters?Which features? Iterate Getting started w/machine learning can be hard ML.NET takes the guess work out of data prep, feature selection & hyperparameter tuning Getting started w/machine learning can be hard
  • 18. @elbruno 25%40%70% 25% 95% 25% 25% 25% 25% 40% 40% 40% 40% 70% 70% 70%Enter data Define goals Apply constraints Input Intelligently test multiple models in parallel Optimized model 95% ML.NET accelerates model development
  • 19. @elbruno 70%95% Feature importance Distance Trip time Car type Passengers Time of day 0 1 Model B (70%) Distance 0 1 Trip time Car type Passengers Time of day Feature importance Model A (95%) ML.NET accelerates model development with model explainability ML.NET accelerates model development
  • 20. #insiderDevTour # STEP 1: Load data IDataView trainingDataView = mlContext.Data.LoadFromTextFile<TaxiTrip>( ... ) IDataView testDataView = mlContext.Data.LoadFromTextFile<TaxiTrip>( ... ) ConsoleHelper.ShowDataViewInConsole(mlContext, trainingDataView) # STEP 2: Initialize user-defined progress handler that AutoML will invoke after each model var progressHandler = new RegressionExperimentProgressHandler() # STEP 3: Run AutoML regression experiment ExperimentResult<RegressionMetrics> experimentResult = mlContext.Auto() .CreateRegressionExperiment(ExperimentTime) .Execute(trainingDataView, LabelColumnName, progressHandler: progressHandler) PrintTopModels(experimentResult) # STEP 4: Evaluate the model on test data RunDetail<RegressionMetrics> best = experimentResult.BestRun ITransformer trainedModel = best.Model IDataView predictions = trainedModel.Transform(testDataView) # STEP 5: Save trained model to a .ZIP file mlContext.Model.Save(trainedModel, trainingDataView.Schema, ModelPath)

Editor's Notes

  • #4: .NET is a great tech stack for building a wide variety of applications. There is ASP.NET for web development, Xamarin for mobile development and with ML.NET we are trying to make .NET great for Machine Learning.
  • #5: Even though we just recently released ML.NET at Build this year, ML.NET has been used at Microsoft heavily for over a decade by iconic MS products. Bing Ads uses ML.NET for add-click predictions Excel uses ML.NET for chart recommendations PowerPoint uses ML.NET for Design Ideas Windows10 uses ML.NET for Windows Defender
  • #6: 5
  • #7: 6
  • #8: 7
  • #9: 8
  • #10: 9
  • #11: 10
  • #13: ML.NET provides tooling that makes it easy to use. In particular, 2 really valuable tools are: AutoML and Model Builder What is AutoML? It is an API that accelerates model development for you. A lot of developers do not have the experience required to build or train Machine Learning models. With AutoML, the process of finding the best algorithm, is automated! Model Builder on the other hand provides an easy to understand visual interface to build, train, and deploy custom machine learning models. Prior machine learning expertise is not required. It also supports AutoML Rememeber depending on your data, giving you the error of each of the models and you can then decide which model to use. Most people just use the model with the least error. And we will see it in action soon.
  • #15: To demonstrate what AutoML is, let’s consider that we want to provide a service that allows users to predict taxi fare before they book or call a taxi. How can we build this feature/service?
  • #16: A data scientist’s job is to find the best algorithm that will do taxi fare prediction. Let’s says we have a dataset that contains information such as trip distance, trip time, number of passengers, time of day of the trip etc. A data scientist will spend a lot of time trying to decide which of these pieces of information is important when predicting taxi fare. In ML, there are so many algorithms and are generally referred to as trainers, for example linear regression, convolutional neural network etc The data scientist will try one algorithm at a time, picking features as he desires, and then wait to see how the model performs. In this case, this model only scored 30% based on number of bad predictions it made.
  • #17: Microsoft Envision 2016
  • #18: Microsoft Envision 2016
  • #19: Microsoft Envision 2016
  • #20: 19
  • #21: ML.NET is an end to end solution for your Machine Learning needs. The steps taken: We loaded data, which we already do! We initialized a progress handler which would help track each model tried! We then ran AutoML which tried many different models and returned back to us the top models! We picked the best preforming model and evaluated it on test data! Finally, we saved the model for future use. Very few lines of code needed. No model building expertise is needed. There’s throurough documentation on the ML.NET site and there also many samples provided – you might find what you need there and code provided to you.