Natural Language Processing
Full course description
ChatGPT can answer almost any question you have. Siri can tell me when I need an umbrella. But how do they work? Over the past few years, Natural Language Processing (NLP) was revolutionized by statistical, probabilistic and machine learning methods. NLP addresses fundamental questions at the intersection of human language and machine learning. How can computers acquire, understand and produce language? How can computational methods give us insight into observed human language phenomena? How to make sense of the vast amounts of information available online in free, unstructured form? In this course students will learn how computers can learn useful text/language representations and how different tasks (language modelling, text classification, information extraction, sequence labeling, etc.) can be used for solving different complex problems (spelling correction, spam detection, search engine design, opinion analysis, summarization, question-answering, etc.). Open NLP problems (such as evaluation or interactive dialogue systems) and the effect of deep learning on NLP will be discussed.
Prerequisites
None.
Desired Prior Knowledge: Procedural Programming (formerly known as Introduction to Computer Science 1) and Objects in Programming (formerly known as Introduction to Computer Science 2), Probability and Statistics, Machine Learning
Recommended reading
1) Daniel Jurafsky and James H. Martin. "Speech and language processing an introduction to natural language processing, computational linguistics, and speech." Pearson, London, 2000
2) Chris Manning and Hinrich Schütze, Foundations of Statistical Natural Language Processing, MIT Press. Cambridge, MA. 1999