This course gives an overview of modern data-driven techniques for natural language processing. The course moves from shallow bag-of-words models to richer structural representations of how words interact to create meaning, including language models. At each level, we will discuss the salient linguistic phenomena and most successful computational models. Along the way we will cover machine learning techniques which are especially relevant to natural language processing.
Natural language processing (NLP) seeks to endow computers with the ability to intelligently process human language. NLP components are used in conversational agents and other systems that engage in dialogue with humans, automatic translation between human languages, automatic answering of questions using large text collections, the extraction of structured information from text, tools that help human authors, and many, many more. This course will teach you the fundamental ideas used in key NLP components as well as current state-of-the-art practice in developing NLP algorithms.
By the end of the course students should:
- Be able to implement a variety of commonly used algorithms for natural language text processing including statistical approaches and neural network approaches.
- Be able to implement solutions to common natural language text processing problems including text classification, text generation, dialogue, language translation, and document retrieval.
- Be able to analyze the statistical properties of text documents.
- Understand the significance of different algorithms, why they were developed, and when they should be used.
Before Taking This Class...
Suggested Background Knowledge
- A course in data structures
- A course in introductory artificial intelligence or machine learning
Technical Requirements and Software
- Proficiency in Python
- Students will be advised to purchase a Google Colab Pro account, though not strictly necessary.
All Georgia Tech students are expected to uphold the Georgia Tech Academic Honor Code. This course may impose additional academic integrity stipulations; consult the official course documentation for more information.