Slide 1

Slide 1 text

FIVE THINGS I LEARNED WHILE PROTOTYPING ML PAPERS ELLEN KÖNIG / @ELLEN_KOENIG SENIOR DATA ENGINEER THOUGHTWORKS

Slide 2

Slide 2 text

A LONG, LONG TIME AGO… IN AN OFFICE FAR AWAY…

Slide 3

Slide 3 text

No content

Slide 4

Slide 4 text

AND ONE DAY MY TEAM FACED A CHALLENGE

Slide 5

Slide 5 text

? Bank statement Identity document Contract …

Slide 6

Slide 6 text

?

Slide 7

Slide 7 text

No content

Slide 8

Slide 8 text

WHY DID WE CONSIDER ML RESEARCH PAPERS? • „Somebody must have solved this before!“ • No ready-to-use implementation

Slide 9

Slide 9 text

HOW MANY OF YOU CAN RELATE TO OUR PROBLEM?

Slide 10

Slide 10 text

No content

Slide 11

Slide 11 text

BUT WORK IS ALL ABOUT GROWTH, RIGHT??

Slide 12

Slide 12 text

FORTUNATELY

Slide 13

Slide 13 text

No content

Slide 14

Slide 14 text

KEY INSIGHT: BREADTH FIRST, NOT DEPTH FIRST

Slide 15

Slide 15 text

GOAL: FIND AND REPRODUCE THE BEST APPROACHES 1. Search for research findings 2. Decide on comparison criteria 3. Evaluate your papers 4. Prioritize approaches 5. Prototype approaches

Slide 16

Slide 16 text

STEP 1: SEARCH FOR RESEARCH FINDINGS Needed: An overview of the field

Slide 17

Slide 17 text

COMPILING AN OVERVIEW OF THE FIELD: BREADTH FIRST! Compile Foundational and cutting edge papers Common problems and approaches Start with survey papers, follow references

Slide 18

Slide 18 text

STEP 2: DECIDE ON YOUR COMPARISON CRITERIA

Slide 19

Slide 19 text

WHICH PAPERS ARE RIGHT FOR YOU? Summarize common metrics and baselines Refresher on baselines: https://www.quora.com/What-does-baseline- mean-in-machine-learning Pick simple metrics and baselines Minimally required metric targets?

Slide 20

Slide 20 text

STEP 3: EVALUATE YOUR PAPERS Groundbreaking? Copycat? Garbage? Journal / conference quality? Team experience?

Slide 21

Slide 21 text

STEP 3: EVALUATE YOUR PAPERS — A CHECKLIST 3. Results 2. Methodology 1. Abstract & Introduction

Slide 22

Slide 22 text

ABSTRACT & INTRODUCTION Addresses your problem? Similar context? Approach: Groundbreaking or improvement? Results: Better than targets & baseline? Main question: Relevant to your problem? 3. Results 2. Methodology ✔Abstract & Introduction

Slide 23

Slide 23 text

STEP 3: EVALUATE YOUR PAPERS 3. Results 2. Methodology 1. Abstract & Introduction

Slide 24

Slide 24 text

3. Results ✔ Methodology ✔ Abstract & Introduction METHODOLOGY SECTION Main question: Approach reproducible? Solves similar problem? Data set size and content similar? 1. Description complete? Entire process described? Pre-processing steps described completely? Well-known methods? Or completely described methods? 2.

Slide 25

Slide 25 text

3. Results ✔ Methodology ✔ Abstract & Introduction METHODOLOGY SECTION Data set size and content similar? ✓22k black-and-white pages ✓German corpus ? Research documents rather than banking documents

Slide 26

Slide 26 text

METHODOLOGY SECTION Entire process described? ✓Seems to be complete Pre-processing steps described completely? ✓Image conversion and scaling is described ? OCR tool / approach is not mentioned Well-known methods? Or completely described methods? ✓Neural network with descriptions of the configuration 3. Results ✔ Methodology ✔ Abstract & Introduction

Slide 27

Slide 27 text

STEP 3: EVALUATE YOUR PAPERS 3. Results 2. Methodology 1. Abstract & Introduction

Slide 28

Slide 28 text

RESULTS SECTION Main question: Results reliable? Evaluated with suitable metrics? Relevant metrics for your use case? Metrics appropriate for the problem? Metrics appropriate for the dataset? ✔ Results ✔ Methodology ✔ Abstract & Introduction 1. Results good enough? Better than your baseline? Better than the metrics target? Any published review of the results? Improvement analyzed with suitable statistical tests? 2.

Slide 29

Slide 29 text

RESULTS SECTION Relevant metrics for your use case? ✓Accuracy Metrics appropriate for the problem? ✓Common metric for classification Metrics appropriate for the dataset? XNot suitable for imbalanced classes ✔ Results ✔ Methodology ✔ Abstract & Introduction

Slide 30

Slide 30 text

RESULTS SECTION Better than your baseline? ✓Yes, by 0.23 over the baseline Better than the metrics target? ? They are close Any published review of the results? ? Not yet Improvement analyzed with suitable statistical tests? X No statistical analysis, and reported measurements are not comparable ✔ Results ✔ Methodology ✔ Abstract & Introduction

Slide 31

Slide 31 text

STEP 3: EVALUATE YOUR PAPERS 3. Results 2. Methodology 1. Abstract & Introduction

Slide 32

Slide 32 text

STEP 4: PRIORITIZE YOUR CHOSEN APPROACHES

Slide 33

Slide 33 text

PRIORIZATION MATRIX High Effort High Impact Quick Wins Major Projects Thankless Tasks Fill-in Jobs

Slide 34

Slide 34 text

STEP 5: PROTOTYPE YOUR CHOSEN APPROACHES

Slide 35

Slide 35 text

A FEW RECOMMENDATIONS Compile a glossary Understand all equations & code Higher level language Reference sections of papers

Slide 36

Slide 36 text

MORE RECOMMENDATIONS http://codecapsule.com/2012/01/18/how-to- implement-a-paper/

Slide 37

Slide 37 text

OUR FINAL RESULTS

Slide 38

Slide 38 text

PRIORIZATION MATRIX High Effort High Impact Quick Wins Major Projects Thankless Tasks Fill-in Jobs

Slide 39

Slide 39 text

SUMMARY: WHEN SHOULD YOU LOOK FOR RESEARCH PAPERS? • „Somebody must have solved this before!“ • No ready-to-use implementation

Slide 40

Slide 40 text

SUMMARY: OUR MAIN LESSONS Pool your knowledge Follow a strategy Go „Breadth first“ Record your insights

Slide 41

Slide 41 text

SUMMARY: A WORKFLOW FOR PROTOTYPING ML PAPERS 1. Search for research findings 2. Decide on your comparison criteria 3. Evaluate quality, relevance and reproducibility 4. Prioritize your chosen approaches 5. Prototype the best approaches

Slide 42

Slide 42 text

HAVE (MORE ) FUN PROTOTYPING! Slides will be tweeted from @ellen_koenig

Slide 43

Slide 43 text

IMAGE CREDITS • Title slide: https://www.flickr.com/photos/vblibrary/6671465981 • Slide 2: Google calendar & maps • Slide 10 & Slide 13: https://www.datasciencecentral.com/profiles/blogs/ 140-machine-learning-formulas • Slide 12 & 40: https://pixabay.com/de/bremer-stadtmusikanten- skulptur-2444326/ • Slide 14 & 40: https://commons.wikimedia.org/wiki/File:Breadth- first_tree.svg • Slide 14: https://commons.wikimedia.org/wiki/Depth_first_search#/ media/File:Depthfirst.png

Slide 44

Slide 44 text

IMAGE CREDITS CONT. • Slide 16 https://en.wikipedia.org/wiki/Map#/media/ File:World_Map_1689.JPG • Slide 29: https://commons.wikimedia.org/wiki/ File:Pocketwatch_cutaway_drawing.jpg • Slide 32: https://pxhere.com/en/photo/109282 • Slide 33: Adapted from: http://www.sixsigmadaily.com/impact-effort- matrix/ • Slide 34: https://pixnio.com/objects/computer/programming-code- programmer-coding-coffee-cup-computer-copy-hands-computer- keyboard