N EU G EN Text Generation from Meaning Representations Yannis - - PowerPoint PPT Presentation

n eu g en
SMART_READER_LITE
LIVE PREVIEW

N EU G EN Text Generation from Meaning Representations Yannis - - PowerPoint PPT Presentation

N EU G EN Text Generation from Meaning Representations Yannis Konstas Joint work with Mark Yatskar, Luke Zettlemoyer and Yejin Choi (UW) ~ Yonatan Bisk and Daniel Marcu (ISI) Motivation Motivation Machine-generated


slide-1
SLIDE 1

NEUGEN

  • Text Generation from Meaning Representations

Yannis Konstas

  • Joint work with

Mark Yatskar, Luke Zettlemoyer and Yejin Choi (UW) ~ Yonatan Bisk and Daniel Marcu (ISI)

slide-2
SLIDE 2

Motivation

slide-3
SLIDE 3

Motivation

Machine-generated Representation

slide-4
SLIDE 4

Motivation

Machine-generated Representation

slide-5
SLIDE 5

Motivation

Machine-generated Representation

slide-6
SLIDE 6

Motivation

Machine-generated Representation

source block: hk target block: ms pos RP: W scale: small

slide-7
SLIDE 7

Motivation

Machine-generated Representation

source block: hk target block: ms pos RP: W scale: small

Place the heineken block west of the mercedes block.

slide-8
SLIDE 8

Motivation

Machine-generated Representation

source block: hk target block: ups pos RP: W scale: big

slide-9
SLIDE 9

Motivation

Machine-generated Representation

source block: hk target block: ups pos RP: W scale: big

Place the heineken block in the first

  • pen space to the left of ups block.
slide-10
SLIDE 10

Motivation

slide-11
SLIDE 11

Motivation

Machine-generated Representation

slide-12
SLIDE 12

Motivation

Machine-generated Representation Sentence Compression

slide-13
SLIDE 13

Motivation

Machine-generated Representation Sentence Compression Sentence Fusion

slide-14
SLIDE 14

Motivation

Machine-generated Representation Sentence Compression Sentence Fusion Paraphrasing

slide-15
SLIDE 15

NLG Pipeline

Content Selection Document Planning

Surface Realisation Sentence Planning

Text

Communicative Goal Content Planning

A A A A m

Input

Reordering/Linearization Splitting/Aggregation Lexicalization

Framework

slide-16
SLIDE 16

NLG Pipeline

Content Selection Document Planning

Surface Realisation Sentence Planning

Text

Communicative Goal Content Planning

A A A A m

Input

Reordering/Linearization Splitting/Aggregation Lexicalization

Framework

slide-17
SLIDE 17

NLG Pipeline

Content Selection Document Planning

Surface Realisation Sentence Planning

Text

Communicative Goal Content Planning

A A A A m

Input

Reordering/Linearization Splitting/Aggregation Lexicalization

  • Neural Encoder
  • RNN Decoder
  • Graph Alignment

Framework

slide-18
SLIDE 18

Joint Generator

Temperature Time Min Mean Max 06:00-21:00 9 15 21 Wind Speed Time Min Mean Max 06:00-21:00 15 20 30 Cloud Sky Cover Time Percent (%) 06:00-09:00 25-50 09:00-12:00 50-75 Wind Direction Time Mode 06:00-21:00 S

S

...

S

...

S

...

S

...

S

...

? ? ?

Cloudy, with temperatures between 10 and 20 degrees. South wind around 20 mph.

Training S → R(start) R(ri.t)→FS(rj, start)R(rj.t) R(ri.t)→FS(rj, start) FS(r, r.fi)→F(r, r.fj)FS(r, r.fj) FS(r, r.fi)→F(r, r.fj) F(r, r.f)→W(r, r.f)F(r, r.f) F(r, r.f)→W(r, r.f) W(r, r.f)→α W(r, r.f)→g(f.v) FS0,1(temp1,start) FS0,2(temp1,start) F0,1(temp1,min) F0,1(temp1,max) F0,2(temp1,min) F0,2(temp1,max) FS1,2(temp1,start) (2) Hypergraph Representation

FS0,5(skyCover1.t,start)     mostly cloudy ? the morning mostly cloudy ? after 11am mostly cloudy ? then becoming · · ·     F0,2(skyCover1.t,%)     mostly cloudy mostly clouds cloudy , · · ·     W4,5(skyCover1.t,time)     morning 11am after · · ·     W0,1(skyCover1.t,%)     mostly cloudy sunny · · ·     W1,2(skyCover1.t,%)     mostly cloudy sunny · · ·    

(3) k-best decoding via integration Testing (1) PCFG Grammar

Konstas and Lapata, 2012, 2013

slide-19
SLIDE 19

Joint Generator

Temperature Time Min Mean Max 06:00-21:00 9 15 21 Wind Speed Time Min Mean Max 06:00-21:00 15 20 30 Cloud Sky Cover Time Percent (%) 06:00-09:00 25-50 09:00-12:00 50-75 Wind Direction Time Mode 06:00-21:00 S

S

...

S

...

S

...

S

...

S

...

? ? ?

Cloudy, with temperatures between 10 and 20 degrees. South wind around 20 mph.

Training S → R(start) R(ri.t)→FS(rj, start)R(rj.t) R(ri.t)→FS(rj, start) FS(r, r.fi)→F(r, r.fj)FS(r, r.fj) FS(r, r.fi)→F(r, r.fj) F(r, r.f)→W(r, r.f)F(r, r.f) F(r, r.f)→W(r, r.f) W(r, r.f)→α W(r, r.f)→g(f.v) FS0,1(temp1,start) FS0,2(temp1,start) F0,1(temp1,min) F0,1(temp1,max) F0,2(temp1,min) F0,2(temp1,max) FS1,2(temp1,start) (2) Hypergraph Representation

FS0,5(skyCover1.t,start)     mostly cloudy ? the morning mostly cloudy ? after 11am mostly cloudy ? then becoming · · ·     F0,2(skyCover1.t,%)     mostly cloudy mostly clouds cloudy , · · ·     W4,5(skyCover1.t,time)     morning 11am after · · ·     W0,1(skyCover1.t,%)     mostly cloudy sunny · · ·     W1,2(skyCover1.t,%)     mostly cloudy sunny · · ·    

(3) k-best decoding via integration Testing (1) PCFG Grammar

Konstas and Lapata, 2012, 2013

slide-20
SLIDE 20

Joint Generator

Temperature Time Min Mean Max 06:00-21:00 9 15 21 Wind Speed Time Min Mean Max 06:00-21:00 15 20 30 Cloud Sky Cover Time Percent (%) 06:00-09:00 25-50 09:00-12:00 50-75 Wind Direction Time Mode 06:00-21:00 S

S

...

S

...

S

...

S

...

S

...

? ? ?

Cloudy, with temperatures between 10 and 20 degrees. South wind around 20 mph.

Training S → R(start) R(ri.t)→FS(rj, start)R(rj.t) R(ri.t)→FS(rj, start) FS(r, r.fi)→F(r, r.fj)FS(r, r.fj) FS(r, r.fi)→F(r, r.fj) F(r, r.f)→W(r, r.f)F(r, r.f) F(r, r.f)→W(r, r.f) W(r, r.f)→α W(r, r.f)→g(f.v) FS0,1(temp1,start) FS0,2(temp1,start) F0,1(temp1,min) F0,1(temp1,max) F0,2(temp1,min) F0,2(temp1,max) FS1,2(temp1,start) (2) Hypergraph Representation

FS0,5(skyCover1.t,start)     mostly cloudy ? the morning mostly cloudy ? after 11am mostly cloudy ? then becoming · · ·     F0,2(skyCover1.t,%)     mostly cloudy mostly clouds cloudy , · · ·     W4,5(skyCover1.t,time)     morning 11am after · · ·     W0,1(skyCover1.t,%)     mostly cloudy sunny · · ·     W1,2(skyCover1.t,%)     mostly cloudy sunny · · ·    

(3) k-best decoding via integration Testing (1) PCFG Grammar

Konstas and Lapata, 2012, 2013

slide-21
SLIDE 21

More Complex Structure

slide-22
SLIDE 22

More Complex Structure

know-01 I planet lazy

ARG0 ARG1

inhabit-01

man

ARG1-of ARG0 mod

Input (Graph or Tree)

slide-23
SLIDE 23

More Complex Structure

know-01 I planet lazy

ARG0 ARG1

inhabit-01

man

ARG1-of ARG0 mod

Input (Graph or Tree)

AMR DAG

slide-24
SLIDE 24

More Complex Structure

know-01 I planet lazy

ARG0 ARG1

inhabit-01

man

ARG1-of ARG0 mod

Input (Graph or Tree)

AMR DAG λ-calculus Expression Tree

slide-25
SLIDE 25

More Complex Structure

know-01 I planet lazy

ARG0 ARG1

inhabit-01

man

ARG1-of ARG0 mod

Input (Graph or Tree)

AMR DAG λ-calculus Expression Tree ECIs Tree

slide-26
SLIDE 26

More Complex Structure

know-01 I planet lazy

ARG0 ARG1

inhabit-01

man

ARG1-of ARG0 mod

Input (Graph or Tree)

I know a planet that is inhabited by a lazy man.

Output (Text)

AMR DAG λ-calculus Expression Tree ECIs Tree

slide-27
SLIDE 27

More Complex Structure

I knew a planet that was inhabited by a lazy

  • man. (lpp_1943.249)

I have known a planet that was inhabited by a lazy man.

know-01 I planet lazy

ARG0 ARG1

inhabit-01

man

ARG1-of ARG0 mod

Input (Graph or Tree)

I know a planet that is inhabited by a lazy man.

Output (Text)

AMR DAG λ-calculus Expression Tree ECIs Tree

slide-28
SLIDE 28

More Complex Structure

I knew a planet that was inhabited by a lazy

  • man. (lpp_1943.249)

I have known a planet that was inhabited by a lazy man. I know about a planet. It is inhabited by a lazy man.

know-01 I planet lazy

ARG0 ARG1

inhabit-01

man

ARG1-of ARG0 mod

Input (Graph or Tree)

I know a planet that is inhabited by a lazy man.

Output (Text)

AMR DAG λ-calculus Expression Tree ECIs Tree

slide-29
SLIDE 29

NEUGEN Framework

ARG1-of

slide-30
SLIDE 30

NEUGEN Framework

ARG1-of

Encoder Decoder

G w

slide-31
SLIDE 31

NEUGEN Framework

Encoder

  • Bag of Words: Concepts and roles
  • Attention mechanism

ARG1-of

Encoder Decoder

G w

slide-32
SLIDE 32

NEUGEN Framework

Encoder

  • Bag of Words: Concepts and roles
  • Attention mechanism

Decoder

  • Left-to-right word LSTM
  • Greedy beam search

ARG1-of

Encoder Decoder

G w

slide-33
SLIDE 33

NEUGEN Framework

Encoder

  • Bag of Words: Concepts and roles
  • Attention mechanism

Decoder

  • Left-to-right word LSTM
  • Greedy beam search

ARG1-of

Encoder Decoder

G w

Reranker

slide-34
SLIDE 34

NEUGEN Framework

Encoder

  • Bag of Words: Concepts and roles
  • Attention mechanism

Decoder

  • Left-to-right word LSTM
  • Greedy beam search

Reranker

ARG1-of

Encoder Decoder

G w

Reranker

slide-35
SLIDE 35

NEUGEN Framework

Encoder

  • Bag of Words: Concepts and roles
  • Attention mechanism

Decoder

  • Left-to-right word LSTM
  • Greedy beam search

Reranker

  • CCG parser -> semantics

ARG1-of

Encoder Decoder

G w

Reranker

slide-36
SLIDE 36

NEUGEN Framework

Encoder

  • Bag of Words: Concepts and roles
  • Attention mechanism

Decoder

  • Left-to-right word LSTM
  • Greedy beam search

Reranker

  • CCG parser -> semantics
  • Partial propositions graph Eincr

ARG1-of

Encoder Decoder

G w

Reranker

slide-37
SLIDE 37

NEUGEN Framework

Encoder

  • Bag of Words: Concepts and roles
  • Attention mechanism

Decoder

  • Left-to-right word LSTM
  • Greedy beam search

Reranker

  • CCG parser -> semantics
  • Partial propositions graph Eincr

ARG1-of

Aligner Encoder Decoder

G w Eincr G

Aligner

  • Feed-forward NN with attention

Reranker

slide-38
SLIDE 38

NEUGEN Framework

Encoder

  • Bag of Words: Concepts and roles
  • Attention mechanism

Decoder

  • Left-to-right word LSTM
  • Greedy beam search

Reranker

  • CCG parser -> semantics
  • Partial propositions graph Eincr

ARG1-of

Aligner Encoder Decoder

G w Eincr G salign

Aligner

  • Feed-forward NN with attention
  • salign = fit(G, Eincr)

Reranker

slide-39
SLIDE 39

Alignment

slide-40
SLIDE 40

Alignment

w: A man inhabited a planet

slide-41
SLIDE 41

Alignment

w: A man inhabited a planet

man inhabit

agent

planet

patient

Eincr

slide-42
SLIDE 42

Alignment

know-01 I planet lazy

ARG0 ARG1

inhabit-01

man

ARG1-of ARG0 mod

G

w: A man inhabited a planet

man inhabit

agent

planet

patient

Eincr

slide-43
SLIDE 43

Alignment

know-01 I planet lazy

ARG0 ARG1

inhabit-01

man

ARG1-of ARG0 mod

G

w: A man inhabited a planet

man inhabit

agent

planet

patient

Eincr

fit(G, Eincr)

slide-44
SLIDE 44

Alignment

know-01 I planet lazy

ARG0 ARG1

inhabit-01

man

ARG1-of ARG0 mod

G

w: A man inhabited a planet

man inhabit

agent

planet

patient

Eincr

fit(G, Eincr) <inhabit, man, agent> <inhabit, planet, patient> <know-01, I, A0> <know-01, planet, A1> <planet, inhabit-01, A1-of> <inhabit-01, man, A0> <man, lazy, mod>

slide-45
SLIDE 45

Alignment

<know, I, A0>

  • <know, planet, A1>
  • <planet, inhabit, A1-of>
  • <inhabit, man, A0>
  • <man, lazy, mod>

G

[0..1]

fitness score

<inhabit, man, agent>

  • <inhabit, planet, patient>

Eincr E1: .

attention weights

+

max

slide-46
SLIDE 46

Alignment

<inhabit, planet, patient>

  • <inhabit, man, agent>

<know, I, A0>

  • <know, planet, A1>
  • <planet, inhabit, A1-of>
  • <inhabit, man, A0>
  • <man, lazy, mod>

Eincr G E2:

fit(G, Eincr) = 1 n

n

X

i=0

fit(G, Ei)

[0..1]

fitness score

attention weights

+

max

.

slide-47
SLIDE 47

Decoding

encoder(G)

know I planet lazy

ARG0 ARG1

inhabit man

ARG1-of ARG0 mod

G

slide-48
SLIDE 48

Decoding

encoder(G)

know I planet lazy

ARG0 ARG1

inhabit man

ARG1-of ARG0 mod

G

slide-49
SLIDE 49

Decoding

encoder(G)

I The A …

know I planet lazy

ARG0 ARG1

inhabit man

ARG1-of ARG0 mod

G

slide-50
SLIDE 50

Decoding

encoder(G)

I The A …

know I planet lazy

ARG0 ARG1

inhabit man

ARG1-of ARG0 mod

w11: I

The

w12:

Man

w13:

Tree

w14:

G

slide-51
SLIDE 51

Decoding

encoder(G)

I The A …

re-score:

know I planet lazy

ARG0 ARG1

inhabit man

ARG1-of ARG0 mod

w11: I

The

w12:

Man

w13:

Tree

w14:

G

sLSTM

slide-52
SLIDE 52

Decoding

encoder(G)

I The A … know knew planet …

re-score:

know I planet lazy

ARG0 ARG1

inhabit man

ARG1-of ARG0 mod

w11: I

The

w12:

Man

w13:

Tree

w14:

G

sLSTM

slide-53
SLIDE 53

Decoding

encoder(G)

I The A … know knew planet …

re-score:

know I planet lazy

ARG0 ARG1

inhabit man

ARG1-of ARG0 mod

w11: I

The

w12:

Man

w13:

Tree

w14:

… I know

agent

w21:

I knew

agent

w22:

The planet

w23:

Man planet

w24:

G

sLSTM + salign

slide-54
SLIDE 54

Decoding

encoder(G)

I The A … know knew planet …

re-score:

know I planet lazy

ARG0 ARG1

inhabit man

ARG1-of ARG0 mod

w11: I

The

w12:

Man

w13:

Tree

w14:

… I know

agent

w21:

I knew

agent

w22:

The planet

w23:

Man planet

w24:

G

sLSTM + salign

slide-55
SLIDE 55

Decoding

encoder(G)

I The A … know knew planet … a planet man …

re-score:

know I planet lazy

ARG0 ARG1

inhabit man

ARG1-of ARG0 mod

w11: I

The

w12:

Man

w13:

Tree

w14:

… I know

agent

w21:

I knew

agent

w22:

The planet

w23:

Man planet

w24:

G

sLSTM + salign

slide-56
SLIDE 56

Decoding

encoder(G)

I The A … know knew planet … a planet man …

re-score:

know I planet lazy

ARG0 ARG1

inhabit man

ARG1-of ARG0 mod

w11: I

The

w12:

Man

w13:

Tree

w14:

… I know

agent

w21:

I knew

agent

w22:

The planet

w23:

Man planet

w24: w41:

I know

agent

a planet

patient

w42:

I knew

agent

planets that

patient

w43: The planet I

knew

agent patient

w44: Man know

agent

a planet

patient

that …

G

sLSTM + salign

slide-57
SLIDE 57

Decoding

encoder(G)

I The A … know knew planet … a planet man …

re-score:

know I planet lazy

ARG0 ARG1

inhabit man

ARG1-of ARG0 mod

w11: I

The

w12:

Man

w13:

Tree

w14:

… I know

agent

w21:

I knew

agent

w22:

The planet

w23:

Man planet

w24: w41:

I know

agent

a planet

patient

w42:

I knew

agent

planets that

patient

w43: The planet I

knew

agent patient

w44: Man know

agent

a planet

patient

that …

G

sLSTM + salign

slide-58
SLIDE 58

?

Decoding

encoder(G)

I The A … know knew planet … a planet man …

re-score:

know I planet lazy

ARG0 ARG1

inhabit man

ARG1-of ARG0 mod

w11: I

The

w12:

Man

w13:

Tree

w14:

… I know

agent

w21:

I knew

agent

w22:

The planet

w23:

Man planet

w24: w41:

I know

agent

a planet

patient

w42:

I knew

agent

planets that

patient

w43: The planet I

knew

agent patient

w44: Man know

agent

a planet

patient

that …

G

sLSTM + salign

slide-59
SLIDE 59

?

Decoding

encoder(G)

I The A … know knew planet … a planet man …

re-score:

know I planet lazy

ARG0 ARG1

inhabit man

ARG1-of ARG0 mod

w11: I

The

w12:

Man

w13:

Tree

w14:

… I know

agent

w21:

I knew

agent

w22:

The planet

w23:

Man planet

w24: w41:

I know

agent

a planet

patient

w42:

I knew

agent

planets that

patient

w43: The planet I

knew

agent patient

w44: Man know

agent

a planet

patient

that …

inhabit inhabited was …

G

sLSTM + salign

slide-60
SLIDE 60

Preliminary Results

slide-61
SLIDE 61

Preliminary Results

Experimental Setup

slide-62
SLIDE 62

Preliminary Results

Experimental Setup

  • Baseline RNN w/o alignment
  • NeuGen
slide-63
SLIDE 63

Preliminary Results

Experimental Setup

  • Baseline RNN w/o alignment
  • NeuGen

Dataset

slide-64
SLIDE 64

Preliminary Results

Experimental Setup

  • Baseline RNN w/o alignment
  • NeuGen

Dataset

  • AMR LDC2015E86
  • Train: 15k, Dev: 1.2k, Test: 1.2k
slide-65
SLIDE 65

Preliminary Results

Experimental Setup

  • Baseline RNN w/o alignment
  • NeuGen

Dataset

  • AMR LDC2015E86
  • Train: 15k, Dev: 1.2k, Test: 1.2k

5.5 11 16.5 22 BLEU-4 METEOR

Baseline NeuGen

slide-66
SLIDE 66

Example Output

slide-67
SLIDE 67

Example Output

person Gallardo found-01

domain ARG0-of

Tijuana Drug Cartel

ARG1

G

flee-01

ARG0-of

slide-68
SLIDE 68

Example Output

Gold: Gallardo is the fugitive founder of Tijuana Drug Cartel.

  • Baseline: Gallardo is the founder of Tijuana Drug Cartel.
  • NeuGen: Tijunana Drug Cartel is the founder of Gallardo.

person Gallardo found-01

domain ARG0-of

Tijuana Drug Cartel

ARG1

G

flee-01

ARG0-of

slide-69
SLIDE 69

Example Output

Gold: Gallardo is the fugitive founder of Tijuana Drug Cartel.

  • Baseline: Gallardo is the founder of Tijuana Drug Cartel.
  • NeuGen: Tijunana Drug Cartel is the founder of Gallardo.

person Gallardo found-01

domain ARG0-of

Tijuana Drug Cartel

ARG1

G

flee-01

ARG0-of Gallardo

  • Tijuana Drug Cartel
  • State
  • Country
slide-70
SLIDE 70

Example Output

Gold: Gallardo is the fugitive founder of Tijuana Drug Cartel.

  • Baseline: Gallardo is the founder of Tijuana Drug Cartel.
  • NeuGen: Tijunana Drug Cartel is the founder of Gallardo.

person Gallardo found-01

domain ARG0-of

Tijuana Drug Cartel

ARG1

G

flee-01

ARG0-of Gallardo

  • Tijuana Drug Cartel
  • State
  • Country

Gallardo is the founder of

  • Gallardo ’s Tijuana Drug Cartel is the

patient agent

  • 19.82
  • 17.79

Tijuana Drug Cartel is the founder of

  • Tijuana Drug Cartel was the founder of

patient patient

  • 18.67
  • 20.24
slide-71
SLIDE 71

Example Output

Gold: Gallardo is the fugitive founder of Tijuana Drug Cartel.

  • Baseline: Gallardo is the founder of Tijuana Drug Cartel.
  • NeuGen: Tijunana Drug Cartel is the founder of Gallardo.

person Gallardo found-01

domain ARG0-of

Tijuana Drug Cartel

ARG1

G

flee-01

ARG0-of Gallardo

  • Tijuana Drug Cartel
  • State
  • Country

Gallardo is the founder of

  • Gallardo ’s Tijuana Drug Cartel is the

patient agent

  • 19.82
  • 17.79

Tijuana Drug Cartel is the founder of

  • Tijuana Drug Cartel was the founder of

patient patient

  • 18.67
  • 20.24

Gallardo is the founder of Tijuana Drug Cartel.

agent patient

  • 19.59

Tijuana Drug Cartel is the founder of Gallardo.

agent patient

  • 17.84
slide-72
SLIDE 72

Next Steps

slide-73
SLIDE 73

Next Steps

  • “Machine-generated” representations
  • λ-calculus (ATIS)
  • Blocks World complex descriptions (from ISI)
slide-74
SLIDE 74

Next Steps

  • “Machine-generated” representations
  • λ-calculus (ATIS)
  • Blocks World complex descriptions (from ISI)
slide-75
SLIDE 75

Next Steps

  • “Machine-generated” representations
  • λ-calculus (ATIS)
  • Blocks World complex descriptions (from ISI)
  • Downstream Text-to-Text Applications
slide-76
SLIDE 76

THANK You