evaluating machine learning models -- a beginner's guide

Post on 15-Apr-2017

3.243 Views

Category:

Engineering

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

1

Evaluating Machine Learning Models – A Beginner’s Guide

Alice Zheng, DatoSeptember 15, 2015

2

My machine learning trajectory

Applied machine learning(Data science)

Build ML tools

Shortage of expertsand good tools.

3

Why machine learning?

Model data.Make predictions.Build intelligent

applications.

4

Machine learning pipeline

I fell in love the instant I laid my eyes on that puppy. His big eyes and playful tail, his soft furry paws, …

Raw data

FeaturesModels

Predictions

Deploy inproduction

GraphLab Create

Dato Distributed

Dato Predictive Services

The ML Jargon Challenge

6

Typical machine learning paper

… semi-supervised model for with large-scale learning from sparse data … sub-modular optimization for distributed computation…evaluated on real and synthetic datasets…performance exceeds start-of-the-art methods

7

What it looks like to ML researchers

Such regularize!

Much optimal

So sparsity

Wow!

Amaze

Very scale

8

What it looks like to normal people

9

What it’s like in practice

Doesn’t scaleBrittle ?

Hard to tune

? ???

??? ?

Doesn’t solve my problem on my data

10

Achieve Machine Learning Zen

11

Why is evaluation important?• So you know when you’ve succeeded• So you know how much you’ve succeeded• So you can decide when to stop• So you can decide when to update the model

11

12

Basic questions for evaluation• When to evaluate?• What metric to use?• On what data?

12

13

When to evaluate

Onlineevaluation

Historical data

Onlineevaluation

results

Offlineevaluation

Livedata

Offlineevaluationon live data

Prototypemodel

Trainingresults

Validationresults

Deployed model

Evaluation Metrics

15

Types of evaluation metric• Training metric• Validation metric• Tracking metric• Business metric

“But they may not match!”

Uh-oh Penguin

16

Example: recommender system• Given data on which users liked which items,

recommend other items to users• Training metric

- How well is it predicting the preference score? - Residual mean squared error: (actual – predicted)2

• Validation metric- Does it rank known preferences correctly?- Ranking loss

17

Example: recommender system• Tracking metric

- Does it rank items correctly, especially for top items?- Normalized Discounted Cumulative Gain (NDCG)

• Business metric- Does it increase the amount of time the user spends on

the site/service?

18

Dealing with metrics• Many possible metrics at different

stages• Defining the right metric is an art

- What’s useful? What’s feasible?• Aligning the metrics will make

everyone happier- Not always possible: cannot directly

train model to optimize for user engagement

“Do the best you

can!”

Okedokey Donkey

Model Selection and Tuning

Model Selection and Tuning

Historical data

Hyperparametertuning

Trainingdata

Validationdata

Model training

Model

Trainingresults

Validationresults

21

Key questions for model selection• What’s validation?• What’s a hyperparameter and how do you tune it?

21

22

Model validation• Measure generalization error

- How well the model works on new data- “New” data = data not used during training

• Train on one dataset, validate on another• Where to find “new” data for validation?

- Clever re-use of old data

23

Methods for simulating new dataHold-out validation

Data

Training Validation

K-fold cross validation

Data

1 2 3 K…

Validation set

Bootstrap resampling

Data

Resampled dataset

24

Hyperparameter tuning vs. model training

Best model parameters

Best hyperparameters

Hyperparameter tuning

Model training

25

Hyperparameters != model parameters

Feature 2

Feature 1

Classification between two classes

Model parameter

Hyperparameter:How many features to use

26

Why is hyperparameter tuning hard?• Involves model training as a sub-process

- Can’t optimize directly• Methods:

- Grid search- Random search- Smart search

• Gaussian processes/Bayesian optimization• Random forests• Derivative-free optimization• Genetic algorithms

Online Evaluations

28

ML in production - 101

ModelHistorical

Data

Predictions

LiveData

Feedback

Batch training

Real-time predictions

29

ML in production - 101

ModelHistorical

Data

Real-time predictions

Batch training

PredictionsModel 2

LiveData

30

Why evaluate models online?• Track real performance of model over time• Decide which model to use when

31

Choosing between ML models

Model 2

Model 12000 visits10% CTR

Group A

Everybody gets Model 2

2000 visits30% CTR

Group B

Strategy 1: A/B testing—select the best model and use it all the time

32

Choosing between ML modelsA statistician walks into a casino…

Pay-off $1:$1000 Pay-off $1:$200 Pay-off $1:$500

Play this 85% of the time

Play this 10% of the time

Play this 5% of the time

Multi-armed bandits

33

Choosing between ML modelsA statistician walks into an ML production environment

Pay-off $1:$1000 Pay-off $1:$200 Pay-off $1:$500

Use this 85% of the time

(Exploitation)

Use this 10% of the time

(Exploration)

Use this 5% of the time

(Exploration)

Model 1 Model 2 Model 3

34

MAB vs. A/B testingWhy MAB?• Continuous optimization, “set and forget”• Maximize overall reward

Why A/B test?• Simple to understand• Single winner• Tricky to do right

35

That’s not all, folks!Read the details• Blog posts: http://blog.dato.com

/topic/machine-learning-primer • Report: http://oreil.ly/1L7dS4a

• Dato is hiring! jobs@dato.com

alicez@dato.com @RainyData

top related