The creation and deployment of predictive models that are at the core of artificially intelligent systems, is now being largely automated. However, formalizing the right machine learning problem that will leverage data to make applications and products more intelligent — and to create value — remains a challenge.
The Machine Learning Canvas is used by teams of managers, scientists and engineers to align their activities by providing a visual framework that helps specify the key aspects of AI systems: value proposition, data to learn from, usage of predictions, constraints, and measures of performance. In this presentation, we’ll motivate the usage of the MLC, we'll explain its structure, how to fill it in, and we’ll go over some example applications.
9. “DataRobot automatically searches
through millions of combinations of
algorithms, data preprocessing steps,
transformations, features, and tuning
parameters for the best machine learning
model for your data. Each model is
unique — fine-tuned for the specific
dataset and prediction target.” https://
www.datarobot.com/product/
10.
11.
12. –Jeremy Howard (Designing great data products)
“Great predictive modeling is an
important part of the solution, but it no
longer stands on its own; as products
become more sophisticated, it disappears
into the plumbing.”
20. • Technical:
• Getting data in ML-ready format
• Creating the best model for this data
• Deploying models
• Semi-technical:
• Trusting models
• Formalizing ML problems
20
Main barriers to integrating ML in real-world products
21. • Which are the Inputs and Outputs? Features?
• Anticipate how you’ll use predictive models:
• When/how often you’ll need to…
• Make predictions (to deliver value) ❤
• Learn/update models from (new) data
• How much time you’ll have for that
• Any other technical constraints? (e.g. model memory footprint)
• How will you inspect and evaluate predictive models? (so you can trust them)
21
Formalizing ML problems
30. • Who: SaaS company selling monthly subscription
• Question asked: “Is this customer going to leave within 1 month?”
• Input: customer
• Output: no-churn or churn
• Data collection: customer snapshots from 1 month ago; now, 1
month later, we know who left
• How predictions are used: target customers classified as churn in
retention efforts/campaign
30
Churn prediction
31. Assume we know who’s going to churn. What do we do?
• Contact all/some of them? Which ones first?
• Switch to different plan?
• Give special offer?
• Etc.
• No action?
31
Churn prevention
32. 1. Descriptive: show churn rate against time
2. Predictive: show which customers will churn next
3. Prescriptive: suggest which customers to target for
prevention efforts
4. Automated: campaigns sent automatically
32
Phases of churn analysis
33. • Targeting a customer has a cost
• For each TP we “gain”: (success rate of targeting) *
(customer revenue /month)
• Imagine…
• We make perfect predictions and target all Positives
• Revenue /month = 10€ for all customers
• Success rate of targeting = 20%
• Cost of targeting = 2€
• What is the Return On Investment?
33
Quizz: churn prevention ROI
34. 3. Prescriptive: prioritize customers to target, based on…
• Customer representations (i.e. feature values for each)
• Churn predictions
• Uncertainty in predictions
• Revenue brought by each customer
• Constraints on targeting frequency
34
Prescriptions to prevent churn
35. • Compute feature values for given input (a.k.a. “featurize”; involves
merging data sources, aggregating data…)
• Collect training data (inputs and outputs)
• Provide predictive model from given training set (i.e. learn)
• Provide prediction against model for given input (context)
• Provide optimal decision from given contextual data, predictions,
uncertainties, constraints, objectives, costs
• Apply given decision
35
Software components for automated decisions
36. • Compute feature values for given input (a.k.a. “featurize”; involves
merging data sources, aggregating data…)
• Collect training data (inputs and outputs)
• Provide predictive model from given training set (i.e. learn)
• Provide prediction against model for given input (context)
• Provide optimal decision from given contextual data, predictions,
uncertainties, constraints, objectives, costs
• Apply given decision
36
Application-specific component
37. • Compute feature values for given input (a.k.a. “featurize”; involves
merging data sources, aggregating data…)
• Collect training data (inputs and outputs)
• Provide predictive model from given training set (i.e. learn)
• Provide prediction against model for given input (context)
• Provide optimal decision from given contextual data, predictions,
uncertainties, constraints, objectives, costs
• Apply given decision
37
Optimization / Operations Research component
38. • Compute feature values for given input (a.k.a. “featurize”; involves
merging data sources, aggregating data…)
• Collect training data (inputs and outputs)
• Provide predictive model from given training set (i.e. learn)
• Provide prediction against model for given input (context)
• Provide optimal decision from given contextual data, predictions,
uncertainties, constraints, objectives, costs
• Apply given decision
38
Machine Learning components
39. • Compute feature values for given input (a.k.a. “featurize”; involves
merging data sources, aggregating data…)
• Collect training data (inputs and outputs)
• Provide predictive model from given training set (i.e. learn)
• Provide prediction against model for given input (context)
• Provide optimal decision from given contextual data, predictions,
uncertainties, constraints, objectives, costs
• Apply given decision
39
Data Engineering components
42. 42
The Machine Learning Canvas
The Machine Learning Canvas (v0.4) Designed for: Designed by: Date: Iteration: .
Decisions
How are predictions used to
make decisions that provide
the proposed value to the enduser?
ML task
Input, output to predict,
type of problem.
Value
Propositions
What are we trying to do for the
enduser(s) of the predictive system?
What objectives are we serving?
Data Sources
Which raw data sources can
we use (internal and
external)?
Collecting Data
How do we get new data to
learn from (inputs and
outputs)?
Making
Predictions
When do we make predictions on new
inputs? How long do we have to
featurize a new input and make a
prediction?
Offline
Evaluation
Methods and metrics to evaluate the
system before deployment.
Features
Input representations
extracted from raw data
sources.
Building Models
When do we create/update
models with new training
data? How long do we have to
featurize training inputs and create a
model?
Live Evaluation and
Monitoring
Methods and metrics to evaluate the
system after deployment, and to
quantify value creation.
machinelearningcanvas.com by Louis Dorard, Ph.D. Licensed under a Creative Commons AttributionShareAlike 4.0 International License.
43. • Started as a mini framework: Who, Question asked,
Input, Output, Features, Data collection, How predictions
are used
• Used it and refined it when consulting
• Made it into a visual chart and iterated on the design
• Used at Konica Minolta, BlaBlaCar, La Poste, Dassault
Systemes, Data Science Academy, UCL
43
Origins of the ML Canvas
44. • (Not an adaptation of the Business Model Canvas)
• Describe the Learning part of an AI system:
• What data are we learning from?
• How are we using predictions powered by that learning?
• How are we making sure that the whole thing “works”
through time?
44
The Machine Learning Canvas
54. • We predicted customer would churn, but in the end they didn’t…
• Great! Prevention works!
• Sh*t! Data inconsistent…
• Imagine that:
• client1 and client2 very similar & predicted to churn
• only client2 was targeted, and we made him stay
Input Output
client1 Churn
client2 No-churn
62. • Adapt use cases from other industries/companies?
• Start from value proposition?
• Can you formalize a classification or regression problem?
• Start from a classification or regression problem?
• How do you go from predictions to value creation?
• Start from data sources: what if we could predict this?
62
Coming up with a good ML use case
63. • For each use case idea:
• Evaluate how difficult data collection and extraction will
be
• Evaluate potential for the business
• Start with low-hanging fruit: easy and high potential
• Fill in MLC
63
Coming up with a good ML use case
64. • Fill in MLC
• Choose technologies to use
• Implement data collection asap
64
From MLC to Data Preparation
65. • Feature extraction from sources of raw data
• Exploratory Data Analysis (with visualization and statistics)
• Spot problems early… reality check!
• Discover things you don’t already know
• Test hypotheses
• Data cleansing
• Modeling, offline evaluation and inspection
65
From Data Preparation to PoC
66. • Pipeline: extraction + cleansing + modeling + evaluation
• Live evaluation and monitoring (e.g. A/B test)
66
From PoC to deployment
67. –Ingolf Mollat, Principal Consultant at Blue Yonder
“The Machine Learning Canvas is
providing our clients real business value by
supplying the first critical entry point for
their implementation of predictive
applications.”
68. • Assist data scientists, software engineers, product and
business managers, in aligning their activities
• Make sure all efforts are directed at solving the right
problem!
• Guide project management
68
Why fill in ML canvas early
69. • Download ML Starter Kit (includes canvas + PDF guide)
from louisdorard.com
• UCL Engineering’s ML Academy
• Evening course, once a week, over 6 weeks
• Starts on Monday at IDEALondon
• Email l.dorard@ucl.ac.uk to apply
69
Learn more