ling 138/238 symbsys 138 intro to computer speech and language processing

63
06/19/22 LING 138/238 Autumn 2004 1 LING 138/238 SYMBSYS 138 Intro to Computer Speech and Language Processing Lecture 13: Grammar and Parsing (I) November 9, 2004 Dan Jurafsky Thanks to Jim Martin for many of these slides!

Upload: muncel

Post on 25-Feb-2016

35 views

Category:

Documents


0 download

DESCRIPTION

LING 138/238 SYMBSYS 138 Intro to Computer Speech and Language Processing. Lecture 13: Grammar and Parsing (I) November 9, 2004 Dan Jurafsky. Thanks to Jim Martin for many of these slides!. Outline for Grammar/Parsing Week. Context-Free Grammars and Constituency - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: LING 138/238 SYMBSYS 138 Intro to Computer Speech and Language Processing

04/22/23 LING 138/238 Autumn 2004 1

LING 138/238 SYMBSYS 138Intro to Computer Speech and

Language Processing

Lecture 13: Grammar and Parsing (I)

November 9, 2004Dan Jurafsky

Thanks to Jim Martin for many of these slides!

Page 2: LING 138/238 SYMBSYS 138 Intro to Computer Speech and Language Processing

04/22/23 LING 138/238 Autumn 2004 2

Outline for Grammar/Parsing Week

• Context-Free Grammars and Constituency

• Some common CFG phenomena for English– Sentence-level constructions– NP, PP, VP– Coordination– Subcategorization

• Top-down and Bottom-up Parsing• Earley Parsing• Quick sketch of advanced stuff

Page 3: LING 138/238 SYMBSYS 138 Intro to Computer Speech and Language Processing

04/22/23 LING 138/238 Autumn 2004 3

Review• Parts of Speech

– Basic syntactic/morphological categories that words belong to

• Part of Speech tagging– Assigning parts of speech to all the words

in a sentence

Page 4: LING 138/238 SYMBSYS 138 Intro to Computer Speech and Language Processing

04/22/23 LING 138/238 Autumn 2004 4

Syntax• Syntax: from Greek syntaxis, “setting out

together, arrangmenet’• Refers to the way words are arranged

together, and the relationship between them.

• Distinction:– Prescriptive grammar: how people ought to talk– Descriptive grammar: how they do talk

• Goal of syntax is to model the knowledge of that people unconsciously have about the grammar of their native langauge

Page 5: LING 138/238 SYMBSYS 138 Intro to Computer Speech and Language Processing

04/22/23 LING 138/238 Autumn 2004 5

Syntax• Why should you care?

– Grammar checkers– Question answering – Information extraction– Machine translation

Page 6: LING 138/238 SYMBSYS 138 Intro to Computer Speech and Language Processing

04/22/23 LING 138/238 Autumn 2004 6

4 key ideas of syntax• Constituency (we’ll spend most of our time on

this)• Grammatical relations• Subcategorization• Lexical dependencies

Plus one part we won’t have time for:• Movement/long-distance dependency

Page 7: LING 138/238 SYMBSYS 138 Intro to Computer Speech and Language Processing

04/22/23 LING 138/238 Autumn 2004 7

Context-Free Grammars• Capture constituency and ordering

– Ordering:• What are the rules that govern the ordering of

words and bigger units in the language?– Constituency:

How words group into units and how the various kinds of units behave

Page 8: LING 138/238 SYMBSYS 138 Intro to Computer Speech and Language Processing

04/22/23 LING 138/238 Autumn 2004 8

Constituency• Noun phrases (NPs)

• Three parties from Brooklyn• A high-class spot such as Mindy’s• The Broadway coppers• They• Harry the Horse• The reason he comes into the Hot Box

• How do we know these form a constituent?– They can all appear before a verb:

• Three parties from Brooklyn arrive…• A high-class spot such as Mindy’s attracts…• The Broadway coppers love…• They sit…

Page 9: LING 138/238 SYMBSYS 138 Intro to Computer Speech and Language Processing

04/22/23 LING 138/238 Autumn 2004 9

Constituency (II)– They can all appear before a verb:

• Three parties from Brooklyn arrive…• A high-class spot such as Mindy’s attracts…• The Broadway coppers love…• They sit

– But individual words can’t always appear before verbs:

• *from arrive…• *as attracts…• *the is• *spot is…

– Must be able to state generalizations like:• Noun phrases occur before verbs

Page 10: LING 138/238 SYMBSYS 138 Intro to Computer Speech and Language Processing

04/22/23 LING 138/238 Autumn 2004 10

Constituency (III)• Preposing and postposing:

– On September 17th, I’d like to fly from Atlanta to Denver

– I’d like to fly on September 17th from Atlanta to Denver

– I’d like to fly from Atlanta to Denver on September 17th.

• But not:– *On September, I’d like to fly 17th from Atlanta to

Denver– *On I’d like to fly September 17th from Atlanta to

Denver

Page 11: LING 138/238 SYMBSYS 138 Intro to Computer Speech and Language Processing

04/22/23 LING 138/238 Autumn 2004 11

CFG Examples• S -> NP VP• NP -> Det NOMINAL• NOMINAL -> Noun• VP -> Verb• Det -> a• Noun -> flight• Verb -> left

Page 12: LING 138/238 SYMBSYS 138 Intro to Computer Speech and Language Processing

04/22/23 LING 138/238 Autumn 2004 12

CFGs• S -> NP VP

– This says that there are units called S, NP, and VP in this language

– That an S consists of an NP followed immediately by a VP

– Doesn’t say that that’s the only kind of S– Nor does it say that this is the only place

that NPs and VPs occur

Page 13: LING 138/238 SYMBSYS 138 Intro to Computer Speech and Language Processing

04/22/23 LING 138/238 Autumn 2004 13

Generativity• As with FSAs and FSTs you can view

these rules as either analysis or synthesis machines– Generate strings in the language– Reject strings not in the language– Impose structures (trees) on strings in

the language

Page 14: LING 138/238 SYMBSYS 138 Intro to Computer Speech and Language Processing

04/22/23 LING 138/238 Autumn 2004 14

Derivations• A derivation is a sequence of rules

applied to a string that accounts for that string– Covers all the elements in the string– Covers only the elements in the string

Page 15: LING 138/238 SYMBSYS 138 Intro to Computer Speech and Language Processing

04/22/23 LING 138/238 Autumn 2004 15

Derivations as Trees

Page 16: LING 138/238 SYMBSYS 138 Intro to Computer Speech and Language Processing

04/22/23 LING 138/238 Autumn 2004 16

Parsing• Parsing is the process of taking a

string and a grammar and returning a (many?) parse tree(s) for that string

Page 17: LING 138/238 SYMBSYS 138 Intro to Computer Speech and Language Processing

04/22/23 LING 138/238 Autumn 2004 17

Context?• The notion of context in CFGs has nothing to

do with the ordinary meaning of the word context in language.

• All it really means is that the non-terminal on the left-hand side of a rule is out there all by itself (free of context)A -> B CMeans that I can rewrite an A as a B

followed by a C regardless of the context in which A is found

Page 18: LING 138/238 SYMBSYS 138 Intro to Computer Speech and Language Processing

04/22/23 LING 138/238 Autumn 2004 18

Key Constituents (English)• Sentences• Noun phrases• Verb phrases• Prepositional phrases

Page 19: LING 138/238 SYMBSYS 138 Intro to Computer Speech and Language Processing

04/22/23 LING 138/238 Autumn 2004 19

Sentence-Types

• Declaratives: A plane leftS -> NP VP

• Imperatives: Leave!S -> VP

• Yes-No Questions: Did the plane leave?S -> Aux NP VP

• WH Questions: When did the plane leave?S -> WH Aux NP VP

Page 20: LING 138/238 SYMBSYS 138 Intro to Computer Speech and Language Processing

04/22/23 LING 138/238 Autumn 2004 20

NPs• NP -> Pronoun

– I came, you saw it, they conquered• NP -> Proper-Noun

– Los Angeles is west of Texas– John Hennesey is the president of Stanford

• NP -> Det Noun– The president

• NP -> Nominal• Nominal -> Noun Noun

– A morning flight to Denver

Page 21: LING 138/238 SYMBSYS 138 Intro to Computer Speech and Language Processing

04/22/23 LING 138/238 Autumn 2004 21

PPs• PP -> Preposition NP

– From LA– To Boston– On Tuesday– With lunch

Page 22: LING 138/238 SYMBSYS 138 Intro to Computer Speech and Language Processing

04/22/23 LING 138/238 Autumn 2004 22

Recursion• We’ll have to deal with rules such as

the following where the non-terminal on the left also appears somewhere on the right (directly).NP -> NP PP[[The flight] [to Boston]]VP -> VP PP[[departed Miami] [at noon]]

Page 23: LING 138/238 SYMBSYS 138 Intro to Computer Speech and Language Processing

04/22/23 LING 138/238 Autumn 2004 23

Recursion• Of course, this is what makes syntax interesting

flights from DenverFlights from Denver to MiamiFlights from Denver to Miami in FebruaryFlights from Denver to Miami in February on a FridayFlights from Denver to Miami in February on a Friday

under $300Flights from Denver to Miami in February on a Friday

under $300 with lunch

Page 24: LING 138/238 SYMBSYS 138 Intro to Computer Speech and Language Processing

04/22/23 LING 138/238 Autumn 2004 24

Recursion

• Of course, this is what makes syntax interesting[[flights] [from Denver]][[[Flights] [from Denver]] [to Miami]][[[[Flights] [from Denver]] [to Miami]] [in

February]][[[[[Flights] [from Denver]] [to Miami]] [in

February]] [on a Friday]]Etc.

Page 25: LING 138/238 SYMBSYS 138 Intro to Computer Speech and Language Processing

04/22/23 LING 138/238 Autumn 2004 25

Implications of recursion and context-freeness

• If you have a rule like– VP -> V NP

– It only cares that the thing after the verb is an NP. It doesn’t have to know about the internal affairs of that NP

Page 26: LING 138/238 SYMBSYS 138 Intro to Computer Speech and Language Processing

04/22/23 LING 138/238 Autumn 2004 26

The Point• VP -> V NP• I hate

flights from DenverFlights from Denver to MiamiFlights from Denver to Miami in FebruaryFlights from Denver to Miami in February on a FridayFlights from Denver to Miami in February on a Friday

under $300Flights from Denver to Miami in February on a Friday

under $300 with lunch

Page 27: LING 138/238 SYMBSYS 138 Intro to Computer Speech and Language Processing

04/22/23 LING 138/238 Autumn 2004 27

Bracketed Notation• [S [NP [PRO I] [VP [V prefer [NP [NP [Det a]

[Nom [N morning] [N flight]]]]

Page 28: LING 138/238 SYMBSYS 138 Intro to Computer Speech and Language Processing

04/22/23 LING 138/238 Autumn 2004 28

Coordination Constructions• S -> S and S

– John went to NY and Mary followed him• NP -> NP and NP• VP -> VP and VP• …• In fact the right rule for English is

X -> X and X

Page 29: LING 138/238 SYMBSYS 138 Intro to Computer Speech and Language Processing

04/22/23 LING 138/238 Autumn 2004 29

Problems• Agreement• Subcategorization• Movement (for want of a better term)

Page 30: LING 138/238 SYMBSYS 138 Intro to Computer Speech and Language Processing

04/22/23 LING 138/238 Autumn 2004 30

Agreement• This dog• Those dogs

• This dog eats• Those dogs eat

• *This dogs• *Those dog

• *This dog eat• *Those dogs eats

Page 31: LING 138/238 SYMBSYS 138 Intro to Computer Speech and Language Processing

04/22/23 LING 138/238 Autumn 2004 31

Possible CFG Solution• S -> NP VP• NP -> Det Nominal• VP -> V NP• …

• SgS -> SgNP SgVP• PlS -> PlNp PlVP• SgNP -> SgDet

SgNom• PlNP -> PlDet PlNom• PlVP -> PlV NP• SgVP ->SgV Np• …

Page 32: LING 138/238 SYMBSYS 138 Intro to Computer Speech and Language Processing

04/22/23 LING 138/238 Autumn 2004 32

CFG Solution for Agreement• It works and stays within the power

of CFGs• But its ugly• And it doesn’t scale all that well

Page 33: LING 138/238 SYMBSYS 138 Intro to Computer Speech and Language Processing

04/22/23 LING 138/238 Autumn 2004 33

Subcategorization• Sneeze: John sneezed• Find: Please find [a flight to NY]NP

• Give: Give [me]NP[a cheaper fare]NP

• Help: Can you help [me]NP[with a flight]PP

• Prefer: I prefer [to leave earlier]TO-VP

• Said: You said [United has a flight]S

• …

Page 34: LING 138/238 SYMBSYS 138 Intro to Computer Speech and Language Processing

04/22/23 LING 138/238 Autumn 2004 34

Subcategorization• *John sneezed the book• *I prefer United has a flight• *Give with a flight

• Subcat expresses the constraints that a predicate (verb for now) places on the number and syntactic types of arguments it wants to take (occur with).

Page 35: LING 138/238 SYMBSYS 138 Intro to Computer Speech and Language Processing

04/22/23 LING 138/238 Autumn 2004 35

So?

• So the various rules for VPs overgenerate.– They permit the presence of strings

containing verbs and arguments that don’t go together

– For example– VP -> V NP therefore

Sneezed the book is a VP since “sneeze” is a verb and “the book” is a valid NP

Page 36: LING 138/238 SYMBSYS 138 Intro to Computer Speech and Language Processing

04/22/23 LING 138/238 Autumn 2004 36

Subcategorization• Sneeze: John sneezed• Find: Please find [a flight to NY]NP

• Give: Give [me]NP[a cheaper fare]NP

• Help: Can you help [me]NP[with a flight]PP

• Prefer: I prefer [to leave earlier]TO-VP

• Told: I was told [United has a flight]S

• …

Page 37: LING 138/238 SYMBSYS 138 Intro to Computer Speech and Language Processing

04/22/23 LING 138/238 Autumn 2004 37

Forward Pointer• It turns out that verb

subcategorization facts will provide a key element for semantic analysis (determining who did what to who in an event).

Page 38: LING 138/238 SYMBSYS 138 Intro to Computer Speech and Language Processing

04/22/23 LING 138/238 Autumn 2004 38

Possible CFG Solution• VP -> V• VP -> V NP• VP -> V NP PP• …

• VP -> IntransV• VP -> TransV NP• VP -> TransPP NP PP• …

Page 39: LING 138/238 SYMBSYS 138 Intro to Computer Speech and Language Processing

04/22/23 LING 138/238 Autumn 2004 39

Movement• Core example

– My travel agent booked the flight

Page 40: LING 138/238 SYMBSYS 138 Intro to Computer Speech and Language Processing

04/22/23 LING 138/238 Autumn 2004 40

Movement

• Core example– [[My travel agent]NP [booked [the

flight]NP]VP]S

• I.e. “book” is a straightforward transitive verb. It expects a single NP arg within the VP as an argument, and a single NP arg as the subject.

Page 41: LING 138/238 SYMBSYS 138 Intro to Computer Speech and Language Processing

04/22/23 LING 138/238 Autumn 2004 41

Movement• What about?

– Which flight do you want me to have the travel agent book?

• The direct object argument to “book” isn’t appearing in the right place. It is in fact a long way from where its supposed to appear.

• And note that its separated from its verb by 2 other verbs.

Page 42: LING 138/238 SYMBSYS 138 Intro to Computer Speech and Language Processing

04/22/23 LING 138/238 Autumn 2004 42

CFGs: a summary• CFGs appear to be just about what we need

to account for a lot of basic syntactic structure in English.

• But there are problems– That can be dealt with adequately, although not

elegantly, by staying within the CFG framework.• There are simpler, more elegant, solutions

that take us out of the CFG framework (beyond its formal power)

• Syntactic theories: HPSG, LFG, CCG, Minimalism, etc

Page 43: LING 138/238 SYMBSYS 138 Intro to Computer Speech and Language Processing

04/22/23 LING 138/238 Autumn 2004 43

Other Syntactic stuff• Grammatical Relations

– Subject• I booked a flight to New York• The flight was booked by my agent.

– Object• I booked a flight to New York

– Complement• I said that I wanted to leave

Page 44: LING 138/238 SYMBSYS 138 Intro to Computer Speech and Language Processing

04/22/23 LING 138/238 Autumn 2004 44

Dependency Parsing• Word to word links instead of constituency• Based on the European rather than

American traditions• But dates back to the Greeks• The original notions of Subject, Object and

the progenitor of subcategorization (called ‘valence’) came out of Dependency theory.

• Dependency parsing is quite popular as a computational model

• Since relationships between words are quite useful

Page 45: LING 138/238 SYMBSYS 138 Intro to Computer Speech and Language Processing

04/22/23 LING 138/238 Autumn 2004 45

Parsing• Parsing: assigning correct trees to

input strings• Correct tree: a tree that covers all

and only the elements of the input and has an S at the top

• For now: enumerate all possible trees– A further task: disambiguation: means

choosing the correct tree from among all the possible trees.

Page 46: LING 138/238 SYMBSYS 138 Intro to Computer Speech and Language Processing

04/22/23 LING 138/238 Autumn 2004 46

Parsing• The Link Grammar parser

– http://www.link.cs.cmu.edu/cgi-bin/link/construct-page-4.cgi - submit

• The Connexor dependency parser– http://www.connexor.com/demos/syntax_e

n.html

Page 47: LING 138/238 SYMBSYS 138 Intro to Computer Speech and Language Processing

04/22/23 LING 138/238 Autumn 2004 47

Treebanks• Parsed corpora in the form of trees• Examples:

Page 48: LING 138/238 SYMBSYS 138 Intro to Computer Speech and Language Processing

04/22/23 LING 138/238 Autumn 2004 48

Parsed Corpora: Treebanks• The Penn Treebank

– The Brown corpus– The WSJ corpus

• Tgrep– http://www.ldc.upenn.

edu/ldc/online/treebank/

Page 49: LING 138/238 SYMBSYS 138 Intro to Computer Speech and Language Processing

04/22/23 LING 138/238 Autumn 2004 49

Parsing

• As with everything of interest, parsing involves a search which involves the making of choices

• We’ll start with some basic (meaning bad) methods before moving on to the one or two that you need to know

Page 50: LING 138/238 SYMBSYS 138 Intro to Computer Speech and Language Processing

04/22/23 LING 138/238 Autumn 2004 50

For Now

• Assume…– You have all the words already in some

buffer– The input isn’t pos tagged– We won’t worry about morphological

analysis– All the words are known

Page 51: LING 138/238 SYMBSYS 138 Intro to Computer Speech and Language Processing

04/22/23 LING 138/238 Autumn 2004 51

Top-Down Parsing• Since we’re trying to find trees rooted

with an S (Sentences) start with the rules that give us an S.

• Then work your way down from there to the words.

Page 52: LING 138/238 SYMBSYS 138 Intro to Computer Speech and Language Processing

04/22/23 LING 138/238 Autumn 2004 52

Top Down Space

Page 53: LING 138/238 SYMBSYS 138 Intro to Computer Speech and Language Processing

04/22/23 LING 138/238 Autumn 2004 53

Bottom-Up Parsing• Of course, we also want trees that

cover the input words. So start with trees that link up with the words in the right way.

• Then work your way up from there.

Page 54: LING 138/238 SYMBSYS 138 Intro to Computer Speech and Language Processing

04/22/23 LING 138/238 Autumn 2004 54

Bottom-Up Space

Page 55: LING 138/238 SYMBSYS 138 Intro to Computer Speech and Language Processing

04/22/23 LING 138/238 Autumn 2004 55

Control• Of course, in both cases we left out

how to keep track of the search space and how to make choices– Which node to try to expand next– Which grammar rule to use to expand a

node

Page 56: LING 138/238 SYMBSYS 138 Intro to Computer Speech and Language Processing

04/22/23 LING 138/238 Autumn 2004 56

Top-Down, Depth-First, Left-to-Right Search

Page 57: LING 138/238 SYMBSYS 138 Intro to Computer Speech and Language Processing

04/22/23 LING 138/238 Autumn 2004 57

Example

Page 58: LING 138/238 SYMBSYS 138 Intro to Computer Speech and Language Processing

04/22/23 LING 138/238 Autumn 2004 58

Example

Page 59: LING 138/238 SYMBSYS 138 Intro to Computer Speech and Language Processing

04/22/23 LING 138/238 Autumn 2004 59

Example

Page 60: LING 138/238 SYMBSYS 138 Intro to Computer Speech and Language Processing

04/22/23 LING 138/238 Autumn 2004 60

Control• Does this sequence make any sense?

Page 61: LING 138/238 SYMBSYS 138 Intro to Computer Speech and Language Processing

04/22/23 LING 138/238 Autumn 2004 61

Top-Down and Bottom-Up• Top-down

– Only searches for trees that can be answers (i.e. S’s)

– But also suggests trees that are not consistent with the words

• Bottom-up– Only forms trees consistent with the

words– Suggest trees that make no sense

globally

Page 62: LING 138/238 SYMBSYS 138 Intro to Computer Speech and Language Processing

04/22/23 LING 138/238 Autumn 2004 62

So Combine Them• There are a million ways to combine

top-down expectations with bottom-up data to get more efficient searches

• Most use one kind as the control and the other as a filter– As in top-down parsing with bottom-up

filtering

Page 63: LING 138/238 SYMBSYS 138 Intro to Computer Speech and Language Processing

04/22/23 LING 138/238 Autumn 2004 63

Bottom-Up Filtering