Sunteți pe pagina 1din 40

Big Data and Machine Learning

for Predictive Maintenance

Paul Peeling

© 2015 The MathWorks, Inc.


1
Agenda

▪ The Predictive Maintenance Opportunity


▪ Exploring Big Data
▪ Machine Learning Approaches
▪ Deep Learning
▪ Fault Modelling
▪ Deploying to the Edge and the Cloud

2
React or Prevent?

Aaron “tango” Tang on Flicker

3
Predictive Maintenance software
Temperature Pressure Vibration
sensors sensors sensors
Sense

Perceive

Decide
& Plan

Act
Total of 25 sensors - but which ones were the best predictors?
4
Predictive Maintenance software

Sense

Perceive

Decide
& Plan

Act

5
What do we mean by Predictive Maintenance?

▪ Monitor equipment to avoid future failure.


▪ Schedule maintenance when it’s needed.
▪ Identify the root cause of issues.
▪ How?
– Predictive models and sensor data.
– Deploying to the equipment and cloud.

6
Why is Predictive Maintenance Important?

7
Why is Predictive Maintenance Important?

Source: GE Oil & Gas

8
Deploying Predictive Maintenance Algorithms

9
Aside: What if … ?

▪ I’m not in the business of Predictive Maintenance


▪ I don’t have big data
▪ I don’t have any data
▪ I don’t have a computing cluster
▪ I need a simpler solution

10
Workflow

Access and Develop Integrate Analytics


Preprocess Data
Explore Data Predictive Models with Systems

Files Visualizing Machine learning Embedded


Data Devices/Hardware

Sensors Enterprise Scale


Data Reduction/ Model
Transformation Validation Systems

11
Workflow

Access and
Explore Data

Files

Sensors

12
Predictive Maintenance of Turbofan Engine

Sensor data from 100 engines of the same model


– Maintenance scheduled every 125 cycles
– Only 4 engines needed maintenance after 1st round

Predict and fix failures before they arise


– Import and analyze historical sensor data
– Train model to predict when failures will occur
– Deploy model to run on live sensor data
– Predict failures in real time

Data provided by NASA PCoE


http://ti.arc.nasa.gov/tech/dash/pcoe/prognostic-data-repository/

13
Working with Big Data

Where is
the data?

How big is What code


the data? can I write?

14
Tall Arrays
Scaling your code to big data

▪ Automatically optimize data access bottlenecks


– Write code the same way you've always written it Machine
Memory
– MATLAB automatically reorders operations to
minimize disk access

▪ Applicable when:
– Data is columnar – with many rows
– Overall data size is too big to fit into memory
– Operations are mathematical/statistical in nature

▪ Statistical and machine learning applications


– Hundreds of functions supported in MATLAB and Tall Data
Statistics and Machine Learning Toolbox

15
Filtering Data

16
Workflow

Access and Develop Integrate Analytics


Preprocess Data
Explore Data Predictive Models with Systems

Files Visualizing Machine learning Embedded


Data Devices/Hardware

Sensors Enterprise Scale


Data Reduction/ Model
Transformation Validation Systems

17
Visualizing Big Data Using tall

▪ Support for:
– histogram
– histogram2
– ksdensity
– plot
– scatter
– binscatter

18
Visualizing Big Data Using tall

scatter binscatter

19
Standardizing Data

20
Deferred evaluation and gathering
What does “gather” do?
1. Evaluate any pending
operations
2. Collect the partitioned data
into MATLAB main memory
3. Unwrap the data into an array
or table

21
Workflow

Access and Develop Integrate Analytics


Preprocess Data
Explore Data Predictive Models with Systems

Files Visualizing Machine learning Embedded


Data Devices/Hardware

Sensors Enterprise Scale


Data Reduction/ Model
Transformation Validation Systems

22
Traditional Approaches

23
Use historical data to predict when failures will occur
Initial Use/
Prior Maintenance Recording Starts Failure Maintenance

?
Engine 1
Historical

Engine 2


Engine 100

Cycles
(Time)
Live

Engine X ?
Schedule Maintenance
24
Principal Components Analysis

25
Dimensionality Reduction with PCA

26
Early Warning System

27
Preprocessing and Classifying our Input Data
Start of
Recorded
Engine Life
Data
Recording Starts

Engine 1 Failure

Engine 2

Engine 3


Engine 100
Cycles
(Time)
Cycle 0 28
Classification Learner App

29
Convolutional Neural Network

30
Pretrained Networks

31
LSTM Network

32
Useful Life Estimation Simulink Model

33
Workflow

Access and Develop Integrate Analytics


Preprocess Data
Explore Data Predictive Models with Systems

Files Visualizing Machine learning Embedded


Data Devices/Hardware

Sensors Enterprise Scale


Data Reduction/ Model
Transformation Validation Systems

34
Internet of Things

35
Using Tall Arrays
▪ Run in parallel on compute clusters
MATLAB Distributed Computing Server

Local disk Compute Clusters


Shared folders Spark + Hadoop
Databases

▪ Tall arrays ▪ Run in parallel on Spark clusters


MATLAB MATLAB Distributed Computing Server
▪ 100’s of functions supported ▪ Deploy MATLAB applications as
MATLAB standalone applications on Spark
Statistics and Machine Learning Toolbox clusters
▪ Run in parallel MATLAB Compiler
Parallel Computing Toolbox

36
Working with GPU Coder: Deep Learning Workflow

Access Data Preprocess Select Network Train Deploy

Image Neural
Image Parallel GPU
Acquisition
Processing Tbx Network Computing Tbx Coder
Tbx
Computer
Vision System
Tbx

37
Machine Learning on MATLAB Production Server

Shell analyses big data sets to


detect events and abnormalities at
downstream chemical plants using
predictive analytics with MATLAB®.
Multivariate statistical models
running on MATLAB Production
Server™ are used to do real-time
batch and process monitoring,
enabling real-time interventions
when abnormalities are detected.

38
Where Next?

Talks Demo Stations


▪ MatConvNet: Deep Learning ▪ Big Data with MATLAB
Research in MATLAB ▪ Deep Learning with MATLAB
▪ Introduction to Machine & Deep ▪ Predictive Maintenance with
Learning MATLAB and Simulink
▪ Scaling MATLAB for your ▪ Deploying Video Processing
Organisation and Beyond Algorithms to Hardware
▪ Using MATLAB and ThingSpeak
to Explore the Internet of Things

39
Thank You!

40