Deep learning for NLP crash course at ABBYY.
Suggested textbook: Neural Network Methods in Natural Language Processing by Yoav Goldberg
I'm gradually updating and translating the notebooks right now. Stay in touch.
Sentiment analysis on the IMDB movie review dataset: a short overview of classical machine learning for NLP + indecently brief intro to keras.
Meet the Word Embeddings: an unsupervised method to capture some fun relationships between words.
Phrases similarity with word embeddings model + word based machine translation without parallel data (with MUSE word embeddings).
Introduction to PyTorch. Implementation of pet linear regression on pure numpy and pytorch. Implementations of CBoW, skip-gram, negative sampling and structured Word2vec models.
Introduction to convolutional networks. Relations between convolutions and n-grams. Simple surname detector on character-level convolutions + fun visualizations.
RNNs for text classification. Simple RNN implementation + memorization test. Surname detector in multilingual setup: character-level LSTM classifier.
RNNs for sequence labelling. Part-of-speech tagger implementations based on word embeddings and character-level word embeddings.
Character-level language model for Russian troll tweets generation: fixed-window model via convolutions and RNN model.
Simple conditional language model: surname generation given source language.
And Toxic Comment Classification Challenge - to apply your skills to a real-world problem.
Word-level language model for poetry generation. Pet examples of transfer learning and multi-task learning applied to language models.
Seq2seq for machine translation and image captioning. Byte-pair encoding, beam search and other usefull stuff for machine translation.
Seq2seq with attention for machine translation and image captioning.
Implementation of Transformer model for text summarization. Discussion of Pointer-Generator Networks for text summarization.
Goal-orientied dialogue systems. Implemention of the multi-task model: intent classifier and token tagger for dialogue manager.
General conversation dialogue systems and DSSMs. Implementation of question answering model on SQuAD dataset and chit-chat model on OpenSubtitles dataset.
Pretrained models for various tasks: Universal Sentence Encoder for sentence similarity, ELMo for sequence tagging (with a bit of CRF), BERT for SWAG - reasoning about possible continuation.
NLP Summary - summary of cool stuff that appeared and didn't in the course.