Slides used during the session [Getting Started with Machine Learning .Net and Windows Machine Learning [ML.Net & WinML]] on Kitchener Ontario, on 26 Sept 2018 for the Canada's Technology Triangle .Net User Group
2. why should I care about AI and ML?
As a developer,
3. Some problems are difficult to solve using traditional algorithms and
procedural programming.
4. IBM slaps patent on coffee-delivering drones that
can read your MIND (link)
5. IBM slaps patent on coffee-delivering drones that
can read your MIND (link)
6. Prepare Data Build & Train Evaluate
Azure Databricks Azure Machine Learning
Quickly launch and scale Spark on demand
Rich interactive workspace and notebooks
Seamless integration with all Azure data
services
Broad frameworks and tools support:
TensorFlow, Cognitive Toolkit, Caffe2, Keras,
MxNET, PyTorch
In the cloud ā on the edge
Docker containers
Get started with machine learning
Windows Machine Learning
7. āIt has exquisite buttons ā¦
with long sleeves ā¦works for
casual as well as business
settingsā{f(x) {f(x)
12. ā¢ Azure Machine Learning Services gives you an end-to-end solution to prepare
data, and train your model in the Cloud.
ā¢ WinMLTools converts existing models from CoreML, scikit-learn, LIBSVM, and
XGBoost
ā¢ Azure Custom Vision makes it easy to create your own image models -
https://customvision.ai/
ā¢ Azure AI Gallery curates models for use with Windows ML -
https://gallery.azure.ai/models
How do I get ONNX models to use in my
application?
13. 1. Developers can focus on their data and their
scenarios, using Windows ML for model
evaluation
2. Enables using ML models trained with a diverse
set of toolkits
3. Hardware acceleration gets fast evaluation
results across the diversity of the entire Windows
device ecosystem.
Windows ML solves three problems for you
Direct3D
GPU
CPU
DirectML
Model Inference Engine
WinML Win32 API
WinML UWP API
Win32 App
WinML Runtime
UWP App
19. ML.NET is for building custom models
Custom models
Easier / Less Control Harder / Full Control
Pre-built models
TensorFlow
ML.NETVisionSpeech LanguageKnowledge Search
20. 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 vacuum cleaner sucks so much dirt")
}));
e.g. Sentiment Analysis using Azure Cognitive Services
9% positive
Pre-built ML Models (Azure Cognitive Services)
21. Easy / Less Control
Full Control / Harder
Prepare Your Data Build & Train Run
Build your own (custom) ML Models
22. Less Control / Easy
Existing Solutions
Build your own (custom) ML Models
27. Load Data Extract Features Train Model Evaluate Model Model consumption
labels + plain text labels + feature vectors model
28. Load Data Extract Features Train Model Evaluate Model Model consumption
labels + plain text labels + feature vectors
Enter...
in ML.NETLearningPipelines!
model
29. Load Data Extract Features Train Model Evaluate Model Model consumption
30. 02 WHAT IS ML.NET?
ML.NET is a
framework first
35. 04 WHAT IS ML.NET?
ML.NET is
Open Source
& Cross-Platform
36. Microsoft Confidential
Proven & Extensible Open Source
https://github.com/dotnet/machinelearning
Build your own
Supported on Windows, Linux, and macOS
Developer Focused
ML.NET 0.5.0 (Preview)
Machine Learning framework made for .NET developers