Undergraduate Course: Machine Learning (INFR10086)
|School||School of Informatics
||College||College of Science and Engineering
|Credit level (Normal year taken)||SCQF Level 10 (Year 3 Undergraduate)
||Availability||Not available to visiting students
|Summary||***This course is a replacement for Introductory Applied Machine Learning (INFR10069)***
Since the early days of AI, researchers have been interested in making computers learn, rather than simply programming them to do tasks. This is the field of machine learning. The main area that will be discussed is supervised learning, which is concerned with learning to predict an output, given in-puts. A second area of study is unsupervised learning, where we wish to discover the structure in a set of patterns, i.e. there is no output "teacher signal".
The aims of the course are to develop knowledge and a critical appreciation of the various techniques covered in the syllabus, and to be able to apply, validate and refine the methods in practice.
The precise set of methods and algorithms used to illustrate and explore the main concepts will change slightly from year to year. However, the main topic headings are expected to be fairly stable.
- Classification and Regression: Linear Regression, logistic regression, Bayes classifiers
- Expanded feature representations: Basis functions, decision trees, neural networks, kernel methods
- Generalization and regularization: Penalised cost functions, Bayesian prediction, under- and over-fitting
- Model selection and performance evaluation: Cross-validation, ROC and PR curves
- Ethics and machine learning: Fairness, accountability, transparency, privacy concerns
- Representation learning: Dimensionality reduction, clustering, feature learning
- More advanced methods
To support these topics we will also cover:
- Optimization and Stochastic gradient descent
- Practical issues: Formulating problems as machine learning, adapting methods to fit problems. Numerical and programming issues important for machine learning.
Entry Requirements (not applicable to Visiting Students)
|| Students MUST have passed:
Informatics 2 - Foundations of Data Science (INFR08030)
|Prohibited Combinations|| Students MUST NOT also be taking
Machine Learning and Pattern Recognition (INFR11130) OR
Applied Machine Learning (INFR11211) OR
Introductory Applied Machine Learning (INFR10069)
||Other requirements|| This course is open to all Informatics undergraduate students including those on joint degrees.
This course requires practical mathematical application of algebra, vectors and matrices, calculus, probability, and problem solving. Students will normally have fulfilled these requirements by taking Calculus and Applications, Linear Algebra, and either Probability (MATH08066) or Discrete Mathematics and Probability (INFR08031); however, students on joint degrees may substitute other maths courses that cover similar material.
Practical exercises usually require using a particular numerical language such as Python+NumPy. We will assume and require sufficient past programming experience that a new package can be learned on the fly.
We also assume prior data science experience as per Foundations of Data Science (INFR08030) which covers data wrangling and exploratory data analysis, linear and logistic regression, statistical inference, and uses a Python-based ecosystem.
MSc students are not permitted to take this course, instead they should take Machine Learning for Pat-tern Recognition (INFR11130) or Applied Machine Learning (INFR11211) .
Course Delivery Information
|Academic year 2022/23, Not available to visiting students (SS1)
|Learning and Teaching activities (Further Info)
Lecture Hours 30,
Seminar/Tutorial Hours 8,
Feedback/Feedforward Hours 2,
Summative Assessment Hours 2,
Revision Session Hours 1,
Programme Level Learning and Teaching Hours 4,
Directed Learning and Independent Learning Hours
|Assessment (Further Info)
|Additional Information (Assessment)
||Oral feedback will be provided in tutorial sessions. Feedback at the course level will be provided for the assessed and non-assessed assignments. Piazza or a similar class discussion forum will be utilised for peer feedback.
||Hours & Minutes
|Main Exam Diet S1 (December)||2:00|
On completion of this course, the student will be able to:
- explain the scope, goals and limits of machine learning (ML), and the main sub-areas of the field
- describe and critically compare the various techniques covered in the syllabus, and explain where they fit within the structure of the discipline
- demonstrate knowledge about the limitations and possible failure modes of ML models, and ethical issues in relation to machine learning
- check and refine implementation of learning algorithms, and apply them in practice
- use a systematic approach to conducting experimental investigations, including best practices on how to assess model performance
|Books that may be useful, but are not required:|
- Bayesian Reasoning and Machine Learning. David Barber (CUP, 2012)
- The Elements of Statistical Learning: Data Mining, Inference, and Prediction. Trevor Hastie, Robert Tibshirani and Jerome Friedman (Springer, 2009)
- Pattern Recognition and Machine Learning, Christopher Bishop (Springer, 2007)
- Machine Learning: A Probabilistic Perspective. Kevin P Murphy (MIT Press, 2012)
|Graduate Attributes and Skills
||The student will be able to reason about how to make predictions from and interpret data, an important transferable skill.
In addition the student will be able to:
Undertake critical evaluations of a wide range of numerical and graphical data
Develop awareness of ethical issues in data analysis, and address associated ethical dilemmas
Critically review and consolidate knowledge, skills, practices and thinking in subject/discipline/sector
|Keywords||Machine Learning,Supervised Learning,Unsupervised Learning
|Course organiser||Dr Hao Tang
|Course secretary||Mrs Michelle Bain
Tel: (0131 6)51 7607