ST449      Half Unit
Artificial Intelligence and Deep Learning

This information is for the 2018/19 session.

Teacher responsible

Prof Milan Vojnovic COL 5.05


This course is available on the MSc in Applied Social Data Science, MSc in Data Science, MSc in Quantitative Methods for Risk Management, MSc in Statistics, MSc in Statistics (Financial Statistics), MSc in Statistics (Financial Statistics) (Research), MSc in Statistics (Research), MSc in Statistics (Social Statistics) and MSc in Statistics (Social Statistics) (Research). This course is available with permission as an outside option to students on other programmes where regulations permit.

Course content

The course will introduce the basic principles and algorithms used in artificial intelligence systems, with a focus on statistical and machine learning foundations, including the design and training of deep neural networks and reinforcement learning algorithms. These algorithms will be applied to classification tasks such as image recognition, speech recognition, natural language processing, as well as to strategic game playing. Use of Python and open source software libraries for machine intelligence such as Tensorflow constitutes an integral part of the course, allowing students to gain hands-on experience in data analysis and use of modern computational tools.


20 hours of lectures and 15 hours of computer workshops in the LT.

The course will start with an introduction to basic concepts of artificial intelligence systems that include search algorithms, game playing, knowledge representation, and supervised and unsupervised learning. It will then cover basic concepts of deep neural network models covering the topics of deep forward networks, learning XOR, gradient-based learning, architecture of deep neural networks and the concept of hidden units. The course will also cover the topic of optimisation for deep learning including concepts such as back-propagation, parameter norm penalties, dataset augmentation, early stopping and dropout. Special architectures of deep neural networks will be studied in more depth including convolutional networks, explaining the intuition underlying their design, the concept of pooling and efficient convolution algorithms. Other architectures will be studied as well including those used for sequence modelling, such as recurrent neural networks, deep recurrent networks, the long-short term memory and other gated recurrent neural networks. The course will cover the main principles of reinforcement learning algorithms, explaining the main concepts such as rewards and punishments, exploration versus exploitation, Markov decision processes, and Q-learning and its convergence.

Examples and use cases will be drawn from various application domains including classical applications in the domains of computer vision, speech recognition, natural language processing and strategic game playing. Students will have an option to study application of deep learning using a dataset in the application domain of their interest including those in the area of social and economic systems.

The course will be based on using modern software frameworks for learning deep neural networks including open source Tensorflow library and possibly other such as Microsoft Cognitive Toolkit. Students will develop their code using Jupyter notebooks. The course will use GitHub platform for maintaining a repository of lecture material, homework and project assignments and anything related to the running of the course.  


Formative coursework

Students will be expected to produce 10 problem sets in the LT.

Indicative reading

  • I. Goodfellow, Y. Bengio and A. Courville, Deep Learning, MIT Press, 2017, 
  • R. Sutton and A. C. Barto, Reinforcement Learning: An Introduction, MIT Press, 1998
  • S. Russell and P. Norvig, Artificial Intelligence: A Modern Approach, Third Edition, Pearson, 2016
  • L. Deng and D. Yu, Deep Learning: Methods and Applications, Now Publishers Inc, 2014
  • F. Chollet, Deep Learning with Python, Manning, 2018
  • A. Geron, Hands-on Machine Learning with Scikit-Learn and Tensorflow, O'Reilly, 2017
  • TensorFlow, An Open Source Software Library for Machine Intelligence,
  • The Microsoft Cognitive Toolkit,


Continuous assessment (10%), continuous assessment (10%) and research project (80%) in the LT.

Two problems sets submitted by students will be assessed (20% in total). In addition, there will be a graded take-home research project (80%) which will completed on an individual basis in which they will demonstrate the ability to apply and train an appropriate model to a specific problem and dataset using principles they have learnt in the course. This may be done by publishing the code to a GitHub repository and GitHub pages website.  

Key facts

Department: Statistics

Total students 2017/18: Unavailable

Average class size 2017/18: Unavailable

Controlled access 2017/18: No

Value: Half Unit

Guidelines for interpreting course guide information

Personal development skills

  • Self-management
  • Problem solving
  • Application of information skills
  • Communication
  • Application of numeracy skills
  • Specialist skills