Neural Semantic Parsing with Anonymization for Command Understanding - - PowerPoint PPT Presentation

neural semantic parsing with anonymization for command
SMART_READER_LITE
LIVE PREVIEW

Neural Semantic Parsing with Anonymization for Command Understanding - - PowerPoint PPT Presentation

Neural Semantic Parsing with Anonymization for Command Understanding in General- Purpose Service Robots Nick Walker , Yu-Tang Peng, Maya Cakmak Bring me an apple Traditional semantic parsing bring an apple VB DT NN DT NN\ NP


slide-1
SLIDE 1
slide-2
SLIDE 2

Neural Semantic Parsing with Anonymization for Command Understanding in General- Purpose Service Robots

Nick Walker, Yu-Tang Peng, Maya Cakmak

slide-3
SLIDE 3
slide-4
SLIDE 4

Bring me an apple

slide-5
SLIDE 5

Traditional semantic parsing

bring an apple

NN VB DT

Zettlemoyer and Collins 2007

DT NN\ NP
 λ$1.is_a($1, “apple”) VB NP\ S
 bring(X)

5

slide-6
SLIDE 6

bring an apple

bring( λ $1 (is_a($1 “apple”)))

Neural machine translation

6

Dong and Lapata 2016

f

slide-7
SLIDE 7

Neural machine translation

7

Embedding

fetch an apple

Encoder LSTM Encoder LSTM Encoder LSTM

h0 h1 h2 h2

Attention

h0..2

Decoder LSTM bring Decoder LSTM Decoder LSTM … ( λ $1 (is_a($1 “apple”)) )

Dong and Lapata 2016

slide-8
SLIDE 8

How do we frame command understanding so that neural semantic parsing methods can work for robotics domains?

slide-9
SLIDE 9

Command Anonymized Command Anonymized Logical Form Command Anonymizer Semantic Parser Logical Form Logical Form

9

slide-10
SLIDE 10

“bring an apple” “bring an <object>”

Simplification:
 Anonymize Commands

  • use robot’s ontology to

simplify commands

  • improve predictability
  • hit or miss

Command Anonymizer

10

slide-11
SLIDE 11

Simplification:
 Anonymized Logical Representation

  • skip argument assignment
  • no longer executable

“bring an <object>” bring(λ$1.(is_a($1, <object>))) Semantic Parser

11

slide-12
SLIDE 12

Getting executability back

  • if command anonymization

worked, deanonymization can be straightforward

  • but in other cases…

bring(λ$1.(is_a($1, <object>)))

Logical Form Deanonymizer

bring(λ$1.(is_a($1, “apple”)))

12

Semantic Parser Command Anonymizer

apple: <object>

slide-13
SLIDE 13

Anonymization Failure

“bring an apple” “bring an apple”

bring( λ$1.(is_a($1, <object>)) )

Command Anonymizer Semantic Parser Logical Form Deanonymizer

bring(λ$1.(is_a($1, “apple”)))

  • good word embeddings

make parser robust to unseen entities

13

Confirmation dialogue “What would you like me to bring?”

?: <object>

slide-14
SLIDE 14

Deanonymization Recovery

“bring an apple from the kitchen to the table” “bring an <object> from the <location> to the <location>”

b r i n g ( λ $ 1 . ( i s _ a ( $ 1 , <

  • b

j e c t > ) ^ a t ( $ 1 , < l

  • c

a t i

  • n

> ) ) , < l

  • c

a t i

  • n

> )

Command Anonymizer Semantic Parser Logical Form Deanonymizer

bring( λ$1.(is_a($1, “apple”) ^ at($1, “kitchen”)),”table”) )

  • ambiguous cases
  • handle in dialogue

Confirmation dialogue “You’d like me to bring a what from where to where?”

14

kitchen: <location> table: <location> apple: <object>

slide-15
SLIDE 15

How well does a neural semantic parser work under this regime in a robotics domain?

15

slide-16
SLIDE 16

Getting Annotated Data

16

$vbbring me the $object = bring(λ$1.(is a($1, $object)))

slide-17
SLIDE 17

Getting Annotated Data

  • Modified RoboCup@Home 2018 GPSR command

generator

  • Generates command + logical form
  • 21 predicates
  • 125 annotations →1211 anonymized commands
  • 101 anonymized logical forms

17

slide-18
SLIDE 18

Paraphrased Data

  • Different words, same meaning
  • 1836 paraphrases from 95 crowd workers
  • Reasonable validation checks required

18

Generated: 
 “tell me how many coke there are on the freezer” Paraphrased: 
 “how many cokes are left in the freezer”

slide-19
SLIDE 19

Experiment

  • Split paraphrased data 70/10/20%
  • Train and tune, then test on the held out 20%
  • Measure accuracy, percentage of exact match predictions
  • Assume ontology is empty! Command anonymization

always fails

19

slide-20
SLIDE 20

Train Paraphrased Test Paraphrased Grammar-based Oracle k-Nearest Neighbors

20

percentage accuracy (↑)

slide-21
SLIDE 21

percentage accuracy (↑)

Train Paraphrased Test Paraphrased Grammar-based Oracle k-Nearest Neighbors seq2seq + GloVe + GloVe;ELMo + GloVe;OpenAI + GloVe;BERTbase + GloVe;BERTlarge

21

slide-22
SLIDE 22

percentage accuracy (↑)

Train Paraphrased Test Paraphrased Grammar-based Oracle 1.1 k-Nearest Neighbors 42.8 seq2seq 64.4 + GloVe 70.2 + GloVe;ELMo 77.3 + GloVe;OpenAI 78.2 + GloVe;BERTbase 75.4 + GloVe;BERTlarge 78.5

22

slide-23
SLIDE 23

Train Paraphrased

  • Gen. + Paraphrased

Test Paraphrased Paraphrased Grammar-based Oracle 1.1 1.1 k-Nearest Neighbors 42.8 49.8 seq2seq 64.4 79.6 + GloVe 70.2 85.3 + GloVe;ELMo 77.3 85.4 + GloVe;OpenAI 78.2 89.0 + GloVe;BERTbase 75.4 87.6 + GloVe;BERTlarge 78.5 89.4

23

percentage accuracy (↑)

slide-24
SLIDE 24

You can train neural semantic parsers that work well for command-taking dialogues in robots.

slide-25
SLIDE 25

Use our code and data!

  • Train your own models
  • Use our baselines
  • Beat our performance (data, splits available)
  • Hack on a Python version of the command generator

25

github.com/nickswalker/gpsr-command-understanding

slide-26
SLIDE 26

Neural Semantic Parsing with Anonymization for Command Understanding in General-Purpose Service Robots

Nick Walker, Yu-Tang Peng, Maya Cakmak

Slides DOI 10.5281/zenodo.3253252

Paper

arxiv.org/abs/1907.01115