400 likes | 526 Views
A Statistical Semantic Parser that Integrates Syntax and Semantics. Ruifang Ge and Raymond J. Mooney. June 29, 2005. [ giver John] gave [ entity given to Mary] [ thing given a pen]. Motivation.
E N D
A Statistical Semantic Parser that Integrates Syntax and Semantics Ruifang Ge and Raymond J. Mooney June 29, 2005
[giver John] gave [entity given to Mary] [thing given a pen] Motivation • Most recent work in semantic parsing has focused on semantic role labeling [Gildea & Jurafsky,2002] • Identifying the semantic relations, or semantic roles, filled by constituents of a sentence within a semantic frame of a target word • Deep semantic parsing • NL sentence complete formal Meaning Representation (MR) • Directly Executable
NL NL If the ball is in our penalty area, all our players except player 4 should stay in our half If the ball is in our penalty area, all our players except player 4 should stay in our half MR MR ((bpos (penalty-area our)) (do (player-except our{4}) (pos (half our))) ((bpos (penalty-area our)) (do (player-except our{4}) (pos (half our))) NL If the ball is in our penalty area, all our players except player 4 should stay in our half MR ((bpos (penalty-area our)) (do (player-except our{4}) (pos (half our))) CLang: the RoboCup Coach Language • RoboCup is a simulated robot soccer competition • Coachable teams can take advice on how to play the game • Coaching instructions are provided in a formal meaning representation language called CLang
Outline • System overview • Integrated Parsing Model • Experimental Evaluation • Related Work • Future Work and Conclusion
S-bowner NP-player VP-bowner PRP$-team NN-player CD-unum VB-bowner NP-null our player 2 has DT-null NN-null the ball S-bowner NP-player VP-bowner PRP$-team NN-player CD-unum VB-bowner NP-null our player 2 has DT-null NN-null the ball SCISSOR: Semantic Composition that Integrates Syntax and Semantics to get Optimal Representations • Based on a fairly standard approach to compositional semantics [Jurafsky and Martin, 2000] • A statistical parser is used to generate a semantically augmented parse tree (SAPT) • Augment Collins’ head-driven model 2 (Bikel’s implementation, 2004) to incorporate semantic labels • Translate SAPT into a complete formal meaning representation (MR) MR: bowner(player(our,2))
NL Sentence learner SAPT Training Examples SAPT TRAINING TESTING ComposeMR MR Overview of SCISSOR Integrated Semantic Parser
ComposeMR bowner player bowner null team player unum bowner 2 null null our player has the ball
ComposeMR bowner(_) player(_,_) bowner(_) null team player(_,_) unum bowner(_) 2 null null our player has the ball
player(team,unum) bowner(player) ComposeMR bowner(player(our,2)) bowner(_) bowner(_) bowner(_) bowner(_) player(our,2) player(_,_) player(_,_) null null team player(_,_) unum bowner(_) 2 null null our player has the ball
Outline • System overview • Integrated Parsing Model • Experimental Evaluation • Related Work • Future Work and Conclusion
S(has) NP(player) VP(has) NP(ball) PRP$ NN CD VB DT NN our player 2 has the ball Collins’ Head-Driven Model 2 • A generative, lexicalized model • Each node on the tree has a syntactic label, it is also lexicalized with its head word
Modeling Rule Productions as Markov Processes S(has) VP(has) Ph(VP | S, has)
Modeling Rule Productions as Markov Processes S(has) VP(has) {NP } { } Ph(VP | S, has) × × Prc({} | S, VP, has) Plc({NP} | S, VP, has)
Modeling Rule Productions as Markov Processes S(has) NP(player) VP(has) {NP } { } Ph(VP | S, has) × × Prc({} | S, VP, has) × Plc({NP} | S, VP, has) Pd(NP(player) | S, VP, has, LEFT, {NP})
Modeling Rule Productions as Markov Processes S(has) NP(player) VP(has) { } { } Ph(VP | S, has) × × Prc({} | S, VP, has) × Plc({NP} | S, VP, has) Pd(NP(player) | S, VP, has, LEFT, {NP})
Modeling Rule Productions as Markov Processes S(has) NP(player) VP(has) STOP { } { } Ph(VP | S, has) × × Prc({} | S, VP, has) × Plc({NP} | S, VP, has) Pd(NP(player) | S, VP, has, LEFT, {NP}) × Pd(STOP | S, VP, has, LEFT, {})
Modeling Rule Productions as Markov Processes S(has) NP(player) VP(has) STOP STOP { } { } Ph(VP | S, has) × × Prc({} | S, VP, has) × Plc({NP} | S, VP, has) Pd(NP(player) | S, VP, has, LEFT, {NP}) × Pd(STOP | S, VP, has, LEFT, {}) × Pd(STOP | S, VP, has, RIGHT, {})
S-bowner(has) S(has) NP-player(player) VP-bowner(has) NP(player) VP(has) NP-null(ball) NP(ball) PRP$-team NN-player CD-unum VB-bowner NN-null DT-null PRP$ NN CD VB DT NN our player 2 has the ball our player 2 has the ball Integrating Semantics into the Model • Use the same Markov processes • Add a semantic labelto each node • Add semantic subcat frames • Give semantic subcategorization preferences • bowner takes a player as its argument
Adding Semantic Labels into the Model S-bowner(has) VP-bowner(has) Ph(VP-bowner | S-bowner, has)
Adding Semantic Labels into the Model S-bowner(has) VP-bowner(has) {NP}-{player} { }-{ } Ph(VP-bowner | S-bowner, has) × Plc({NP}-{player} | S-bowner, VP-bowner, has) × Prc({}-{}| S-bowner, VP-bowner, has)
Adding Semantic Labels into the Model S-bowner(has) NP-player(player) VP-bowner(has) {NP}-{player} { }-{ } Ph(VP-bowner | S-bowner, has) × Plc({NP}-{player} | S-bowner, VP-bowner, has) × Prc({}-{}| S-bowner, VP-bowner, has) × Pd(NP-player(player) | S-bowner, VP-bowner, has, LEFT, {NP}-{player})
Adding Semantic Labels into the Model S-bowner(has) NP-player(player) VP-bowner(has) { }-{ } { }-{ } Ph(VP-bowner | S-bowner, has) × Plc({NP}-{player} | S-bowner, VP-bowner, has) × Prc({}-{}| S-bowner, VP-bowner, has) × Pd(NP-player(player) | S-bowner, VP-bowner, has, LEFT, {NP}-{player})
Adding Semantic Labels into the Model S-bowner(has) NP-player(player) VP-bowner(has) STOP { }-{ } { }-{ } Ph(VP-bowner | S-bowner, has) × Plc({NP}-{player} | S-bowner, VP-bowner, has) × Prc({}-{}| S-bowner, VP-bowner, has) × Pd(NP-player(player) | S-bowner, VP-bowner, has, LEFT, {NP}-{player}) × Pd(STOP | S-bowner, VP-bowner, has, LEFT, {}-{})
Adding Semantic Labels into the Model S-bowner(has) NP-player(player) VP-bowner(has) STOP STOP { }-{ } { }-{ } Ph(VP-bowner | S-bowner, has) × Plc({NP}-{player} | S-bowner, VP-bowner, has) × Prc({}-{}| S-bowner, VP-bowner, has) × Pd(NP-player(player) | S-bowner, VP-bowner, has, LEFT, {NP}-{player}) × Pd(STOP | S-bowner, VP-bowner, has, LEFT, {}-{}) × Pd(STOP | S-bowner, VP-bowner, has, RIGHT, {}-{})
Smoothing • Each label in SAPT is the combination of a syntactic label and a semantic label • Increases data sparsity • Use Bayes rule to break the parameters down Ph(H | P, w) = Ph(Hsyn, Hsem | P, w) = Ph(Hsyn | P, w) × Ph(Hsem | P, w, Hsyn) • Details in the paper
Outline • System overview • Integrated Parsing Model • Experimental Evaluation • Related Work • Future Work and Conclusion
Experimental Corpora • CLang • 300 randomly selected pieces of coaching advice from the log files of the 2003 RoboCup Coach Competition • Formal instruction (MR) NL sentences (4 annotators) SAPT • 22.52 words on average • Geoquery [Zelle & Mooney, 1996] • 250 queries on the given U.S. geography database • NL sentences MR SAPT • 6.87 words on average
Experimental Methodology • Evaluated using standard 10-fold cross validation • Correctness • CLang: it exactly matches the correct representation • Geoquery: the resulting query retrieved the same answer as the correct representation when submitted to the database • Metrics Our player 2 has the ball bowner(player(our,2)) bowner(player(our,4))
Compared Systems • CHILL [Tang & Mooney, 2001] • Learn control rules for parsing based on Inductive Logic Programming (ILP) • SILT [Kate et al., 2005] • Learn pattern-based transformation rules • SILT-string • SILT-tree • GEOBASE • The original hand-built parser on Geoquery
Related Work • PRECISE [Popescu, 2003] • Designed to work specially on NL database interfaces • [Miller et al., 1996; Miller et al., 2000] use a similar approach to train a statistical parser integrating syntax and semantics. • Does not utilize subcat information • Task: Information Extraction
Outline • System overview • Integrated Parsing Model • Experimental Evaluation • Related Work • Future Work and Conclusion
Future Work and Conclusion • Explore methods that can automatically generate SAPT to minimize the annotation effort • By augmenting a state-of-the-art statistical parsing model to include semantics, SCISSOR learns a statistical parser that produces a SAPT that is then used to compositionally generate a formal MR • Experimental results in Clang and Geoquery showed that SCISSOR generally produces more accurate semantic representations than several previous approaches.
The End Data: http://www.cs.utexas.edu/users/ml/nldata.html
MR size in two domains • Measure the average number of tokens in MR per sentence • CLang: 14.24 • Geoquery: 5.32