2022/2023
Natural Language Processing
Category 'Best Course for New Knowledge and Skills'
Type:
Mago-Lego
Delivered by:
Department of Economics
When:
3 module
Open to:
students of one campus
Instructors:
Andrei Ternikov
Language:
English
ECTS credits:
3
Contact hours:
28
Course Syllabus
Abstract
Prerequisites: strong knowledge and skills in Python (numpy, pandas, scikit-learn), mathematical statistics, and machine learning modeling. Natural language processing (NLP) is an important field of computer science, artificial intelligence and linguistics aimed at developing systems that are able to understand and generate natural language at the human level. Modern NLP systems are predominantly based on machine learning (ML) and deep learning (DL) algorithms, and have demonstrated impressive results in a wide range of NLP tasks such as summarization, machine translation, named entity recognition, relationship extraction, sentiment analysis, speech recognition, and topic modeling. We interact with such systems and use products involving NLP on a daily basis which makes it exciting to learn how these systems work. This course covers the main topics in NLP, ranging from text preprocessing techniques to state-of-the-art neural architectures. We hope to facilitate interest in the field by combining the theoretical basis with the practical applications of the material.
Learning Objectives
- Learn the concept of language modeling and solidify the knowledge about tasks that can be solved with the help of language models
- Be able to solve simple classification task
- Be able to prepare text
- Learn inner workings of the count-based language language models and smoothing methods
- Be able to evaluate pre-trained models and know different techniques for pre-trained models compression
Expected Learning Outcomes
- Be able to prepare text
- Learn inner workings of the count-based vector representation models, including their advantages and disadvantages
- Learn similarity measures that are most commonly used with respect to vector representations
- Learn inner workings of the count-based language language models and smoothing methods
- Be able to evaluate pre-trained models and know different techniques for pre-trained models compression
- Be able to solve simple question-answering tasks
Course Contents
- Natural Language Processing with Classification and Vector Spaces
- Natural Language Processing with Probabilistic Models
- Natural Language Processing with Sequence Models
- Natural Language Processing with Attention Models
Assessment Elements
- ProjectProject task consisting of NLP problems in format of Jupyter Notebook. Integer grade. 10 points maximum.
- Final ProjectFinal Project task consisting of NLP problems in format of Jupyter Notebook. Integer grade. 10 points maximum.
Bibliography
Recommended Core Bibliography
- Nirant Kasliwal. (2018). Natural Language Processing with Python Quick Start Guide : Going From a Python Developer to an Effective Natural Language Processing Engineer. Packt Publishing.
- Speech and language processing : an introduction to natural language processing, computational linguistics, and speech recognition, Jurafsky, D., 2009
- Speech and language processing. An introduction to natural language processing, computational lin..., Jurafsky, D., 2009
Recommended Additional Bibliography
- Introduction to natural language processing, Eisenstein, J., 2019