24
LING 388: Language and Computers Sandiway Fong Lecture 15: 10/18

LING 388: Language and Computers Sandiway Fong Lecture 15: 10/18

Embed Size (px)

Citation preview

Page 1: LING 388: Language and Computers Sandiway Fong Lecture 15: 10/18

LING 388: Language and Computers

Sandiway Fong

Lecture 15: 10/18

Page 2: LING 388: Language and Computers Sandiway Fong Lecture 15: 10/18

Administrivia

• Homework #3– due today– email: [email protected] (by midnight)

Page 3: LING 388: Language and Computers Sandiway Fong Lecture 15: 10/18

Last Time

• Predicate-Argument Structure– ?- s(X, [i,hit,the,ball], []).

• X = s(np(i),vp(v(hit),np(det(the),n(ball))))• X = hit(i,ball)

• Calling Prolog code from grammar rules– { ... }– headof(X,H)

• ?- headof(vp(v(hit),np(det(the),n(ball))),V).• X = hit

– counting• a+b+ => anbn

Page 4: LING 388: Language and Computers Sandiway Fong Lecture 15: 10/18

Today’s Topics

• One step towards a simple language translator ...

– Grammar for Japanese– Differences between English and Japanese

• Canonical Word Order• Wh-questions

Page 5: LING 388: Language and Computers Sandiway Fong Lecture 15: 10/18

Japanese

• Head-Final Language– introduced the notion “head of a phrase” last lecture

• e.g. verb is the head of a verb phrase– hit the ball– ran

• noun is the head of a noun phrase– the man (that I saw)– the old man– John’s mother

– Sentence word order (canonical)• Subject Object Verb

– cf. English word order• Subject Verb Object

Page 6: LING 388: Language and Computers Sandiway Fong Lecture 15: 10/18

Japanese

• Head-Final Language– Sentence word order (canonical)

• Subject Object Verb

– cf. English word order• Subject Verb Object

• Example:– John bought a book– John a book bought (Japanese word order)– Taroo-ga hon-o katta– ga = nominative case marker– o = accusative case marker

Page 7: LING 388: Language and Computers Sandiway Fong Lecture 15: 10/18

Japanese

• Head-Final Language– Sentence word order (canonical)

• Subject Object Verb

– Japanese also allows “scrambling”• e.g. object and subject can be switched in order• Subject Object Verb• Object Subject Verb• *Subject Verb Object (still head-final)

• Example:– John bought a book– John a book bought– Taroo-ga hon-o katta– hon-o Taroo-ga katta– *Taroo-ga katta hon-o (English word order)– ga = nominative case marker– o = accusative case marker

Page 8: LING 388: Language and Computers Sandiway Fong Lecture 15: 10/18

Japanese

• Example:– John bought a book– John a book bought– Taroo-ga hon-o katta– ga = nominative case marker– o = accusative case marker

• Input (Prolog list):– [taroo,ga,hon,o,katta]

• Basic parser rules:– s(s(Y,Z)) --> np(Y), nomcase, vp(Z).– vp(vp(Z,Y)) --> np(Z), acccase, transitive(Y).– transitive(v(katta)) --> [katta].– nomcase --> [ga].– acccase --> [o].– np(np(taroo)) --> [taroo].– np(np(hon)) --> [hon].

Page 9: LING 388: Language and Computers Sandiway Fong Lecture 15: 10/18

Japanese

• Example:– John a book bought– Taroo-ga hon-o katta– ga = nominative case marker– o = accusative case marker

• Computation tree:– ?- s(X,[taroo,ga,hon,o,katta],[]).

• ?- np(Y,[taroo,ga,hon,o,katta],L1).• ?- nomcase(L1,L2).• ?- vp(Z,L2,[]).

– ?- np(Y,[taroo,ga,hon,o,katta],L1).• Y = np(taroo) L1 = [ga,hon,o,katta]

– ?- nomcase([ga,hon,o,katta],L2).• L2 = [hon,o,katta]

– ?- vp(vp(Z’,Y’), [hon,o,katta],[]). Z = vp(Z’,Y’)• ?- np(Z’,[hon,o,katta],L1’).• ?- acccase(L1’,L2’).• ?- transitive(Y’,L2’,[]).

1. s(s(Y,Z)) --> np(Y), nomcase, vp(Z).

2. vp(vp(Z,Y)) --> np(Z), acccase, transitive(Y).

3. transitive(v(katta)) --> [katta].4. nomcase --> [ga].5. acccase --> [o].6. np(np(taroo)) --> [taroo].7. np(np(hon)) --> [hon].

Page 10: LING 388: Language and Computers Sandiway Fong Lecture 15: 10/18

Japanese

• Example:– John a book bought– Taroo-ga hon-o katta– ga = nominative case marker– o = accusative case marker

• Computation tree:– ?- vp(vp(Z’,Y’), [hon,o,katta],[]).

• ?- np(Z’,[hon,o,katta],L1’).• ?- acccase(L1’,L2’).• ?- transitive(Y’,L2’,[]).

– ?- np(Z’,[hon,o,katta],L1’)• Z’ = np(hon) L1’ = [o,katta]

– ?- acccase([o,katta],L2’).• L2’ = [katta]

– ?- transitive(Y’,[katta],[]).• Y’ = v(katta)

• Answer– ?- s(X,[taroo,ga,hon,o,katta],[]).

– X = s(np(taroo), vp(np(hon), v(katta)))

1. s(s(Y,Z)) --> np(Y), nomcase, vp(Z).

2. vp(vp(Z,Y)) --> np(Z), acccase, transitive(Y).

3. transitive(v(katta)) --> [katta].4. nomcase --> [ga].5. acccase --> [o].6. np(np(taroo)) --> [taroo].7. np(np(hon)) --> [hon].

Page 11: LING 388: Language and Computers Sandiway Fong Lecture 15: 10/18

Japanese

• Example:– John a book bought– Taroo-ga hon-o katta– ga = nominative case marker– o = accusative case marker

• Simple grammar– can be run “backwards” for sentence generation

• Query– ?- s(s(np(taroo), vp(np(hon), v(katta))),L,[]).– L = [taroo, ga, hon, o, katta]

1. s(s(Y,Z)) --> np(Y), nomcase, vp(Z).

2. vp(vp(Z,Y)) --> np(Z), acccase, transitive(Y).

3. transitive(v(katta)) --> [katta].4. nomcase --> [ga].5. acccase --> [o].6. np(np(taroo)) --> [taroo].7. np(np(hon)) --> [hon].

GeneratorSentence Parse tree

ParserSentence Parse tree

Page 12: LING 388: Language and Computers Sandiway Fong Lecture 15: 10/18

Japanese

• Example:– John a book bought– Taroo-ga hon-o katta– ga = nominative case marker– o = accusative case marker

• Query (Generation):– ?- s(s(np(taroo),vp(np(hon),v(katta))),L,[]).

• Y = np(taroo) Z = vp(np(hon),v(katta)))• ?- np(np(taroo),L,L1).• ?- nomcase(L1,L2).• ?- vp(vp(np(hon),v(katta))),L2,[]).

– ?- np(np(taroo),L,L1).• L = [taroo|L1]

– ?- nomcase(L1,L2).• L1 = [ga|L2]

– ?- vp(vp(np(hon),v(katta))),L2,[]).• Z’ = np(hon) Y’ = v(katta)• ?- np(np(hon),L2,L3).• ?- acccase(L3,L4).• ?- transitive(v(katta),L4,[]).

1. s(s(Y,Z)) --> np(Y), nomcase, vp(Z).

2. vp(vp(Z,Y)) --> np(Z), acccase, transitive(Y).

3. transitive(v(katta)) --> [katta].4. nomcase --> [ga].5. acccase --> [o].6. np(np(taroo)) --> [taroo].7. np(np(hon)) --> [hon].

Page 13: LING 388: Language and Computers Sandiway Fong Lecture 15: 10/18

Japanese

• Example:– John a book bought– Taroo-ga hon-o katta– ga = nominative case marker– o = accusative case marker

• Query (Generation):– ?- vp(vp(np(hon),v(katta))),L2,[]).

• Z’ = np(taroo) Y’ = v(katta)• ?- np(np(hon),L2,L3).• ?- acccase(L3,L4).• ?- transitive(v(katta),L4,[]).

– ?- np(np(hon),L2,L3).• L2 = [hon|L3]

– ?- acccase(L3,L4).• L3 = [o|L4]

– ?- transitive(v(katta),L4,[]).• L4 = [katta|[]]

1. s(s(Y,Z)) --> np(Y), nomcase, vp(Z).

2. vp(vp(Z,Y)) --> np(Z), acccase, transitive(Y).

3. transitive(v(katta)) --> [katta].4. nomcase --> [ga].5. acccase --> [o].6. np(np(taroo)) --> [taroo].7. np(np(hon)) --> [hon].

Page 14: LING 388: Language and Computers Sandiway Fong Lecture 15: 10/18

Japanese

• Example:– John a book bought– Taroo-ga hon-o katta– ga = nominative case marker– o = accusative case marker

• Query (Generation):– back-substituting ...– ?- np(np(taroo),L,L1).

• L = [taroo|L1]– ?- nomcase(L1,L2).

• L1 = [ga|L2]– ?- np(np(hon),L2,L3).

• L2 = [hon|L3]– ?- acccase(L3,L4).

• L3 = [o|L4]– ?- transitive(v(katta),L4,[]).

• L4 = [katta|[]]

• Answer:– L = [taroo, ga, hon, o, katta]

1. s(s(Y,Z)) --> np(Y), nomcase, vp(Z).

2. vp(vp(Z,Y)) --> np(Z), acccase, transitive(Y).

3. transitive(v(katta)) --> [katta].4. nomcase --> [ga].5. acccase --> [o].6. np(np(taroo)) --> [taroo].7. np(np(hon)) --> [hon].

Page 15: LING 388: Language and Computers Sandiway Fong Lecture 15: 10/18

Japanese

• Wh-Phrases– English

• John bought a book• Who bought a book? (subject wh-phrase)• *John bought what? (only possible as an echo-

question)• What did John buy? (object wh-phrase)

– Complex operation: (irregular)» object wh-phrase must be fronted» do-support (insertion of past tense form of “do”)» bought buy (untensed form)

Page 16: LING 388: Language and Computers Sandiway Fong Lecture 15: 10/18

Japanese

• Wh-Phrases– English

• Who bought a book? (subject wh-phrase)• *John bought what? (only possible as an echo-question)• What did John buy? (object wh-phrase)

– Japanese• wh-in-situ:

– meaning wh-phrase appears in same position as a regular noun phrase– easy to implement!

• Taroo-ga nani-o katta ka– nani: means what– ka: sentence-final question particle

• dare-ga hon-o katta ka– dare: means who

Page 17: LING 388: Language and Computers Sandiway Fong Lecture 15: 10/18

Japanese

• wh-in-situ: – Taroo-ga nani-o katta ka

• nani: means what• ka: sentence-final question particle

– dare-ga hon-o katta ka• dare: means who

• Grammar:– s(s(Y,Z)) --> np(Y), nomcase, vp(Z).– vp(vp(Z,Y)) --> np(Z), acccase, transitive(Y).– transitive(v(katta)) --> [katta].– nomcase --> [ga].– acccase --> [o].– np(np(taroo)) --> [taroo].– np(np(hon)) --> [hon].

• Add new wh-words:– np(np(dare)) --> [dare].– np(np(nani)) --> [nani].

Page 18: LING 388: Language and Computers Sandiway Fong Lecture 15: 10/18

Japanese

• wh-in-situ: – Taroo-ga nani-o katta ka

• nani: means what• ka: sentence-final question particle

– dare-ga hon-o katta ka• dare: means who

• Grammar:– s(s(Y,Z)) --> np(Y), nomcase, vp(Z).– vp(vp(Z,Y)) --> np(Z), acccase, transitive(Y).– transitive(v(katta)) --> [katta].– nomcase --> [ga].– acccase --> [o].– np(np(taroo)) --> [taroo].– np(np(hon)) --> [hon].– np(np(dare)) --> [dare].– np(np(nani)) --> [nani].

• Allows sentences:– Taroo-ga hon-o katta– Taroo-ga nani-o katta (ka)– dare-ga hon-o katta (ka)

How do we enforce the constraint that ka is obligatory when a wh-phrase is in the sentence?

Page 19: LING 388: Language and Computers Sandiway Fong Lecture 15: 10/18

Japanese

• wh-in-situ: – Taroo-ga nani-o katta ka

• nani: means what• ka: sentence-final question particle

– dare-ga hon-o katta ka• dare: means who

• Grammar:– s(s(Y,Z)) --> np(Y,Q), nomcase, vp(Z).– vp(vp(Z,Y)) --> np(Z,Q), acccase, transitive(Y).– transitive(v(katta)) --> [katta].– nomcase --> [ga].– acccase --> [o].– np(np(taroo),notwh) --> [taroo].– np(np(hon),notwh) --> [hon].– np(np(dare),wh) --> [dare].– np(np(nani),wh) --> [nani].

• Answer:– Use an extra argument to encode the lexical feature wh for nouns

Page 20: LING 388: Language and Computers Sandiway Fong Lecture 15: 10/18

Japanese

• wh-in-situ: – Taroo-ga nani-o katta ka

• nani: means what• ka: sentence-final question particle

– dare-ga hon-o katta ka• dare: means who

• Grammar:– s(s(Y,Z)) --> np(Y,Q1), nomcase, vp(Z,Q2).– vp(vp(Z,Y),Q) --> np(Z,Q), acccase, transitive(Y).– transitive(v(katta)) --> [katta].– nomcase --> [ga].– acccase --> [o].– np(np(taroo),notwh) --> [taroo].– np(np(hon),notwh) --> [hon].– np(np(dare),wh) --> [dare].– np(np(nani),wh) --> [nani].

• Answer:– Use an extra argument to encode the lexical feature wh for nouns– Propagate this feature up to the sentence rule

Page 21: LING 388: Language and Computers Sandiway Fong Lecture 15: 10/18

Japanese

• wh-in-situ: – Taroo-ga nani-o katta ka

• nani: means what• ka: sentence-final question particle

– dare-ga hon-o katta ka• dare: means who

• Grammar:– s(s(Y,Z)) --> np(Y,Q1), nomcase, vp(Z,Q2), sf(Q1,Q2).– vp(vp(Z,Y),Q) --> np(Z,Q), acccase, transitive(Y).– transitive(v(katta)) --> [katta].– nomcase --> [ga].– acccase --> [o].– np(np(taroo),notwh) --> [taroo].– np(np(hon),notwh) --> [hon].– np(np(dare),wh) --> [dare].– np(np(nani),wh) --> [nani].

• Answer:– Use an extra argument to encode the lexical feature wh for nouns– Propagate this feature up to the sentence rule– Add a sentence-final particle rule that generates ka when this feature is wh

Page 22: LING 388: Language and Computers Sandiway Fong Lecture 15: 10/18

Japanese

• wh-in-situ: – Taroo-ga nani-o katta ka

• nani: means what• ka: sentence-final question particle

– dare-ga hon-o katta ka• dare: means who

• Grammar:– s(s(Y,Z)) --> np(Y,Q1), nomcase, vp(Z,Q2), sf(Q1,Q2).– vp(vp(Z,Y),Q) --> np(Z,Q), acccase, transitive(Y).– transitive(v(katta)) --> [katta].– nomcase --> [ga].– acccase --> [o].– np(np(taroo),notwh) --> [taroo].– np(np(hon),notwh) --> [hon].– np(np(dare),wh) --> [dare].– np(np(nani),wh) --> [nani].

• Sentence-final particle rule:– sf(wh,notwh) --> [ka].– sf(notwh,wh) --> [ka].– sf(notwh,notwh) --> []. (empty)– sf(wh,wh) --> [ka]. (dare-ga nani-o katta ka: who bought what)

Page 23: LING 388: Language and Computers Sandiway Fong Lecture 15: 10/18

Japanese

• wh-in-situ: – Taroo-ga nani-o katta ka

• nani: means what• ka: sentence-final question particle

– dare-ga hon-o katta ka• dare: means who

• Computation tree:– ?- s(X,[taroo,ga,nani,o,katta,ka],[]).– X = s(np(taroo),vp(np(nani),v(katta))) – ?- s(X,[taroo,ga,nani,o,katta],[]).– no

s(s(Y,Z)) --> np(Y,Q1), nomcase, vp(Z,Q2), sf(Q1,Q2).vp(vp(Z,Y),Q) --> np(Z,Q), acccase, transitive(Y).transitive(v(katta)) --> [katta].nomcase --> [ga].acccase --> [o].np(np(taroo),notwh) --> [taroo].np(np(hon),notwh) --> [hon].np(np(dare),wh) --> [dare].np(np(nani),wh) --> [nani]. sf(wh,notwh) --> [ka].sf(notwh,wh) --> [ka].sf(notwh,notwh) --> [].sf(wh,wh) --> [ka].

We may want to modifiy the parse tree to represent the sentence-final particle ka as well

Page 24: LING 388: Language and Computers Sandiway Fong Lecture 15: 10/18

Next Time

• We’ll look at wh-questions in English

• ... and also take another step towards our machine translator