Undergraduate Course: Machine Learning Practical (INFR11132)
|School||School of Informatics
||College||College of Science and Engineering
|Credit level (Normal year taken)||SCQF Level 11 (Year 4 Undergraduate)
||Availability||Not available to visiting students
|Summary||This course is focused on the implementation and evaluation of machine learning systems, and is lab-based. Students who do this course will obtain experience in the design, implementation, training, and evaluation of machine learning systems.
Semester one comprises lectures, labs, and individual coursework. Semester two is based around small group projects, and also includes tutorials and guest lectures.
Note: this course is not a stand-alone introduction to machine learning. Please see Other Requirements for details.
The course covers practical aspects of machine learning, and will focus on practical and experimental issues in deep learning and neural networks. Topics that are covered include:
* Feed-forward network architectures
* Optimisation and learning rules
* Regularisation and normalisation
* Neural networks for classification
* Convolutional Neural Networks
* Recurrent Neural Networks
MLP is coursework-based, with lectures to support the additional material required to carry out the practical. Students who complete this course will have experience in the design, implementation, training, and evaluation of machine learning systems.
MLP is a two-semester course. During semester 1 the course will focus on developing a deep learning framework based on experiments using the task of classification of handwritten digits using the well-known MNIST dataset. The course uses a Python software framework, and a series of Jupyter notebooks. There is a series of ten weekly lectures in semester 1 to provide the required theoretical support to the practical work.
Semester 2 will be based on small group projects, with a focus on using deep neural networks within the context of a miniproject, using an open source toolkit such as TensorFlow or PyTorch. Lectures in semester 2 will support the coursework, and also provide insights to the current state of the art in this very fast moving area.
Entry Requirements (not applicable to Visiting Students)
||Co-requisites|| Students MUST also take:
Informatics Research Review (INFR11136) OR
Case Studies in Design Informatics 1 (INFR11094) OR
Honours Project (Informatics) (INFR10044) OR
MInf Project (Part 2) (INFR11093) OR
MInf Project (Part 1) (INFR10051) OR
Individual Project in Advanced Natural Language Processing (INFR11192)
||Other requirements|| For Informatics UG and PG students only (including those on joint degrees), or by special permission of the School.
It is recommended that students have taken a previous course in machine learning (or with significant machine learning content). Those who have not MUST register for one of the following co-requisites: Introductory Applied Machine Learning, Machine Learning and Pattern Recognition, or Accelerated Natural Language Processing.
Familiarity with basic mathematics, including algebra and calculus is essential. A reasonable knowledge of computational, logical, geometric and set-theoretic concepts is assumed. Working knowledge of vectors and matrices is also necessary. A basic grasp of probability and partial differentiation, is also required. Students should have programming experience. Programming in a numerical language (Python/Numpy) will be required: previous experience in Python is not mandatory.
Course Delivery Information
|Academic year 2019/20, Not available to visiting students (SS1)
|Learning and Teaching activities (Further Info)
Lecture Hours 12,
Supervised Practical/Workshop/Studio Hours 20,
Programme Level Learning and Teaching Hours 4,
Directed Learning and Independent Learning Hours
|Assessment (Further Info)
|Additional Information (Assessment)
Coursework 1 (semester 1), 10%
Coursework 2 (semester 1), 40%
Coursework 3 (semester 2), formative - not assessed
Coursework 4 (semester 2), 50%
||Summative feedback will be provided through marking of, and comments on, three pieces of assessed coursework. Detailed feedback from each coursework will be provided before the submission deadline of the next piece of coursework. Formative feedback will be provided for the non-assessed coursework, as well being provided via the lab sessions through discussion with the course lecturers, TAs, and demonstrators.
|No Exam Information
On completion of this course, the student will be able to:
- This course is focused on the implementation and evaluation of machine learning systems, and is lab-based. Students who do this course will obtain experience in the design, implementation, training, and evaluation of machine learning systems.
- Read technical papers, and explain their relevance to the chosen approach
- Design and carry out appropriate experiments, and explain the methodology involved
- Evaluate the resultant system
- Write a scholarly report, suitably structured and with supporting evidence
|Ian Goodfellow, Yoshua Bengio, and Aaron Courville, Deep Learning, 2016, MIT Press.|
Michael Nielsen, Neural Networks and Deep Learning, 2016. Online at http://neuralnetworksanddeeplearning.com
Christopher M Bishop, Neural Networks for Pattern Recognition, 1995, Clarendon Press.
|Course organiser||Dr Hakan Bilen
Tel: (0131 6)50 2717
|Course secretary||Miss Clara Fraser
Tel: (0131 6)51 4164