Transcript Slide 1

Boeing’s Language Understanding
Engine
(BLUE)
A Quick Tutorial
Peter Clark
Phil Harrison
(Boeing Phantom Works)
What is a Semantic Representation?
(2.1) "Cervical cancer is caused by a virus."
“Leftist”
“Rightist”
Semantic structure close
to syntactic structure,
need more downstream
interpretation
causes(virus01,c-cancer01)
Semantics more
explicit.
forall c isa(c,c-cancer) →
exists e,v isa(e,event), isa(v,virus),
involves(e,v), causes(e,c)
forall c isa(c,c-cancer) →
exists v isa(v,virus), causes(v,c)
Semantic Formalism
 Ground (Skolemized) first-order logic assertions
 No quantification (left for downstream processing)
“An object is thrown from a cliff.”
isa(object01,object_n1),
isa(cliff01,cliff_n1),
isa(throw01,throw_v1),
object(throw01,object01),
origin(throw01,cliff01).
 Embedding used for modals
(6.3) "The farm hopes to make a profit"
isa(farm, farm_n1), …..
agent(hope01,farm01),
object(hope01,[
agent(make02,farm01),
object(make02,profit02)])
BLUE’s Pipeline
“An object is thrown from a cliff”
Parser & LF Generator
Initial Logic Generator
Word Sense Disambiguation
Semantic Role Labeling
Coreference Resolution
Metonymy Resolution
Structural Reorganization
isa(object01,object_n1),
isa(cliff01,cliff_n1),
isa(throw01,throw_v1),
object(throw01,object01),
origin(throw01,cliff01).
Linguistic
and World
Knowledge
Throw
object
Object
origin
Cliff
1. Parsing/Logical Form Generation
 Parsing: SAPIR, a bottom-up chart parser, guided by
 Hand-coded cost function
 “tuples” – examples of attachment preferences
(VPN "fall" "onto" "floor")
(VPN "flow" "into" "body")
(NN "lead" "iodide")
(NPN "force" "on" "block")
(NPN "speed" "at" "point")
(NPN "chromosome" "in" "cell")
(NPN "force" "during" *)
(NPN "distance" "from" *)
(NPN "distance" "to" *)
 Several 100 authored by hand
 53 million generated automatically
 Logical Form: Classical compositional rule-based approach
2. Initial logic generation
“An object is thrown from a cliff”
(DECL
((VAR _X1 "an" "object")
(VAR _X2 "a" "cliff"))
(S (PRESENT) NIL "throw" _X1 (PP "from" _X2))
"object"(object01),
"cliff"(cliff01),
"throw"(throw01),
sobject(throw01,object01),
"from"(throw01,cliff01).
isa(object01,object_n1),
isa(cliff01,cliff_n1),
isa(throw01,throw_v1),
object(throw01,object01),
origin(throw01,cliff01).
Logical
form
Initial
Logic
Final
Logic
3. Subsequent Processing
1. Word Sense Disambiguation:


Naïve use of WordNet (70% ok)
For applications using CLib ontology, then do a mapping:
WordNet
CLib Ontology
Physical-Object
“object”
Lexical Term
Goal
Concept (Word Sense)
3. Subsequent Processing
2. Semantic Role Labeling:


~40 semantic roles (from Univ Texas)
Assign using a hand-built database of (~100) rules
IF
X “of” Y
and X is Physical-Object
and Y is Material
THEN X material Y
Throw
Throw
sobject
Object
“from”
Cliff
 Moderate performance
object
Object
origin
Cliff
3. Subsequent Processing
3. Coreference


Same name = same object
Same/subsuming noun phrase = same object


“The red block fell. The block that had fallen was damaged.”
Ordinal reference

“A block is on a block. The second block is larger.”
4. Metonymy resolution

Mainly with CLib KB
“H2O reacts with NaCl”
React
React
raw-material
H2O
raw-material
NaCl
raw-material
Chemical
basic-unit
H2O
raw-material
Chemical
basic-unit
NaCl
3. Subsequent Processing
5. Structural Reorganization
Cliff
“the height of the cliff”
Cliff
subject
“the box contains a block”
height
kg
Weight-Value
Height
Value
Contain
object
Box
Box
“10 kg”
property
Block
content
property
value
Block
10
(:pair 10 kg)
3. Subsequent Processing
5. Structural Reorganization
“be” and “have”
subject
(a) equality
“the color of the
block is red”
Block
color
object
Color
Block
(b) other relation
subject
“the block is red”
Be
Red
color
Be
object
Block
Block
Red
Red
color
Red
Summary
BLUE:
 Formalism:
 Skolemized first-order logic predicates
 Embedding for modals
 Mechanism:
 Parser → LF generator → initial logic → post-processing
 Performance:
 Many sentences are mostly right 
 Most sentences have something wrong 
Thank you!