For implementing the CYK algorithm for parsing, we need to have a grammar in CNF (Chomsky Normal Form) defined for a language.
Is there any such CNF grammar readily available which covers all (or most of) the English language?
-
Converting from a normal CFG to CNF is relatively easy. If you don't find one explicitely encoded in CNF, with a little effort you could actually use any CFG.– Natalie ClariusNov 3, 2016 at 16:40
-
1Here is a CFG that looks fairly good for an actual natural language grammar. The problem is, however, that you then need a matching lexicon for the categories that you have there.– Natalie ClariusNov 3, 2016 at 19:34
-
2BTW, I doubt that you find any simple phrase structure grammar on the web which is suited to parse natural language. Most parsers nowadays rely on dependency grammars or statistical approaches, or at least highly enriched constituency grammars (with features etc.), so all you will find is probably more like "toy grammars" used to explain basic algorithms. If it's only about trying out how the CYK algorithm works, such a toy grammar that you find in introductory NLP or CS textbooks surely will suffice.– Natalie ClariusNov 3, 2016 at 19:34
1 Answer
You may want to check out some of the materials provided for the assignment "A3: CKY algorithm" by Prof. Dr. A. Koller who has converted the ATIS grammar for the purpose:
CL16 page: https://coli-saar.github.io/cl16
Materials: http://www.coli.uni-saarland.de/~koller/materials/anlp
Also relevant: http://users.sussex.ac.uk/~johnca/cfg-resources
'Hope this helps.