Need help with nlp_course?
Click the “chat” button below for chat support from the developer who created it, or find similar developers for support.

About the developer

7.4K Stars 2.0K Forks MIT License 606 Commits 4 Opened issues


YSDA course in Natural Language Processing

Services available


Need anything else?

Contributors list

YSDA Natural Language Processing course

  • This is the 2021 version. For previous year' course materials, go to this branch
  • Lecture and seminar materials for each week are in ./week* folders, see for materials and instructions
  • YSDA homework deadlines will be listed in Anytask (read more).
  • Any technical issues, ideas, bugs in course materials, contribution ideas - add an issue
  • Installing libraries and troubleshooting: this thread.


  • week01 Word Embeddings

    • Lecture: Word embeddings. Distributional semantics. Count-based (pre-neural) methods. Word2Vec: learn vectors. GloVe: count, then learn. Evaluation: intrinsic vs extrinsic. Analysis and Interpretability. Interactive lecture materials and more.
    • Seminar: Playing with word and sentence embeddings
    • Homework: Embedding-based machine translation system
  • week02 Text Classification

    • Lecture: Text classification: introduction and datasets. General framework: feature extractor + classifier. Classical approaches: Naive Bayes, MaxEnt (Logistic Regression), SVM. Neural Networks: General View, Convolutional Models, Recurrent Models. Practical Tips: Data Augmentation. Analysis and Interpretability. Interactive lecture materials and more.
    • Seminar: Text classification with convolutional NNs.
    • Homework: Statistical & neural text classification.
  • week03 Language Modeling

    • Lecture: Language Modeling: what does it mean? Left-to-right framework. N-gram language models. Neural Language Models: General View, Recurrent Models, Convolutional Models. Evaluation. Practical Tips: Weight Tying. Analysis and Interpretability. Interactive lecture materials and more.
    • Seminar: Build a N-gram language model from scratch
    • Homework: Neural LMs & smoothing in count-based models.
  • week04 Seq2seq and Attention

    • Lecture: Seq2seq Basics: Encoder-Decoder framework, Training, Simple Models, Inference (e.g., beam search). Attention: general, score functions, models. Transformer: self-attention, masked self-attention, multi-head attention; model architecture. Subword Segmentation (BPE). Analysis and Interpretability: functions of attention heads; probing for linguistic structure. Interactive lecture materials and more.
    • Seminar: Basic sequence to sequence model
    • Homework: Machine translation with attention
  • week05 Transfer Learning

    • Lecture: What is Transfer Learning? Great idea 1: From Words to Words-in-Context (CoVe, ELMo). Great idea 2: From Replacing Embeddings to Replacing Models (GPT, BERT). (A Bit of) Adaptors. Analysis and Interpretability. Interactive lecture materials and more.
  • week06 Domain Adaptation

    • Lecture: General theory. Instance weighting. Proxy-labels methods. Feature matching methods. Distillation-like methods.
    • Seminar+Homework: BERT-based NER domain adaptation

More TBA

Contributors & course staff

Course materials and teaching performed by - Elena Voita - course admin, lectures, seminars, homeworks - Boris Kovarsky - lectures, seminars, homeworks - David Talbot - lectures, seminars, homeworks - Sergey Gubanov - lectures, seminars, homeworks - Just Heuristic - lectures, seminars, homeworks

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.