A business level introduction to Artificial Intelligence - Louis Dorard @ PAPIs Connect

70
A business-level introduction to Articial Intelligence @louisdorard #PAPIsConnect - March 14, 2016

Transcript of A business level introduction to Artificial Intelligence - Louis Dorard @ PAPIs Connect

A business-level introduction to Artificial Intelligence

@louisdorard #PAPIsConnect - March 14, 2016

AI is everywhere

How does it work?

Data + Machine Learning

Bedrooms Bathrooms Surface (foot²) Year built Type Price ($)

3 1 860 1950 house 565,0003 1 1012 1951 house2 1.5 968 1976 townhouse 447,0004 1315 1950 house 648,0003 2 1599 1964 house3 2 987 1951 townhouse 790,0001 1 530 2007 condo 122,0004 2 1574 1964 house 835,0004 2001 house 855,0003 2.5 1472 2005 house4 3.5 1714 2005 townhouse2 2 1113 1999 condo1 769 1999 condo 315,000

Bedrooms Bathrooms Surface (foot²) Year built Type Price ($)

3 1 860 1950 house 565,0003 1 1012 1951 house2 1.5 968 1976 townhouse 447,0004 1315 1950 house 648,0003 2 1599 1964 house3 2 987 1951 townhouse 790,0001 1 530 2007 condo 122,0004 2 1574 1964 house 835,0004 2001 house 855,0003 2.5 1472 2005 house4 3.5 1714 2005 townhouse2 2 1113 1999 condo1 769 1999 condo 315,000

Bedrooms Bathrooms Surface (foot²) Year built Type Price ($)

3 1 860 1950 house 565,0003 1 1012 1951 house2 1.5 968 1976 townhouse 447,0004 1315 1950 house 648,0003 2 1599 1964 house3 2 987 1951 townhouse 790,0001 1 530 2007 condo 122,0004 2 1574 1964 house 835,0004 2001 house 855,0003 2.5 1472 2005 house4 3.5 1714 2005 townhouse2 2 1113 1999 condo1 769 1999 condo 315,000

ML is a set of AI techniques where “intelligence” is built from

examples

20

Ever yday use cases

• Real-estate

• Spam

• Priority inbox

• Crowd prediction

property price

email spam indicator

email importance indicator

location & context #people

Zillow

Gmail

Gmail

Tranquilien

Business use cases

I. Get more customers

II. Serve customers better

III. Serve customers more efficiently

I. Get more customers • Reduce churn

• Score leads

customer churn indicator

customer revenue

II. Serve customers better • Provide the right products

• Optimize pricing

• Use predictive enterprise apps…

customer & product purchase indicator

product & price #sales

III. Serve customers more efficiently • Predict demand

• Automate tasks

• Use predictive enterprise apps…

context demand

credit application repayment indicator

Predictive enterprise apps • Social media filtering

• Message routing

tweet actionability indicator

request employee

RULES

–Katherine Barr, Partner at VC-firm MDV

"Pairing human workers with machine learning and automation

will transform knowledge work and unleash new levels of human

productivity and creativity."

Decisions from predictions

1. Descriptive

2. Predictive

3. Prescriptive

29

Types of analyt ics

1. Show churn rate against time

2. Predict which customers will churn next

3. Decide what to do about each customer(e.g. propose to switch plan, send promotional offer, etc.)

30

Churn analysis

“Decide what to do about each customer” → prioritised list of actions, based on…

• Customer representation + context

• Churn prediction & action prediction

• Uncertainty in predictions

• Revenue brought by customer & Cost of actions

• Constraints on frequency of solicitations31

Churn analysis

1. Show past demand against calendar

2. Predict demand for [product] at [store] in next 2 days

3. Decide how much to ship

• Trade-off: cost of storage vs risk of lost sales

• Constraints on order size, truck volume, capacity of people putting stuff into shelves

32

Replenishment

3. Decide price given product and context…

• For several price candidates (within constrained range):

• Predict # sales given product, context, price

• Multiply by price to estimate revenue

34

Pric ing optimisat ion

3. Decide price given product and context…

• For several price candidates (within constrained range):

• Predict 95%-confidence lower bound on # sales given product, context, price

• Multiply by price to estimate revenue

35

Pric ing optimisat ion

• Context

• Predictions

• Uncertainty in predictions

• Constraints

• Costs / benefits

• Competing objectives

• Business rules36

Decis ions are based on…

1. Descriptive analytics

2. Predictive analytics

3. Prescriptive analytics

4. Automated decisions

37

B eyond prescr ipt ive analyt ics…

• Spam filter → decide to skip inbox

• Autonomous Vehicles → decide who to kill

38

Autonomous decis ion-mak ing systems

⇒ “Tool AI” vs “High-stakes autonomous AI”

APIs are key

Software components for automated decisions:

• Create training dataset from historical data (merge sources, aggregate…)

• Provide predictive model from given training set (i.e. learn)

• Provide prediction against model for given context

• Provide optimal decision from given contextual data, predictions, uncertainties, constraints, objectives, costs

• Apply given decision40

S eparation of concerns

Software components for automated decisions:

• Create training dataset from historical data (merge sources, aggregate…)

• Provide predictive model from given training set (i.e. learn)

• Provide prediction against model for given context

• Provide optimal decision from given contextual data, predictions, uncertainties, constraints, objectives, costs

• Apply given decision41

Applicat ion-specif ic component

Software components for automated decisions:

• Create training dataset from historical data (merge sources, aggregate…)

• Provide predictive model from given training set (i.e. learn)

• Provide prediction against model for given context

• Provide optimal decision from given contextual data, predictions, uncertainties, constraints, objectives, costs

• Apply given decision42

Optimization / Operations Research component

Software components for automated decisions:

• Create training dataset from historical data (merge sources, aggregate…)

• Provide predictive model from given training set (i.e. learn)

• Provide prediction against model for given context

• Provide optimal decision from given contextual data, predictions, uncertainties, constraints, objectives, costs

• Apply given decision43

M achine Learning components

Software components for automated decisions:

• Create training dataset from historical data (merge sources, aggregate…)

• Provide predictive model from given training set (i.e. learn)

• Provide prediction against model for given context

• Provide optimal decision from given contextual data, predictions, uncertainties, constraints, objectives, costs

• Apply given decision44

Predic t ive APIs

45

Predic t ive APIs

The two phases of machine learning:

• TRAIN a model

• PREDICT with a model

46

Predic t ive APIs

The two methods of predictive APIs:

• TRAIN a model

• PREDICT with a model

47

Predic t ive APIs

The two methods of predictive APIs:

• model = create_model(‘training.csv’)

• predicted_output, confidence = create_prediction(model, new_input)

48

Predic t ive APIs

Cloud:

• Amazon ML

• BigML

• Google Prediction

• PredicSis

49

Providers of REST http Predic t ive APIs

Open source:

• Seldon

• PredictionIO

Limitations of ML

1. Need examples of inputs AND outputs

2. What if not enough data points?

3. What if similar inputs but dissimilar outputs?

Bedrooms Bathrooms Price ($)

3 2 500,0003 2 800,0001 1 300,0001 1 800,000

Bedrooms Bathrooms Surface (foot²) Year built Price ($)

3 2 800 1950 500,0003 2 1000 1950 800,0001 1 500 1950 300,0001 1 500 2014 800,000

“Garbage In, Garbage Out”

“A model can only be as good as the data it was given to train on”

Machine Learning Canvas

Make sure that…

• All efforts are directed at solving the right problem for your company

• You’re using the right algorithm, infrastructure, or ML solution for that problem

• Team members understand each other (developers, data scientists, product managers, business executives)

64

B efore you star t implementing

65

The Canvas Concept

Machine Learning Canvas

PREDICTIONS OBJECTIVES DATA

Context

Who will use the predictive system / who will beaffected by it? Provide some background.

Value Proposition

What are we trying to do? E.g. spend less time onX, increase Y...

Data Sources

Where do/can we get data from? (internaldatabase, 3rd party API, etc.)

Problem

Question to predict answers to (in plain English)

Input (i.e. question "parameter")

Possible outputs (i.e. "answers")

Type of problem (e.g. classification, regression,recommendation...)

Baseline

What is an alternative way of making predictions(e.g. manual rules based on feature values)?

Performance evaluation

Domain-specific / bottom-line metrics formonitoring performance in production

Prediction accuracy metrics (e.g. MSE ifregression; % accuracy, #FP for classification)

Offline performance evaluation method (e.g.cross-validation or simple training/test split)

Dataset

How do we collect data (inputs and outputs)?How many data points?

Features

Used to represent inputs and extracted fromdata sources above. Group by types andmention key features if too many to list all.

Using predictions

When do we make predictions and how many?

What is the time constraint for making those predictions?

How do we use predictions and confidence values?

Learning predictive models

When do we create/update models? With which data / how much?

What is the time constraint for creating a model?

Criteria for deploying model (e.g. minimum performance value — absolute,relative to baseline or to previous model)

IDE

AS

PE

CS

DE

PLO

YM

EN

T

BACKGROUND

ENGINE SPECS

INTEGRATION

PREDICTIONS OBJECTIVES DATA

BACKGROUND

ENGINE SPECS

INTEGRATION

PREDICTIONS OBJECTIVES DATA

BACKGROUND End-user Value prop Sources

ENGINE SPECS ML problem Perf eval Preparation

INTEGRATION Using pred Learning modelINTEGRATION Using pred Learning model

machinelearningcanvas.com