Learning Distribu.ons over Logical Forms for Referring - - PowerPoint PPT Presentation

learning distribu ons over logical forms for referring
SMART_READER_LITE
LIVE PREVIEW

Learning Distribu.ons over Logical Forms for Referring - - PowerPoint PPT Presentation

Learning Distribu.ons over Logical Forms for Referring Expression Genera.on Nicholas FitzGerald Yoav Artzi Luke ZeClemoyer Referring


slide-1
SLIDE 1

Learning ¡Distribu.ons ¡over ¡Logical ¡Forms ¡for ¡ Referring ¡Expression ¡Genera.on ¡

Nicholas ¡FitzGerald ¡ ¡ ¡ ¡ ¡Yoav ¡Artzi ¡ ¡ ¡ ¡ ¡Luke ¡ZeClemoyer ¡

slide-2
SLIDE 2

Referring ¡Expressions ¡

Photo: ¡pwenzel ¡on ¡Flikr ¡

slide-3
SLIDE 3

Referring ¡Expressions ¡

Photo: ¡pwenzel ¡on ¡Flikr ¡

slide-4
SLIDE 4

Referring ¡Expressions ¡

“the ¡red ¡beans” ¡

Photo: ¡pwenzel ¡on ¡Flikr ¡

slide-5
SLIDE 5

Referring ¡Expressions ¡

“the ¡red ¡beans” ¡ “the ¡second ¡jar ¡from ¡the ¡ leK ¡on ¡the ¡middle ¡shelf” ¡

Photo: ¡pwenzel ¡on ¡Flikr ¡

slide-6
SLIDE 6

Referring ¡Expressions ¡

“the ¡red ¡beans” ¡ “the ¡second ¡jar ¡from ¡the ¡ leK ¡on ¡the ¡middle ¡shelf” ¡ “the ¡jar ¡underneath ¡the ¡ space ¡between ¡the ¡two ¡ biggest ¡white ¡jars” ¡

Photo: ¡pwenzel ¡on ¡Flikr ¡

slide-7
SLIDE 7

``The ¡green ¡ and ¡red ¡ balls.’’ ¡

Grounded ¡Language ¡Problems ¡

Physical ¡Scene ¡ Language ¡

slide-8
SLIDE 8

``The ¡green ¡ and ¡red ¡ balls.’’ ¡

Grounded ¡Language ¡Problems ¡

Physical ¡Scene ¡ Logical ¡Form ¡(LF) ¡ Language ¡

ιx.(green(x) ∨ red(x)) ∧sphere(x)

slide-9
SLIDE 9

``The ¡green ¡ and ¡red ¡ balls.’’ ¡

Grounded ¡Language ¡Problems ¡

Physical ¡Scene ¡ Logical ¡Form ¡(LF) ¡ Language ¡

ιx.(green(x) ∨ red(x)) ∧sphere(x)

slide-10
SLIDE 10

``The ¡green ¡ and ¡red ¡ spheres.’’ ¡

Grounded ¡Language ¡Problems ¡

Physical ¡Scene ¡ Logical ¡Form ¡(LF) ¡ Language ¡

ιx.(green(x) ∨ red(x)) ∧sphere(x)

slide-11
SLIDE 11

``The ¡green ¡ and ¡red ¡ spheres.’’ ¡

Grounded ¡Language ¡Problems ¡

Grounded ¡Language ¡Understanding ¡ ¡

[Matuszek ¡et. ¡al ¡2012], ¡[Krishnamurthy ¡et. ¡al ¡2013] ¡

¡ Physical ¡Scene ¡ Logical ¡Form ¡(LF) ¡ Language ¡

ιx.(green(x) ∨ red(x)) ∧sphere(x)

slide-12
SLIDE 12

``The ¡green ¡ and ¡red ¡ spheres.’’ ¡

Grounded ¡Language ¡Problems ¡

Realiza.on ¡from ¡LF ¡

[White ¡and ¡Rajkumar ¡2009], ¡[Lu ¡and ¡Ng ¡2011] ¡

Physical ¡Scene ¡ Logical ¡Form ¡(LF) ¡ Language ¡

ιx.(green(x) ∨ red(x)) ∧sphere(x)

Grounded ¡Language ¡Understanding ¡ ¡

[Matuszek ¡et. ¡al ¡2012], ¡[Krishnamurthy ¡et. ¡al ¡2013] ¡

¡

slide-13
SLIDE 13

``The ¡green ¡ and ¡red ¡ spheres.’’ ¡

Grounded ¡Language ¡Problems ¡

Realiza.on ¡from ¡LF ¡

[White ¡and ¡Rajkumar ¡2009], ¡[Lu ¡and ¡Ng ¡2011] ¡

Physical ¡Scene ¡ Logical ¡Form ¡(LF) ¡ Language ¡ LF ¡Genera.on ¡ Focus ¡of ¡this ¡talk: ¡ Generate ¡Distribu.on ¡

ιx.(green(x) ∨ red(x)) ∧sphere(x)

Grounded ¡Language ¡Understanding ¡ ¡

[Matuszek ¡et. ¡al ¡2012], ¡[Krishnamurthy ¡et. ¡al ¡2013] ¡

¡

slide-14
SLIDE 14

Goal: ¡Generate ¡Distribu.ons ¡over ¡LFs ¡

ιx.green(x) ∧ sphere(x) ∪ιx.red(x) ∧ sphere(x)

ιx.apple(x) ∪ ιx.pear(x)

ιx.(green(x) ∨ red(x)) ∧sphere(x)

. ..

“The ¡green ¡ball ¡ and ¡the ¡red ¡ball.” ¡ “The ¡green ¡and ¡red ¡spheres.” ¡ ¡ “The ¡green ¡and ¡red ¡balls.” ¡ “The ¡apple ¡and ¡the ¡pear.” ¡

Model ¡how ¡people ¡refer ¡to ¡objects ¡

  • Many ¡different ¡expressions ¡for ¡each ¡referent ¡
  • Some ¡are ¡more ¡likely ¡to ¡be ¡used ¡in ¡prac.ce ¡
  • We ¡need ¡to ¡learn ¡a ¡probability ¡distribu.on ¡
slide-15
SLIDE 15

Goal: ¡Generate ¡Distribu.ons ¡over ¡LFs ¡

ιx.green(x) ∧ sphere(x) ∪ιx.red(x) ∧ sphere(x)

ιx.apple(x) ∪ ιx.pear(x)

ιx.(green(x) ∨ red(x)) ∧sphere(x)

. ..

“The ¡green ¡ball ¡ and ¡the ¡red ¡ball.” ¡ “The ¡green ¡and ¡red ¡spheres.” ¡ ¡ “The ¡green ¡and ¡red ¡balls.” ¡ “The ¡apple ¡and ¡the ¡pear.” ¡

0.2 ¡ 0.3 ¡ 0.1 ¡

P(exp) ¡

Model ¡how ¡people ¡refer ¡to ¡objects ¡

  • Many ¡different ¡expressions ¡for ¡each ¡referent ¡
  • Some ¡are ¡more ¡likely ¡to ¡be ¡used ¡in ¡prac.ce ¡
  • We ¡need ¡to ¡learn ¡a ¡probability ¡distribu.on ¡

0.4 ¡

slide-16
SLIDE 16

Goal: ¡Generate ¡Distribu.ons ¡over ¡LFs ¡

ιx.green(x) ∧ sphere(x) ∪ιx.red(x) ∧ sphere(x)

ιx.apple(x) ∪ ιx.pear(x)

ιx.(green(x) ∨ red(x)) ∧sphere(x)

. . .

0.3 ¡ 0.2 ¡ 0.1 ¡

. . .

Several ¡advantages ¡

  • Natural ¡varia.on ¡for ¡genera.on ¡
  • Useful ¡prior ¡for ¡understanding ¡systems ¡

Input: ¡ Output: ¡

slide-17
SLIDE 17

Learn ¡from ¡Labeled ¡Examples ¡

“The ¡green, ¡red, ¡orange ¡and ¡yellow ¡toys” ¡ “The ¡green, ¡red, ¡yellow, ¡and ¡orange ¡objects” ¡ “All ¡the ¡pieces ¡that ¡are ¡not ¡blue ¡or ¡brown” ¡ “All ¡items ¡that ¡are ¡not ¡brown ¡or ¡blue” ¡ “Everything ¡that ¡is ¡not ¡brown ¡or ¡blue” ¡ ….. ¡

{ ¡ , ¡ } ¡ { ¡ , ¡

“The ¡red ¡and ¡green ¡balls.” ¡ “The ¡red ¡and ¡greed ¡spheres.” ¡ “The ¡pear ¡and ¡the ¡apple” ¡ “The ¡red ¡ball ¡and ¡the ¡green ¡pear” ¡ “All ¡the ¡balls ¡except ¡the ¡yellow ¡one” ¡ …… ¡

¡

} ¡

Lots ¡of ¡varia.on ¡in ¡prac.ce ¡

  • Collected ¡20 ¡sentences ¡per ¡scene ¡
  • Mean ¡of ¡6 ¡unique ¡logical ¡forms ¡per ¡scene ¡
  • Max ¡of ¡13 ¡ ¡
slide-18
SLIDE 18

Learn ¡from ¡Labeled ¡Examples ¡

{ ¡

Lots ¡of ¡varia.on ¡in ¡prac.ce ¡

  • Collected ¡20 ¡sentences ¡per ¡scene ¡
  • Mean ¡of ¡6 ¡unique ¡logical ¡forms ¡per ¡scene ¡
  • Max ¡of ¡13 ¡ ¡

, ¡ } ¡ { ¡ , ¡ } ¡

ιx.green(x) ∧ sphere(x) ∪ιx.red(x) ∧ sphere(x)

ιx.apple(x) ∪ ιx.pear(x) ιx.(green(x) ∨ red(x)) ∧sphere(x)

0.3 ¡ 0.2 ¡ 0.1 ¡

ιx.(red(x) ∨ green(x) ∨ orange(x) ∨yellow(x)) ∧ obj(x)

Ex.obj(x) \ (ιx.brown(x) ∧ triangle(x)

∪(ιx.blue(x) ∧ lego(x)

. . . . . .

0.4 ¡ 0.3 ¡

slide-19
SLIDE 19

Overview ¡

Space ¡of ¡Referring ¡Expressions ¡ Probabilis.c ¡Model ¡ Learning ¡ Experiments ¡ Results ¡ Conclusion ¡ ¡ ¡

slide-20
SLIDE 20

Overview ¡

Space ¡of ¡Referring ¡Expressions ¡

¡Seman.c ¡Modeling ¡ ¡Enumera.ng ¡Referring ¡Expressions ¡

Probabilis.c ¡Model ¡ Learning ¡ Experiments ¡ Results ¡ Conclusion ¡ ¡ ¡

slide-21
SLIDE 21

Seman.c ¡Modeling ¡

  • Simply-­‑typed ¡lambda ¡calculus ¡

– [Steedman ¡1996], ¡[Carpenter ¡1997], ¡[Steedman ¡2011] ¡

  • Extended ¡to ¡model ¡set ¡reference ¡

– Capture ¡dis.nc.ons ¡present ¡in ¡data ¡ – As ¡simple ¡as ¡possible ¡

slide-22
SLIDE 22

Seman.c ¡Modeling ¡

e

: ¡ ¡ ¡Sets ¡of ¡Objects ¡

t

: ¡ ¡ ¡[True, ¡False] ¡ Two ¡Simple ¡Types: ¡

slide-23
SLIDE 23

λx.blue(x)

Seman.c ¡Modeling ¡

< e, t >

ACributes ¡

slide-24
SLIDE 24

Seman.c ¡Modeling ¡

< e, t >

ACributes ¡

λx.triangle(x)

slide-25
SLIDE 25

Seman.c ¡Modeling ¡

< e, t >

ACributes ¡

λx.¬blue(x)

Logical ¡Operators ¡

slide-26
SLIDE 26

λx.blue(x) ∧ triangle(x)

Seman.c ¡Modeling ¡

ACributes ¡

< e, t >

Logical ¡Operators ¡

slide-27
SLIDE 27

λx.blue(x) ∨ triangle(x)

Seman.c ¡Modeling ¡

ACributes ¡

< e, t >

Logical ¡Operators ¡

slide-28
SLIDE 28

Seman.c ¡Modeling ¡

ιx.triangle(x) << e, t >, e >

Determiners ¡ ACribute ¡Coordina.on ¡ Logical ¡Operators ¡

slide-29
SLIDE 29

Seman.c ¡Modeling ¡

[ι, E, A] << e, t >, e >

Determiners ¡ ACribute ¡Coordina.on ¡ Logical ¡Operators ¡

E ≈ ∀ A ≈ ∃

slide-30
SLIDE 30

<< e, e >, e >

Seman.c ¡Modeling ¡

Set ¡Coordina.on ¡

ιx.triangle(x) ∪ιx.apple(x)

Determiners ¡ ACribute ¡Coordina.on ¡ Logical ¡Operators ¡

slide-31
SLIDE 31

<< e, e >, e >

Seman.c ¡Modeling ¡

Set ¡Coordina.on ¡

ιx.triangle(x) \ιx.blue(x) ∧triangle(x)

Determiners ¡ ACribute ¡Coordina.on ¡ Logical ¡Operators ¡

slide-32
SLIDE 32

Seman.c ¡Modeling ¡

Set ¡Coordina.on ¡ Determiners ¡ ACribute ¡Coordina.on ¡ Logical ¡Operators ¡ Plurality ¡ Cardinality ¡

slide-33
SLIDE 33

Seman.c ¡Modeling ¡

  • Simply-­‑typed ¡lambda ¡calculus ¡

– [Steedman ¡1996], ¡[Carpenter ¡1997], ¡[Steedman ¡2011] ¡

  • Extended ¡to ¡model ¡set ¡reference ¡

– Capture ¡dis.nc.ons ¡present ¡in ¡data ¡ – As ¡simple ¡as ¡possible ¡

  • Two ¡new ¡contribu.ons: ¡

– Sets ¡as ¡a ¡primi.ve ¡type ¡(plurals) ¡ – Coordina.on ¡

slide-34
SLIDE 34

Enumera.ng ¡Logical ¡Forms ¡

  • Enumerate ¡candidate ¡Logical ¡Forms ¡
  • Problem: ¡

– Infinite ¡in ¡general ¡

  • Goal: ¡

– finite ¡set ¡with ¡good ¡empirical ¡coverage ¡ – strategy ¡for ¡enumera.ng ¡

slide-35
SLIDE 35

Enumera.ng ¡Logical ¡Forms ¡

λx.red(x) λx.blue(x) λx.cube(x) λx.object(x)

. . .

λx.rect(x)

1 2 3 4 5

slide-36
SLIDE 36

Enumera.ng ¡Logical ¡Forms ¡

λx.red(x) λx.blue(x) λx.cube(x) λx.object(x)

. . .

λx.rect(x)

λx.¬red(x)

1 2 3 4 5

slide-37
SLIDE 37

Enumera.ng ¡Logical ¡Forms ¡

λx.red(x) λx.blue(x) λx.cube(x) λx.object(x)

. . .

λx.rect(x)

λx.¬red(x) λx.¬blue(x)

1 2 3 4 5

slide-38
SLIDE 38

Enumera.ng ¡Logical ¡Forms ¡

λx.red(x) λx.blue(x) λx.cube(x) λx.object(x)

. . .

λx.rect(x)

λx.¬red(x) λx.¬blue(x) ιx.red(x) ιx.cube(x) Ex.object(x)

. . . 1 2 3 4 5

slide-39
SLIDE 39

Enumera.ng ¡Logical ¡Forms ¡

λx.red(x) λx.blue(x) λx.cube(x) λx.object(x)

. . .

λx.rect(x)

λx.¬red(x) λx.¬blue(x) ιx.red(x) ιx.cube(x) Ex.object(x)

. . .

Ex.¬red(x)

ιx.¬blue(x)

1 2 3 4 5

slide-40
SLIDE 40

Enumera.ng ¡Logical ¡Forms ¡

λx.red(x) λx.blue(x) λx.cube(x) λx.object(x)

. . .

λx.rect(x)

λx.¬red(x) λx.¬blue(x) ιx.red(x) ιx.cube(x) Ex.object(x)

. . .

Ex.¬red(x)

ιx.¬blue(x)

λx.red(x) ∧ cube(x)

1 2 3 4 5

slide-41
SLIDE 41

Enumera.ng ¡Logical ¡Forms ¡

λx.red(x) λx.blue(x) λx.cube(x) λx.object(x)

. . .

λx.rect(x)

λx.¬red(x) λx.¬blue(x) ιx.red(x) ιx.cube(x) Ex.object(x)

. . .

Ex.¬red(x)

ιx.¬blue(x)

λx.red(x) ∧ cube(x) λx.red(x) ∧ object(x)

1 2 3 4 5

slide-42
SLIDE 42

Enumera.ng ¡Logical ¡Forms ¡

λx.red(x) λx.blue(x) λx.cube(x) λx.object(x)

. . .

λx.rect(x)

λx.¬red(x) λx.¬blue(x) ιx.red(x) ιx.cube(x) Ex.object(x)

. . .

Ex.¬red(x)

ιx.¬blue(x)

λx.red(x) ∧ cube(x) λx.red(x) ∧ object(x) λx.red(x) ∨ cube(x)

. . . 1 2 3 4 5

slide-43
SLIDE 43

Enumera.ng ¡Logical ¡Forms ¡

λx.red(x) λx.blue(x) λx.cube(x) λx.object(x) λx.¬red(x) λx.¬blue(x) ιx.red(x) ιx.cube(x) λx.red(x) ∧ object(x) λx.red(x) ∧ cube(x) λx.red(x) ∨ cube(x) ιx.red(x) ∧ object(x) Ax.red(x) ∨ object(x) Ex.object(x) Ex.¬red(x) λx.¬cube(x) ∧ object(x) λx.¬(cube(x) ∨ object(x))

. . . . . .

ιx.¬blue(x)

. . . . . .

λx.rect(x)

1 2 3 4 5

slide-44
SLIDE 44

Enumera.ng ¡Logical ¡Forms ¡

λx.red(x) λx.blue(x) λx.cube(x) λx.object(x) λx.¬red(x) λx.¬blue(x) ιx.red(x) ιx.cube(x) λx.red(x) ∧ object(x) λx.red(x) ∧ cube(x) λx.red(x) ∨ cube(x) ιx.red(x) ∧ object(x) Ax.red(x) ∨ object(x) Ex.object(x) Ex.¬red(x) λx.¬cube(x) ∧ object(x) λx.¬(cube(x) ∨ object(x)) ιx.red(x) ∪ ιx.cube(x) Ex.object(x) \ ιx.cube(x)

. . . . . .

ιx.¬blue(x)

. . . . . .

λx.rect(x)

. . .

λx.object(x) ∧ equal(x, Ay.cube(y))

1 2 3 4 5

slide-45
SLIDE 45

Enumera.ng ¡Logical ¡Forms ¡

λx.red(x) λx.blue(x) λx.cube(x) λx.object(x) λx.¬red(x) λx.¬blue(x) ιx.red(x) ιx.cube(x) λx.red(x) ∧ object(x) λx.red(x) ∧ cube(x) λx.red(x) ∨ cube(x) ιx.red(x) ∧ object(x) Ax.red(x) ∨ object(x) Ex.object(x) Ex.¬red(x) λx.¬cube(x) ∧ object(x) λx.¬(cube(x) ∨ object(x)) ιx.red(x) ∪ ιx.cube(x) Ex.object(x) \ ιx.cube(x)

. . . . . .

ιx.¬blue(x)

. . . . . .

λx.rect(x)

. . .

λx.object(x) ∧ equal(x, Ay.cube(y))

M 1 2 3 4 5

slide-46
SLIDE 46

Overview ¡

Space ¡of ¡Referring ¡Expressions ¡ Probabilis.c ¡Model ¡

¡Global ¡Model ¡ ¡Explicit ¡Pruning ¡Model ¡ ¡Features ¡

Learning ¡ Experiments ¡ Results ¡ Conclusion ¡ ¡ ¡

slide-47
SLIDE 47

Global ¡Model ¡

P(z | S, G), z ∈ Z

slide-48
SLIDE 48

Global ¡Model ¡

P(z | S, G), z ∈ Z

  • bj1: red, sphere, apple
  • bj2: brown, triangle
  • bj3: yellow, fries

… …

World ¡State ¡

slide-49
SLIDE 49

Target ¡Set ¡

Global ¡Model ¡

P(z | S, G), z ∈ Z

slide-50
SLIDE 50

Global ¡Model ¡

  • Global ¡Density-­‑Es.ma.on ¡Model ¡

– Mul.nomial ¡Log-­‑linear ¡over ¡expressions ¡z ¡that ¡name ¡the ¡ set ¡G ¡in ¡state ¡S ¡

PG(z | S, G; θ) = 1 C eθ·φ(z,S,G)

θ ∈ Rn φ(z, S, G) ∈ Rn

C = X

z0∈Z

eθ·φ(z0,S,G)

Parameters ¡ Features ¡ Normaliza.on ¡ constant ¡

slide-51
SLIDE 51

Global ¡Model ¡

  • Global ¡Density-­‑Es.ma.on ¡Model ¡

– Mul.nomial ¡Log-­‑linear ¡

PG(z | S, G; θ) = 1 C eθ·φ(z,S,G)

θ ∈ Rn φ(z, S, G) ∈ Rn

C = X

z0∈Z

eθ·φ(z0,S,G)

Parameters ¡ Features ¡ Normaliza.on ¡ constant ¡

Too ¡Big! ¡

(Exponen.al ¡in ¡max ¡number ¡

  • f ¡constants ¡M) ¡
slide-52
SLIDE 52

Pruning ¡

λx.red(x) λx.blue(x) λx.cube(x) λx.object(x) λx.¬red(x) λx.¬blue(x) ιx.red(x) ιx.cube(x) λx.red(x) ∧ object(x) λx.red(x) ∧ cube(x) λx.red(x) ∨ cube(x) ιx.red(x) ∧ object(x) Ax.red(x) ∨ object(x) Ex.object(x) Ex.¬red(x) λx.¬cube(x) ∧ object(x) λx.¬(cube(x) ∨ object(x)) ιx.red(x) ∪ ιx.cube(x) Ex.object(x) \ ιx.cube(x)

. . . . . .

ιx.¬blue(x)

. . . . . .

λx.rect(x)

. . .

λx.object(x) ∧ equal(x, Ay.cube(y))

M 1 2 3 4 5

slide-53
SLIDE 53

Pruning ¡

λx.red(x) λx.blue(x) λx.cube(x) λx.object(x) λx.¬red(x) λx.¬blue(x) ιx.red(x) ιx.cube(x) λx.red(x) ∧ object(x) λx.red(x) ∧ cube(x) λx.red(x) ∨ cube(x) ιx.red(x) ∧ object(x) Ax.red(x) ∨ object(x) Ex.object(x) Ex.¬red(x) λx.¬cube(x) ∧ object(x) λx.¬(cube(x) ∨ object(x)) ιx.red(x) ∪ ιx.cube(x) Ex.object(x) \ ιx.cube(x)

ιx.¬blue(x) λx.rect(x) λx.object(x) ∧ equal(x, Ay.cube(y))

. . . . . . . . . . . . . . . M 1 2 3 4 5

slide-54
SLIDE 54

Pruning ¡

λx.red(x) λx.blue(x) λx.cube(x) λx.object(x) λx.¬red(x) λx.¬blue(x) ιx.red(x) ιx.cube(x) λx.red(x) ∧ object(x) λx.red(x) ∧ cube(x) λx.red(x) ∨ cube(x) ιx.red(x) ∧ object(x) Ax.red(x) ∨ object(x) Ex.object(x) Ex.¬red(x) λx.¬cube(x) ∧ object(x) λx.¬(cube(x) ∨ object(x)) ιx.red(x) ∪ ιx.cube(x) Ex.object(x) \ ιx.cube(x)

ιx.¬blue(x) λx.rect(x) λx.object(x) ∧ equal(x, Ay.cube(y))

Top-­‑k ¡ (Beam ¡Search) ¡ k

M 1 2 3 4 5

slide-55
SLIDE 55

Pruning ¡Model ¡

Good ¡Referring ¡ Expression ¡ Good ¡Sub-­‑ Expression ¡

6=

slide-56
SLIDE 56

Pj(a | S, G) =

Pruning ¡Model ¡

Good ¡Referring ¡ Expression ¡ Good ¡Sub-­‑ Expression ¡

6=

Binary ¡probability ¡distribu.on ¡indica.ng ¡ whether ¡an ¡expression ¡should ¡be ¡pruned ¡ at ¡complexity-­‑level ¡ ¡ j

slide-57
SLIDE 57

Pruning ¡Model ¡

  • Binary ¡Log-­‑Linear ¡Model ¡for ¡each ¡complexity-­‑

level ¡

Pj(a | S, G; πj) = eπj·φ(a,S,G) 1 + eπj·φ(a,S,G)

πj

Parameters ¡

j

slide-58
SLIDE 58

Features ¡

  • Structural ¡Features ¡

– Logical ¡form ¡ ¡ ¡ ¡only ¡ – Capture ¡common ¡combina.ons ¡of ¡predicates ¡

  • Situated ¡Features ¡

– LF ¡ ¡ ¡, ¡world-­‑state ¡S ¡and ¡target-­‑set ¡ – Capture ¡how ¡sub-­‑expressions ¡of ¡z ¡group ¡sets ¡of ¡

  • bjects ¡in ¡the ¡scene ¡
  • Complexity ¡Feature ¡

z S G z

slide-59
SLIDE 59

Structural ¡Features ¡

ιx.red(x) ∧ object(x)

slide-60
SLIDE 60

Structural ¡Features ¡

∧ ιx red(x)

  • bject(x)
slide-61
SLIDE 61

[∧, color]

Structural ¡Features ¡

∧ ιx red(x)

  • bject(x)

[ι, ∧] [∧, object]

Head ¡Bigram ¡

slide-62
SLIDE 62

[∧; color, object]

Structural ¡Features ¡

∧ ιx red(x)

  • bject(x)

Coordina.on ¡Children ¡ Head ¡Bigram ¡

slide-63
SLIDE 63

Structural ¡Features ¡

∧ ιx red(x)

  • bject(x)

Coordina.on ¡Duplicate ¡ Coordina.on ¡Children ¡ Head ¡Bigram ¡ Head ¡Predicate ¡ Head ¡Trigram ¡

slide-64
SLIDE 64

Situated ¡Features ¡

Coverage ¡

G :

ιx.red(x) ∧ object(x)

slide-65
SLIDE 65

Situated ¡Features ¡

SUB

Coverage ¡

G :

ιx.red(x) ∧ object(x)

slide-66
SLIDE 66

Situated ¡Features ¡

SUB SPR ALL DISJ EMPTY OTHER

Coverage ¡

G :

ιx.red(x) ∧ object(x)

slide-67
SLIDE 67

Structural ¡Features ¡

[ι, SUB] [∧, SUB] [color, SUB] [object, ALL]

ιx.red(x) ∧ object(x)

Head ¡Predicate ¡and ¡ ¡Coverage ¡

slide-68
SLIDE 68

Situated ¡Features ¡

∧ ιx red(x)

  • bject(x)

Head ¡Predicate ¡and ¡ ¡Coverage ¡

[∧; SUB, ALL]

Coordina.on ¡Child ¡Coverage ¡

slide-69
SLIDE 69

Situated ¡Features ¡

∧ ιx red(x)

  • bject(x)

Head ¡Predicate ¡and ¡ ¡Coverage ¡ Coordina.on ¡Child ¡Coverage ¡ Coordina.on ¡Rela.ve ¡Cov. ¡

slide-70
SLIDE 70

Overview ¡

Space ¡of ¡Referring ¡Expressions ¡ Probabilis.c ¡Model ¡ Learning ¡

¡Data ¡ ¡Algorithm ¡ ¡

Experiments ¡ Results ¡ Conclusion ¡ ¡ ¡

slide-71
SLIDE 71

Learning ¡– ¡Data ¡

{(Si, Gi, Zi) : i = 1 . . . n}

slide-72
SLIDE 72

Learning ¡– ¡Data ¡

{(Si, Gi, Zi) : i = 1 . . . n}

  • bj1: red, sphere, apple
  • bj2: brown, triangle
  • bj3: yellow, fries

… …

World ¡State ¡

slide-73
SLIDE 73

Learning ¡– ¡Data ¡

{(Si, Gi, Zi) : i = 1 . . . n} Target ¡Set ¡

slide-74
SLIDE 74

Learning ¡– ¡Data ¡

{(Si, Gi, Zi) : i = 1 . . . n}

Ex.¬(brown(x) ∨ blue(x)) ∧ object(x) ∧ sg(x)) ιx.¬(brown(x) ∨ blue(x)) ∧ object(x) ∧ plu(x) ιx.¬(brown(x) ∨ blue(x)) ∧ object(x) ∧ plu(x) ιx.(yellow(x) ∨ orange(x) ∨ red(x) ∨ green(x)) ∧ object(x) ∧ plu(x) ιx.(yellow(x) ∨ orange(x) ∨ red(x) ∨ green(x)) ∧ object(x) ∧ plu(x) ιx.(yellow(x) ∨ orange(x) ∨ red(x) ∨ green(x)) ∧ object(x) ∧ plu(x) . . . . . .

Labeled ¡Logical ¡Forms ¡

slide-75
SLIDE 75

Learning ¡– ¡Data ¡

{(Si, Gi, Zi) : i = 1 . . . n}

ˆ Q(z | Si, Gi)

Qi

Empirical ¡Distribu.on: ¡

Ex.¬(brown(x) ∨ blue(x)) ∧ object(x) ∧ sg(x)) ιx.¬(brown(x) ∨ blue(x)) ∧ object(x) ∧ plu(x) ιx.(yellow(x) ∨ orange(x) ∨ red(x) ∨ green(x)) ∧ object(x) ∧ plu(x) 0.1 ¡ 0.3 ¡ 0.2 ¡

. . . . . .

slide-76
SLIDE 76

Learning ¡Algorithm ¡

  • Online ¡
  • Stochas.c ¡Gradient ¡Descent ¡
slide-77
SLIDE 77

Learning ¡Algorithm ¡

For t = 1 . . . T, i = 1 . . . n: Step 1: (Update Global Model)

  • a. Compute the stochastic gradient
  • b. Update the parameters

Step 2: (Update Pruning Model) For j = 1 . . . M

  • a. Construct a set of positive and negative examples
  • b. Compute mini-batch stochastic gradient
  • c. Update complexity-j pruning parameters
slide-78
SLIDE 78

For t = 1 . . . T, i = 1 . . . n: Step 1: (Update Global Model)

  • a. Compute the stochastic gradient

∆θ ← EQi(z|Si,Gi)[φi(z)] − E ˆ

P (z|Gi,Si;θ,Π)[φi(z)]

  • b. Update the parameters

γ ←

α0 1+c×τ where τ = i + t × n

θ ← θ + γ∆θ Step 2: (Update Pruning Model)

Learning ¡Algorithm ¡

slide-79
SLIDE 79

For t = 1 . . . T, i = 1 . . . n: Step 1: (Update Global Model) Step 2: (Update Pruning Model) For j = 1 . . . M

  • a. Construct a set of positive and negative examples

D+ ← S

z∈Zi SUB(j, z).

D− ← Aj \ D+

  • b. Compute mini-batch stochastic gradient
  • c. Update complexity-j pruning parameters

Learning ¡Algorithm ¡

slide-80
SLIDE 80

For t = 1 . . . T, i = 1 . . . n: Step 1: (Update Global Model) Step 2: (Update Pruning Model) For j = 1 . . . M

  • a. Construct a set of positive and negative examples
  • b. Compute mini-batch stochastic gradient

∆Πj ←

1 |D+|

P

z∈D+(1 − Pj(z | Si, Gi; Πj))φi(z)

1 |D−|

P

z∈D− Pj(z | Si, G; Πj)φi(z)

  • c. Update complexity-j pruning parameters

Πj ← Πj + γ∆Πj

Learning ¡Algorithm ¡

slide-81
SLIDE 81

Overview ¡

Space ¡of ¡Referring ¡Expressions ¡ Probabilis.c ¡Model ¡ Learning ¡ Experiments ¡ Results ¡ Conclusion ¡ ¡ ¡

slide-82
SLIDE 82

Data ¡Collec.on ¡

  • 269 ¡scenes ¡

20 ¡expressions ¡/ ¡scene ¡ 5380 ¡expressions ¡

  • Data ¡Split ¡

– Training: ¡

  • 196 ¡scenes ¡(3920 ¡exps) ¡
  • Labeled ¡semi-­‑automa.cally ¡

– Dev: ¡

  • 20 ¡scenes ¡(400 ¡exps) ¡
  • Hand-­‑Labeled ¡

– Test: ¡

  • 43 ¡scenes ¡(860 ¡exps) ¡
  • Hand-­‑Labeled ¡

“Please ¡pick ¡up ¡ _______________” ¡

slide-83
SLIDE 83

Training ¡Data ¡

  • Semi-­‑Automa.c ¡Labeling ¡

– Trained ¡seman.c ¡parser ¡on ¡ini.aliza.on ¡set ¡ ¡

  • 10 ¡scenes, ¡100 ¡sentence-­‑expression ¡pairs ¡

– Hand ¡engineered ¡lexicon ¡ – 95% ¡precision, ¡70% ¡recall ¡ – Labeled ¡196 ¡scenes ¡(3920 ¡exps) ¡ – Use ¡scenes ¡with ¡at ¡least ¡15 ¡successful ¡labels ¡

  • Total ¡training ¡set: ¡

– 141 ¡scenes, ¡2587 ¡expressions ¡

slide-84
SLIDE 84

Related ¡Work ¡

  • Most ¡previous ¡systems ¡are ¡determinis.c ¡ ¡

[Dale ¡and ¡Reiter ¡1995], ¡[van ¡Deempter ¡2002], ¡[Gardent ¡2002], ¡[Horacek ¡2004], ¡ [GaC ¡and ¡van ¡Deempter ¡2007], ¡[Areces ¡et ¡al. ¡2008], ¡[Ren ¡et ¡al. ¡2010], ¡[Krahmer ¡ and ¡van ¡Deempter ¡2012], ¡[van ¡Deempter ¡et ¡al. ¡2012], ¡… ¡

  • Learning ¡to ¡refer ¡to ¡a ¡single ¡objects ¡

– Compare ¡state ¡of ¡the ¡art ¡approach ¡ ¡ – Visual ¡Objects ¡Algorithm ¡[Mitchell ¡et ¡al ¡2013] ¡

  • Learning ¡to ¡refer ¡to ¡sets ¡of ¡objects ¡

– Requires ¡more ¡complex ¡logical ¡expressions ¡ – Present ¡the ¡first ¡learning ¡results ¡+ ¡abla.ons ¡

slide-85
SLIDE 85

Evalua.on ¡

  • Mean ¡absolute ¡error ¡(100 ¡-­‑ ¡MAE) ¡

¡ ¡

  • Coverage ¡

– All ¡logical ¡forms: ¡ – Unique ¡logical ¡forms: ¡

  • Top-­‑1 ¡Accuracy ¡

MAE = 1 2n

n

X

i=1

X

z∈Z

|P(z | Si, Gi) − Q(z | Si, Gi)|

%dup %uniq

slide-86
SLIDE 86

Results ¡– ¡Single ¡Objects ¡

72.7 ¡ 92.5 ¡ 98.2 ¡ 60.3 ¡ 72.7 ¡ 100 ¡ 100 ¡ 74.2 ¡ 0 ¡ 20 ¡ 40 ¡ 60 ¡ 80 ¡ 100 ¡ Top1 ¡ %dup ¡ %uniq ¡ (100 ¡-­‑ ¡ MAE) ¡ GenX ¡ VOA ¡

slide-87
SLIDE 87

0 ¡ 20 ¡ 40 ¡ 60 ¡ 80 ¡ 100 ¡ Top1 ¡ %uniq ¡ %dup ¡ (100-­‑MAE) ¡ GenX ¡ NoPrune ¡ NoCov ¡ NoStruc ¡ HeadExp ¡

Results ¡– ¡Object ¡Sets ¡

slide-88
SLIDE 88

0 ¡ 20 ¡ 40 ¡ 60 ¡ 80 ¡ 100 ¡ Top1 ¡ %uniq ¡ %dup ¡ (100-­‑MAE) ¡ GenX ¡ NoPrune ¡ NoStruc ¡ NoCov ¡ HeadExp ¡

Results ¡– ¡Object ¡Sets ¡

slide-89
SLIDE 89

Qualita.ve ¡Results ¡

Q ˆ P z .750 .320 ι(λx.object(x) ∧ (yellow(x) ∨ red(x))) .114 ι(λx.lego(x)) ∪ ι(λx.red(x) ∧ apple(x)) .114 ι(λx.yellow(x) ∧ lego(x))) ∪ ι(λx.apple(x)) .044 ι(λx.lego(x) ∨ (red(x) ∧ apple(x))) .044 ι(λx.(yellow(x) ∧ lego(x)) ∨ apple(x)) .036 ι(λx.lego(x)) ∪ ι(λx.red(x) ∧ sphere(x)) .026 ι(λx.red(x) ∧ lego(x)) ∪ ι(λx.red(x) ∧ sphere(x)) .050 .021 ι(λx.(lego(x) ∧ yellow(x)) ∨ (red(x) ∧ apple(x))) .017 ι(λx.(lego(x) ∧ yellow(x)) ∨ (red(x) ∧ sphere(x))) .014 ι(λx.yellow(x) ∧ lego(x)) ∪ ι(λx.red(x) ∧ sphere(x)) .100 .010 ι(λx.yellow(x) ∧ object(x)) ∪ ι(λx.apple(x)) .050 .007 ι(λx.yellow(x) ∧ object(x)) ∪ ι(λx.red(x) ∧ sphere(x)) .050 .005 ι(λx.yellow(x) ∧ object(x)) ∪ ι(λx.red(x) ∧ object(x))

slide-90
SLIDE 90

Conclusion ¡

  • Referring ¡Expression ¡Genera.on ¡as ¡Density ¡

Es.ma.on ¡

– Global ¡Model ¡ – Learned ¡Pruning ¡Model ¡

  • First ¡results ¡on ¡density ¡es.ma.on ¡for ¡set ¡

reference ¡

  • State-­‑of-­‑the-­‑art ¡results ¡on ¡single ¡objects ¡
slide-91
SLIDE 91

Future ¡Work ¡

  • Full ¡joint ¡approach ¡to ¡REG ¡
slide-92
SLIDE 92

Future ¡Work ¡

  • Full ¡joint ¡approach ¡to ¡REG ¡

``The ¡green ¡ and ¡red ¡ spheres.’’ ¡

Physical ¡Scene ¡ Logical ¡Form ¡(LF) ¡ Sentence ¡

ιx.(green(x) ∨ red(x)) ∧sphere(x)

slide-93
SLIDE 93

Future ¡Work ¡

  • Joint ¡approach ¡to ¡REG ¡
  • Extend ¡to ¡more ¡general ¡referring ¡expressions ¡

“the ¡second ¡jar ¡to ¡the ¡ leK ¡of ¡the ¡middle ¡shelf” ¡

slide-94
SLIDE 94

Future ¡Work ¡

  • Joint ¡approach ¡to ¡REG ¡
  • Extend ¡to ¡more ¡general ¡referring ¡expressions ¡
  • Extend ¡to ¡other ¡grounded ¡language ¡problems ¡
States Abbr. Capital Pop. AL Montgomery 3.9 AK Juneau 0.4 AZ Phoenix 2.7 WA Olympia 4.1 NY Albany 17.5 IL Springfield 11.4

``What ¡is ¡the ¡ largest ¡state?’’ ¡ ``Move ¡to ¡the ¡chair ¡ and ¡turn ¡right.’’ ¡

slide-95
SLIDE 95

Ques.ons? ¡

hCp://nfitz.net ¡ ¡ Data: ¡ ¡Available ¡Now ¡ Code: ¡ ¡Available ¡Soon ¡