Academic Handbook Course Descriptors and Programme Specifications

LDSCI7226 Natural Language Processing with Deep Learning Course Descriptor

Course code LDSCI7226 Discipline Data Science
UK Credit 15 US Credit N/A
FHEQ level 7 Date approved June 2023
Core attributes N/A
Pre-requisites None
Co-requisites None

Course Summary

Deep Learning has evolved as the leading artificial intelligence paradigm over the past decade providing us with the ability to learn complex functions from raw data at unprecedented accuracy and scale. Deep Learning has been applied to problems in object recognition, speech recognition, speech synthesis, forecasting, scientific computing, control, and many more.

This course has a particular focus on modern Deep Learning algorithms and sustainable development, it covers fundamentals of Natural Language Processing (NLP), word embedding models, recommender systems, expressivity, optimisation and generalisation, unsupervised deep learning and generative models, etc.

The course will be taught in the Python programming language and, in particular, the PyTorch machine learning framework.

Course Aims

The aims of this course are to:

  • Systematically understand the fundamental concepts of Natural Language Processing (NLP) and Deep Learning.
  • Consistently produce working programs that solve data analysis tasks, reason about them and/or improve their performance using techniques learned in the course.

Learning Outcomes

On successful completion of the course, students will be able to:

Knowledge and Understanding

K1d Systematically understand fundamental and contextual concepts in NLP and Deep Learning such as word embeddings, and generative models for data analysis.
K2d Master practical methods, libraries and techniques to implement Deep Learning models for developing modern data applications.
K3d Critically evaluate the technical, social and management issues of building and deploying NLP and Deep Learning applications.
K4d Critically review key developments in a particular problem area and analyse the capabilities and limitations of proposed techniques and solutions.

Subject Specific Skills

S1d Critically assess a problem, recognise the type of Deep Learning algorithm suitable for solving that problem, and develop a solution.
S3d Design and develop original software of varying levels of complexity that solves (part of) a practical NLP problem.
S4d Be a sophisticated machine learning engineer, familiar with best practices and modern machine learning toolkits used in industry for implementing models that process the data.

Transferable and Professional Skills

T1d Participate in the design and implementation of model architectures to solve problems with Deep Learning algorithms.
T2d Consistently display an excellent level of technical proficiency in written English and command of scholarly terminology, so as to be able to deal with complex issues in a sophisticated and systematic way.
T2d Critically review and analyse key developments in Deep Learning, both in terms of algorithms and software libraries.
T3d Demonstrate initiative in working independently, effectively, and to deadlines.
T4d Communicate with rigorous arguments about how machines learn to solve data problems to both technical and non-technical audiences.

Teaching and Learning

This course has a dedicated Virtual Learning Environment (VLE) page with a syllabus and range of additional resources (e.g. readings, question prompts, tasks, assignment briefs, discussion boards) to orientate and engage you in your studies.

The scheduled teaching and learning activities for this course are:

Lectures/Labs: Typically one lecture and one lab session per week:

  • Version 1: All sessions in the same sized group, or
  • Version 2: most of the sessions in larger groups; some of the sessions in smaller groups

Faculty hold regular ‘office hours’, which are opportunities for students to drop in or sign up to explore ideas, raise questions, or seek targeted guidance or feedback, individually or in small groups.

Students are to attend and participate in all the scheduled teaching and learning activities for this course and to manage their directed learning and independent study.

Indicative total learning hours for this course: 150

Employability Skills

  • Communication skills
  • Mathematical skills
  • Programming skills

Assessment

Formative

Students will be formatively assessed during the course by means of set assignments. These do not count towards the end of year results but will provide students with developmental feedback. Set assignments will also amplify problem-solving skills and develop software components that form part of the coding assignments.

Summative

The assessment will consist of two written coding assignments, which the student will have to do according to the set guidelines for coding.

AE: Assessment Activity Weighting (%) Online submission Coding Length
1 Coding assignment 50 Yes Yes Code and up to 2000-word explanation
2 Coding assignment 50 Yes Yes Code and up to 2000-word explanation

The coding assignments will be assessed in accordance with the assessment aims set out in the Programme Specification.

Feedback

Students will receive formal feedback in a variety of ways: written (including via email correspondence); oral (on an ad hoc basis) and indirectly through discussion during group tutorials. Students will also attend the formal meeting, Collections, in which they will receive constructive and developmental feedback on their  performance. 

Feedback is provided on summative written assignments which will be handed back to the students.

Indicative Reading

Note: Comprehensive and current reading lists for courses are produced annually in the Course Syllabus or other documentation provided to students; the indicative reading list provided below is used as part of the approval/modification process only.

Books

  • Steven Bird, Ewan Klein, and Edward Loper. 2020. Natural Language Processing with Python. Online at www.nltk.org/book/
  • Deep Learning for Natural Language Processing: Applications of Deep Neural Networks to Machine Learning Tasks by Pearson Learn IT
  • Deep Learning with Python by Francois Chollet
  • Aston Zhang, Zachary C. Lipton, Mu Li and Alexander J. Smola. 2020. Dive into Deep Learning. Online at https://d2l.ai

Journals

  • Tomas Mikolov, Kai Chen, Greg Corrado and Jeffrey Dean. 2013. Efficient Estimation of Word Representations in Vector Space. arXiv:1301.3781v3 [cs.CL]
  • Jacob Devlin, Ming-Wei Chang, Kenton Lee and Kristina Toutanova. 2019. BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding. arXiv:1810.04805v2 [cs.CL]
  • Ashish Vaswani, Noam Shazeer, Niki Parmar, Jakob Uszkoreit, Llion Jones, Aidan N. Gomez, Lukasz Kaiser and Illia Polosukhin. Attention Is All You Need. arXiv:1706.03762v5 [cs.CL]

Electronic Resources

Indicative Topics

Students will study the following topics: 

  • Introduction to Natural Language Processing
  • Word embeddings (e.g. the Skip-Gram, work2vec, ELMo and BERT models)
  • Pretraining word embeddings
  • Recommender systems
  • Recurrent Neural Networks
  • Expressivity, Optimization and Generalization
  • Imbalanced classification and metric learning
  • Unsupervised deep learning and generative models
Title: LDSCI7226 Natural Language Processing with Deep Learning Course Descriptor

Approved by: Academic Board

Location: Academic Handbook/Programme specifications and Handbooks/ Postgraduate Programme Specifications

Version number Date approved Date published Owner Proposed next review date Modification (As per AQF4) & category number
1.0 June 2023 June 2023 Alexandros Koliousis April 2028  
Print/Save PDF