Guiding Inference with Conceptual Graphs

advertisement
A Knowledge-Rich Approach to
Understanding Text about Aircraft
Systems
Peter Clark
Lisbeth Duncan
Heather Holmback
Tom Jenkins
John Thompson
Boeing Engineering and Information Technology
Overview
• Situation: Using a hand-built, airplane knowledge-base
(KB) at Boeing (e.g., for concept-based search)
• Goal: Extend this KB by processing text:
• from airplane training manuals
• directly from an aerospace engineer
• Target: airplane parts, connections, and behaviors
Challenge
• Interpretation of text requires background knowledge
– author trying to convey a model to the reader
– only some parts of this are explicitly stated in text
– rest is assumed to be already known to the reader
Airplane
Powered-System
source
“The hydraulic system
supplies power to the
rudder.”
sink
behavior
Hydraulic
System
Supply
Script
Consume
Power
Rudder
Transmit
Conduit
Approach
• Use an aerospace knowledge base (KB):
– Taken from an earlier project and extended
– Contains general models about what might be said
• Contains general knowledge of aircraft and systems
• Doesn’t know details of specific aircraft
• Text interpretation = specializing and refining this
background knowledge
Constraints on the Scope
1. Working with restricted sublanguage of English
– Simple, declarative sentences
– Regular, “boring” style
“The hydraulic system supplies power to the rudder.”
“A ripple damper smooths the pump pressure output.”
“The EDP is on the left side of the engine main gearbox.”
“The gearbox turns the EDP when the engine turns.”
2. Constrained domain (aircraft systems)
–
Reduces vocabulary, background KB
3. Domain of mechanical artifacts
–
Simple statements about structure and behavior
Approach
KB
User specifies topic (eg. “777-200-Airplane”)
Initial (general) representation of airplane built.
Text is provided.
777-200-Airplane
purpose
parts
Wing
systems
Tail
Fuselage
Vertical
Stabilizer
Powered
System
parts
“The hydraulic
system supplies
power to the
rudder.”
Flap
connects
parts
sink script
Rudder
source
Power
Source
recipient
Supplying
agent
Approach
KB
Then:
1. Text  NLP structure
777-200-Airplane
purpose
parts
Wing
Rudder
Hydraulic
System
“The hydraulic
recipient
agent
system supplies
Supplying
power to the
Stage 1 object
rudder.”
Power
systems
Tail
Fuselage
Vertical
Stabilizer
Powered
System
parts
Flap
connects
parts
sink script
Rudder
source
Power
Source
recipient
Supplying
agent
Approach
KB
Then:
1. Text  NLP structure
2. Match NLP structure with airplane repn.
777-200-Airplane
purpose
parts
Wing
Rudder
systems
Tail
Fuselage
parts
Hydraulic
System
Vertical
Flap
“The hydraulic
Stabilizer
recipient
agent
system supplies
connects
parts sink
Supplying
power to the
Stage 1 object
Stage 2
Rudder
rudder.”
Power
Powered
System
script
Power
Source
recipient
?
source
Supplying
agent
Approach
Then:
1. Text  NLP structure
2. Match NLP structure with airplane repn.
Unify the matching structures.
KB
777-200-Airplane
purpose
parts
Wing
Rudder
Hydraulic
System
systems
Tail
Fuselage
parts
Vertical
Flap
“The hydraulic
Stabilizer
recipient
agent
system supplies
connects
parts sink
Supplying
power to the
Stage 1 object
Stage 2
Rudder
rudder.”
Powered
System
script
source
Hydraulic
System
Power
Supplying
Power
KB
The Knowledge Base
777-200-Airplane
purpose
parts
Wing
Rudder
Hydraulic
System
systems
Tail
parts
Vertical
Flap
“The hydraulic
Stabilizer
recipient
agent
system supplies
connects
parts sink
Supplying
power to the
Stage 1 object
Stage 2
Rudder
rudder.”
Power
Fuselage
Powered
System
script
source
Power
Source
recipient
Supplying
agent
The Knowledge Base
• ~500 concepts, ~1500 axioms
• Mainly airplane parts, behaviors, and connections
• Axioms converted to prototypes (graph structures)
Axiom: “Every airplane
has a fuselage, and a tail
connected to the fuselage.”
Prototype (sketch)
(every Airplane has
(parts ((a Fuselage)
(a Tail with
(connected-to
(the Fuselage parts of Self))))
Airplane
parts
Fuselage
connected-to
Tail
Inference: Building the Initial
Airplane Representation
Axioms in KB:
Airplane representation:
Airplane
777-200-Airplane
behavior
parts
parts
Fuselage
Tail
Flight
Fuselage
connected-to
behavior
Tail
Flight
parts
Vertical
Stabilizer
Horizontal
Stabilizer
Flight
Takeoff
Cruise
Land
Tail
parts
Vertical
Stabilizer
Horizontal
Stabilizer
subevents
Takeoff
Cruise
Land
Stage 1:
Text to NLP Structure
KB
777-200-Airplane
purpose
parts
Wing
systems
Tail
Fuselage
Vertical
Stabilizer
Powered
System
parts
“The hydraulic
system supplies
power to the
rudder.”
Flap
connects
parts
sink script
Rudder
source
Power
Source
recipient
Supplying
agent
Stage 1:
Text to NLP Structure
KB
777-200-Airplane
purpose
parts
Wing
Rudder
Hydraulic
System
“The hydraulic
recipient
agent
system supplies
Supplying
power to the
Stage 1 object
rudder.”
Power
systems
Tail
Fuselage
Vertical
Stabilizer
Powered
System
parts
Flap
connects
parts
sink script
Rudder
source
Power
Source
recipient
Supplying
agent
Stage 1: Text to NLP Structure
• Superficial linguistic variations normalized
• Add initial semantic interpretation
Supply_1
[sing,pres,3S]
object
recipient
“The hydraulic
Power_1 causer To_5
[sing,mass]
system supplies
range
Hydraulic Rudder_1
power to the
Parse & System_1
Abstract
[sing,N]
rudder.”
[sing,N]
semantic
& rewrite
analysis
delim
delim
The_1
The_1
[det]
[det]
Hydraulic
System
Rudder
recipient
agent
Supplying
object
Power
• Commits to: overall parse/syntactic configuration, word senses
• May underspecify: some semantic relationships (e.g., modifiers)
KB
777-200-Airplane
purpose
parts
Wing
Rudder
Hydraulic
System
“The hydraulic
recipient
agent
system supplies
Supplying
power to the
Stage 1 object
rudder.”
Power
systems
Tail
Fuselage
Vertical
Stabilizer
Powered
System
parts
Flap
connects
parts
sink script
Rudder
source
Power
Source
recipient
Supplying
agent
Stage 2: Match NLP Structure
with Airplane Representation
KB
777-200-Airplane
purpose
parts
Wing
Rudder
systems
Tail
Fuselage
parts
Hydraulic
System
Vertical
Flap
“The hydraulic
Stabilizer
recipient
agent
system supplies
connects
parts sink
Supplying
power to the
Stage 1 object
Stage 2
Rudder
rudder.”
Power
Powered
System
script
Power
Source
recipient
?
source
Supplying
agent
Stage 2: Match with Airplane Representation
• Goal: Integrate text into airplane representation
• Approach: find matching (subsuming) structure(s)
… …
Hydraulic
System
Rudder
recipient
Rudder
agent
Supplying
object
…
Power
Source
recipient
agent
Supplying
Power
Text
KB (Topic airplane
representation)
Stage 2: Match with Airplane Representation
• Goal: Integrate text into airplane representation
• Approach: find matching (subsuming) structure(s)
• If match found, unify the two structures together
… …
…
Hydraulic
System
Rudder
recipient
Rudder
agent
Supplying
object
Power
Source
recipient
agent
Supplying
Power
Text
KB (Topic airplane
representation)
Stage 2: Match with Airplane Representation
• Goal: Integrate text into airplane representation
• Approach: find matching (subsuming) structure(s)
• If match found, unify the two structures together
… …
…
Hydraulic
System
Rudder
recipient
Rudder
agent
recipient
Supplying
object
Power
Source
… …
Power
…
Hydraulic
System
Rudder
recipient
Supplying
object
Power
agent
Supplying
agent
Matching Problem 1:Linguistic Variation
KB expects:
“The hydraulic system supplies power
to the rudder.”
Supplying
Power
Source
Power
Rudder
But text may deviate with:
1. Synonyms
“The hydraulic system provides power
to the rudder.”
Providing
Hydraulic
System
2. Contractions
“The hydraulic system powers the
rudder.”
4. …
Rudder
Powering
Hydraulic
System
3. Roles
“The hydraulic system is the supplier
of power for the rudder.”
Power
Rudder
Be
Hydraulic
System
Supplier
Power
Rudder
Matching Problem 1:
Linguistic Variation
• Use simple transformation rules to modify NLP structure
• No match  transform and re-search for a match
Supplying
Hydraulic
System
Power
synonym
Hydraulic
System
Rudder
contraction/
expansion
Providing
Power
Rudder
role
Be
Powering
Hydraulic
System
Rudder
Hydraulic
System
Supplier
Power
Rudder
Matching Problem 2:
Expression of Implied Facts
• Problem:
– Not all airplane facts are explicit in the KB structures
– If user refers to an implied fact, matcher will not find it
Explicit facts:
Rudder Control System
agent
behavior
Pilot
object
Script
agent
subevents
Press
object
Rudder
object
Pull
Move
agent
Pedal
Cable
Matching Problem 2:
Expression of Implied Facts
• Problem:
– Not all airplane facts are explicit in the KB structures
– If user refers to an implied fact, matcher will not find it
Explicit facts:
Rudder Control System
agent
behavior
Pilot
object
Script
agent
subevents
Press
object
Rudder
object
Pull
Move
agent
Pedal
“The pilot presses the pedal.”
Cable
Matching Problem 2:
Expression of Implied Facts
• Problem:
– Not all airplane facts are explicit in the KB structures
– If user refers to an implied fact, matcher will not find it
Explicit facts:
Rudder Control System
agent
behavior
Pilot
object
Script
agent
subevents
Press
object
Pull
Rudder
object
Move
agent
Pedal
Cable
“The pilot presses the pedal.”
“The pedal pulls a cable.”
Matching Problem 2:
Expression of Implied Facts
• Problem:
– Not all airplane facts are explicit in the KB structures
– If user refers to an implied fact, matcher will not find it
Explicit facts:
Rudder Control System
agent
behavior
Pilot
object
Script
agent
subevents
Press
object
Pull
Rudder
object
Move
agent
Pedal
Cable
“The pilot presses the pedal.”
“The pedal pulls a cable.”
“The cable moves the rudder.”
Matching Problem 2:
Expression of Implied Facts
• Problem:
– Not all airplane facts are explicit in the KB structures
– If user refers to an implied fact, matcher will not find it
Explicit facts:
Rudder Control System
agent
behavior
Pilot
object
Script
agent
subevents
Press
object
Rudder
object
Pull
Move
agent
Pedal
“The pilot presses the pedal.”
“The pedal pulls a cable.”
“The cable moves the rudder.”
Cable
Inference Rule:
If A does X, and X causes Y
then add A does Y.
Matching Problem 2:
Expression of Implied Facts
• Problem:
– Not all airplane facts are explicit in the KB structures
– If user refers to an implied fact, matcher will not find it
Implied facts:
Rudder Control System
agent
behavior
Pilot
object
Script
agent
subevents
Press
object
agent
Rudder
object
Pull
Move
agent
Pedal
“The pilot presses the pedal.”
“The pedal pulls a cable.”
“The cable moves the rudder.”
object
instrument.
Cable
Move
“The pilot moves the rudder
using the pedal.”
Matching Problem 2:
Expression of Implied Facts
• Problem:
– Not all airplane facts are explicit in the KB structures
– If user refers to an implied fact, matcher will not find it
Implied facts:
Rudder Control System
agent
behavior
Pilot
object
Script
agent
subevents
Press
object
agent
Rudder
object
Pull
Move
agent
Pedal
“The pilot presses the pedal.”
“The pedal pulls a cable.”
“The cable moves the rudder.”
object
instrument.
Move
Cable
instrument
agent
Move
object
“The pilot moves the rudder
using the pedal.”
“The pedal moves the rudder
using the cable.”
Matching Problem 2:
Expression of Implied Facts
• Problem:
– Not all airplane facts are explicit in the KB structures
– If user refers to an implied fact, matcher will not find it
• Approach:
– Match text against an extended version of the KB
– Extensions generated on demand
Airplane
representation:
Explicit facts
Implied facts
Status and Assumptions
• While some components are mature, only complete
throughput for a small number of sentences
• Relies on strong expectations from the KB
– Everything that might be said is encompassed by KB
• Assumes stage 1 output is correct
• Assumes a single model of the airplane is described
Challenges…
• Inaccurate knowledge
– “The pump supplies a source of power to the rudder.”
• Simplifications/multiple models
– “There are three hydraulic systems in the 777-200.”
– “The flight control surfaces steer the airplane.”
• Fluctuating (“fuzzy”) concept boundaries
– “hydraulic system” includes controlled devices (eg rudder)?
• Ambiguities not locally resolvable
– “The EDP is attached to the airplane’s engine.”
Summary
• Goal: extend an airplane KB from text
• Use of background knowledge can help:
– constrains possible interpretations
– provide the surrounding context
• Presented a simple model of how this can be done:
– text interpretation = iterative refinement of a representation
– use of graph matching and unification
Download