Slide 1

Slide 1 text

Predicting the future (of equipment) using ML.NET @rondagdag Ron Dagdag R&D Engineering Manager at

Slide 2

Slide 2 text

•Machine Learning •C# Devs •Maintenance Personnel •Fortune Tellers •Crystal Gazing/Scrying @rondagdag

Slide 3

Slide 3 text

Agenda •Predictive Maintenance •What is Machine Learning? •ML.NET •ML.NET Model Builder •Demo @rondagdag

Slide 4

Slide 4 text

Evolution of Maintenance Strategies @rondagdag REACTIVE WAITS FOR FAILURE PREVENTATIVE SCHEDULED CONDITION- BASED THRESHOLD PREDICTIVE ANALYTICS PRESCRIPTIVE ROOT-CAUSE

Slide 5

Slide 5 text

@rondagdag https://blog.endaq.com/differences-between-condition-based-predictive-and-prescriptive-maintenance

Slide 6

Slide 6 text

Predictive maintenance • maintenance strategy • predict WHEN equipment or machines MAY fail / need maintenance • to take care of machines • to keep running smoothly • To prevent unexpected break down

Slide 7

Slide 7 text

Regular Check-ups @rondagdag This Photo by Unknown Author is licensed under CC BY-ND

Slide 8

Slide 8 text

Industrial Machinery • Advance sensors • ML Algorithms • Data Analysis • Predict future problem • Fix before breakdown • Save time and Money - Unscheduled downtime and maintenance costs. @rondagdag

Slide 9

Slide 9 text

Roman crystal ball with the Greek palindrome 3rd century CE ΑΒΛAΘANAΛBA ABLANATHANALBA “You are our father” @rondagdag

Slide 10

Slide 10 text

programming @rondagdag algorithm input answers

Slide 11

Slide 11 text

machine learning @rondagdag algorithm input answers

Slide 12

Slide 12 text

algorithm input answers algorithm input answers ML Primer Programming Machine Learning Training Data Model Model Inferencing Training Framework Runtime

Slide 13

Slide 13 text

Model development FLOWER PLAYING SOCCER EAGL E EAGLE TASKS Classification Object Detection Object Tracking Action Recognition Entities Topics Sentiments INDIVIDUAL MODEL Classification Model Detection Model Tracking Model Action Model Entity Recognition Topic Classification Sentiment Analysis TRAINING DATA (w/ ANNOTATION) Tagging data Detection data Tracking data Action data Entity data Topic data Sentiment data

Slide 14

Slide 14 text

ML.NET • machine learning to .NET applications • Add automatic predictions to apps • online or offline • ML.NET can generate machine learning model. • model = steps to transform input data into a prediction • import pre-trained TensorFlow and ONNX models • Supports Windows, Linux, and macOS @rondagdag

Slide 15

Slide 15 text

How much is the taxi fare for 1 passenger going from Airport to Downtown? AutoML with ML.NET ML.NET tool accelerates productivity

Slide 16

Slide 16 text

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 30% Model Car type Passengers machine learning made easy ML.NET takes the guess work out of data prep, feature selection & hyperparameter tuning Which algorithm? Which parameters? Which features?

Slide 17

Slide 17 text

N Neighbors Weights Metric P ZYX 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 Criterion Loss Min Samples Split Min Samples Leaf XYZ 50% Model Iterate 30% Gradient Boosted Distance Car brand Year of make Car type Passengers Trip time machine learning made easy ML.NET takes the guess work out of data prep, feature selection & hyperparameter tuning

Slide 18

Slide 18 text

Which algorithm? Which parameters? Which features? 50% 30% 70% 30% 45% 50% 65% 95% 35% 10% 75% 20% 70% 30% 15% Iterate machine learning made easy ML.NET takes the guess work out of data prep, feature selection & hyperparameter tuning

Slide 19

Slide 19 text

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

Slide 20

Slide 20 text

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

Slide 21

Slide 21 text

• Largest-known true crystal ball • Smithsonian in Washington, D.C. • 106.75 lbs. (48.42 kg) • 12.9 in diameter (32.7 cm) • 1800s in China, mineral is from Burma @rondagdag This Photo by Unknown Author is licensed under CC BY-SA

Slide 22

Slide 22 text

ML.NET Model Builder • Simple UI tool in Visual Studio • Runs locally to build, train and ship ML projects • build/train in Azure • Generates Custom ML models @rondagdag This Photo by Unknown Author is licensed under CC BY-NC

Slide 23

Slide 23 text

Model Builder @rondagdag

Slide 24

Slide 24 text

Types of problems Data Classification Classify if machine needs maintenance or not Value Prediction Estimate the volume of liquid needed Forecasting Predict future values based on observed time series values. Forecast demands Recommendation Recommend suppliers. Classifying images Tag an image based on its contents. Alert defects Detecting objects in an image: Detect personnel is working in a safe area @rondagdag

Slide 25

Slide 25 text

@rondagdag

Slide 26

Slide 26 text

Model Builder DEMO In Visual Studio, install: ML.NET Model Builder VS Extension @rondagdag

Slide 27

Slide 27 text

Model Builder Scenario Local CPU Local GPU Azure Data classification Value prediction Recommendation Forecasting Image classification Object detection Text classification @rondagdag

Slide 28

Slide 28 text

Model Builder @rondagdag Dataset size Average time to train 0 - 10 MB 10 sec 10 - 100 MB 10 min 100 - 500 MB 30 min 500 - 1 GB 60 min 1 GB+ 3+ hours These numbers are a guide only. The exact length of training is dependent on: •the number of features (columns) being used to as input to the model •the type of columns •the ML task •the CPU, disk, and memory performance of the machine used for training

Slide 29

Slide 29 text

No content

Slide 30

Slide 30 text

What is .NET MAUI? • .NET MAUI is open-source • cross-platform framework • native mobile and desktop apps with C# and XAML. • develop apps on Android, iOS, macOS, and Windows • single shared code-base • evolution of Xamarin.Forms @rondagdag

Slide 31

Slide 31 text

.NET MAUI provides: @rondagdag

Slide 32

Slide 32 text

.NET MAUI provides: • Cross-platform graphics functionality, • supports drawing, painting shapes,images • compositing operations • graphical object transforms • A single project system • multi-targeting to target • Android • iOS • macOS • Windows • .NET hot reload @rondagdag

Slide 33

Slide 33 text

DEMO @rondagdag MAUI and ML.NET

Slide 34

Slide 34 text

Wicked Witch's crystal ball • From the movie "The Wizard of Oz“ • sold for $129,000 at an auction in 2001 • Walker Library of the History of Human Imagination • 25 inches in diameter • handblown glass and is actually slightly egg-shaped @rondagdag https://www.livescience.com/59205-facts-about-crystal-balls.html

Slide 35

Slide 35 text

Summary •Predictive Maintenance •Predict before equipment fail •What is Machine Learning? •training and inferencing •ML.NET •Machine Learning for .NET Developers @rondagdag

Slide 36

Slide 36 text

Summary •AutoML •Machine Learning made easy •ML.NET Model Builder •Generates Custom ML models in Visual Studio •MAUI •develop apps Android, iOS, macOS, and Windows @rondagdag

Slide 37

Slide 37 text

Let Me Predict your future! @rondagdag

Slide 38

Slide 38 text

@rondagdag https://github.com/rondagdag/predictive-maintenance-mlnet-talk

Slide 39

Slide 39 text

About Me Ron Dagdag @rondagdag R&D Engineering Manager at 7-Eleven 7th year Microsoft MVP awardee​ www.dagdag.net @rondagdag Linked In www.linkedin.com/in/rondagdag/ Thanks for geeking out with me about Machine Learning, ML.NET, AutoML, MAUI, Crystal Ball https://linktr.ee/rondagdag