nlp in the real world

33
NLP in the Real World Student Open House September 30, 2015 David Murgatroyd VP, Engineering @dmurga 1

Upload: david-murgatroyd

Post on 14-Apr-2017

411 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: NLP in the Real World

NLP in the Real WorldStudent Open HouseSeptember 30, 2015 David MurgatroydVP, Engineering

@dmurga

1

Page 2: NLP in the Real World

Raise Your Hand If You...

➔Know what NLP stands for?➔Speak a language other than English?➔Have ever written a computer program?➔...that tries to process language?

2

Page 3: NLP in the Real World

A Little More About You...

➔Think of this room as a map of the world➔The TV is Iceland, the table is Antarctica➔Stand where you were born.➔Take a minute and ask the folks standing

near you where they were born.

3

Page 4: NLP in the Real World

A Little More About You...

➔Now stand where you most want to travel.➔Take a minute...

4

Page 5: NLP in the Real World

A Little More About You...

➔Now stand at the travel destination that’s a the top of your bucket list.

➔Take a minute…➔How many of you have used Airbnb?

5

Page 6: NLP in the Real World

A Little More About You...

➔Now stand at the travel destination that’s a the top of your bucket list.

➔Take a minute…➔How many of you have used Airbnb?➔How do you think NLP might help Airbnb?

6

Page 7: NLP in the Real World

How does NLP Help Airbnb?

Booking a place requires Sharing

Sharing requires Trust

Trust requires Verification

Verification requires NLP

Page 8: NLP in the Real World

Airbnb Added Government ID

Gov. ID

Page 9: NLP in the Real World

Airbnb: Scan a Government ID

First Name: J A N E

Last Name: C I Y I Z E N

Scanned Name

Page 10: NLP in the Real World

Match Scanned Name Against Profile

C I T I Z E N

First Name:

Last Name:

J A N I E

C I Y I Z E N

J A N E

Scanned Passport Name Profile Name

85%

Page 11: NLP in the Real World

Match Against Local Property Record

Scanned Passport Name

C I T I Z E N

Profile Name

First Name:

Last Name:

J A N I E

C I Y I Z E N

J A N E

시 티 즌

자 넷

Property Record

85% 90%

Page 12: NLP in the Real World

Lesson...

No one has a problem that involves just language.

So start with the user and work your way back.

12

Page 13: NLP in the Real World

7 Steps to Real-world NLP Happiness

1. Whose life are you trying to improve?

13

Page 14: NLP in the Real World

About us...

14

Page 15: NLP in the Real World

7 Steps to Real-world NLP Happiness

1. Whose life are you trying to improve?2. What precise problem do you want to solve?

15

Page 16: NLP in the Real World

Demo...

16

Page 17: NLP in the Real World

7 Steps to Real-world NLP Happiness

1. Whose life are you trying to improve?2. What precise problem do you want to solve?3. Do you have any data?

17

Page 18: NLP in the Real World

Match Against Local Property Record

Scanned Passport Name

C I T I Z E N

Profile Name

First Name:

Last Name:

J A N I E

C I Y I Z E N

J A N E

시 티 즌

자 넷

Property Record

Page 19: NLP in the Real World

Match Against Local Property Record

Scanned Passport Name

C I T I Z E N

Profile Name

First Name:

Last Name:

J A N I E

C I Y I Z E N

J A N E

시 티 즌

자 넷

Property Record

Page 20: NLP in the Real World

7 Steps to Real-world NLP Happiness

1. Whose life are you trying to improve?2. What precise problem do you want to solve?3. Do you have any data?

◆input data◆‘true’ output data

20

Page 21: NLP in the Real World

7 Steps to Real-world NLP Happiness

1. Whose life are you trying to improve?2. What precise problem do you want to solve?3. Do you have any data?4. How will you measure success?

21

Page 22: NLP in the Real World

How to measure success?

22

➔At the level of the user?◆Better reviews?◆More bookings per host/user?

Page 23: NLP in the Real World

How to measure success?

➔At the level of the user?◆Better reviews?◆More bookings per host/user?

➔At the level of the problem?◆Define accuracy?

23

TruthSystem

Page 24: NLP in the Real World

How to measure success?

➔At the level of the user?◆Better reviews?◆More bookings per host/user?

➔At the level of the problem?◆Define accuracy?

24

TruthSystem

True Positives

Page 25: NLP in the Real World

How to measure success?

➔At the level of the user?◆Better reviews?◆More bookings per host/user?

➔At the level of the problem?◆Define accuracy?

25

TruthSystem

FalsePositives

FalseNegatives

True Positives

Page 26: NLP in the Real World

How to measure success?

➔At the level of the user?◆Better reviews?◆More bookings per host/user?

➔At the level of the problem?◆Define accuracy?

26

TruthSystem

FalsePositives

FalseNegatives

True Positives

Metrics:

Precision = TPs / System

Recall = TPs / Truth

Page 27: NLP in the Real World

7 Steps to Real-world NLP Happiness

1. Whose life are you trying to improve?2. What precise problem do you want to solve?3. Do you have any data?4. How will you measure success?5. How fast does it need to be?

27

Page 28: NLP in the Real World

How fast?

28

➔User interface waiting on it?➔Some automated decision waiting on it?➔Can I get it done on the hardware I have?➔Metrics:

◆Latency: how long to process one thing.◆Throughput: how many things finish on

average in a period.

Page 29: NLP in the Real World

7 Steps to Real-world NLP Happiness

1. Whose life are you trying to improve?2. What precise problem do you want to solve?3. Do you have any data?4. How will you measure success?5. How fast does it need to be?6. How should it be integrated?

29

Page 30: NLP in the Real World

How should it be integrated?

30

➔Bring the computation to the data (Cluster)➔Bring the data to the computation (Cloud

APIs)➔Other complexities:

◆Containers (e.g., Docker)◆Programming interface (e.g., Java,

RESTful)◆Where to persist the data?◆Combine with existing systems?

Page 31: NLP in the Real World

7 Steps to Real-world NLP Happiness

1. Whose life are you trying to improve?2. What precise problem do you want to solve?3. Do you have any data?4. How will you measure success?5. How fast does it need to be?6. How should it be integrated?7. How do I make it better?

31

Page 32: NLP in the Real World

How to make it better?

32

➔Error analysis➔Adaptation

◆Overrides◆Configuration◆Field training◆Field paving◆Trading off speed for accuracy

➔Upgrades: Consistency v. Correctness

Page 33: NLP in the Real World

Questions

33

➔Doesn’t Deep Learning solve everything?➔What should I do in college to be well-

prepared for this real world?➔What distinguishes Basis from other places I

might think about for an internship?