Combinatory Categorial Grammar (CCG)
11-711 Algorithms for NLP 22 October 2019 (With thanks to Alan W Black)
Combinatory Categorial Grammar (CCG) 11-711 Algorithms for NLP 22 - - PowerPoint PPT Presentation
Combinatory Categorial Grammar (CCG) 11-711 Algorithms for NLP 22 October 2019 (With thanks to Alan W Black) Goals of CCG Simplify the ( combinatory ) rules Move complexity from rules to ( categorial ) lexical entries More tightly
11-711 Algorithms for NLP 22 October 2019 (With thanks to Alan W Black)
a,the np/n
ld n/ n/n in (np\np)/np man,ball,park n kicked (s\np)/np the old
the park np/n n/n n/n n (s\np)/np np/n n (np\np)/np np/n n
a,t ,the he np/n p/n
in (np\np)/np man,ball,park n kicked (s\np)/np the he
ball in the he park np/ p/n n/n n (s\np)/np np/n /n n (np\np)/np np/ p/n n
np np np
np
a,the np/n
in n ( (np np\np) p)/np /np man,ball,park n kicked (s\np)/np the old man kicked a ball in in the park np/n n/n n (s\np)/np np/n n (np (np\np) p)/n /np p np/n n
np
np np\np np
np
a,the np/n
in (np\np)/np man,ball,park n kic icked ked (s (s\np) p)/n /np the old man kicked a ball in the park np/n n/n n (s\np)/np np/n n (np\np)/np np/n n
np
np\np
X:A CONJ CONJ X’:A’ = X’’: 𝝁S.( S.(A . S & A’. S) S)
X/Y:A Y/Z:B => X/Z: 𝜇Q.( A . (B . Q))
NP:a -> T/(T\NP): 𝜇R.(R . a) John likes and Mary dislikes Bob np (s\np)/np conj np (s\np)/np np
s/(s\np) s/(s\np)
s/np s/np
s/np
X:A CONJ X’:A’ = X’’: 𝜇S.(A . S & A’. S)
X/Y:A Y/Z:B => X/Z: 𝝁Q. Q.( A . (B . Q))
NP:a -> T/(T\NP): 𝜇R.(R . a) John likes and Mary dislikes Bob np (s\np)/np conj np (s\np)/np np
s/(s\np) s/(s\np)
s/np s/np
s/np
X:A CONJ X’:A’ = X’’: 𝜇S.(A . S & A’. S)
X/Y:A Y/Z:B => X/Z: 𝜇Q.( A . (B . Q))
NP:a -> T/(T\NP): 𝝁R.(R R.(R . a) John likes and Mary dislikes Bob np (s\np)/np conj np (s\np)/np np
s/(s\np) s/(s\np)
s/np s/np
s/np
X:A CONJ X’:A’ = X’’: 𝜇S.(A . S & A’. S)
X/Y:A Y/Z:B => X/Z: 𝝁Q.( A . (B . Q)) Q.( A . (B . Q))
NP:a -> T/(T\NP): 𝝁R.(R . a) R.(R . a) John likes ... np:j (s\np)/np: 𝝁Y.𝝁X.likes(X,Y) likes(X,Y)
TR s/(s\np): 𝝁R.(R . j) R.(R . j)
COMP s/np: 𝜇Q.( .( A . ( B . Q)) 𝜇Q.((𝜇R.(R . j)) . (𝜇Y. Y.𝜇X.likes X.likes(X,Y) (X,Y) . Q)) 𝜇Q.((𝜇R.(R (R . j)) . ( 𝜇X.likes(X,Q) )) 𝜇Q.( 𝜇X.likes(X,Q) . j ) 𝜇Q.( .( likes( es(j,Q j,Q) ) )
X:A CONJ X’:A’ = X’’: 𝜇S.(A . S & A’. S)
X/Y:A Y/Z:B => X/Z: 𝜇Q.( A . (B . Q))
NP:a -> T/(T\NP): 𝜇R.(R . a) ... Mary dislikes ... np:m (s\np)/np:𝜇Y.𝜇X.dislikes(X,Y)
s/(s\np): 𝜇R.(R . m)
s/np: 𝜇Q.( A . ( B . Q)) 𝜇Q.((𝜇R.(R . m)) . (𝜇Y. Y.𝜇X.dislikes X.dislikes(X, (X,Y) Y) . Q)) 𝜇Q.((𝜇R.(R (R . m)) . (𝜇X.dislikes(X,Q) )) 𝜇Q.( 𝜇X.dislikes(X,Q) . m ) 𝜇Q.( .( dislik likes( es(m,Q m,Q) ) )
Coo Coord rdina inati tion: n: X:A CONJ X’:A’ = X’’: 𝝁S.(A . S & A’. S) Com Compo posit sitio ion: X/Y:A Y/Z:B => X/Z: 𝜇Q.( A . (B . Q)) Typ Type e rai raisi sing: g: NP:a -> T/(T\NP): 𝜇R.(R . a)
John likes and Mary dislikes Bob .... CONJ .... np:b
s/np: 𝜇Q.(l .(like ikes( s(j,Q j,Q)) )) s/np: 𝜇Q.( .( dislik likes( es(m,Q m,Q) ) )
s/np: 𝜇S.( 𝜇Q.(li (likes kes(j,Q j,Q)) )) . S & 𝜇Q.(d .(disl islike ikes( s(m,Q m,Q)) )) . S ) s/np: 𝜇S.( likes(j,S) & dislikes(m,S) )
s: 𝜇S.( .( likes( es(j,S j,S) ) & dislik likes( es(m,S m,S) ) ) . b s: likes(j,b) & dislikes(m,b)
the np/n boy n boys n walk s\np walks s\np Forward application X/Y Y => X Backward application Y X\Y => X Thus the boy walks np/n n s\np
np
s
the [cat: np]/[cat: n] boy [cat: n] boys [cat: n] walk [cat: s]\[cat: np] walks [cat: s]\[cat: np] Forward application X/Y Y => X Backward application Y X\Y => X Thus the boy walks [cat: np]/[cat: n] [cat: n] [cat: s]\[cat: np]
[cat: np]
[cat: s]
the [cat: np num num: ! !X]/ [cat: n num num: ! !X] boy [cat: n num: : sg sg] boys [cat: n num: : pl pl] walk [cat: s]\ [cat: np num num: : pl pl] walks [cat: s]\ [cat: np num num: : sg sg] the boys walk [cat: np [cat: n [cat: s]\ num: m: ! !X]/ num: p pl] [cat: np [cat: n num um: : pl pl] num: !X !X]
[cat: np num num: : pl pl]
[cat: s]
the [cat: np num: !X]/ [cat: n num: !X] boy [cat: n num: sg] boys [cat: n num: pl] walk [cat: s]\ [cat: np num: pl] walks [cat: s]\ [cat: np num: sg] the boy walks [cat: np [cat: n [cat: s]\ num: m: ! !X]/ num: s sg] [cat: np [cat: n num um: s : sg] num: !X !X]
[cat: np num num: s sg]
[cat: s]
the [cat: np num: !X]/ [cat: n num: !X] boy [cat: n num: sg] boys [cat: n num: pl] walk [cat: s]\ [cat: np num: pl] walks [cat: s]\ [cat: np num: sg] the boys walks [cat: np [cat: n [cat: s]\ num: m: ! !X]/ num: p pl] [cat: np [cat: n num um: s : sg] num: !X !X]
[cat: np num num: : pl pl]