CKY Algorithm, Chomsky Normal Form - University of...

Post on 08-Jan-2019

231 views 0 download

Transcript of CKY Algorithm, Chomsky Normal Form - University of...

Brief reviewCKY algorithm

Chomsky Normal Form (CNF)Homework2

CKY Algorithm, Chomsky Normal Form

Scott FarrarCLMA, University of Washington

January 13, 2010

Scott Farrar CLMA, University of Washington CKY Algorithm, Chomsky Normal Form

Brief reviewCKY algorithm

Chomsky Normal Form (CNF)Homework2

Today’s lecture

1 Brief review

2 CKY algorithm

3 Chomsky Normal Form (CNF)

4 Homework2

Scott Farrar CLMA, University of Washington CKY Algorithm, Chomsky Normal Form

Brief reviewCKY algorithm

Chomsky Normal Form (CNF)Homework2

Parsing strategies

Name one reason why bottom-up parsing is inefficient?

The [search for Spock] was successful.

And for top-down?Which would you like?That one.

And what makes naive search so inefficient?There’s no way to store intermediate solutions.

Scott Farrar CLMA, University of Washington CKY Algorithm, Chomsky Normal Form

Brief reviewCKY algorithm

Chomsky Normal Form (CNF)Homework2

Parsing strategies

Name one reason why bottom-up parsing is inefficient?The [search for Spock] was successful.

And for top-down?Which would you like?That one.

And what makes naive search so inefficient?There’s no way to store intermediate solutions.

Scott Farrar CLMA, University of Washington CKY Algorithm, Chomsky Normal Form

Brief reviewCKY algorithm

Chomsky Normal Form (CNF)Homework2

Parsing strategies

Name one reason why bottom-up parsing is inefficient?The [search for Spock] was successful.

And for top-down?

Which would you like?That one.

And what makes naive search so inefficient?There’s no way to store intermediate solutions.

Scott Farrar CLMA, University of Washington CKY Algorithm, Chomsky Normal Form

Brief reviewCKY algorithm

Chomsky Normal Form (CNF)Homework2

Parsing strategies

Name one reason why bottom-up parsing is inefficient?The [search for Spock] was successful.

And for top-down?Which would you like?That one.

And what makes naive search so inefficient?There’s no way to store intermediate solutions.

Scott Farrar CLMA, University of Washington CKY Algorithm, Chomsky Normal Form

Brief reviewCKY algorithm

Chomsky Normal Form (CNF)Homework2

Parsing strategies

Name one reason why bottom-up parsing is inefficient?The [search for Spock] was successful.

And for top-down?Which would you like?That one.

And what makes naive search so inefficient?

There’s no way to store intermediate solutions.

Scott Farrar CLMA, University of Washington CKY Algorithm, Chomsky Normal Form

Brief reviewCKY algorithm

Chomsky Normal Form (CNF)Homework2

Parsing strategies

Name one reason why bottom-up parsing is inefficient?The [search for Spock] was successful.

And for top-down?Which would you like?That one.

And what makes naive search so inefficient?There’s no way to store intermediate solutions.

Scott Farrar CLMA, University of Washington CKY Algorithm, Chomsky Normal Form

Brief reviewCKY algorithm

Chomsky Normal Form (CNF)Homework2

CKY algorithm

Cocke-Kasami-Younger (CKY) algorithm: a fast bottom-up parsingalgorithm that avoids some of the inefficiency associated withpurely naive search with the same bottom-up strategy.

Intermediate solutions are stored.

Only intermediate solutions that contribute to a full parse arefurther pursued.

The CKY is picky about what type of grammar it accepts.

We require that our grammar be in a special form, known asChomsky Normal Form (CNF).

The rationale is to fill in a chart with the solutions to thesubproblems encountered in the bottom-up parsing process.

Scott Farrar CLMA, University of Washington CKY Algorithm, Chomsky Normal Form

Brief reviewCKY algorithm

Chomsky Normal Form (CNF)Homework2

CKY algorithm

Cocke-Kasami-Younger (CKY) algorithm: a fast bottom-up parsingalgorithm that avoids some of the inefficiency associated withpurely naive search with the same bottom-up strategy.

Intermediate solutions are stored.

Only intermediate solutions that contribute to a full parse arefurther pursued.

The CKY is picky about what type of grammar it accepts.

We require that our grammar be in a special form, known asChomsky Normal Form (CNF).

The rationale is to fill in a chart with the solutions to thesubproblems encountered in the bottom-up parsing process.

Scott Farrar CLMA, University of Washington CKY Algorithm, Chomsky Normal Form

Brief reviewCKY algorithm

Chomsky Normal Form (CNF)Homework2

CKY algorithm

Cocke-Kasami-Younger (CKY) algorithm: a fast bottom-up parsingalgorithm that avoids some of the inefficiency associated withpurely naive search with the same bottom-up strategy.

Intermediate solutions are stored.

Only intermediate solutions that contribute to a full parse arefurther pursued.

The CKY is picky about what type of grammar it accepts.

We require that our grammar be in a special form, known asChomsky Normal Form (CNF).

The rationale is to fill in a chart with the solutions to thesubproblems encountered in the bottom-up parsing process.

Scott Farrar CLMA, University of Washington CKY Algorithm, Chomsky Normal Form

Brief reviewCKY algorithm

Chomsky Normal Form (CNF)Homework2

CKY algorithm

Cocke-Kasami-Younger (CKY) algorithm: a fast bottom-up parsingalgorithm that avoids some of the inefficiency associated withpurely naive search with the same bottom-up strategy.

Intermediate solutions are stored.

Only intermediate solutions that contribute to a full parse arefurther pursued.

The CKY is picky about what type of grammar it accepts.

We require that our grammar be in a special form, known asChomsky Normal Form (CNF).

The rationale is to fill in a chart with the solutions to thesubproblems encountered in the bottom-up parsing process.

Scott Farrar CLMA, University of Washington CKY Algorithm, Chomsky Normal Form

Brief reviewCKY algorithm

Chomsky Normal Form (CNF)Homework2

CKY algorithm

Cocke-Kasami-Younger (CKY) algorithm: a fast bottom-up parsingalgorithm that avoids some of the inefficiency associated withpurely naive search with the same bottom-up strategy.

Intermediate solutions are stored.

Only intermediate solutions that contribute to a full parse arefurther pursued.

The CKY is picky about what type of grammar it accepts.

We require that our grammar be in a special form, known asChomsky Normal Form (CNF).

The rationale is to fill in a chart with the solutions to thesubproblems encountered in the bottom-up parsing process.

Scott Farrar CLMA, University of Washington CKY Algorithm, Chomsky Normal Form

Brief reviewCKY algorithm

Chomsky Normal Form (CNF)Homework2

CKY algorithm

Cocke-Kasami-Younger (CKY) algorithm: a fast bottom-up parsingalgorithm that avoids some of the inefficiency associated withpurely naive search with the same bottom-up strategy.

Intermediate solutions are stored.

Only intermediate solutions that contribute to a full parse arefurther pursued.

The CKY is picky about what type of grammar it accepts.

We require that our grammar be in a special form, known asChomsky Normal Form (CNF).

The rationale is to fill in a chart with the solutions to thesubproblems encountered in the bottom-up parsing process.

Scott Farrar CLMA, University of Washington CKY Algorithm, Chomsky Normal Form

Brief reviewCKY algorithm

Chomsky Normal Form (CNF)Homework2

CKY algorithm

Cocke-Kasami-Younger (CKY) algorithm: a fast bottom-up parsingalgorithm that avoids some of the inefficiency associated withpurely naive search with the same bottom-up strategy.

Intermediate solutions are stored.

Only intermediate solutions that contribute to a full parse arefurther pursued.

The CKY is picky about what type of grammar it accepts.

We require that our grammar be in a special form, known asChomsky Normal Form (CNF).

The rationale is to fill in a chart with the solutions to thesubproblems encountered in the bottom-up parsing process.

Scott Farrar CLMA, University of Washington CKY Algorithm, Chomsky Normal Form

Brief reviewCKY algorithm

Chomsky Normal Form (CNF)Homework2

Dynamic programming

Definition

Dynamic programming: a method of reducing the runtime ofalgorithms by discovering solutions to subproblems along the wayto the solution of the main problem; to optimally plan amulti-stage process

good for problems with overlapping subproblems

generally involves the caching of partial results in a table forlater retrieval

many application (outside of NLP)

What are the subproblems for the parsing task?

Scott Farrar CLMA, University of Washington CKY Algorithm, Chomsky Normal Form

Brief reviewCKY algorithm

Chomsky Normal Form (CNF)Homework2

Well-formed substring table (WFST)

Definition

A well-formed substring table is a data structure containing partialconstituency structures. It may be represented as either a chart ora graph.

Scott Farrar CLMA, University of Washington CKY Algorithm, Chomsky Normal Form

Brief reviewCKY algorithm

Chomsky Normal Form (CNF)Homework2

Well-formed substring table (WFST)

Example

the brown dog

NP → DT Nom, Nom→ JJ NN, DT → the, etc.

the brown dog

DT1 NP5

JJ2 Nom4

NN3

Numbers indicate order in which symbol was enterred into table.

Scott Farrar CLMA, University of Washington CKY Algorithm, Chomsky Normal Form

Brief reviewCKY algorithm

Chomsky Normal Form (CNF)Homework2

Setting up the CKY algorithm

1 For an input of length=n, create a matrix (n + 1 x n + 1),indexed from 0 to n.

2 Each cell in the matrix [i , j ] is the set of all categories ofconstituents spanning from position i to j .

3 The algorithm forces you to fill in the table in the mostefficient way.

4 Process cells left to right (across columns), bottom to top(backwards across rows).

Scott Farrar CLMA, University of Washington CKY Algorithm, Chomsky Normal Form

Brief reviewCKY algorithm

Chomsky Normal Form (CNF)Homework2

Well-formed substring table (WFST)

Example

the brown dog

NP → DT Nom, Nom→ JJ NN, DT → the, etc.

the brown dog

DT1 NP5

JJ2 Nom4

NN3

Numbers indicate order in which symbol was enterred into table.

Scott Farrar CLMA, University of Washington CKY Algorithm, Chomsky Normal Form

Brief reviewCKY algorithm

Chomsky Normal Form (CNF)Homework2

CKY: assumptions

Critical observation: any portion of the input string spanning i toj can be split at k , and structure can then be built usingsub-solutions spanning i to k and sub-solutions spanning k to j .

Example

•0 the •1 brown •2 dog •3

k = 1: possible constituents are [0,1] and [1,3]

k = 2: possible constituents are [0,2] and [2,3]

Scott Farrar CLMA, University of Washington CKY Algorithm, Chomsky Normal Form

Brief reviewCKY algorithm

Chomsky Normal Form (CNF)Homework2

Simple grammar

S → NP VBZ DT → theS → NP VP NN → chefVP → VP PP NNS → fishVP → VBZ NP NNS → chopsticksVP → VBZ PP VBP → fishVP → VBZ NNS VBZ → eatsVP → VBZ VP IN → withVP → VBP NPVP → VBP PPNP → DT NNNP → DT NNSPP → IN NP

•0 the •1 chef •2 eats •3 fish •4 with •5 the •6 chopsticks •7Scott Farrar CLMA, University of Washington CKY Algorithm, Chomsky Normal Form

Brief reviewCKY algorithm

Chomsky Normal Form (CNF)Homework2

0 1 2 3 4 5 6 7

0

1

2

3

4

5

6Build an n+1 x n+1 matrix, where n = number of words in input

Scott Farrar CLMA, University of Washington CKY Algorithm, Chomsky Normal Form

Brief reviewCKY algorithm

Chomsky Normal Form (CNF)Homework2

the chef eats fish with the chopsticks0 1 2 3 4 5 6 7

0 [0,1]

1 [1,2]

2 [2,3]

3 [3,4]

4 [4,5]

5 [5,6]

6 [6,7]

Illustrate the numbering of cells: [i,j]’s represent spans.

Scott Farrar CLMA, University of Washington CKY Algorithm, Chomsky Normal Form

Brief reviewCKY algorithm

Chomsky Normal Form (CNF)Homework2

the chef eats fish with the chopsticks0 1 2 3 4 5 6 7

0

1 [1,2]

2

3

4

5

6

Notice how the spans (e.g, [1,2]) differ from the word indices (e.g, ‘chef’, 2).

Scott Farrar CLMA, University of Washington CKY Algorithm, Chomsky Normal Form

Brief reviewCKY algorithm

Chomsky Normal Form (CNF)Homework2

the chef eats fish with the chopsticks0 1 2 3 4 5 6 7

0 DT[0,1]

1 [1,2]

2 [2,3]

3 [3,4]

4 [4,5]

5 [5,6]

6 [6,7]‘the’ is labelled DT

Scott Farrar CLMA, University of Washington CKY Algorithm, Chomsky Normal Form

Brief reviewCKY algorithm

Chomsky Normal Form (CNF)Homework2

the chef eats fish with the chopsticks0 1 2 3 4 5 6 7

0 DT[0,1]

1 NN [1,2]

2 [2,3]

3 [3,4]

4 [4,5]

5 [5,6]

6 [6,7]‘chef’ is labelled NN

Scott Farrar CLMA, University of Washington CKY Algorithm, Chomsky Normal Form

Brief reviewCKY algorithm

Chomsky Normal Form (CNF)Homework2

the chef eats fish with the chopsticks0 1 2 3 4 5 6 7

0DT[0,1]

NP [0,2]

1NN [1,2]

2 [2,3]

3 [3,4]

4 [4,5]

5 [5,6]

6 [6,7]

Found an NP: [0,1], [1,2]

Scott Farrar CLMA, University of Washington CKY Algorithm, Chomsky Normal Form

Brief reviewCKY algorithm

Chomsky Normal Form (CNF)Homework2

the chef eats fish with the chopsticks0 1 2 3 4 5 6 7

0 DT[0,1]

NP [0,2]

1 NN [1,2]

2 VBZ[2,3]

3 [3,4]

4 [4,5]

5 [5,6]

6 [6,7]‘eats’ is labelled VBZ

Scott Farrar CLMA, University of Washington CKY Algorithm, Chomsky Normal Form

Brief reviewCKY algorithm

Chomsky Normal Form (CNF)Homework2

the chef eats fish with the chopsticks0 1 2 3 4 5 6 7

0 DT[0,1] NP [0,2] S [0,3]

1 NN [1,2]

2VBZ[2,3]

3 [3,4]

4 [4,5]

5 [5,6]

6 [6,7]

Found an S: [0,2],[2,3]

Scott Farrar CLMA, University of Washington CKY Algorithm, Chomsky Normal Form

Brief reviewCKY algorithm

Chomsky Normal Form (CNF)Homework2

the chef eats fish with the chopsticks0 1 2 3 4 5 6 7

0 DT[0,1]

NP [0,2] S [0,3]

1 NN [1,2]

2 VBZ[2,3]

3 NNS[3,4]

4 [4,5]

5 [5,6]

6 [6,7]‘fish’ is labelled NNS

Scott Farrar CLMA, University of Washington CKY Algorithm, Chomsky Normal Form

Brief reviewCKY algorithm

Chomsky Normal Form (CNF)Homework2

the chef eats fish with the chopsticks0 1 2 3 4 5 6 7

0 DT[0,1]

NP [0,2] S [0,3]

1 NN [1,2]

2 VBZ[2,3]

3 NNS,VBP[3,4]

4 [4,5]

5 [5,6]

6 [6,7]‘fish’ is labelled VBP

Scott Farrar CLMA, University of Washington CKY Algorithm, Chomsky Normal Form

Brief reviewCKY algorithm

Chomsky Normal Form (CNF)Homework2

the chef eats fish with the chopsticks0 1 2 3 4 5 6 7

0 DT[0,1]

NP [0,2] S [0,3]

1 NN [1,2]

2VBZ[2,3]

VP [2,4]

3NNS,VBP[3,4]

4 [4,5]

5 [5,6]

6 [6,7]

Found a VP: [2,3], [3,4]

Scott Farrar CLMA, University of Washington CKY Algorithm, Chomsky Normal Form

Brief reviewCKY algorithm

Chomsky Normal Form (CNF)Homework2

the chef eats fish with the chopsticks0 1 2 3 4 5 6 7

0 DT[0,1] NP [0,2]

S [0,3]S [0,4]

1 NN [1,2]

2 VBZ[2,3] VP [2,4]

3 NNS,VBP[3,4]

4 [4,5]

5 [5,6]

6 [6,7]

Found an S: [0,2],[2,4]

Scott Farrar CLMA, University of Washington CKY Algorithm, Chomsky Normal Form

Brief reviewCKY algorithm

Chomsky Normal Form (CNF)Homework2

the chef eats fish with the chopsticks0 1 2 3 4 5 6 7

0 DT[0,1]

NP [0,2] S [0,3] S [0,4]

1 NN [1,2]

2 VBZ[2,3]

VP [2,4]

3 NNS,VBP[3,4]

4 IN [4,5]

5 [5,6]

6 [6,7]‘with’ is labelled IN

Scott Farrar CLMA, University of Washington CKY Algorithm, Chomsky Normal Form

Brief reviewCKY algorithm

Chomsky Normal Form (CNF)Homework2

the chef eats fish with the chopsticks0 1 2 3 4 5 6 7

0 DT[0,1]

NP [0,2] S [0,3] S [0,4]

1 NN [1,2]

2 VBZ[2,3]

VP [2,4]

3 NNS,VBP[3,4]

4 IN [4,5]

5 DT [5,6]

6 [6,7]‘the’ is labelled DT

Scott Farrar CLMA, University of Washington CKY Algorithm, Chomsky Normal Form

Brief reviewCKY algorithm

Chomsky Normal Form (CNF)Homework2

the chef eats fish with the chopsticks0 1 2 3 4 5 6 7

0 DT[0,1]

NP [0,2] S [0,3] S [0,4]

1 NN [1,2]

2 VBZ[2,3]

VP [2,4]

3 NNS,VBP[3,4]

4 IN [4,5]

5 DT [5,6]

6 NNS[6,7]

‘chopsticks’ is labelled NNS

Scott Farrar CLMA, University of Washington CKY Algorithm, Chomsky Normal Form

Brief reviewCKY algorithm

Chomsky Normal Form (CNF)Homework2

the chef eats fish with the chopsticks0 1 2 3 4 5 6 7

0 DT[0,1]

NP [0,2] S [0,3] S [0,4]

1 NN [1,2]

2 VBZ[2,3]

VP [2,4]

3 NNS,VBP[3,4]

4 IN [4,5]

5DT [5,6] NP [5,7]

6NNS[6,7]

Found an NP: [5,6], [6,7]

Scott Farrar CLMA, University of Washington CKY Algorithm, Chomsky Normal Form

Brief reviewCKY algorithm

Chomsky Normal Form (CNF)Homework2

the chef eats fish with the chopsticks0 1 2 3 4 5 6 7

0 DT[0,1]

NP [0,2] S [0,3] S [0,4]

1 NN [1,2]

2 VBZ[2,3]

VP [2,4]

3 NNS,VBP[3,4]

4IN [4,5] PP [4,7]

5 DT [5,6]NP [5,7]

6 NNS[6,7]

Found a PP: [4,5],[5,7]

Scott Farrar CLMA, University of Washington CKY Algorithm, Chomsky Normal Form

Brief reviewCKY algorithm

Chomsky Normal Form (CNF)Homework2

the chef eats fish with the chopsticks0 1 2 3 4 5 6 7

0 DT[0,1]

NP [0,2] S [0,3] S [0,4]

1 NN [1,2]

2 VBZ[2,3]

VP [2,4]

3 NNS,VBP[3,4] VP [3,7]

4 IN [4,5]PP [4,7]

5 DT [5,6] NP [5,7]

6 NNS[6,7]

Found a VP: [3,4], [4,7]

Scott Farrar CLMA, University of Washington CKY Algorithm, Chomsky Normal Form

Brief reviewCKY algorithm

Chomsky Normal Form (CNF)Homework2

the chef eats fish with the chopsticks0 1 2 3 4 5 6 7

0 DT[0,1]

NP [0,2] S [0,3] S [0,4]

1 NN [1,2]

2VBZ[2,3]

VP [2,4]VP [2,7]

3 NNS,VBP[3,4] VP [3,7]

4 IN [4,5] PP [4,7]

5 DT [5,6] NP [5,7]

6 NNS[6,7]

Found a VP: [2,3],[3,7]

Scott Farrar CLMA, University of Washington CKY Algorithm, Chomsky Normal Form

Brief reviewCKY algorithm

Chomsky Normal Form (CNF)Homework2

the chef eats fish with the chopsticks0 1 2 3 4 5 6 7

0 DT[0,1]

NP [0,2] S [0,3] S [0,4]

1 NN [1,2]

2 VBZ[2,3] VP [2,4]

VP1, VP2

[2,7]

3 NNS,VBP[3,4]

VP [3,7]

4 IN [4,5]PP [4,7]

5 DT [5,6] NP [5,7]

6 NNS[6,7]

Found another VP: [2,4],[4,7]

Scott Farrar CLMA, University of Washington CKY Algorithm, Chomsky Normal Form

Brief reviewCKY algorithm

Chomsky Normal Form (CNF)Homework2

the chef eats fish with the chopsticks0 1 2 3 4 5 6 7

0 DT[0,1] NP [0,2]

S [0,3] S [0,4]S [0,7]

1 NN [1,2]

2 VBZ[2,3]

VP [2,4]VP1, VP2

[2,7]

3 NNS,VBP[3,4]

VP [3,7]

4 IN [4,5] PP [4,7]

5 DT [5,6] NP [5,7]

6 NNS[6,7]

Found an S node: [0,2] [2,7]

Scott Farrar CLMA, University of Washington CKY Algorithm, Chomsky Normal Form

Brief reviewCKY algorithm

Chomsky Normal Form (CNF)Homework2

the chef eats fish with the chopsticks0 1 2 3 4 5 6 7

0 DT[0,1] NP [0,2]

S [0,3] S [0,4] S1, S2

[0,7]

1 NN [1,2]

2 VBZ[2,3]

VP [2,4] VP1, VP2

[2,7]

3 NNS,VBP[3,4]

VP [3,7]

4 IN [4,5] PP [4,7]

5 DT [5,6] NP [5,7]

6 NNS[6,7]

Found a second S node: also [0,2] [2,7]

Recognition algorithm returns True when a root node is found in [0,n]

Scott Farrar CLMA, University of Washington CKY Algorithm, Chomsky Normal Form

Brief reviewCKY algorithm

Chomsky Normal Form (CNF)Homework2

the chef eats fish with the chopsticks0 1 2 3 4 5 6 7

0 DT[0,1] NP [0,2]

S [0,3] S [0,4] S1, S2

[0,7]

1 NN [1,2]

2 VBZ[2,3]

VP [2,4] VP1, VP2

[2,7]

3 NNS,VBP[3,4]

VP [3,7]

4 IN [4,5] PP [4,7]

5 DT [5,6] NP [5,7]

6 NNS[6,7]

Found a second S node: also [0,2] [2,7]Recognition algorithm returns True when a root node is found in [0,n]

Scott Farrar CLMA, University of Washington CKY Algorithm, Chomsky Normal Form

Brief reviewCKY algorithm

Chomsky Normal Form (CNF)Homework2

The CKY Algorithm (recognition)

function CKY-Parse (words, grammar) returns table

for j ← 1 to length(words) do: (loop over columns)

table[j-1,j] ← {A|A→ words[j] ∈ grammar} (add POS)

for i ← j-2 downto 0 do: (loop over rows, backwards)

for k ← i+1 to j-1 do: (loop over contents of cell)

table[i,j] ← table[i,j] ∪

{A|A→ B C ∈ grammar ,

B ∈ table[i,k]

C ∈ table[k,j] }

Scott Farrar CLMA, University of Washington CKY Algorithm, Chomsky Normal Form

Brief reviewCKY algorithm

Chomsky Normal Form (CNF)Homework2

CKY recognition vs. parsing

Returning the full parse requires storing more in a cell thanjust a node label.

We also require back-pointers to constituents of that node.

We could also store whole trees, but less space efficient.

For parsing, we must add an extra step to the algorithm:

follow pointers and return the parse

Scott Farrar CLMA, University of Washington CKY Algorithm, Chomsky Normal Form

Brief reviewCKY algorithm

Chomsky Normal Form (CNF)Homework2

CKY recognition vs. parsing

Returning the full parse requires storing more in a cell thanjust a node label.

We also require back-pointers to constituents of that node.

We could also store whole trees, but less space efficient.

For parsing, we must add an extra step to the algorithm:follow pointers and return the parse

Scott Farrar CLMA, University of Washington CKY Algorithm, Chomsky Normal Form

Brief reviewCKY algorithm

Chomsky Normal Form (CNF)Homework2

The CKY Algorithm (parsing)

function CKY-Parse (words, grammar) returns parses

for j ← 1 to length(words) do: (loop over columns)

table[j-1,j] ← for all {A|A→ words[j] ∈ grammar} (add all POS)

for i ← j-2 downto 0 do: (loop over rows, backwards)

for k ← i+1 to j-1 do: (loop over contents of cell)

for all {A|A→ B C}: (all productions)

back[i,j,A] ← { k,B,C } (add back pointer)

return buildtree(back[1, length(words,S]), table[1,LENGTH(words),S](follow back pointer)

Scott Farrar CLMA, University of Washington CKY Algorithm, Chomsky Normal Form

Brief reviewCKY algorithm

Chomsky Normal Form (CNF)Homework2

Issues with CKY

Efficiency

The CKY can be performed in cubic time: O(n3), wheren=number of words in sentence.

The complexity of the inner most loop is bounded by thesquare of the number of non-terminals.

The more rules, the less efficient; but this increases at aconstant rate L = r2 where r is the number of non-terminals.

Scott Farrar CLMA, University of Washington CKY Algorithm, Chomsky Normal Form

Brief reviewCKY algorithm

Chomsky Normal Form (CNF)Homework2

Issues with CKY

Grammar requirements

The basic algoritm requires a binary grammar, in fact agrammar in Chomsky Normal Form.

Basic algorithm can be extended to account for arbitraryCFGs.

However, transforming a grammar into a CNF grammar iseasier and more efficient than parsing with an arbitrarygrammar.

Later, we’ll look at the Earley Algorithm for parsing arbitraryCFGs.

Scott Farrar CLMA, University of Washington CKY Algorithm, Chomsky Normal Form

Brief reviewCKY algorithm

Chomsky Normal Form (CNF)Homework2

Binary tree

Scott Farrar CLMA, University of Washington CKY Algorithm, Chomsky Normal Form

Brief reviewCKY algorithm

Chomsky Normal Form (CNF)Homework2

Chomsky Normal Form grammar

Definition

CNF grammar: a context-free grammar where the RHS of eachproduction rule is restricted to be either two non-terminals or oneterminal, and no empty productions are allowed.

There can be:

no mixed rules (NP → the NN)

no unit productions (NP → NNP), except for NN → dog

no right hand sides of more than two non-terminals(VP → VBZ NP PP).

Scott Farrar CLMA, University of Washington CKY Algorithm, Chomsky Normal Form

Brief reviewCKY algorithm

Chomsky Normal Form (CNF)Homework2

Grammar equivalence

Any CFG can be converted to a weakly equivalent grammar inCNF.

Definition

Weak equivalence: Two grammars are weakly equivalent if theygenerate the same set of strings (sentences). Transforming agrammar to CNF results in a new grammar that is weaklyequivalent.

Definition

Strong equivalence: Two grammars are strongly equivalent if theygenerate the same set of strings AND the same structures overthose strings. If only the variable names are diff. then the grammarare said to be isomorphic.

Scott Farrar CLMA, University of Washington CKY Algorithm, Chomsky Normal Form

Brief reviewCKY algorithm

Chomsky Normal Form (CNF)Homework2

Grammar equivalence

Any CFG can be converted to a weakly equivalent grammar inCNF.

Definition

Weak equivalence: Two grammars are weakly equivalent if theygenerate the same set of strings (sentences). Transforming agrammar to CNF results in a new grammar that is weaklyequivalent.

Definition

Strong equivalence: Two grammars are strongly equivalent if theygenerate the same set of strings AND the same structures overthose strings. If only the variable names are diff. then the grammarare said to be isomorphic.

Scott Farrar CLMA, University of Washington CKY Algorithm, Chomsky Normal Form

Brief reviewCKY algorithm

Chomsky Normal Form (CNF)Homework2

Grammar equivalence

Any CFG can be converted to a weakly equivalent grammar inCNF.

Definition

Weak equivalence: Two grammars are weakly equivalent if theygenerate the same set of strings (sentences). Transforming agrammar to CNF results in a new grammar that is weaklyequivalent.

Definition

Strong equivalence: Two grammars are strongly equivalent if theygenerate the same set of strings AND the same structures overthose strings. If only the variable names are diff. then the grammarare said to be isomorphic.

Scott Farrar CLMA, University of Washington CKY Algorithm, Chomsky Normal Form

Brief reviewCKY algorithm

Chomsky Normal Form (CNF)Homework2

Symbol naming conventions

Use new symbols (binarization): X 1, X 2, . . . , Y 3S → NP VP PUNC becomes:S → NP X 1, X 1→ VP PUNC

Delete a symbol (unary collapsing):SBAR → S , S → NP VP becomesSBAR → NP VP

Scott Farrar CLMA, University of Washington CKY Algorithm, Chomsky Normal Form

Brief reviewCKY algorithm

Chomsky Normal Form (CNF)Homework2

CNF conversion algorithm

1 Removing unit-productions (unary collapsing):

while there is a unit-production A→ B,Remove A→ B.foreach B → u, add A→ u.

2 Remove terminals from mixed rules

foreach production A→ B1 B2...Bk , containing a terminal xAdd new non-terminal/production X 1→ x (unless it hasalready been added)Replace every Bi = x with X 1

3 Remove rules with more than two nonterminals on the RHS(binarization)

foreach rule p of form A→ B1 B2...Bk

replace p with A→ B1 X 1, X 1→ B2 X 2, X 2→ B3 X 3, ...,X (k − 2)→ Bk−1 Bk (Xi ’s are new variables.)

Scott Farrar CLMA, University of Washington CKY Algorithm, Chomsky Normal Form

Brief reviewCKY algorithm

Chomsky Normal Form (CNF)Homework2

CNF conversion algorithm

1 Removing unit-productions (unary collapsing):

while there is a unit-production A→ B,Remove A→ B.foreach B → u, add A→ u.

2 Remove terminals from mixed rules

foreach production A→ B1 B2...Bk , containing a terminal xAdd new non-terminal/production X 1→ x (unless it hasalready been added)Replace every Bi = x with X 1

3 Remove rules with more than two nonterminals on the RHS(binarization)

foreach rule p of form A→ B1 B2...Bk

replace p with A→ B1 X 1, X 1→ B2 X 2, X 2→ B3 X 3, ...,X (k − 2)→ Bk−1 Bk (Xi ’s are new variables.)

Scott Farrar CLMA, University of Washington CKY Algorithm, Chomsky Normal Form

Brief reviewCKY algorithm

Chomsky Normal Form (CNF)Homework2

CNF conversion algorithm

1 Removing unit-productions (unary collapsing):

while there is a unit-production A→ B,Remove A→ B.foreach B → u, add A→ u.

2 Remove terminals from mixed rules

foreach production A→ B1 B2...Bk , containing a terminal xAdd new non-terminal/production X 1→ x (unless it hasalready been added)Replace every Bi = x with X 1

3 Remove rules with more than two nonterminals on the RHS(binarization)

foreach rule p of form A→ B1 B2...Bk

replace p with A→ B1 X 1, X 1→ B2 X 2, X 2→ B3 X 3, ...,X (k − 2)→ Bk−1 Bk (Xi ’s are new variables.)

Scott Farrar CLMA, University of Washington CKY Algorithm, Chomsky Normal Form

Brief reviewCKY algorithm

Chomsky Normal Form (CNF)Homework2

Binarization

Scott Farrar CLMA, University of Washington CKY Algorithm, Chomsky Normal Form

Brief reviewCKY algorithm

Chomsky Normal Form (CNF)Homework2

A sample CFG

S → NP VP PUNC

(non-binary)S → S and S (mixed)NP → DT NP (OK)

NP → NN (unit production)NN → dog (OK)NN → cat (OK)

VP → VBZ NP (OK)VP → VBZ (unit production)

VBZ → sleeps (OK)VBZ → eats (OK)

DT → the (OK)

Scott Farrar CLMA, University of Washington CKY Algorithm, Chomsky Normal Form

Brief reviewCKY algorithm

Chomsky Normal Form (CNF)Homework2

A sample CFG

S → NP VP PUNC (non-binary)

S → S and S (mixed)NP → DT NP (OK)

NP → NN (unit production)NN → dog (OK)NN → cat (OK)

VP → VBZ NP (OK)VP → VBZ (unit production)

VBZ → sleeps (OK)VBZ → eats (OK)

DT → the (OK)

Scott Farrar CLMA, University of Washington CKY Algorithm, Chomsky Normal Form

Brief reviewCKY algorithm

Chomsky Normal Form (CNF)Homework2

A sample CFG

S → NP VP PUNC (non-binary)S → S and S

(mixed)NP → DT NP (OK)

NP → NN (unit production)NN → dog (OK)NN → cat (OK)

VP → VBZ NP (OK)VP → VBZ (unit production)

VBZ → sleeps (OK)VBZ → eats (OK)

DT → the (OK)

Scott Farrar CLMA, University of Washington CKY Algorithm, Chomsky Normal Form

Brief reviewCKY algorithm

Chomsky Normal Form (CNF)Homework2

A sample CFG

S → NP VP PUNC (non-binary)S → S and S (mixed)

NP → DT NP (OK)NP → NN (unit production)NN → dog (OK)NN → cat (OK)

VP → VBZ NP (OK)VP → VBZ (unit production)

VBZ → sleeps (OK)VBZ → eats (OK)

DT → the (OK)

Scott Farrar CLMA, University of Washington CKY Algorithm, Chomsky Normal Form

Brief reviewCKY algorithm

Chomsky Normal Form (CNF)Homework2

A sample CFG

S → NP VP PUNC (non-binary)S → S and S (mixed)NP → DT NP

(OK)NP → NN (unit production)NN → dog (OK)NN → cat (OK)

VP → VBZ NP (OK)VP → VBZ (unit production)

VBZ → sleeps (OK)VBZ → eats (OK)

DT → the (OK)

Scott Farrar CLMA, University of Washington CKY Algorithm, Chomsky Normal Form

Brief reviewCKY algorithm

Chomsky Normal Form (CNF)Homework2

A sample CFG

S → NP VP PUNC (non-binary)S → S and S (mixed)NP → DT NP (OK)

NP → NN (unit production)NN → dog (OK)NN → cat (OK)

VP → VBZ NP (OK)VP → VBZ (unit production)

VBZ → sleeps (OK)VBZ → eats (OK)

DT → the (OK)

Scott Farrar CLMA, University of Washington CKY Algorithm, Chomsky Normal Form

Brief reviewCKY algorithm

Chomsky Normal Form (CNF)Homework2

A sample CFG

S → NP VP PUNC (non-binary)S → S and S (mixed)NP → DT NP (OK)

NP → NN

(unit production)NN → dog (OK)NN → cat (OK)

VP → VBZ NP (OK)VP → VBZ (unit production)

VBZ → sleeps (OK)VBZ → eats (OK)

DT → the (OK)

Scott Farrar CLMA, University of Washington CKY Algorithm, Chomsky Normal Form

Brief reviewCKY algorithm

Chomsky Normal Form (CNF)Homework2

A sample CFG

S → NP VP PUNC (non-binary)S → S and S (mixed)NP → DT NP (OK)

NP → NN (unit production)

NN → dog (OK)NN → cat (OK)

VP → VBZ NP (OK)VP → VBZ (unit production)

VBZ → sleeps (OK)VBZ → eats (OK)

DT → the (OK)

Scott Farrar CLMA, University of Washington CKY Algorithm, Chomsky Normal Form

Brief reviewCKY algorithm

Chomsky Normal Form (CNF)Homework2

A sample CFG

S → NP VP PUNC (non-binary)S → S and S (mixed)NP → DT NP (OK)

NP → NN (unit production)NN → dog

(OK)NN → cat (OK)

VP → VBZ NP (OK)VP → VBZ (unit production)

VBZ → sleeps (OK)VBZ → eats (OK)

DT → the (OK)

Scott Farrar CLMA, University of Washington CKY Algorithm, Chomsky Normal Form

Brief reviewCKY algorithm

Chomsky Normal Form (CNF)Homework2

A sample CFG

S → NP VP PUNC (non-binary)S → S and S (mixed)NP → DT NP (OK)

NP → NN (unit production)NN → dog (OK)

NN → cat (OK)VP → VBZ NP (OK)

VP → VBZ (unit production)VBZ → sleeps (OK)

VBZ → eats (OK)DT → the (OK)

Scott Farrar CLMA, University of Washington CKY Algorithm, Chomsky Normal Form

Brief reviewCKY algorithm

Chomsky Normal Form (CNF)Homework2

A sample CFG

S → NP VP PUNC (non-binary)S → S and S (mixed)NP → DT NP (OK)

NP → NN (unit production)NN → dog (OK)NN → cat

(OK)VP → VBZ NP (OK)

VP → VBZ (unit production)VBZ → sleeps (OK)

VBZ → eats (OK)DT → the (OK)

Scott Farrar CLMA, University of Washington CKY Algorithm, Chomsky Normal Form

Brief reviewCKY algorithm

Chomsky Normal Form (CNF)Homework2

A sample CFG

S → NP VP PUNC (non-binary)S → S and S (mixed)NP → DT NP (OK)

NP → NN (unit production)NN → dog (OK)NN → cat (OK)

VP → VBZ NP (OK)VP → VBZ (unit production)

VBZ → sleeps (OK)VBZ → eats (OK)

DT → the (OK)

Scott Farrar CLMA, University of Washington CKY Algorithm, Chomsky Normal Form

Brief reviewCKY algorithm

Chomsky Normal Form (CNF)Homework2

A sample CFG

S → NP VP PUNC (non-binary)S → S and S (mixed)NP → DT NP (OK)

NP → NN (unit production)NN → dog (OK)NN → cat (OK)

VP → VBZ NP

(OK)VP → VBZ (unit production)

VBZ → sleeps (OK)VBZ → eats (OK)

DT → the (OK)

Scott Farrar CLMA, University of Washington CKY Algorithm, Chomsky Normal Form

Brief reviewCKY algorithm

Chomsky Normal Form (CNF)Homework2

A sample CFG

S → NP VP PUNC (non-binary)S → S and S (mixed)NP → DT NP (OK)

NP → NN (unit production)NN → dog (OK)NN → cat (OK)

VP → VBZ NP (OK)

VP → VBZ (unit production)VBZ → sleeps (OK)

VBZ → eats (OK)DT → the (OK)

Scott Farrar CLMA, University of Washington CKY Algorithm, Chomsky Normal Form

Brief reviewCKY algorithm

Chomsky Normal Form (CNF)Homework2

A sample CFG

S → NP VP PUNC (non-binary)S → S and S (mixed)NP → DT NP (OK)

NP → NN (unit production)NN → dog (OK)NN → cat (OK)

VP → VBZ NP (OK)VP → VBZ

(unit production)VBZ → sleeps (OK)

VBZ → eats (OK)DT → the (OK)

Scott Farrar CLMA, University of Washington CKY Algorithm, Chomsky Normal Form

Brief reviewCKY algorithm

Chomsky Normal Form (CNF)Homework2

A sample CFG

S → NP VP PUNC (non-binary)S → S and S (mixed)NP → DT NP (OK)

NP → NN (unit production)NN → dog (OK)NN → cat (OK)

VP → VBZ NP (OK)VP → VBZ (unit production)

VBZ → sleeps (OK)VBZ → eats (OK)

DT → the (OK)

Scott Farrar CLMA, University of Washington CKY Algorithm, Chomsky Normal Form

Brief reviewCKY algorithm

Chomsky Normal Form (CNF)Homework2

A sample CFG

S → NP VP PUNC (non-binary)S → S and S (mixed)NP → DT NP (OK)

NP → NN (unit production)NN → dog (OK)NN → cat (OK)

VP → VBZ NP (OK)VP → VBZ (unit production)

VBZ → sleeps

(OK)VBZ → eats (OK)

DT → the (OK)

Scott Farrar CLMA, University of Washington CKY Algorithm, Chomsky Normal Form

Brief reviewCKY algorithm

Chomsky Normal Form (CNF)Homework2

A sample CFG

S → NP VP PUNC (non-binary)S → S and S (mixed)NP → DT NP (OK)

NP → NN (unit production)NN → dog (OK)NN → cat (OK)

VP → VBZ NP (OK)VP → VBZ (unit production)

VBZ → sleeps (OK)

VBZ → eats (OK)DT → the (OK)

Scott Farrar CLMA, University of Washington CKY Algorithm, Chomsky Normal Form

Brief reviewCKY algorithm

Chomsky Normal Form (CNF)Homework2

A sample CFG

S → NP VP PUNC (non-binary)S → S and S (mixed)NP → DT NP (OK)

NP → NN (unit production)NN → dog (OK)NN → cat (OK)

VP → VBZ NP (OK)VP → VBZ (unit production)

VBZ → sleeps (OK)VBZ → eats

(OK)DT → the (OK)

Scott Farrar CLMA, University of Washington CKY Algorithm, Chomsky Normal Form

Brief reviewCKY algorithm

Chomsky Normal Form (CNF)Homework2

A sample CFG

S → NP VP PUNC (non-binary)S → S and S (mixed)NP → DT NP (OK)

NP → NN (unit production)NN → dog (OK)NN → cat (OK)

VP → VBZ NP (OK)VP → VBZ (unit production)

VBZ → sleeps (OK)VBZ → eats (OK)

DT → the (OK)

Scott Farrar CLMA, University of Washington CKY Algorithm, Chomsky Normal Form

Brief reviewCKY algorithm

Chomsky Normal Form (CNF)Homework2

A sample CFG

S → NP VP PUNC (non-binary)S → S and S (mixed)NP → DT NP (OK)

NP → NN (unit production)NN → dog (OK)NN → cat (OK)

VP → VBZ NP (OK)VP → VBZ (unit production)

VBZ → sleeps (OK)VBZ → eats (OK)

DT → the

(OK)

Scott Farrar CLMA, University of Washington CKY Algorithm, Chomsky Normal Form

Brief reviewCKY algorithm

Chomsky Normal Form (CNF)Homework2

A sample CFG

S → NP VP PUNC (non-binary)S → S and S (mixed)NP → DT NP (OK)

NP → NN (unit production)NN → dog (OK)NN → cat (OK)

VP → VBZ NP (OK)VP → VBZ (unit production)

VBZ → sleeps (OK)VBZ → eats (OK)

DT → the (OK)

Scott Farrar CLMA, University of Washington CKY Algorithm, Chomsky Normal Form

Brief reviewCKY algorithm

Chomsky Normal Form (CNF)Homework2

Conversion of CFG to CNF: Step 1

Non-CNF grammar CNF grammar Action——————– —————- —————

NP → NNNN → dogNN → cat

NP → dog (collapse rule)NP → cat (collapse rule)

VP → VBZVBZ → sleepsVBZ → eats

VP → sleeps (collapse rule)VP → eats (collapse rule)

Scott Farrar CLMA, University of Washington CKY Algorithm, Chomsky Normal Form

Brief reviewCKY algorithm

Chomsky Normal Form (CNF)Homework2

Conversion of CFG to CNF: Step 1

Non-CNF grammar CNF grammar Action——————– —————- —————NP → NN

NN → dogNN → cat

NP → dog (collapse rule)NP → cat (collapse rule)

VP → VBZVBZ → sleepsVBZ → eats

VP → sleeps (collapse rule)VP → eats (collapse rule)

Scott Farrar CLMA, University of Washington CKY Algorithm, Chomsky Normal Form

Brief reviewCKY algorithm

Chomsky Normal Form (CNF)Homework2

Conversion of CFG to CNF: Step 1

Non-CNF grammar CNF grammar Action——————– —————- —————NP → NNNN → dog

NN → catNP → dog (collapse rule)NP → cat (collapse rule)

VP → VBZVBZ → sleepsVBZ → eats

VP → sleeps (collapse rule)VP → eats (collapse rule)

Scott Farrar CLMA, University of Washington CKY Algorithm, Chomsky Normal Form

Brief reviewCKY algorithm

Chomsky Normal Form (CNF)Homework2

Conversion of CFG to CNF: Step 1

Non-CNF grammar CNF grammar Action——————– —————- —————NP → NNNN → dogNN → cat

NP → dog (collapse rule)NP → cat (collapse rule)

VP → VBZVBZ → sleepsVBZ → eats

VP → sleeps (collapse rule)VP → eats (collapse rule)

Scott Farrar CLMA, University of Washington CKY Algorithm, Chomsky Normal Form

Brief reviewCKY algorithm

Chomsky Normal Form (CNF)Homework2

Conversion of CFG to CNF: Step 1

Non-CNF grammar CNF grammar Action——————– —————- —————NP → NNNN → dogNN → cat

NP → dog (collapse rule)

NP → cat (collapse rule)VP → VBZVBZ → sleepsVBZ → eats

VP → sleeps (collapse rule)VP → eats (collapse rule)

Scott Farrar CLMA, University of Washington CKY Algorithm, Chomsky Normal Form

Brief reviewCKY algorithm

Chomsky Normal Form (CNF)Homework2

Conversion of CFG to CNF: Step 1

Non-CNF grammar CNF grammar Action——————– —————- —————NP → NNNN → dogNN → cat

NP → dog (collapse rule)NP → cat (collapse rule)

VP → VBZVBZ → sleepsVBZ → eats

VP → sleeps (collapse rule)VP → eats (collapse rule)

Scott Farrar CLMA, University of Washington CKY Algorithm, Chomsky Normal Form

Brief reviewCKY algorithm

Chomsky Normal Form (CNF)Homework2

Conversion of CFG to CNF: Step 1

Non-CNF grammar CNF grammar Action——————– —————- —————NP → NNNN → dogNN → cat

NP → dog (collapse rule)NP → cat (collapse rule)

VP → VBZ

VBZ → sleepsVBZ → eats

VP → sleeps (collapse rule)VP → eats (collapse rule)

Scott Farrar CLMA, University of Washington CKY Algorithm, Chomsky Normal Form

Brief reviewCKY algorithm

Chomsky Normal Form (CNF)Homework2

Conversion of CFG to CNF: Step 1

Non-CNF grammar CNF grammar Action——————– —————- —————NP → NNNN → dogNN → cat

NP → dog (collapse rule)NP → cat (collapse rule)

VP → VBZVBZ → sleeps

VBZ → eatsVP → sleeps (collapse rule)VP → eats (collapse rule)

Scott Farrar CLMA, University of Washington CKY Algorithm, Chomsky Normal Form

Brief reviewCKY algorithm

Chomsky Normal Form (CNF)Homework2

Conversion of CFG to CNF: Step 1

Non-CNF grammar CNF grammar Action——————– —————- —————NP → NNNN → dogNN → cat

NP → dog (collapse rule)NP → cat (collapse rule)

VP → VBZVBZ → sleepsVBZ → eats

VP → sleeps (collapse rule)VP → eats (collapse rule)

Scott Farrar CLMA, University of Washington CKY Algorithm, Chomsky Normal Form

Brief reviewCKY algorithm

Chomsky Normal Form (CNF)Homework2

Conversion of CFG to CNF: Step 1

Non-CNF grammar CNF grammar Action——————– —————- —————NP → NNNN → dogNN → cat

NP → dog (collapse rule)NP → cat (collapse rule)

VP → VBZVBZ → sleepsVBZ → eats

VP → sleeps (collapse rule)VP → eats (collapse rule)

Scott Farrar CLMA, University of Washington CKY Algorithm, Chomsky Normal Form

Brief reviewCKY algorithm

Chomsky Normal Form (CNF)Homework2

Conversion of CFG to CNF: Step 2

Non-CNF grammar CNF grammar Action——————– —————- —————

S → S and SS → S X1 (new symbol)X1→ X2 S (new symbol)X2→ and

Scott Farrar CLMA, University of Washington CKY Algorithm, Chomsky Normal Form

Brief reviewCKY algorithm

Chomsky Normal Form (CNF)Homework2

Conversion of CFG to CNF: Step 2

Non-CNF grammar CNF grammar Action——————– —————- —————S → S and S

S → S X1 (new symbol)X1→ X2 S (new symbol)X2→ and

Scott Farrar CLMA, University of Washington CKY Algorithm, Chomsky Normal Form

Brief reviewCKY algorithm

Chomsky Normal Form (CNF)Homework2

Conversion of CFG to CNF: Step 2

Non-CNF grammar CNF grammar Action——————– —————- —————S → S and S

S → S X1 (new symbol)X1→ X2 S (new symbol)X2→ and

Scott Farrar CLMA, University of Washington CKY Algorithm, Chomsky Normal Form

Brief reviewCKY algorithm

Chomsky Normal Form (CNF)Homework2

Conversion of CFG to CNF: Step 2

Non-CNF grammar CNF grammar Action——————– —————- —————S → S and S

S → S X1 (new symbol)

X1→ X2 S (new symbol)X2→ and

Scott Farrar CLMA, University of Washington CKY Algorithm, Chomsky Normal Form

Brief reviewCKY algorithm

Chomsky Normal Form (CNF)Homework2

Conversion of CFG to CNF: Step 2

Non-CNF grammar CNF grammar Action——————– —————- —————S → S and S

S → S X1 (new symbol)X1→ X2 S (new symbol)

X2→ and

Scott Farrar CLMA, University of Washington CKY Algorithm, Chomsky Normal Form

Brief reviewCKY algorithm

Chomsky Normal Form (CNF)Homework2

Conversion of CFG to CNF: Step 2

Non-CNF grammar CNF grammar Action——————– —————- —————S → S and S

S → S X1 (new symbol)X1→ X2 S (new symbol)X2→ and

Scott Farrar CLMA, University of Washington CKY Algorithm, Chomsky Normal Form

Brief reviewCKY algorithm

Chomsky Normal Form (CNF)Homework2

Conversion of CFG to CNF: Step 3

Non-CNF grammar CNF grammar Action——————– —————- —————

S → NP VP PUNCS → NP X3 (new symbol)X3→ VP PUNC

NP → DT NP NP → DT NP (carry over)VP → VBZ NP VP → VBZ NP (carry over)DT → the DT → the (carry over)

Scott Farrar CLMA, University of Washington CKY Algorithm, Chomsky Normal Form

Brief reviewCKY algorithm

Chomsky Normal Form (CNF)Homework2

Conversion of CFG to CNF: Step 3

Non-CNF grammar CNF grammar Action——————– —————- —————S → NP VP PUNC

S → NP X3 (new symbol)X3→ VP PUNC

NP → DT NP NP → DT NP (carry over)VP → VBZ NP VP → VBZ NP (carry over)DT → the DT → the (carry over)

Scott Farrar CLMA, University of Washington CKY Algorithm, Chomsky Normal Form

Brief reviewCKY algorithm

Chomsky Normal Form (CNF)Homework2

Conversion of CFG to CNF: Step 3

Non-CNF grammar CNF grammar Action——————– —————- —————S → NP VP PUNC

S → NP X3 (new symbol)

X3→ VP PUNCNP → DT NP NP → DT NP (carry over)VP → VBZ NP VP → VBZ NP (carry over)DT → the DT → the (carry over)

Scott Farrar CLMA, University of Washington CKY Algorithm, Chomsky Normal Form

Brief reviewCKY algorithm

Chomsky Normal Form (CNF)Homework2

Conversion of CFG to CNF: Step 3

Non-CNF grammar CNF grammar Action——————– —————- —————S → NP VP PUNC

S → NP X3 (new symbol)X3→ VP PUNC

NP → DT NP NP → DT NP (carry over)VP → VBZ NP VP → VBZ NP (carry over)DT → the DT → the (carry over)

Scott Farrar CLMA, University of Washington CKY Algorithm, Chomsky Normal Form

Brief reviewCKY algorithm

Chomsky Normal Form (CNF)Homework2

Conversion of CFG to CNF: Step 3

Non-CNF grammar CNF grammar Action——————– —————- —————S → NP VP PUNC

S → NP X3 (new symbol)X3→ VP PUNC

NP → DT NP

NP → DT NP (carry over)VP → VBZ NP VP → VBZ NP (carry over)DT → the DT → the (carry over)

Scott Farrar CLMA, University of Washington CKY Algorithm, Chomsky Normal Form

Brief reviewCKY algorithm

Chomsky Normal Form (CNF)Homework2

Conversion of CFG to CNF: Step 3

Non-CNF grammar CNF grammar Action——————– —————- —————S → NP VP PUNC

S → NP X3 (new symbol)X3→ VP PUNC

NP → DT NP NP → DT NP (carry over)

VP → VBZ NP VP → VBZ NP (carry over)DT → the DT → the (carry over)

Scott Farrar CLMA, University of Washington CKY Algorithm, Chomsky Normal Form

Brief reviewCKY algorithm

Chomsky Normal Form (CNF)Homework2

Conversion of CFG to CNF: Step 3

Non-CNF grammar CNF grammar Action——————– —————- —————S → NP VP PUNC

S → NP X3 (new symbol)X3→ VP PUNC

NP → DT NP NP → DT NP (carry over)VP → VBZ NP

VP → VBZ NP (carry over)DT → the DT → the (carry over)

Scott Farrar CLMA, University of Washington CKY Algorithm, Chomsky Normal Form

Brief reviewCKY algorithm

Chomsky Normal Form (CNF)Homework2

Conversion of CFG to CNF: Step 3

Non-CNF grammar CNF grammar Action——————– —————- —————S → NP VP PUNC

S → NP X3 (new symbol)X3→ VP PUNC

NP → DT NP NP → DT NP (carry over)VP → VBZ NP VP → VBZ NP (carry over)

DT → the DT → the (carry over)

Scott Farrar CLMA, University of Washington CKY Algorithm, Chomsky Normal Form

Brief reviewCKY algorithm

Chomsky Normal Form (CNF)Homework2

Conversion of CFG to CNF: Step 3

Non-CNF grammar CNF grammar Action——————– —————- —————S → NP VP PUNC

S → NP X3 (new symbol)X3→ VP PUNC

NP → DT NP NP → DT NP (carry over)VP → VBZ NP VP → VBZ NP (carry over)DT → the

DT → the (carry over)

Scott Farrar CLMA, University of Washington CKY Algorithm, Chomsky Normal Form

Brief reviewCKY algorithm

Chomsky Normal Form (CNF)Homework2

Conversion of CFG to CNF: Step 3

Non-CNF grammar CNF grammar Action——————– —————- —————S → NP VP PUNC

S → NP X3 (new symbol)X3→ VP PUNC

NP → DT NP NP → DT NP (carry over)VP → VBZ NP VP → VBZ NP (carry over)DT → the DT → the (carry over)

Scott Farrar CLMA, University of Washington CKY Algorithm, Chomsky Normal Form

Brief reviewCKY algorithm

Chomsky Normal Form (CNF)Homework2

CFG in CNF

NP → dog S → NP X3NP → cat X3→ VP PUNCVP → sleeps NP → DT NPVP → eats VP → VBZ NPS → S X1 DT → theX1→ X2 SX2→ and

Scott Farrar CLMA, University of Washington CKY Algorithm, Chomsky Normal Form

Brief reviewCKY algorithm

Chomsky Normal Form (CNF)Homework2

Homework 2 discussion

Homework: CKY and toCNF

Scott Farrar CLMA, University of Washington CKY Algorithm, Chomsky Normal Form

Brief reviewCKY algorithm

Chomsky Normal Form (CNF)Homework2

Symbol naming conventions

Refer to NLTK treetransforms module

Create new symbols from old (binarization):S → NP VP PUNC becomes:S → NP S|〈VP-PUNC〉, S|〈VP-PUNC〉 → VP PUNC

Create new symbols from old (unary collapsing):SBAR → S , S → NP VP becomesSBAR+S → NP VP

Scott Farrar CLMA, University of Washington CKY Algorithm, Chomsky Normal Form