200 likes | 310 Vues
This text delves into advanced topics in Natural Language Processing, focusing on the semantics of questions and assertions, particularly around quantification. It covers theories on handling questions and assertions differently, and provides insights into logical forms (LF), parsing, and building these forms in NLP systems. Key concepts include universal and existential statements, the efficiency of queries, discourse referents, and the representation of meaning. The material is essential for understanding how semantic structures influence question types and assertions in NLP applications.
E N D
CSA4050: Advanced Topics in NLP Semantics 6 Semantics of Questions and Assertions involving Quantification CSA4050 Advanced Techniques in NLP
Classification of Questions CSA4050 Advanced Techniques in NLP
Classification of Assertions CSA4050 Advanced Techniques in NLP
Issues • Handling questions ≠ Handling assertions • Semantic issues: • What LF? • How to process LF • Syntactic issues • how to parse sentences • how to build LF CSA4050 Advanced Techniques in NLP
Semantics of Question TypeDid all the cats sleep? • how to represent meaningq1(all(X,cat(X),sleep(X)) • how to process meaningprovide definition for all(X,R,S) • intuitively, this succeeds if for every X where R succeeds, S also succeeds • it fails if there is a single counterexample i.e. cat(X) succeeds and sleep(X) fails. CSA4050 Advanced Techniques in NLP
Defining all all(_,R,S) :- \+(R,\+S). NB • \+ (G) succeeds if G fails. • Goal1,Goal2 succeeds if Goal1, then Goal2 succeed • What happens if R fails? CSA4050 Advanced Techniques in NLP
Semantics of Question TypeDid a cat sleep? • how to represent meaningq1(some(X,cat(X),sleep(X)) • how to process meaningprovide definition for some(X,R,S) • intuitively, this succeeds if there is an X which satisfies R and S. • it fails if there is no such X. Only one example need be established. CSA4050 Advanced Techniques in NLP
Defining some some(_,R,S) :- R, S. NB • Can this be made more efficient? CSA4050 Advanced Techniques in NLP
Getting a List of SolutionsWhich cats sleep? • The built in predicatesetof(X,Goal,L)binds L to a list of X that satisfy Goal • So for example with a database containingcat(majlo). sleep(majlo). cat(felix). sleep(felix). cat(cobweb). • ?- setof(X,(cat(X),sleep(X)),L).L = [majlo,felix] CSA4050 Advanced Techniques in NLP
How many cats slept? • "How many" questions require a numerical answer that is obtained by counting the number of solutions. • This can be acheived as follows using setof in conjunction with the built-in length predicate.howmany(X,Goal,N) :- setof(X,Goal,L), length(L,N). CSA4050 Advanced Techniques in NLP
Assertions with QuantificationUniversal Statements • Universal statements are those whose LF involves all(<var>,R,S). • This translates into the Prolog clauseS :- R • Example • English = Every cat sleeps • LF = all(X,cat(X),sleep(X)). • Prolog = sleep(X) :- cat(X) CSA4050 Advanced Techniques in NLP
Restrictions on Translationinto Prolog • Prolog uses the Horn Clause subset of FOL. • A rule of the forma(X) :- a1(X), ..., an(X)corresponds to the FOL statementx (a1(x) & ... & an(x) a(x)) • Outermost quantifier must be universally quantifed • Conclusion must be a single predicate CSA4050 Advanced Techniques in NLP
Assertions with Quantification:Simple existential statements • With simple assertions like Suzie chased Felixwe simply assert the corresponding LF chased(suzie,felix) into the database. • This will not work with sentences likeSuzie chased a catwhose LF issome(X,cat(X),chase(suzie,X)) CSA4050 Advanced Techniques in NLP
Establishing the truthof quantified sentences • In order to find out what has to be asserted, let’s see what happens with corresponding query, given that some(_,R,S) :- R, S. • Clearly, the query?- some(X,cat(X),chase(suzie,X)).will cause subgoals cat(X), chase(suzie,X) to be tried. • These will fail CSA4050 Advanced Techniques in NLP
Anonymous Names • cat(X) and chased(suzie,felix) will succeed if we have, e.g. cat(felix), chased(suzie,felix) in the database. • But when we assert some(X,cat(X),chased(suzie,X))no such name is mentioned, so we have to invent an anonymous name. • The simplest names are integers:cat(100). chased(suzie,100). CSA4050 Advanced Techniques in NLP
Discourse Referents • Such names are more properly called discourse referents. Discourse referents are entities that are referred to by different parts of a discourse. • Some parts introduce new DRs. Others refer back to already established DRs. • Discourse Representation Theory • A baby cried. He was hungry CSA4050 Advanced Techniques in NLP
Interpreting Wh Questions • Semantically, issue is quite simple • We want the semantic interpretation of the question to query the database and bind the result to a variable. • Let SEM be the semantic interpretation of "who sees fido“. We want the following behaviour?- interpret(SEM,Ans)Ans = [john,mary] • What does SEM have to look like? CSA4050 Advanced Techniques in NLP
Representing Meaning CSA4050 Advanced Techniques in NLP
How Internal BindingsYield the Answer interpret(q2(X, ....X....),X) • The first occurrence of X identifies what the unknown is called. • The second occurrence identifies where the unknown information is situated in the second arg. position of q2). • The last occurrence will become bound to the answer. CSA4050 Advanced Techniques in NLP
Syntax of Wh Questions • How do we build the right semantic representation from the question? • Need to look carefully at the syntactic structure of the questions. • In particular, need to look at the way sentences have been derived. • Hypothesis: the word who can substitute any noun phrase. CSA4050 Advanced Techniques in NLP