Presentation is loading. Please wait.

Presentation is loading. Please wait.

LING 388: Language and Computers Sandiway Fong Lecture 11: 10/4.

Similar presentations


Presentation on theme: "LING 388: Language and Computers Sandiway Fong Lecture 11: 10/4."— Presentation transcript:

1 LING 388: Language and Computers Sandiway Fong Lecture 11: 10/4

2 Administrivia Homework #2 –has been graded –you should get an email in a day or so Reservation (tentative) –Lab class –practice and homework #3 on context-free grammar parsing –next Monday (11th October) –meet in SBS 224, Instructional Computing Lab (not here)

3 Last Time Context-Free Grammars (CFG) –from acceptor to parser –add an extra argument to grammar rules x --> y, z. x(x(Y,Z)) --> y(Y), z(Z). –extra argument changes the expressive power of the rules regular grammar rules + extra argument  can handle the non-regular language a n b n

4 Today’s Topic Context-free grammar technology + bells and whistles are at the core of parsing sentences –we’re going to keep exploring for the next few lectures how to implement natural language fragments –today: more on extra arguments...

5 Extra Argument and Phrase Structure Grammar from Lecture #10: –s(s(Y,Z)) --> np(Y), vp(Z). –np(np(Y)) --> pronoun(Y). –np(np(det(the),n(ball))) --> [the,ball]. –pronoun(i) --> [i]. –pronoun(we) --> [we]. –vp(vp(Y)) --> unergative(Y). –vp(vp(Y,Z)) --> transitive(Y), np(Z). –unergative(v(ran)) --> [ran]. –transitive(v(hit)) --> [hit]. Query: –?- s(X,[john,hit,the,ball],[]). Result: parse tree

6 Extra Argument and Phrase Structure Examples: s npvp vnp detn theball hit i s npvp v ran we ?- s(X,[we,ran],[]). X = s(np(we),vp(v(ran))) ?- s(X,[i,hit,the,ball],[]). X = s(np(i),vp(v(hit),np(det(the),n(ball))))

7 Extra Argument and Determiner-Noun Agreement Idea: –We can also use the extra argument to impose constraints between constituents within a DCG rule Example: –English determiner-noun number agreement –Data: the man the men a man *a men –Lexical Features: man singular men plural

8 Extra Argument and Determiner-Noun Agreement Data: –the man/men –a man/*a men Grammar: –s(s(Y,Z)) --> np(Y), vp(Z). –np(np(Y)) --> pronoun(Y). –np(np(det(the),n(ball))) --> [the,ball]. –pronoun(i) --> [i]. –pronoun(we) --> [we]. –vp(vp(Y)) --> unergative(Y). –vp(vp(Y,Z)) --> transitive(Y), np(Z). –unergative(v(ran)) --> [ran]. –transitive(v(hit)) --> [hit]. np --> det, common_noun. det --> [the]. det --> [a]. common_noun--> [ball]. common_noun--> [man]. common_noun --> [men]. np --> det, common_noun. det --> [the]. det --> [a]. common_noun--> [ball]. common_noun--> [man]. common_noun --> [men].

9 Extra Argument and Determiner-Noun Agreement Data: –the man/men –a man/*a men Grammar: –s(s(Y,Z)) --> np(Y), vp(Z). –np(np(Y)) --> pronoun(Y). –np(np(det(the),n(ball))) --> [the,ball]. –pronoun(i) --> [i]. –pronoun(we) --> [we]. –vp(vp(Y)) --> unergative(Y). –vp(vp(Y,Z)) --> transitive(Y), np(Z). –unergative(v(ran)) --> [ran]. –transitive(v(hit)) --> [hit]. np --> det, common_noun. det --> [the]. det --> [a]. common_noun--> [ball]. common_noun--> [man]. common_noun --> [men]. np(np(D,N)) --> det(D), common_noun(N). det(det(the)) --> [the]. det(det(a)) --> [a]. common_noun(n(ball)) --> [ball]. common_noun(n(man)) --> [man]. common_noun(n(men)) --> [men]. np(np(D,N)) --> det(D), common_noun(N). det(det(the)) --> [the]. det(det(a)) --> [a]. common_noun(n(ball)) --> [ball]. common_noun(n(man)) --> [man]. common_noun(n(men)) --> [men].

10 Extra Argument and Determiner-Noun Agreement Data: –the man/men –a man/*a men Grammar: –s(s(Y,Z)) --> np(Y), vp(Z). –np(np(Y)) --> pronoun(Y). –np(np(D,N)) --> det(D), common_noun(N). –det(det(the)) --> [the]. –det(det(a)) --> [a]. –common_noun(n(ball)) --> [ball]. –common_noun(n(man)) --> [man]. –common_noun(n(men)) --> [men]. –pronoun(i) --> [i]. –pronoun(we) --> [we]. –vp(vp(Y)) --> unergative(Y). –vp(vp(Y,Z)) --> transitive(Y), np(Z). –unergative(v(ran)) --> [ran]. –transitive(v(hit)) --> [hit]. Lexical Features man singular men plural Rules the can combine with singular or plural nouns a can combine only with singular nouns

11 Extra Argument and Determiner-Noun Agreement Data: –the man/men –a man/*a men Grammar: (NP section) –np(np(Y)) --> pronoun(Y). –np(np(D,N)) --> det(D), common_noun(N,Number). –det(det(the)) --> [the]. –det(det(a)) --> [a]. –common_noun(n(ball),sg) --> [ball]. –common_noun(n(man),pl) --> [man]. –common_noun(n(men),pl) --> [men]. –pronoun(i) --> [i]. –pronoun(we) --> [we]. Idea: specify singular ( sg ) and plural ( pl ) for common nouns using an extra argument Rules the can combine with singular or plural nouns a can combine only with singular nouns

12 Extra Argument and Determiner-Noun Agreement Data: –the man/men –a man/*a men Grammar: (NP section) –np(np(Y)) --> pronoun(Y). –np(np(D,N)) --> det(D,Number), common_noun(N,Number). –det(det(the),sg) --> [the]. –det(det(the),pl) --> [the]. –det(det(a),sg) --> [a]. –common_noun(n(ball),sg) --> [ball]. –common_noun(n(man),pl) --> [man]. –common_noun(n(men),pl) --> [men]. –pronoun(i) --> [i]. –pronoun(we) --> [we]. Idea: give determiners a number feature as well and make it agree with the noun Rules the can combine with singular or plural nouns a can combine only with singular nouns

13 Extra Argument and Determiner-Noun Agreement Query: –?- np(X,[the,men],[]). –Note: we need not start with non-terminal symbol s, i.e. parse a full sentence –Prolog DCG rules can be independently accessed Computation tree: –?- np(X,[the,men],[]).X = np(D,N) ?- det(D,Number,[the,men],L). ?- common_noun(N,Number,L,[]). –?- det(D,Number,[the,men],L). Rule #3 D = det(the) Number = sg L = [men] –?- common_noun(N,sg,[men],[]). Rule #8 No –Retry (rule #3 led to failure) –?- det(D,Number,[the,men],L). Rule #4 D = det(the) Number = pl L = [men] –?- common_noun(N,pl,[men],[]). Rule #8 Yes N = n(men) X = np(det(the),n(men)) 1.np(np(Y)) --> pronoun(Y). 2.np(np(D,N)) --> det(D,Number), common_noun(N,Number). 3.det(det(the),sg) --> [the]. 4.det(det(the),pl) --> [the]. 5.det(det(a),sg) --> [a]. 6.common_noun(n(ball),sg) --> [ball]. 7.common_noun(n(man),pl) --> [man]. 8.common_noun(n(men),pl) --> [men]. 9.pronoun(i) --> [i]. 10.pronoun(we) --> [we].

14 Extra Argument and Determiner-Noun Agreement Data: –the man/men –a man/*a men Query: –?- np(X,[a,men],[]). Computation tree: –?- np(X,[a,men],[]).X = np(D,N) ?- det(D,Number,[a,men],L). ?- common_noun(N,Number,L,[]). –?- det(D,Number,[a,men],L). Rule #5 D = det(a) Number = sg L = [men] –?- common_noun(N,sg,[men],[]). Rule #8 No 1.np(np(Y)) --> pronoun(Y). 2.np(np(D,N)) --> det(D,Number), common_noun(N,Number). 3.det(det(the),sg) --> [the]. 4.det(det(the),pl) --> [the]. 5.det(det(a),sg) --> [a]. 6.common_noun(n(ball),sg) --> [ball]. 7.common_noun(n(man),pl) --> [man]. 8.common_noun(n(men),pl) --> [men]. 9.pronoun(i) --> [i]. 10.pronoun(we) --> [we].

15 Extra Argument and Determiner-Noun Agreement Simplifying the grammar: –det(det(the),sg) --> [the]. –det(det(the),pl) --> [the]. –det(det(a),sg) --> [a]. Grammar is ambiguous: –two rules for determiner the –can see the effect in the computation tree retry needed to get “the men” to parse Agreement Rule (revisited): the can combine with singular or plural nouns i.e. the doesn’t care about the number of the noun DCG Rule: np(np(D,N)) --> det(D,Number), common_noun(N,Number). –det(det(the),_) --> [the]. Note: _ is a variable used underscore character because I don’t care about the name of the variable

16 Extra Argument and Determiner-Noun Agreement Revisit Query: –?- np(X,[the,men],[]). Computation tree: –?- np(X,[the,men],[]).X = np(D,N) ?- det(D,Number,[the,men],L). ?- common_noun(N,Number,L,[]). –?- det(D,Number,[the,men],L). Rule #3 D = det(the) Number = _ L = [men] –?- common_noun(N,_,[men],[]). Rule #7 Yes N = n(men) _ = pl X = np(det(the),n(men)) Advantage: –no need for retry (ambiguity removed) 1.np(np(Y)) --> pronoun(Y). 2.np(np(D,N)) --> det(D,Number), common_noun(N,Number). 3.det(det(the),_) --> [the]. 4.det(det(a),sg) --> [a]. 5.common_noun(n(ball),sg) --> [ball]. 6.common_noun(n(man),pl) --> [man]. 7.common_noun(n(men),pl) --> [men]. 8.pronoun(i) --> [i]. 9.pronoun(we) --> [we].


Download ppt "LING 388: Language and Computers Sandiway Fong Lecture 11: 10/4."

Similar presentations


Ads by Google