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!