Course Introduction
Get introduced to the course, its structure, and its intended audience.
We'll cover the following
Introduction
Hello and welcome to the course! This course will provide an in-depth survey of grammar parsing and spell check, covering everything from basic implementations to modern approaches.
Learning outcomes
Learn the mathematics behind implementing a spell checker, including edit distance.
Learn the basic structure of a spellchecker and how it fits into natural language processing as a whole.
Learn how to implement and improve on a spellchecker.
Understand how to implement an advanced machine learning-based spellchecker.
Learn the mathematics behind grammar correction.
Learn the basic structure of a grammar corrector.
Learn how to implement a basic grammar corrector.
Understand how to implement an advanced machine learning-based grammar checker.
Combine these two units to implement a sophisticated natural language corrector similar to state-of-the-art approaches.
Course structure
This course contains three major sections: the first covers background knowledge, the second moves into basic implementation, and the third covers advanced topics.
Spell checking sections
Edit distance: This section provides a mathematical foundation to build a spellchecker from scratch.
Norvig spellchecker: In this section, we go into the details and inner workings of a spellchecker and implement an edit-distance-based spellchecker.
Modern spell check methods: In this section, we will cover advanced edit-distance spell checkers and get a survey of how modern spellcheckers work.
Grammar checking sections
Part-of-speech tagging: This is another heavily math-based section where we will learn how to identify a word’s part of speech (e.g., given a sentence, how do we pick out the adjective, verb, etc.).
Basic grammar checker: In this section, we implement a part-of-speech rule-based grammar checker, meaning we will use a heuristic-based approach to correct grammar mistakes.
Modern grammar methods: In this section, we will review the modern methods used to check for proper grammar, including how popular tools like Grammarly work.
Finally, the course will culminate in a final project, in which we will expand on our grammar and spellchecker and combine them into a single project, similar to how a tool like Grammarly works.
Audience
This course is designed as an intermediate level course, which means in order to find success, a solid foundation of functional programming in Python is required. Having used libraries such as SciPy, NLTK, and pandas before is also a plus. Learners with a basic understanding of natural language processing (NLP) will have an easier time following the lessons as they begin to get more challenging, and learners with a basic understanding of machine learning will gain more from the bonus lessons towards the end of the course.