Overview

This is a hands-on class surveying a range of programming and mathematical methods used in natural language processing.  An understanding of basic linear algebra and probability is needed, as well as programming skills. Python will be used.

Slides

  1. Introduction
  2. Handling text
  3. Machine Learning for NLP
  4. Probabilistic Modeling
  5. Vector Embedding
  6. Neural Language Models
  7. Introduction to Deep Learning with Keras
  8. Recurrent Neural Networks
  9. Sequence Labeling
  10. Sequence to sequence models
  11. Attention, memory, and transformer models

Midterm study guide
regex cheatsheet