Natural Language Processing with Deep Learning (NCHAI771)
Natural language processing (NLP) is one of the most important areas of machine learning today since machines learn to perform tasks (e.g. question answering, sentiment analysis or text translation) based on human language input.
This course covers the fundamentals of NLP, with a particular focus on modern deep learning techniques known to exhibit good performance in NLP tasks. It covers word embedding models, their pertaining, and finetuning models for specific NLP tasks.
The course will be taught in the Python programming language and, in particular, the PyTorch machine learning framework.
- Introduction to Natural Language Processing
- Word embeddings (e.g. the Skip-Gram, work2vec, ELMo and BERT models)
- Pretraining word embeddings
- Encoder-decoder model architectures
- Attention mechanisms
- Recurrent Neural Networks
- NLP tasks (e.g. sentiment analysis and natural language inference)
- Fine-tuning model architectures for different NLP tasks