BLUE (Boeing Language Understanding Engine) - A Quick Tutorial on How it Works Working Note 35 2009 Peter Clark Phil Harrison (Boeing Phantom Works)

Slides:



Advertisements
Similar presentations
Computational language: week 10 Lexical Knowledge Representation concluded Syntax-based computational language Sentence structure: syntax Context free.
Advertisements

 Christel Kemke 2007/08 COMP 4060 Natural Language Processing Feature Structures and Unification.
CSA2050: DCG I1 CSA2050 Introduction to Computational Linguistics Lecture 8 Definite Clause Grammars.
CSA4050: Advanced Topics in NLP Semantics IV Partial Execution Proper Noun Adjective.
Semantics (Representing Meaning)
Syntax. Definition: a set of rules that govern how words are combined to form longer strings of meaning meaning like sentences.
Syntax-Semantics Mapping Rajat Kumar Mohanty CFILT.
Chapter 4 Syntax.
Natural Language Processing Semantic Roles. Semantics Road Map 1.Lexical semantics 2.Disambiguating words Word sense disambiguation Coreference resolution.
Fall 2008Programming Development Techniques 1 Topic 9 Symbol Manipulation Generating English Sentences Section This is an additional example to symbolic.
The study of how words combine to form grammatical sentences.
LING NLP 1 Introduction to Computational Linguistics Martha Palmer April 19, 2006.
Outline Recap Knowledge Representation I Textbook: Chapters 6, 7, 9 and 10.
EE1J2 - Slide 1 EE1J2 – Discrete Maths Lecture 3 Syntax of Propositional Logic Parse trees revised Construction of parse trees Semantics of propositional.
Amirkabir University of Technology Computer Engineering Faculty AILAB Efficient Parsing Ahmad Abdollahzadeh Barfouroush Aban 1381 Natural Language Processing.
Artificial Intelligence 2005/06 From Syntax to Semantics.
LING 364: Introduction to Formal Semantics Lecture 4 January 24th.
Lect. 11Phrase structure rules Learning objectives: To define phrase structure rules To learn the forms of phrase structure rules To compose new sentences.
LING 364: Introduction to Formal Semantics Lecture 5 January 26th.
Meaning and Language Part 1.
Today  What is syntax?  Grammaticality  Ambiguity  Phrase structure Readings: 6.1 – 6.2.
March 1, 2009 Dr. Muhammed Al-Mulhem 1 ICS 482 Natural Language Processing INTRODUCTION Muhammed Al-Mulhem March 1, 2009.
PARSING David Kauchak CS457 – Fall 2011 some slides adapted from Ray Mooney.
LING 388: Language and Computers Sandiway Fong Lecture 7.
Syntax.
Overview Project Goals –Represent a sentence in a parse tree –Use parses in tree to search another tree containing ontology of project management deliverables.
IV. SYNTAX. 1.1 What is syntax? Syntax is the study of how sentences are structured, or in other words, it tries to state what words can be combined with.
Natural Language Processing Lecture 6 : Revision.
Acquiring and Using World Knowledge using a Restricted Subset of English Peter Clark, Phil Harrison, Tom Jenkins, John Thompson, Rick Wojcik Boeing Phantom.
NLP. Introduction to NLP Is language more than just a “bag of words”? Grammatical rules apply to categories and groups of words, not individual words.
CS 4705 Lecture 19 Word Sense Disambiguation. Overview Selectional restriction based approaches Robust techniques –Machine Learning Supervised Unsupervised.
Today Phrase structure rules, trees Constituents Recursion Conjunction
11 Chapter 14 Part 1 Statistical Parsing Based on slides by Ray Mooney.
Syntax Why is the structure of language (syntax) important? How do we represent syntax? What does an example grammar for English look like? What strategies.
Artificial Intelligence: Natural Language
Culture , Language and Communication
CS Introduction to AI Tutorial 8 Resolution Tutorial 8 Resolution.
Parsing with Context-Free Grammars for ASR Julia Hirschberg CS 4706 Slides with contributions from Owen Rambow, Kathy McKeown, Dan Jurafsky and James Martin.
Review of basic concepts.  The knowledge of sentences and their structure.  Syntactic rules include: ◦ The grammaticality of sentences ◦ Word order.
Rules, Movement, Ambiguity
Artificial Intelligence: Natural Language
PARSING 2 David Kauchak CS159 – Spring 2011 some slides adapted from Ray Mooney.
Boeing’s Language Understanding Engine (BLUE) and its Performance on the Shared Task Peter Clark, Phil Harrison, (Boeing Phantom Works)
1 Context Free Grammars October Syntactic Grammaticality Doesn’t depend on Having heard the sentence before The sentence being true –I saw a unicorn.
Curry A Tasty dish? Haskell Curry!. Curried Functions Currying is a functional programming technique that takes a function of N arguments and produces.
11 Project, Part 3. Outline Basics of supervised learning using Naïve Bayes (using a simpler example) Features for the project 2.
Natural Language Processing Slides adapted from Pedro Domingos
SYNTAX.
◦ Process of describing the structure of phrases and sentences Chapter 8 - Phrases and sentences: grammar1.
Syntax 3rd class Chapter 4. Syntactic Categories 1. That glass suddenly broke. 2. A jogger ran toward the end of the lane. 3. These dead trees might block.
FILTERED RANKING FOR BOOTSTRAPPING IN EVENT EXTRACTION Shasha Liao Ralph York University.
TYPES OF PHRASES REPRESENTING THE INTERNAL STRUCTURE OF PHRASES 12/5/2016.
Pronunciation: var·i·a·ble Part of Speech: noun noun: variable verb: vary Adjective: variable Adverb: variably.
Kids Learning is Fun Writing an Interesting Sentence.
7.2 Programming Languages - An Introduction to Informatics WMN Lab. Hye-Jin Lee.
Welcome to the flashcards tool for ‘The Study of Language, 5 th edition’, Chapter 8 This is designed as a simple supplementary resource for this textbook,
College of Science and Humanity Studies, Al-Kharj.
Coarse-grained Word Sense Disambiguation
BBI 3212 ENGLISH SYNTAX AND MORPHOLOGY
Peter Clark Phil Harrison (Boeing Phantom Works)
Chapter Eight Syntax.
Comparing the past and the present
Part I: Basics and Constituency
Syntax.
CSC 594 Topics in AI – Applied Natural Language Processing
Unit-4 Lexical Semantics M.B.Chandak, HoD CSE,
Chapter Eight Syntax.
A method for WSD on Unrestricted Text
CS246: Information Retrieval
Presentation transcript:

BLUE (Boeing Language Understanding Engine) - A Quick Tutorial on How it Works Working Note Peter Clark Phil Harrison (Boeing Phantom Works)

BLUE Each paragraph is broken up into sentences, then each sentence is processed in turn. For each sentence: BLUE has a pipelined architecture with 10 transformation steps: 1. Preprocessing 2. Parsing 3. Syntactic logic generation 4. Reference resolution 5. Transforming Verbs to Relations 6. Word Sense Disambiguation 7. Semantic Role Labelling 8. Metonymy resolution 9. Question Annotation 10. Additional Processing “An object is thrown from a cliff.” isa(object01,Object), isa(cliff01,Cliff), isa(throw01,Throw), object(throw01,object01), origin(throw01,cliff01).

1. Preprocessing  Replace math symbols with words  +,-,/,*,= become “plus”,”minus”,”divided by”,”times”,”is”  remove non-ASCII characters  replace chemical formulae with dummy noun “NaCl is a chemical” “formula1 is a chemical”

2. Parsing “An object is thrown from a cliff” *S:-16* NP:-1 VP: DET:0 N^:0 AUX:0 VP:-8 | | | AN N:0 IS VP:0 *PP:-4* | | OBJECT V:0 P:0 NP:-3 | | THROWN FROM DET:-2 N^:0 | | A N:0 | CLIFF

3. Syntactic Logic Generation  Produce initial “syntactic logic”  Nouns, verbs, adjectives, adverbs become objects  prepositions, verb-argument positions become relations *S:-16* NP:-1 VP: DET:0 N^:0 AUX:0 VP:-8 | | | AN N:0 IS VP:0 *PP:-4* | | OBJECT V:0 P:0 NP:-3 | | THROWN FROM DET:-2 N^:0 | | A N:0 | CLIFF throw01: input-word(throw01, [“throw”,v]) subject(throw01,object01) “from”(throw01,cliff01) object01: input-word(object01, [“object”,n]) determiner(object01, “an”) cliff01: input-word(cliff01,[“cliff”,n]) determiner(cliff01, “a”)

4. Reference resolution  Reference: Ties sentences together  BLUE accumulates logic for each sentence in turn  “The red ball”  search for previous object which is a red ball  If > 1, warn user and pick the most recent  If 0, assume a new object  “The second red ball” → take 2 nd matching object A ball fell from a cliff. The ball weighs 10 N.

5. Transforming verbs to relations  Simple case: syntactic structure = semantic structure  But more likely: they differ  IF: a semantic relation appears as a verb  use the verb’s subject and sobject as args of the relation ;;; "A cell contains a nucleus" subject(contain01,cell01) sobject(contain01,nucleus01) input-word(contain01, ["contain",v]) ;;; "A cell contains a nucleus" encloses(cell01,nucleus01)  Special cases:  verb’s subject and preposition are the args of the relation  “The explosion resulted in a fire” → causes(explosion01,fire01)  “be” and “have” map to an underspecified relation  “The cell has a nucleus” → “have”(cell01,nucleus01)

6. Word Sense Disambiguation  Largely naïve (context-independent) WSD  same word always maps to same concept  If word maps to CLib concept, use that  If > 1 mapping, use a preference table to pick best  else climb WordNet from most likely WN sense to CLib concept WordNet “object” Lexical Term Concept (Word Sense) CLib Ontology Goal Physical-Object

7. Semantic Role Labeling ;;; "The man sang for 1 hour" agent(sing01,man01) duration(sing01,x01) value(x01,[1,*hour])  Assign using a hand-built database of (~100) rules ;;; "The man sang for a woman" subject(sing01,man01) "for"(sing01,woman01) ;;; "The man sang for a woman" agent(sing01,man01) beneficiary(sing01,woman01) ;;; "The man sang for 1 hour" subject(sing01,man01) "for"(sing01,x01) value(x01,[1,*hour])

8. Metonymy Resolution  Where a word is replaced with a closely related word.  Literal meaning is non-sensical  “John read Shakespeare” “Left lane must exit”  “Erase the blackboard” “Change the washing machine”  NOTE: non-sensical with respect to target ontology  5 main types of metonymy fixed a. FORCE for EXERTION "The force on the sled"→ "The force of the exertion on the sled" b. VECTOR-PROPERTY for VECTOR "The direction of the move" → "The direction of the velocity of the move" c. SUBSTANCE for STRUCTURAL-UNIT "The oxidation number of NaCl" → "The oxidation number of the basic structural unit of NaCl" d. OBJECT for EVENT "The speed of the car is 10 km/h" → "The speed of the movement of the car is 10 km/h" e. PLACE for OBJECT "The cat sits on the mat" → "The cat sits at a location on the mat"

9. Question Annotation  Find-a-value questions: Extract a variable of interest  Clausal questions: Extract clauses to be queried about _Height23 ; find the value (no wrapper) (what-is-a _Elephant23) ; find the definition (what-is-the _Process23) ; find the identity of (how-many _Elephant23) ; find the count (how-much _Water23) ; find the amount (what-types _Cell23) ; find the subclasses of the instance's class ;;; "Is it true that the big block is red?" Assertional Triples: size(block01,x01) value(x01,[*big,Spatial-Entity) value(x02,*red) Query Triples: color(block01,x02) query-type(is-it-true-that-questionp,t) Is it true Is it false It it possible Why How 5 types

10. Additional Processing  Occasional specific tweaks, e.g., ;;; "Is it true that the reaction is an oxidation reaction?" equal(reaction01,oxidation-reaction01) ;; "Is it true that the reaction is an oxidation reaction?" is-a(reaction01,oxidation-reaction01)