Top Banner
A Language Visualization System Emre Ünal Artificial Intelligence Laboratory
60

A Language Visualization System · Why Alice? • Camera, light • Model loading, texture mapping • Model based coordinate systems, model transforms • Extensive gallery of 3D

Aug 21, 2020

Download

Documents

dariahiddleston
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: A Language Visualization System · Why Alice? • Camera, light • Model loading, texture mapping • Model based coordinate systems, model transforms • Extensive gallery of 3D

A Language Visualization System

Emre Ünal

Artificial Intelligence Laboratory

Page 2: A Language Visualization System · Why Alice? • Camera, light • Model loading, texture mapping • Model based coordinate systems, model transforms • Extensive gallery of 3D

Outline

• Introduction & Prior work

• Components

• Implementation

• Conclusion & Future Work

Page 3: A Language Visualization System · Why Alice? • Camera, light • Model loading, texture mapping • Model based coordinate systems, model transforms • Extensive gallery of 3D

Outline

• Introduction & Prior work

• Components

• Implementation

• Conclusion & Future Work

Page 4: A Language Visualization System · Why Alice? • Camera, light • Model loading, texture mapping • Model based coordinate systems, model transforms • Extensive gallery of 3D

What is language visualization?

Page 5: A Language Visualization System · Why Alice? • Camera, light • Model loading, texture mapping • Model based coordinate systems, model transforms • Extensive gallery of 3D

Why are we interested in language visualization?

Page 6: A Language Visualization System · Why Alice? • Camera, light • Model loading, texture mapping • Model based coordinate systems, model transforms • Extensive gallery of 3D

• A language visualization system

• A question answering module

Page 7: A Language Visualization System · Why Alice? • Camera, light • Model loading, texture mapping • Model based coordinate systems, model transforms • Extensive gallery of 3D

Prior Work• SHRDLU

• PUT System

• CarSim

• WordsEye

• DESCRIBER

• CONFUCIUS

Page 8: A Language Visualization System · Why Alice? • Camera, light • Model loading, texture mapping • Model based coordinate systems, model transforms • Extensive gallery of 3D

Outline

• Introduction & Prior work

• Components

• Implementation

• Conclusion & Future Work

Page 9: A Language Visualization System · Why Alice? • Camera, light • Model loading, texture mapping • Model based coordinate systems, model transforms • Extensive gallery of 3D

Outline

• Introduction & Prior work

• Components

• Implementation

• Conclusion & Future Work

Page 10: A Language Visualization System · Why Alice? • Camera, light • Model loading, texture mapping • Model based coordinate systems, model transforms • Extensive gallery of 3D

Components

• Alice

• WordNet

• CoreNLP

Page 11: A Language Visualization System · Why Alice? • Camera, light • Model loading, texture mapping • Model based coordinate systems, model transforms • Extensive gallery of 3D

Alice

• 3D programming environment

• Used mostly for educational purposes

• Open sourcealice.org

Page 12: A Language Visualization System · Why Alice? • Camera, light • Model loading, texture mapping • Model based coordinate systems, model transforms • Extensive gallery of 3D

Alice

Page 13: A Language Visualization System · Why Alice? • Camera, light • Model loading, texture mapping • Model based coordinate systems, model transforms • Extensive gallery of 3D

Why Alice?

• Camera, light

• Model loading, texture mapping

• Model based coordinate systems, model transforms

• Extensive gallery of 3D models (528 in our system)

alice.org

Page 14: A Language Visualization System · Why Alice? • Camera, light • Model loading, texture mapping • Model based coordinate systems, model transforms • Extensive gallery of 3D

WordNet

• Large lexical database of English

• Synsets of nouns, verbs, adjectives and adverbs.

• Semantic relations

• Freely available

wordnet.princeton.edu

Page 15: A Language Visualization System · Why Alice? • Camera, light • Model loading, texture mapping • Model based coordinate systems, model transforms • Extensive gallery of 3D

WordNet

• Main relation is synonymy.

• Synonyms form synsets.

• 117000 synsets.

Page 16: A Language Visualization System · Why Alice? • Camera, light • Model loading, texture mapping • Model based coordinate systems, model transforms • Extensive gallery of 3D

WordNet• Synonymy e.g. board - plank

• Antonymy e.g. dry - wet

• Hyponymy e.g. dog - canine

• Hypernymy e.g. canine - dog

• Meronymy e.g. window - building

• Holonymy e.g. building -window

• Troponymy e.g. lisp - talk

• Entailment e.g. snore - sleep

Page 17: A Language Visualization System · Why Alice? • Camera, light • Model loading, texture mapping • Model based coordinate systems, model transforms • Extensive gallery of 3D

WordNet

Page 18: A Language Visualization System · Why Alice? • Camera, light • Model loading, texture mapping • Model based coordinate systems, model transforms • Extensive gallery of 3D

CoreNLP

• NLP tools

• Parser, NER, POS tagger, CoRef Resolution

• Open source nlp.stanford.edu

Page 19: A Language Visualization System · Why Alice? • Camera, light • Model loading, texture mapping • Model based coordinate systems, model transforms • Extensive gallery of 3D

POS Tagger

Page 20: A Language Visualization System · Why Alice? • Camera, light • Model loading, texture mapping • Model based coordinate systems, model transforms • Extensive gallery of 3D

Parser

• Outputs phrase structure tree

• Stanford dependencies

Page 21: A Language Visualization System · Why Alice? • Camera, light • Model loading, texture mapping • Model based coordinate systems, model transforms • Extensive gallery of 3D

The cat is on the table.

The/DT cat/NN is/VBZ on/IN the/DT table/NN ./.

(ROOT (S (NP (DT The) (NN cat)) (VP (VBZ is) (PP (IN on) (NP (DT the) (NN table)))) (. .)))

det(cat-2, The-1) nsubj(is-3, cat-2) root(ROOT-0, is-3) det(table-6, the-5) prep_on(is-3, table-6)

Page 22: A Language Visualization System · Why Alice? • Camera, light • Model loading, texture mapping • Model based coordinate systems, model transforms • Extensive gallery of 3D

Outline

• Introduction & Prior work

• Components

• Implementation

• Conclusion & Future Work

Page 23: A Language Visualization System · Why Alice? • Camera, light • Model loading, texture mapping • Model based coordinate systems, model transforms • Extensive gallery of 3D

Outline

• Introduction & Prior work

• Components

• Implementation

• Conclusion & Future Work

Page 24: A Language Visualization System · Why Alice? • Camera, light • Model loading, texture mapping • Model based coordinate systems, model transforms • Extensive gallery of 3D

The System

Page 25: A Language Visualization System · Why Alice? • Camera, light • Model loading, texture mapping • Model based coordinate systems, model transforms • Extensive gallery of 3D

The System

Language Understanding

Scene Construction

Question Answering

Page 26: A Language Visualization System · Why Alice? • Camera, light • Model loading, texture mapping • Model based coordinate systems, model transforms • Extensive gallery of 3D

The System

Language Understanding

Scene Construction

Question Answering

Text-to-Scene conversion

Page 27: A Language Visualization System · Why Alice? • Camera, light • Model loading, texture mapping • Model based coordinate systems, model transforms • Extensive gallery of 3D

Sentence Splitter

Parser, POS Tagger

Model Picker

Model Modifier

Natural Language Text

Model Positioner3D Scene

Resources

Page 28: A Language Visualization System · Why Alice? • Camera, light • Model loading, texture mapping • Model based coordinate systems, model transforms • Extensive gallery of 3D

Language Components

• Nouns

• Adjectives

• Prepositions

Page 29: A Language Visualization System · Why Alice? • Camera, light • Model loading, texture mapping • Model based coordinate systems, model transforms • Extensive gallery of 3D

Nouns

• Nouns correspond to 3D models

Page 30: A Language Visualization System · Why Alice? • Camera, light • Model loading, texture mapping • Model based coordinate systems, model transforms • Extensive gallery of 3D

Problems about nouns

• May refer to non-physical entities.

• Might be too general.

• A physical entity can be referred in multiple ways.

• A noun phrase may refer to a single object or a noun can refer to more than one object.

Page 31: A Language Visualization System · Why Alice? • Camera, light • Model loading, texture mapping • Model based coordinate systems, model transforms • Extensive gallery of 3D

Synset - Model Map

<Synset gloss="warm-blooded egg-laying vertebrates characterized by feathers and forelimbs modified as wings" hint="bird" id="SID-01503061-N"> <Model path="Animals/Bird1.a2c"/> <Model path="Animals/Bluebird.a2c"/> </Synset> <Synset gloss="a piece of furniture with shelves for storing books" hint="bookcase" id="SID-02870880-N"> <Model path="Furniture/Bookcase.a2c"/> </Synset>

Page 32: A Language Visualization System · Why Alice? • Camera, light • Model loading, texture mapping • Model based coordinate systems, model transforms • Extensive gallery of 3D

Hypernym - Hyponym relations

Vehicle

CarBike

Rocket

Sled

Page 33: A Language Visualization System · Why Alice? • Camera, light • Model loading, texture mapping • Model based coordinate systems, model transforms • Extensive gallery of 3D

Hypernym - Hyponym relations

Cheese

Food

Banana

Page 34: A Language Visualization System · Why Alice? • Camera, light • Model loading, texture mapping • Model based coordinate systems, model transforms • Extensive gallery of 3D

Adjectives

• Modify properties of models

• Some adjectives cannot be visualized

Page 35: A Language Visualization System · Why Alice? • Camera, light • Model loading, texture mapping • Model based coordinate systems, model transforms • Extensive gallery of 3D

AdjectivesModel Properties

• Visibility • Size • Position • Orientation • Color • Transparency

Page 36: A Language Visualization System · Why Alice? • Camera, light • Model loading, texture mapping • Model based coordinate systems, model transforms • Extensive gallery of 3D

AdjectivesModel Properties

• Visibility • Size • Position • Orientation • Color • Transparency

Adjectives

Page 37: A Language Visualization System · Why Alice? • Camera, light • Model loading, texture mapping • Model based coordinate systems, model transforms • Extensive gallery of 3D

AdjectivesModel Properties

• Visibility • Size • Position • Orientation • Color • Transparency

Adjectives

Page 38: A Language Visualization System · Why Alice? • Camera, light • Model loading, texture mapping • Model based coordinate systems, model transforms • Extensive gallery of 3D

Synset - Scale Map

Page 39: A Language Visualization System · Why Alice? • Camera, light • Model loading, texture mapping • Model based coordinate systems, model transforms • Extensive gallery of 3D

Prepositions

• Spatial relations

• Modify positions of models

Page 40: A Language Visualization System · Why Alice? • Camera, light • Model loading, texture mapping • Model based coordinate systems, model transforms • Extensive gallery of 3D

PrepositionsModel Properties

• Visibility • Size • Position • Orientation • Color • Transparency

Prepositions

Page 41: A Language Visualization System · Why Alice? • Camera, light • Model loading, texture mapping • Model based coordinate systems, model transforms • Extensive gallery of 3D

Spatial Relationson

in

in front of

behind

next to

near

above

below

Page 42: A Language Visualization System · Why Alice? • Camera, light • Model loading, texture mapping • Model based coordinate systems, model transforms • Extensive gallery of 3D

Sentence Splitter

Parser, POS Tagger

Model Picker

Model Modifier

Natural Language Text

Model Positioner3D Scene

Resources

Page 43: A Language Visualization System · Why Alice? • Camera, light • Model loading, texture mapping • Model based coordinate systems, model transforms • Extensive gallery of 3D

A giant dog is behind the small cat.

A/DT giant/JJ dog/NN is/VBZ behind/IN the/DT small/JJ cat/NN ./.

(ROOT (S (NP (DT A) (JJ giant) (NN dog)) (VP (VBZ is) (PP (IN behind) (NP (DT the) (JJ small) (NN cat)))) (. .)))

det(dog-3, A-1) amod(dog-3, giant-2) nsubj(is-4, dog-3) root(ROOT-0, is-4) det(cat-8, the-6) amod(cat-8, small-7) prep_behind(is-4, cat-8)

Page 44: A Language Visualization System · Why Alice? • Camera, light • Model loading, texture mapping • Model based coordinate systems, model transforms • Extensive gallery of 3D

A giant dog is behind the small cat.

A/DT giant/JJ dog/NN is/VBZ behind/IN the/DT small/JJ cat/NN ./.

(ROOT (S (NP (DT A) (JJ giant) (NN dog)) (VP (VBZ is) (PP (IN behind) (NP (DT the) (JJ small) (NN cat)))) (. .)))

det(dog-3, A-1) amod(dog-3, giant-2) nsubj(is-4, dog-3) root(ROOT-0, is-4) det(cat-8, the-6) amod(cat-8, small-7) prep_behind(is-4, cat-8)

Page 45: A Language Visualization System · Why Alice? • Camera, light • Model loading, texture mapping • Model based coordinate systems, model transforms • Extensive gallery of 3D

A giant dog is behind the small cat.

A/DT giant/JJ dog/NN is/VBZ behind/IN the/DT small/JJ cat/NN ./.

(ROOT (S (NP (DT A) (JJ giant) (NN dog)) (VP (VBZ is) (PP (IN behind) (NP (DT the) (JJ small) (NN cat)))) (. .)))

det(dog-3, A-1) amod(dog-3, giant-2) nsubj(is-4, dog-3) root(ROOT-0, is-4) det(cat-8, the-6) amod(cat-8, small-7) prep_behind(is-4, cat-8)

Page 46: A Language Visualization System · Why Alice? • Camera, light • Model loading, texture mapping • Model based coordinate systems, model transforms • Extensive gallery of 3D

A giant dog is behind the small cat.

A/DT giant/JJ dog/NN is/VBZ behind/IN the/DT small/JJ cat/NN ./.

Synset ID - 02086723 Synset ID - 02124272

Page 47: A Language Visualization System · Why Alice? • Camera, light • Model loading, texture mapping • Model based coordinate systems, model transforms • Extensive gallery of 3D

A giant dog is behind the small cat.

A/DT giant/JJ dog/NN is/VBZ behind/IN the/DT small/JJ cat/NN ./.

Synset ID - 02086723 Synset ID - 02124272

Page 48: A Language Visualization System · Why Alice? • Camera, light • Model loading, texture mapping • Model based coordinate systems, model transforms • Extensive gallery of 3D

A giant dog is behind the small cat.

A/DT giant/JJ dog/NN is/VBZ behind/IN the/DT small/JJ cat/NN ./.

(ROOT (S (NP (DT A) (JJ giant) (NN dog)) (VP (VBZ is) (PP (IN behind) (NP (DT the) (JJ small) (NN cat)))) (. .)))

det(dog-3, A-1) amod(dog-3, giant-2) nsubj(is-4, dog-3) root(ROOT-0, is-4) det(cat-8, the-6) amod(cat-8, small-7) prep_behind(is-4, cat-8)

Page 49: A Language Visualization System · Why Alice? • Camera, light • Model loading, texture mapping • Model based coordinate systems, model transforms • Extensive gallery of 3D

A giant dog is behind the small cat.

A/DT giant/JJ dog/NN is/VBZ behind/IN the/DT small/JJ cat/NN ./.

det(dog-3, A-1) amod(dog-3, giant-2) nsubj(is-4, dog-3) root(ROOT-0, is-4) det(cat-8, the-6) amod(cat-8, small-7) prep_behind(is-4, cat-8)

SID-01383582-A

SID-01391351-A

Page 50: A Language Visualization System · Why Alice? • Camera, light • Model loading, texture mapping • Model based coordinate systems, model transforms • Extensive gallery of 3D

A giant dog is behind the small cat.

A/DT giant/JJ dog/NN is/VBZ behind/IN the/DT small/JJ cat/NN ./.

det(dog-3, A-1) amod(dog-3, giant-2) nsubj(is-4, dog-3) root(ROOT-0, is-4) det(cat-8, the-6) amod(cat-8, small-7) prep_behind(is-4, cat-8)

SID-01383582-A

SID-01391351-A

(0.8, 0.8, 0.8)

(2.5, 2.5, 2.5)

Page 51: A Language Visualization System · Why Alice? • Camera, light • Model loading, texture mapping • Model based coordinate systems, model transforms • Extensive gallery of 3D

A giant dog is behind the small cat.

A/DT giant/JJ dog/NN is/VBZ behind/IN the/DT small/JJ cat/NN ./.

(0.8, 0.8, 0.8)

(2.5, 2.5, 2.5)

Page 52: A Language Visualization System · Why Alice? • Camera, light • Model loading, texture mapping • Model based coordinate systems, model transforms • Extensive gallery of 3D

A giant dog is behind the small cat.

A/DT giant/JJ dog/NN is/VBZ behind/IN the/DT small/JJ cat/NN ./.

(ROOT (S (NP (DT A) (JJ giant) (NN dog)) (VP (VBZ is) (PP (IN behind) (NP (DT the) (JJ small) (NN cat)))) (. .)))

det(dog-3, A-1) amod(dog-3, giant-2) nsubj(is-4, dog-3) root(ROOT-0, is-4) det(cat-8, the-6) amod(cat-8, small-7) prep_behind(is-4, cat-8)

Page 53: A Language Visualization System · Why Alice? • Camera, light • Model loading, texture mapping • Model based coordinate systems, model transforms • Extensive gallery of 3D

A giant dog is behind the small cat.

A/DT giant/JJ dog/NN is/VBZ behind/IN the/DT small/JJ cat/NN ./.

det(dog-3, A-1) amod(dog-3, giant-2) nsubj(is-4, dog-3) root(ROOT-0, is-4) det(cat-8, the-6) amod(cat-8, small-7) prep_behind(is-4, cat-8)

placeBehind(modelA, modelB)! center(modelA) = center(modelB)! orientation(modelA) = orientation(modelB)! amount = (1.5 * depth(B) + depth(A)) * 0.5! moveBackward(modelA, amount)!

placeBehind(*dog, *cat)!

Page 54: A Language Visualization System · Why Alice? • Camera, light • Model loading, texture mapping • Model based coordinate systems, model transforms • Extensive gallery of 3D

Scene Construction

There is a room. A sofa is in the room. A table is in front of the sofa.

A man is behind the sofa. A toy is on the table. A car is behind the room.

Page 55: A Language Visualization System · Why Alice? • Camera, light • Model loading, texture mapping • Model based coordinate systems, model transforms • Extensive gallery of 3D

Question Answering

• Position of a model

• Test spatial relation

• Test visibility by another object

Page 56: A Language Visualization System · Why Alice? • Camera, light • Model loading, texture mapping • Model based coordinate systems, model transforms • Extensive gallery of 3D

Question Answering

Where is the room? It is in front of the car.

Where is the sofa? It is in the room, in front of the man, behind the table.

Is toy on the table? Yes.

Is man in the room? Yes.

Is car in the room? No.

Is sofa in front of the table? No

Can man see the sofa? Yes.

Can man see the car? No.

Page 57: A Language Visualization System · Why Alice? • Camera, light • Model loading, texture mapping • Model based coordinate systems, model transforms • Extensive gallery of 3D

Question Answering

• The system is capable of answering questions even though the particular spatial relation is never mentioned in the text.

Page 58: A Language Visualization System · Why Alice? • Camera, light • Model loading, texture mapping • Model based coordinate systems, model transforms • Extensive gallery of 3D

Conclusions

• A language visualization system design with rich vocabulary and extensive model gallery

• A new way of solving spatial inference problems

Page 59: A Language Visualization System · Why Alice? • Camera, light • Model loading, texture mapping • Model based coordinate systems, model transforms • Extensive gallery of 3D

Future Work

• Handle verbs

• Animations, path planning, physics engine

• Improve q/a system

• A learning system

Page 60: A Language Visualization System · Why Alice? • Camera, light • Model loading, texture mapping • Model based coordinate systems, model transforms • Extensive gallery of 3D

Questions

?