Automatic Natural Language Processing (NLP) is a branch of Artificial Intelligence (AI) that enables computers to understand and generate human language. NLP enables us to talk to our phones, use the web to answer questions, organize discussions in books and social media, and even translate between human languages. Because language is rich, ambiguous and very difficult for computers to understand, these systems can sometimes seem magical, but they are engineering problems that we can solve with data, mathematics and linguistic knowledge.
This course will deal generally with deep learning methods for natural language processing, with a particular focus on Large Language Models (LLMs). We will cover modeling architectures and downstream tasks such as text classification, question answering, machine translation and text generation.